81 lines
2.4 KiB
JavaScript
81 lines
2.4 KiB
JavaScript
/**
|
|
* @file js/controllers/EditorialActionsHandler.js
|
|
*
|
|
* Copyright (c) 2014-2018 Simon Fraser University
|
|
* Copyright (c) 2000-2018 John Willinsky
|
|
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
|
*
|
|
* @class EditorialActionsHandler
|
|
* @ingroup js_controllers
|
|
*
|
|
* @brief A handler for the editorial actions button in the workflow
|
|
*/
|
|
(function($) {
|
|
|
|
|
|
/**
|
|
* @constructor
|
|
*
|
|
* @extends $.pkp.classes.Handler
|
|
*
|
|
* @param {jQueryObject} $element The outer <div> element
|
|
* @param {Object} options Handler options.
|
|
*/
|
|
$.pkp.controllers.EditorialActionsHandler = function($element, options) {
|
|
this.parent($element, options);
|
|
$element.find('.pkp_workflow_change_decision')
|
|
.click(this.callbackWrapper(this.showActions_));
|
|
$element.find('[data-decision]')
|
|
.click(this.callbackWrapper(this.emitRevisionDecision_));
|
|
$element.find('[data-recommendation]')
|
|
.click(this.callbackWrapper(this.emitRevisionRecommendation_));
|
|
};
|
|
$.pkp.classes.Helper.inherits(
|
|
$.pkp.controllers.EditorialActionsHandler, $.pkp.classes.Handler);
|
|
|
|
|
|
//
|
|
// Private methods
|
|
//
|
|
/**
|
|
* Show the editorial actions
|
|
* @private
|
|
* @param {HTMLElement} sourceElement The clicked link.
|
|
* @param {Event} event The triggered event (click).
|
|
*/
|
|
$.pkp.controllers.EditorialActionsHandler.prototype.showActions_ =
|
|
function(sourceElement, event) {
|
|
this.getHtmlElement().find('.pkp_workflow_change_decision').hide();
|
|
this.getHtmlElement().find('.pkp_workflow_decisions_options')
|
|
.removeClass('pkp_workflow_decisions_options_hidden');
|
|
};
|
|
|
|
|
|
/**
|
|
* Emit an event when a request revisions decision is initiated
|
|
* @private
|
|
* @param {HTMLElement} sourceElement The clicked link.
|
|
* @param {Event} event The triggered event (click).
|
|
*/
|
|
$.pkp.controllers.EditorialActionsHandler.prototype.emitRevisionDecision_ =
|
|
function(sourceElement, event) {
|
|
var $el = $(sourceElement);
|
|
pkp.eventBus.$emit('decision:revisions', $el.data('reviewRoundId'));
|
|
};
|
|
|
|
|
|
/**
|
|
* Emit an event when a request revisions recommendation is initiated
|
|
* @private
|
|
* @param {HTMLElement} sourceElement The clicked link.
|
|
* @param {Event} event The triggered event (click).
|
|
*/
|
|
$.pkp.controllers.EditorialActionsHandler.prototype.
|
|
emitRevisionRecommendation_ = function(sourceElement, event) {
|
|
var $el = $(sourceElement);
|
|
pkp.eventBus.$emit('recommendation:revisions', $el.data('reviewRoundId'));
|
|
};
|
|
|
|
|
|
}(jQuery));
|