File: /var/www/html/ceade.tocsa.com.py/customfield/amd/build/form.min.js
define("core_customfield/form",["exports","core/inplace_editable","core/ajax","core/str","core_form/modalform","core/notification","core/pending","core/sortable_list","core/templates","jquery"],(function(_exports,_inplace_editable,_ajax,_str,_modalform,_notification,_pending,_sortable_list,_templates,_jquery){function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}
/**
* Custom Field interaction management for Moodle.
*
* @module core_customfield/form
* @copyright 2018 Toni Barbera
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.init=void 0,_modalform=_interopRequireDefault(_modalform),_notification=_interopRequireDefault(_notification),_pending=_interopRequireDefault(_pending),_sortable_list=_interopRequireDefault(_sortable_list),_templates=_interopRequireDefault(_templates),_jquery=_interopRequireDefault(_jquery);var confirmDelete=function(id,type,component,area,itemid){var pendingPromise=new _pending.default("core_customfield/form:confirmDelete");(0,_str.get_strings)([{key:"confirm"},{key:"confirmdelete"+type,component:"core_customfield"},{key:"yes"},{key:"no"}]).then((function(strings){return _notification.default.confirm(strings[0],strings[1],strings[2],strings[3],(function(){var pendingDeletePromise=new _pending.default("core_customfield/form:confirmDelete");(0,_ajax.call)([{methodname:"field"===type?"core_customfield_delete_field":"core_customfield_delete_category",args:{id:id}},{methodname:"core_customfield_reload_template",args:{component:component,area:area,itemid:itemid}}])[1].then((function(response){return _templates.default.render("core_customfield/list",response)})).then((function(html,js){return _templates.default.replaceNode((0,_jquery.default)('[data-region="list-page"]'),html,js)})).then(pendingDeletePromise.resolve).catch(_notification.default.exception)}))})).then(pendingPromise.resolve).catch(_notification.default.exception)},getCategoryNameFor=function(nodeElement){return nodeElement.closest("[data-category-id]").find("[data-inplaceeditable][data-itemtype=category][data-component=core_customfield]").attr("data-value")};_exports.init=function(){var rootNode=document.querySelector("#customfield_catlist"),component=rootNode.dataset.component,area=rootNode.dataset.area,itemid=rootNode.dataset.itemid;rootNode.addEventListener("click",(function(e){var roleHolder=e.target.closest("[data-role]");if(roleHolder)return"deletefield"===roleHolder.dataset.role?(e.preventDefault(),void confirmDelete(roleHolder.dataset.id,"field",component,area,itemid)):"deletecategory"===roleHolder.dataset.role?(e.preventDefault(),void confirmDelete(roleHolder.dataset.id,"category",component,area,itemid)):"addnewcategory"===roleHolder.dataset.role?(e.preventDefault(),void function(component,area,itemid){var pendingPromise=new _pending.default("core_customfield/form:createNewCategory");(0,_ajax.call)([{methodname:"core_customfield_create_category",args:{component:component,area:area,itemid:itemid}},{methodname:"core_customfield_reload_template",args:{component:component,area:area,itemid:itemid}}])[1].then((function(response){return _templates.default.render("core_customfield/list",response)})).then((function(html,js){return _templates.default.replaceNode((0,_jquery.default)('[data-region="list-page"]'),html,js)})).then((function(){return pendingPromise.resolve()})).catch(_notification.default.exception)}(component,area,itemid)):"addfield"===roleHolder.dataset.role?(e.preventDefault(),void function(element,component,area,itemid){var pendingPromise=new _pending.default("core_customfield/form:createNewField"),returnFocus=element.closest(".action-menu").querySelector(".dropdown-toggle"),form=new _modalform.default({formClass:"core_customfield\\field_config_form",args:{categoryid:element.getAttribute("data-categoryid"),type:element.getAttribute("data-type")},modalConfig:{title:(0,_str.get_string)("addingnewcustomfield","core_customfield",element.getAttribute("data-typename"))},returnFocus:returnFocus});form.addEventListener(form.events.FORM_SUBMITTED,(function(){var pendingCreatedPromise=new _pending.default("core_customfield/form:createdNewField");(0,_ajax.call)([{methodname:"core_customfield_reload_template",args:{component:component,area:area,itemid:itemid}}])[0].then((function(response){return _templates.default.render("core_customfield/list",response)})).then((function(html,js){return _templates.default.replaceNode((0,_jquery.default)('[data-region="list-page"]'),html,js)})).then((function(){return pendingCreatedPromise.resolve()})).catch((function(){return window.location.reload()}))})),form.show(),pendingPromise.resolve()}(roleHolder,component,area,itemid)):"editfield"===roleHolder.dataset.role?(e.preventDefault(),void function(element,component,area,itemid){var pendingPromise=new _pending.default("core_customfield/form:editField"),form=new _modalform.default({formClass:"core_customfield\\field_config_form",args:{id:element.getAttribute("data-id")},modalConfig:{title:(0,_str.get_string)("editingfield","core_customfield",element.getAttribute("data-name"))},returnFocus:element});form.addEventListener(form.events.FORM_SUBMITTED,(function(){var pendingCreatedPromise=new _pending.default("core_customfield/form:createdNewField");(0,_ajax.call)([{methodname:"core_customfield_reload_template",args:{component:component,area:area,itemid:itemid}}])[0].then((function(response){return _templates.default.render("core_customfield/list",response)})).then((function(html,js){return _templates.default.replaceNode((0,_jquery.default)('[data-region="list-page"]'),html,js)})).then((function(){return pendingCreatedPromise.resolve()})).catch((function(){return window.location.reload()}))})),form.show(),pendingPromise.resolve()}(roleHolder,component,area,itemid)):void 0})),function(rootNode){new _sortable_list.default("#customfield_catlist .categorieslist",{moveHandlerSelector:".movecategory [data-drag-type=move]"}).getElementName=function(nodeElement){return Promise.resolve(getCategoryNameFor(nodeElement))},(0,_jquery.default)("[data-category-id]").on(_sortable_list.default.EVENTS.DROP,(function(evt,info){if(info.positionChanged){var pendingPromise=new _pending.default("core_customfield/form:categoryid:on:sortablelist-drop");(0,_ajax.call)([{methodname:"core_customfield_move_category",args:{id:info.element.data("category-id"),beforeid:info.targetNextElement.data("category-id")}}])[0].then(pendingPromise.resolve).catch(_notification.default.exception)}evt.stopPropagation()})),new _sortable_list.default("#customfield_catlist .fieldslist tbody",{moveHandlerSelector:".movefield [data-drag-type=move]"}).getDestinationName=function(parentElement,afterElement){return afterElement.length?afterElement.attr("data-field-name")?(0,_str.get_string)("afterfield","customfield",afterElement.attr("data-field-name")):Promise.resolve(""):(0,_str.get_string)("totopofcategory","customfield",getCategoryNameFor(parentElement))},(0,_jquery.default)("[data-field-name]").on(_sortable_list.default.EVENTS.DROP,(function(evt,info){if(info.positionChanged){var pendingPromise=new _pending.default("core_customfield/form:fieldname:on:sortablelist-drop");(0,_ajax.call)([{methodname:"core_customfield_move_field",args:{id:info.element.data("field-id"),beforeid:info.targetNextElement.data("field-id"),categoryid:Number(info.targetList.closest("[data-category-id]").attr("data-category-id"))}}])[0].then(pendingPromise.resolve).catch(_notification.default.exception)}evt.stopPropagation()})),(0,_jquery.default)("[data-field-name]").on(_sortable_list.default.EVENTS.DRAG,(function(evt){var pendingPromise=new _pending.default("core_customfield/form:fieldname:on:sortablelist-drag");evt.stopPropagation(),_templates.default.render("core_customfield/nofields",{}).then((function(html){rootNode.querySelectorAll(".categorieslist > *").forEach((function(category){var fields=category.querySelectorAll(".field:not(.sortable-list-is-dragged)"),noFields=category.querySelector(".nofields");fields.length||noFields?fields.length&&noFields&&noFields.remove():category.querySelector("tbody").innerHTML=html}))})).then(pendingPromise.resolve).catch(_notification.default.exception)})),(0,_jquery.default)("[data-category-id], [data-field-name]").on(_sortable_list.default.EVENTS.DRAGSTART,(function(evt,info){setTimeout((function(){(0,_jquery.default)(".sortable-list-is-dragged").width(info.element.width())}),501)}))}(rootNode)}}));
//# sourceMappingURL=form.min.js.map