MDL-78324 gradereport_singleview: Update modal usage to drop factory use
This change includes some additional simplifications to support this change, including conversion from done/fail to then/catch, and some simplification of Promise usage. There were a number of cases of nested Modal usage which have been removed.
This commit is contained in:
+2
-2
@@ -1,10 +1,10 @@
|
||||
define("gradereport_singleview/bulkactions",["exports","core/pending","core/custom_interaction_events","core/modal_factory","core/templates","core/modal_events","core/str","core/notification","gradereport_singleview/selectors"],(function(_exports,_pending,_custom_interaction_events,_modal_factory,_templates,_modal_events,Str,_notification,_selectors){function _getRequireWildcardCache(nodeInterop){if("function"!=typeof WeakMap)return null;var cacheBabelInterop=new WeakMap,cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}
|
||||
define("gradereport_singleview/bulkactions",["exports","core/pending","core/custom_interaction_events","core/modal_save_cancel","core/templates","core/modal_events","core/str","core/notification","gradereport_singleview/selectors"],(function(_exports,_pending,_custom_interaction_events,_modal_save_cancel,_templates,_modal_events,Str,_notification,_selectors){function _getRequireWildcardCache(nodeInterop){if("function"!=typeof WeakMap)return null;var cacheBabelInterop=new WeakMap,cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}
|
||||
/**
|
||||
* Javascript module for bulk actions.
|
||||
*
|
||||
* @module gradereport_singleview/bulkactions
|
||||
* @copyright 2022 Ilya Tregubov <ilya@moodle.com>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_pending=_interopRequireDefault(_pending),_custom_interaction_events=_interopRequireDefault(_custom_interaction_events),_modal_factory=_interopRequireDefault(_modal_factory),_templates=_interopRequireDefault(_templates),_modal_events=_interopRequireDefault(_modal_events),Str=function(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule)return obj;if(null===obj||"object"!=typeof obj&&"function"!=typeof obj)return{default:obj};var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj))return cache.get(obj);var newObj={},hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj)if("default"!==key&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;desc&&(desc.get||desc.set)?Object.defineProperty(newObj,key,desc):newObj[key]=obj[key]}newObj.default=obj,cache&&cache.set(obj,newObj);return newObj}(Str),_notification=_interopRequireDefault(_notification),_selectors=_interopRequireDefault(_selectors);_exports.init=()=>{const pendingPromise=new _pending.default;registerListenerEvents(),pendingPromise.resolve()};const registerListenerEvents=()=>{const events=["click",_custom_interaction_events.default.events.activate,_custom_interaction_events.default.events.keyboardActivate];_custom_interaction_events.default.define(document,events),events.forEach((event=>{document.addEventListener(event,(async e=>{const trigger=e.target.closest(_selectors.default.actions.bulkaction);if(trigger)if("overrideallgrades"===trigger.dataset.action||"overridenonegrades"===trigger.dataset.action){const override=document.querySelectorAll(_selectors.default.elements.override);"overridenonegrades"===trigger.dataset.action?Str.get_strings([{key:"removeoverride",component:"gradereport_singleview"},{key:"overridenoneconfirm",component:"gradereport_singleview"},{key:"removeoverridesave",component:"gradereport_singleview"},{key:"cancel",component:"moodle"}]).done((strings=>{_notification.default.confirm(strings[0],strings[1],strings[2],strings[3],(()=>{override.forEach((el=>{el.checked&&el.click()}))}))})).fail(_notification.default.exception):override.forEach((el=>{el.checked||el.click()}))}else if("excludeallgrades"===trigger.dataset.action||"excludenonegrades"===trigger.dataset.action){const exclude=document.querySelectorAll(_selectors.default.elements.exclude),checked="excludeallgrades"===trigger.dataset.action;exclude.forEach((el=>{el.checked=checked}))}else"bulklegend"===trigger.dataset.action&&Str.get_strings([{key:"bulklegend",component:"gradereport_singleview"},{key:"save",component:"moodle"}]).done((strings=>{_modal_factory.default.create({type:_modal_factory.default.types.SAVE_CANCEL,body:_templates.default.render("gradereport_singleview/bulkinsert",{id:"bulkinsertmodal",name:"bulkinsertmodal"}),title:strings[0]}).then((modal=>(modal.setSaveButtonText(strings[1]),modal.getFooter().find(_selectors.default.elements.modalsave).attr("disabled",!0),modal.getRoot().on(_modal_events.default.hidden,(()=>{modal.getRoot().remove()})),modal.getRoot().on("change",_selectors.default.elements.warningcheckbox,(e=>{if(e.preventDefault(),e.target.checked){modal.getRoot().find(_selectors.default.elements.modalformdata).removeClass("dimmed_text"),modal.getRoot().find(_selectors.default.elements.modalradio).removeAttr("disabled"),modal.getRoot().find(_selectors.default.elements.modalinput).removeAttr("disabled");modal.getRoot().find(_selectors.default.elements.modalradiochecked).val()&&modal.getFooter().find(_selectors.default.elements.modalsave).removeAttr("disabled")}else modal.getRoot().find(_selectors.default.elements.modalformdata).addClass("dimmed_text"),modal.getRoot().find(_selectors.default.elements.modalradio).attr("disabled",!0),modal.getRoot().find(_selectors.default.elements.modalinput).attr("disabled",!0),modal.getFooter().find(_selectors.default.elements.modalsave).attr("disabled",!0)})),modal.getRoot().on("change",_selectors.default.elements.modalradio,(e=>{e.preventDefault(),modal.getFooter().find(_selectors.default.elements.modalsave).removeAttr("disabled")})),modal.getRoot().on(_modal_events.default.save,(()=>{document.querySelector(_selectors.default.elements.enablebulkinsert).checked=!0;const formRadioData=modal.getRoot().find(_selectors.default.elements.modalradiochecked).val();document.querySelector(_selectors.default.elements.formradio).value=formRadioData;const formData=modal.getRoot().find(_selectors.default.elements.modalgrade).val();document.querySelector(_selectors.default.elements.formgrade).value=formData,document.querySelector(_selectors.default.elements.formsave).click()})),modal.show(),modal))).fail(_notification.default.exception)})).fail(_notification.default.exception)}))}))}}));
|
||||
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_pending=_interopRequireDefault(_pending),_custom_interaction_events=_interopRequireDefault(_custom_interaction_events),_modal_save_cancel=_interopRequireDefault(_modal_save_cancel),_templates=_interopRequireDefault(_templates),_modal_events=_interopRequireDefault(_modal_events),Str=function(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule)return obj;if(null===obj||"object"!=typeof obj&&"function"!=typeof obj)return{default:obj};var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj))return cache.get(obj);var newObj={},hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj)if("default"!==key&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;desc&&(desc.get||desc.set)?Object.defineProperty(newObj,key,desc):newObj[key]=obj[key]}newObj.default=obj,cache&&cache.set(obj,newObj);return newObj}(Str),_notification=_interopRequireDefault(_notification),_selectors=_interopRequireDefault(_selectors);_exports.init=()=>{const pendingPromise=new _pending.default;registerListenerEvents(),pendingPromise.resolve()};const registerListenerEvents=()=>{const events=["click",_custom_interaction_events.default.events.activate,_custom_interaction_events.default.events.keyboardActivate];_custom_interaction_events.default.define(document,events),events.forEach((event=>{document.addEventListener(event,(async e=>{const trigger=e.target.closest(_selectors.default.actions.bulkaction);if(trigger)if("overrideallgrades"===trigger.dataset.action||"overridenonegrades"===trigger.dataset.action){const override=document.querySelectorAll(_selectors.default.elements.override);"overridenonegrades"===trigger.dataset.action?Str.get_strings([{key:"removeoverride",component:"gradereport_singleview"},{key:"overridenoneconfirm",component:"gradereport_singleview"},{key:"removeoverridesave",component:"gradereport_singleview"},{key:"cancel",component:"moodle"}]).then((strings=>_notification.default.confirm(strings[0],strings[1],strings[2],strings[3],(()=>{override.forEach((el=>{el.checked&&el.click()}))})))).catch(_notification.default.exception):override.forEach((el=>{el.checked||el.click()}))}else if("excludeallgrades"===trigger.dataset.action||"excludenonegrades"===trigger.dataset.action){const exclude=document.querySelectorAll(_selectors.default.elements.exclude),checked="excludeallgrades"===trigger.dataset.action;exclude.forEach((el=>{el.checked=checked}))}else"bulklegend"===trigger.dataset.action&&Str.get_strings([{key:"bulklegend",component:"gradereport_singleview"},{key:"save",component:"moodle"}]).then((strings=>_modal_save_cancel.default.create({body:_templates.default.render("gradereport_singleview/bulkinsert",{id:"bulkinsertmodal",name:"bulkinsertmodal"}),title:strings[0],buttons:{save:strings[1]},removeOnClose:!0,show:!0}))).then((modal=>(modal.getFooter().find(_selectors.default.elements.modalsave).attr("disabled",!0),modal.getRoot().on("change",_selectors.default.elements.warningcheckbox,(e=>{if(e.preventDefault(),e.target.checked){modal.getRoot().find(_selectors.default.elements.modalformdata).removeClass("dimmed_text"),modal.getRoot().find(_selectors.default.elements.modalradio).removeAttr("disabled"),modal.getRoot().find(_selectors.default.elements.modalinput).removeAttr("disabled");modal.getRoot().find(_selectors.default.elements.modalradiochecked).val()&&modal.getFooter().find(_selectors.default.elements.modalsave).removeAttr("disabled")}else modal.getRoot().find(_selectors.default.elements.modalformdata).addClass("dimmed_text"),modal.getRoot().find(_selectors.default.elements.modalradio).attr("disabled",!0),modal.getRoot().find(_selectors.default.elements.modalinput).attr("disabled",!0),modal.getFooter().find(_selectors.default.elements.modalsave).attr("disabled",!0)})),modal.getRoot().on("change",_selectors.default.elements.modalradio,(e=>{e.preventDefault(),modal.getFooter().find(_selectors.default.elements.modalsave).removeAttr("disabled")})),modal.getRoot().on(_modal_events.default.save,(()=>{document.querySelector(_selectors.default.elements.enablebulkinsert).checked=!0;const formRadioData=modal.getRoot().find(_selectors.default.elements.modalradiochecked).val();document.querySelector(_selectors.default.elements.formradio).value=formRadioData;const formData=modal.getRoot().find(_selectors.default.elements.modalgrade).val();document.querySelector(_selectors.default.elements.formgrade).value=formData,document.querySelector(_selectors.default.elements.formsave).click()})),modal))).catch(_notification.default.exception)}))}))}}));
|
||||
|
||||
//# sourceMappingURL=bulkactions.min.js.map
|
||||
File diff suppressed because one or more lines are too long
@@ -23,7 +23,7 @@
|
||||
|
||||
import Pending from 'core/pending';
|
||||
import CustomEvents from "core/custom_interaction_events";
|
||||
import ModalFactory from 'core/modal_factory';
|
||||
import ModalSaveCancel from 'core/modal_save_cancel';
|
||||
import Templates from 'core/templates';
|
||||
import ModalEvents from 'core/modal_events';
|
||||
import * as Str from 'core/str';
|
||||
@@ -57,118 +57,120 @@ const registerListenerEvents = () => {
|
||||
document.addEventListener(event, async(e) => {
|
||||
const trigger = e.target.closest(selectors.actions.bulkaction);
|
||||
|
||||
if (trigger) {
|
||||
if ((trigger.dataset.action === 'overrideallgrades') || (trigger.dataset.action === 'overridenonegrades')) {
|
||||
const override = document.querySelectorAll(selectors.elements.override);
|
||||
if (!trigger) {
|
||||
return;
|
||||
}
|
||||
if ((trigger.dataset.action === 'overrideallgrades') || (trigger.dataset.action === 'overridenonegrades')) {
|
||||
const override = document.querySelectorAll(selectors.elements.override);
|
||||
|
||||
if (trigger.dataset.action === 'overridenonegrades') {
|
||||
// Alert for removing all grade overrides on page.
|
||||
Str.get_strings([
|
||||
{key: 'removeoverride', component: 'gradereport_singleview'},
|
||||
{key: 'overridenoneconfirm', component: 'gradereport_singleview'},
|
||||
{key: 'removeoverridesave', component: 'gradereport_singleview'},
|
||||
{key: 'cancel', component: 'moodle'},
|
||||
]).done((strings) => {
|
||||
Notification.confirm(
|
||||
strings[0],
|
||||
strings[1],
|
||||
strings[2],
|
||||
strings[3],
|
||||
() => {
|
||||
// Uncheck each override checkbox - this will make grade and feedback input fields disabled.
|
||||
override.forEach((el) => {
|
||||
if (el.checked) {
|
||||
el.click();
|
||||
}
|
||||
});
|
||||
});
|
||||
}).fail(Notification.exception);
|
||||
|
||||
} else {
|
||||
// Check each override checkbox - this will make grade and feedback input fields enabled.
|
||||
override.forEach((el) => {
|
||||
if (!el.checked) {
|
||||
el.click();
|
||||
}
|
||||
});
|
||||
}
|
||||
} else if ((trigger.dataset.action === 'excludeallgrades') || (trigger.dataset.action === 'excludenonegrades')) {
|
||||
const exclude = document.querySelectorAll(selectors.elements.exclude);
|
||||
const checked = (trigger.dataset.action === 'excludeallgrades');
|
||||
// Uncheck or check each exclude checkbox.
|
||||
exclude.forEach((el) => {
|
||||
el.checked = checked;
|
||||
});
|
||||
} else if (trigger.dataset.action === 'bulklegend') {
|
||||
// Modal for bulk insert grades.
|
||||
if (trigger.dataset.action === 'overridenonegrades') {
|
||||
// Alert for removing all grade overrides on page.
|
||||
Str.get_strings([
|
||||
{key: 'bulklegend', component: 'gradereport_singleview'},
|
||||
{key: 'save', component: 'moodle'},
|
||||
]).done((strings) => {
|
||||
ModalFactory.create({
|
||||
type: ModalFactory.types.SAVE_CANCEL,
|
||||
body: Templates.render('gradereport_singleview/bulkinsert', {
|
||||
id: 'bulkinsertmodal',
|
||||
name: 'bulkinsertmodal'
|
||||
}),
|
||||
title: strings[0],
|
||||
}).then((modal) => {
|
||||
modal.setSaveButtonText(strings[1]);
|
||||
modal.getFooter().find(selectors.elements.modalsave).attr('disabled', true);
|
||||
|
||||
modal.getRoot().on(ModalEvents.hidden, () => {
|
||||
modal.getRoot().remove();
|
||||
});
|
||||
|
||||
// We need to acknowledge that we understand risks of loosing data.
|
||||
// Only when acknowledge checkbox is checked we allow selecting insert options.
|
||||
modal.getRoot().on('change', selectors.elements.warningcheckbox,
|
||||
(e) => {
|
||||
e.preventDefault();
|
||||
if (e.target.checked) {
|
||||
modal.getRoot().find(selectors.elements.modalformdata).removeClass('dimmed_text');
|
||||
modal.getRoot().find(selectors.elements.modalradio).removeAttr('disabled');
|
||||
modal.getRoot().find(selectors.elements.modalinput).removeAttr('disabled');
|
||||
|
||||
const formRadioData = modal.getRoot().find(selectors.elements.modalradiochecked).val();
|
||||
// We allow saving grades only when all needed data present on form.
|
||||
if (formRadioData) {
|
||||
modal.getFooter().find(selectors.elements.modalsave).removeAttr('disabled');
|
||||
}
|
||||
} else {
|
||||
modal.getRoot().find(selectors.elements.modalformdata).addClass('dimmed_text');
|
||||
modal.getRoot().find(selectors.elements.modalradio).attr('disabled', true);
|
||||
modal.getRoot().find(selectors.elements.modalinput).attr('disabled', true);
|
||||
modal.getFooter().find(selectors.elements.modalsave).attr('disabled', true);
|
||||
{key: 'removeoverride', component: 'gradereport_singleview'},
|
||||
{key: 'overridenoneconfirm', component: 'gradereport_singleview'},
|
||||
{key: 'removeoverridesave', component: 'gradereport_singleview'},
|
||||
{key: 'cancel', component: 'moodle'},
|
||||
])
|
||||
.then((strings) => {
|
||||
return Notification.confirm(
|
||||
strings[0],
|
||||
strings[1],
|
||||
strings[2],
|
||||
strings[3],
|
||||
() => {
|
||||
// Uncheck each override checkbox - this will make grade and feedback input fields disabled.
|
||||
override.forEach((el) => {
|
||||
if (el.checked) {
|
||||
el.click();
|
||||
}
|
||||
});
|
||||
|
||||
// We allow saving grades only when all needed data present on form.
|
||||
modal.getRoot().on('change', selectors.elements.modalradio,
|
||||
(e) => {
|
||||
e.preventDefault();
|
||||
modal.getFooter().find(selectors.elements.modalsave).removeAttr('disabled');
|
||||
});
|
||||
|
||||
modal.getRoot().on(ModalEvents.save, () => {
|
||||
// When save button is clicked in modal form we insert data from modal
|
||||
// into preexisted hidden bulk insert form and Save button for table form.
|
||||
document.querySelector(selectors.elements.enablebulkinsert).checked = true;
|
||||
const formRadioData = modal.getRoot().find(selectors.elements.modalradiochecked).val();
|
||||
const $select = document.querySelector(selectors.elements.formradio);
|
||||
$select.value = formRadioData;
|
||||
|
||||
const formData = modal.getRoot().find(selectors.elements.modalgrade).val();
|
||||
document.querySelector(selectors.elements.formgrade).value = formData;
|
||||
document.querySelector(selectors.elements.formsave).click();
|
||||
});
|
||||
})
|
||||
.catch(Notification.exception);
|
||||
|
||||
modal.show();
|
||||
|
||||
return modal;
|
||||
}).fail(Notification.exception);
|
||||
}).fail(Notification.exception);
|
||||
} else {
|
||||
// Check each override checkbox - this will make grade and feedback input fields enabled.
|
||||
override.forEach((el) => {
|
||||
if (!el.checked) {
|
||||
el.click();
|
||||
}
|
||||
});
|
||||
}
|
||||
} else if ((trigger.dataset.action === 'excludeallgrades') || (trigger.dataset.action === 'excludenonegrades')) {
|
||||
const exclude = document.querySelectorAll(selectors.elements.exclude);
|
||||
const checked = (trigger.dataset.action === 'excludeallgrades');
|
||||
// Uncheck or check each exclude checkbox.
|
||||
exclude.forEach((el) => {
|
||||
el.checked = checked;
|
||||
});
|
||||
} else if (trigger.dataset.action === 'bulklegend') {
|
||||
// Modal for bulk insert grades.
|
||||
Str.get_strings([
|
||||
{key: 'bulklegend', component: 'gradereport_singleview'},
|
||||
{key: 'save', component: 'moodle'},
|
||||
])
|
||||
.then((strings) => {
|
||||
return ModalSaveCancel.create({
|
||||
body: Templates.render('gradereport_singleview/bulkinsert', {
|
||||
id: 'bulkinsertmodal',
|
||||
name: 'bulkinsertmodal'
|
||||
}),
|
||||
title: strings[0],
|
||||
buttons: {
|
||||
save: strings[1],
|
||||
},
|
||||
removeOnClose: true,
|
||||
show: true,
|
||||
});
|
||||
})
|
||||
.then((modal) => {
|
||||
modal.getFooter().find(selectors.elements.modalsave).attr('disabled', true);
|
||||
|
||||
// We need to acknowledge that we understand risks of loosing data.
|
||||
// Only when acknowledge checkbox is checked we allow selecting insert options.
|
||||
modal.getRoot().on('change', selectors.elements.warningcheckbox,
|
||||
(e) => {
|
||||
e.preventDefault();
|
||||
if (e.target.checked) {
|
||||
modal.getRoot().find(selectors.elements.modalformdata).removeClass('dimmed_text');
|
||||
modal.getRoot().find(selectors.elements.modalradio).removeAttr('disabled');
|
||||
modal.getRoot().find(selectors.elements.modalinput).removeAttr('disabled');
|
||||
|
||||
const formRadioData = modal.getRoot().find(selectors.elements.modalradiochecked).val();
|
||||
// We allow saving grades only when all needed data present on form.
|
||||
if (formRadioData) {
|
||||
modal.getFooter().find(selectors.elements.modalsave).removeAttr('disabled');
|
||||
}
|
||||
} else {
|
||||
modal.getRoot().find(selectors.elements.modalformdata).addClass('dimmed_text');
|
||||
modal.getRoot().find(selectors.elements.modalradio).attr('disabled', true);
|
||||
modal.getRoot().find(selectors.elements.modalinput).attr('disabled', true);
|
||||
modal.getFooter().find(selectors.elements.modalsave).attr('disabled', true);
|
||||
}
|
||||
});
|
||||
|
||||
// We allow saving grades only when all needed data present on form.
|
||||
modal.getRoot().on('change', selectors.elements.modalradio, (e) => {
|
||||
e.preventDefault();
|
||||
modal.getFooter().find(selectors.elements.modalsave).removeAttr('disabled');
|
||||
});
|
||||
|
||||
modal.getRoot().on(ModalEvents.save, () => {
|
||||
// When save button is clicked in modal form we insert data from modal
|
||||
// into preexisted hidden bulk insert form and Save button for table form.
|
||||
document.querySelector(selectors.elements.enablebulkinsert).checked = true;
|
||||
const formRadioData = modal.getRoot().find(selectors.elements.modalradiochecked).val();
|
||||
const $select = document.querySelector(selectors.elements.formradio);
|
||||
$select.value = formRadioData;
|
||||
|
||||
const formData = modal.getRoot().find(selectors.elements.modalgrade).val();
|
||||
document.querySelector(selectors.elements.formgrade).value = formData;
|
||||
document.querySelector(selectors.elements.formsave).click();
|
||||
});
|
||||
|
||||
return modal;
|
||||
})
|
||||
.catch(Notification.exception);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+20
-40
@@ -27,7 +27,7 @@ define([
|
||||
'core/templates',
|
||||
'core/notification',
|
||||
'core/str',
|
||||
'core/modal_factory',
|
||||
'core/modal_save_cancel',
|
||||
'core/modal_events',
|
||||
'core/pending',
|
||||
], function(
|
||||
@@ -36,7 +36,7 @@ define([
|
||||
templates,
|
||||
notification,
|
||||
str,
|
||||
ModalFactory,
|
||||
SaveCancelModal,
|
||||
ModalEvents,
|
||||
Pending
|
||||
) {
|
||||
@@ -211,17 +211,16 @@ define([
|
||||
var templateContext = {
|
||||
tags: tagOptions
|
||||
};
|
||||
return ModalFactory.create({
|
||||
return SaveCancelModal.create({
|
||||
title: modalTitle,
|
||||
body: templates.render('core_tag/combine_tags', templateContext),
|
||||
type: ModalFactory.types.SAVE_CANCEL
|
||||
buttons: {
|
||||
save: saveButtonText,
|
||||
},
|
||||
show: true,
|
||||
removeOnClose: true,
|
||||
});
|
||||
})
|
||||
.then(function(modal) {
|
||||
modal.setSaveButtonText(saveButtonText);
|
||||
|
||||
return modal;
|
||||
})
|
||||
.then(function(modal) {
|
||||
|
||||
// Handle save event.
|
||||
@@ -238,13 +237,6 @@ define([
|
||||
form.submit();
|
||||
});
|
||||
|
||||
// Handle hidden event.
|
||||
modal.getRoot().on(ModalEvents.hidden, function() {
|
||||
// Destroy when hidden.
|
||||
modal.destroy();
|
||||
});
|
||||
|
||||
modal.show();
|
||||
// Tick the first option.
|
||||
$('#combinetags_form input[type=radio]').first().focus().prop('checked', true);
|
||||
|
||||
@@ -287,17 +279,19 @@ define([
|
||||
var pendingPromise = new Pending('core/tag:addstandardtag');
|
||||
e.preventDefault();
|
||||
|
||||
return ModalFactory.create({
|
||||
return SaveCancelModal.create({
|
||||
title: str.get_string('addotags', 'tag'),
|
||||
body: templates.render('core_tag/add_tags', {
|
||||
actionurl: window.location.href,
|
||||
sesskey: M.cfg.sesskey
|
||||
}),
|
||||
type: ModalFactory.types.SAVE_CANCEL
|
||||
buttons: {
|
||||
save: str.get_string('continue', 'core'),
|
||||
},
|
||||
show: true,
|
||||
removeOnClose: true,
|
||||
})
|
||||
.then(function(modal) {
|
||||
modal.setSaveButtonText(str.get_string('continue', 'core'));
|
||||
|
||||
// Handle save event.
|
||||
modal.getRoot().on(ModalEvents.save, function(e) {
|
||||
var tagsInput = $(e.currentTarget).find('#id_tagslist');
|
||||
@@ -330,14 +324,6 @@ define([
|
||||
return false;
|
||||
});
|
||||
|
||||
// Handle hidden event.
|
||||
modal.getRoot().on(ModalEvents.hidden, function() {
|
||||
// Destroy when hidden.
|
||||
modal.destroy();
|
||||
});
|
||||
|
||||
modal.show();
|
||||
|
||||
return;
|
||||
|
||||
})
|
||||
@@ -407,15 +393,17 @@ define([
|
||||
actionurl: href,
|
||||
sesskey: M.cfg.sesskey
|
||||
};
|
||||
return ModalFactory.create({
|
||||
return SaveCancelModal.create({
|
||||
title: modalTitle,
|
||||
body: templates.render('core_tag/add_tag_collection', templateContext),
|
||||
type: ModalFactory.types.SAVE_CANCEL
|
||||
buttons: {
|
||||
save: saveButtonText,
|
||||
},
|
||||
show: true,
|
||||
removeOnClose: true,
|
||||
});
|
||||
})
|
||||
.then(function(modal) {
|
||||
modal.setSaveButtonText(saveButtonText);
|
||||
|
||||
// Handle save event.
|
||||
modal.getRoot().on(ModalEvents.save, function(e) {
|
||||
var collectionInput = $(e.currentTarget).find('#addtagcoll_name');
|
||||
@@ -446,14 +434,6 @@ define([
|
||||
return false;
|
||||
});
|
||||
|
||||
// Handle hidden event.
|
||||
modal.getRoot().on(ModalEvents.hidden, function() {
|
||||
// Destroy when hidden.
|
||||
modal.destroy();
|
||||
});
|
||||
|
||||
modal.show();
|
||||
|
||||
return modal;
|
||||
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user