[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
v1
/
lib
/
pkp
/
js
/
classes
/
features
/
[
Home
]
File: OrderGridItemsFeature.js
/** * @file js/classes/features/OrderGridItemsFeature.js * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2000-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class OrderGridItemsFeature * @ingroup js_classes_features * * @brief Feature for ordering grid items. */ (function($) { /** * @constructor * @inheritDoc * @extends $.pkp.classes.features.OrderItemsFeature */ $.pkp.classes.features.OrderGridItemsFeature = function(gridHandler, options) { this.parent(gridHandler, options); }; $.pkp.classes.Helper.inherits( $.pkp.classes.features.OrderGridItemsFeature, $.pkp.classes.features.OrderItemsFeature); // // Extended methods from OrderItemsFeature. // /** * @inheritDoc */ $.pkp.classes.features.OrderGridItemsFeature.prototype.setupSortablePlugin = function() { this.applySortPlgOnElements( this.getGridHtmlElement(), 'tr.orderable', null); }; /** * @inheritDoc */ $.pkp.classes.features.OrderGridItemsFeature.prototype.saveOrderHandler = function() { var stringifiedData, saveOrderCallback, options = /** @type {{saveItemsSequenceUrl: string}} */ (this.getOptions()), returner; this.parent('saveOrderHandler'); stringifiedData = JSON.stringify(this.getItemsDataId()); saveOrderCallback = this.callbackWrapper( this.saveOrderResponseHandler_, this); $.post(options.saveItemsSequenceUrl, {data: stringifiedData, csrfToken: options.csrfToken}, saveOrderCallback, 'json'); return false; }; // // Protected methods to be overriden by subclasses // /** * Get all items data id in a sequence array. * @return {Array} List of all items data. */ $.pkp.classes.features.OrderGridItemsFeature.prototype.getItemsDataId = function() { return this.getRowsDataId(this.getGridHtmlElement()); }; // // Private helper methods. // /** * Save order response handler. * @private * * @param {Object} ajaxContext The AJAX request context. * @param {Object} jsonData A parsed JSON response object. */ $.pkp.classes.features.OrderGridItemsFeature.prototype. saveOrderResponseHandler_ = function(ajaxContext, jsonData) { var processedJsonData = this.gridHandler.handleJson(jsonData); this.toggleState(false); }; }(jQuery));