{"version":3,"file":"admin.min.js","sources":["https:\/\/kundenportal.comm-unity.at\/local\/wb_faq\/amd\/src\/admin.js"],"sourcesContent":["\n\/\/ This file is part of Moodle - http:\/\/moodle.org\/\n\/\/\n\/\/ Moodle is free software: you can redistribute it and\/or modify\n\/\/ it under the terms of the GNU General Public License as published by\n\/\/ the Free Software Foundation, either version 3 of the License, or\n\/\/ (at your option) any later version.\n\/\/\n\/\/ Moodle is distributed in the hope that it will be useful,\n\/\/ but WITHOUT ANY WARRANTY; without even the implied warranty of\n\/\/ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n\/\/ GNU General Public License for more details.\n\/\/\n\/\/ You should have received a copy of the GNU General Public License\n\/\/ along with Moodle. If not, see .\n\n\/*\n * @package local_wunderbyte_table\n * @copyright Wunderbyte GmbH \n * @license http:\/\/www.gnu.org\/copyleft\/gpl.html GNU GPL v3 or later\n *\/\n\nimport Ajax from 'core\/ajax';\nimport Templates from 'core\/templates';\nimport DynamicForm from 'core_form\/dynamicform';\nimport {confirmDeleteEntry} from 'local_wb_faq\/edit';\n\n\/**\n * Gets called from mustache template.\n * @param {*} data\n *\/\nexport const init = (data) => {\n\n addEvents(data);\n renderforcache(data);\n};\n\n\/**\n * adds Evente to toggle switch\n * @param {*} data\n *\/\nfunction addEvents(data) {\n let select = document.getElementById('local_wb_faq_admin');\n select.addEventListener('click', (e) => {\n if (e.target.hasAttribute('data-action')) {\n e.target.setAttribute('disabled', 'disabled');\n if (e.target.dataset.action == \"goto\") {\n\n render(e.target.dataset.targetid, data);\n }\n if (e.target.dataset.action == \"quickedit\") {\n\n renderedit(e.target.dataset.targetid, e.target.dataset.type, data);\n }\n if (e.target.dataset.action == \"delete\") {\n\n confirmDeleteEntry(e);\n\n \/\/ e.target.closest('tr').remove();\n \/\/ deleteEntry(e.target.dataset.targetid);\n }\n e.target.removeAttribute('disabled');\n }\n });\n}\n\n\/**\n * Renders template from jsonobject for the categoryid\n * @param {*} id\n * @param {*} data\n *\/\nfunction render(id, data) {\n \/\/ Load the specific category data\n let json = data[id];\n \/\/ Select Container\n let container = document.getElementById('local_wb_faq_admincontent');\n \/\/ Render\n Templates.renderForPromise('local_wb_faq\/admincontent', json).then(({html}) => {\n container.insertAdjacentHTML('beforeend', html);\n return;\n }).catch(e => {\n \/\/ eslint-disable-next-line no-console\n console.log(e);\n });\n}\n\n\/**\n * Renders template from asd for the categoryid\n * @param {*} id\n *\/\n export function deleteEntry(id) {\n Ajax.call([{\n methodname: \"local_wb_faq_delete_entry\",\n args: {\n 'id': id\n },\n done: function() {\n\n return;\n },\n }]);\n}\n\n\/**\n * Renders template from asd for the categoryid\n * @param {*} id\n *\/\n export function toggleVisibility(id) {\n Ajax.call([{\n methodname: \"local_wb_faq_toggle_entry_visibility\",\n args: {\n 'id': id\n },\n done: function() {\n\n return;\n },\n }]);\n}\n\n\/**\n * Render edit\n * @param {*} id\n * @param {*} type\n *\/\nfunction renderedit(id, type) {\n\n let json = {'id': type + '-' + id};\n let container = document.querySelector('#local_wb_faq_admin .view-' + type + '-' + id);\n let editrow = '#local_wb_faq_admin .edit-' + type + '-' + id;\n let td = '#local_wb_faq_admin .edit-' + type + '-' + id + ' td';\n let hidden = 'hidden';\n if (id == 0) {\n editrow = '#local_wb_faq_admin #local_wb_faq_new_entry form';\n container = document.querySelector('#local_wb_faq_new_entry');\n td = '#local_wb_faq_admin #local_wb_faq_new_entry';\n hidden = 'addnew';\n }\n\n Templates.renderForPromise('local_wb_faq\/quickedit', json).then(({html}) => {\n container.insertAdjacentHTML('afterend', html);\n container.classList.add(hidden);\n return;\n }).then(() => {\n\n let dynamicForm = null;\n\n if (type == 1) {\n dynamicForm = new DynamicForm(document.querySelector(td), 'local_wb_faq\\\\form\\\\editQuestionForm');\n } else {\n dynamicForm = new DynamicForm(document.querySelector(td), 'local_wb_faq\\\\form\\\\editCategoriesForm');\n }\n dynamicForm.load({\n 'id': id,\n 'type': type\n });\n return dynamicForm;\n }).then((dynamicForm) => {\n dynamicForm.addEventListener(dynamicForm.events.FORM_SUBMITTED, (e) => {\n e.preventDefault();\n container.classList.remove(hidden);\n document.querySelector(editrow).remove();\n window.location.reload();\n });\n dynamicForm.addEventListener(dynamicForm.events.FORM_CANCELLED, (e) => {\n e.preventDefault();\n container.classList.remove(hidden);\n document.querySelector(editrow).remove();\n });\n return;\n }).catch(e => {\n \/\/ eslint-disable-next-line no-console\n console.log(e);\n });\n}\n\n\/**\n *\n * @param {object} json\n *\/\nfunction renderforcache(json) {\n Templates.renderForPromise('local_wb_faq\/quickedit', json[1]);\n}\n"],"names":["id","call","methodname","args","done","data","json","document","getElementById","addEventListener","e","target","hasAttribute","setAttribute","dataset","action","container","renderForPromise","then","_ref","html","insertAdjacentHTML","catch","console","log","render","targetid","type","querySelector","editrow","td","hidden","_ref2","classList","add","dynamicForm","DynamicForm","load","events","FORM_SUBMITTED","preventDefault","remove","window","location","reload","FORM_CANCELLED","renderedit","removeAttribute","addEvents"],"mappings":";;;;;2FA0F6BA,kBACpBC,KAAK,CAAC,CACPC,WAAY,4BACZC,KAAM,IACIH,IAEVI,KAAM,yEAWoBJ,kBACzBC,KAAK,CAAC,CACPC,WAAY,uCACZC,KAAM,IACIH,IAEVI,KAAM,mKAlFOC,WAqJGC,eA3ILD,MACFE,SAASC,eAAe,sBAC9BC,iBAAiB,SAAUC,IAC1BA,EAAEC,OAAOC,aAAa,iBACtBF,EAAEC,OAAOE,aAAa,WAAY,YACH,QAA3BH,EAAEC,OAAOG,QAAQC,iBAyBjBf,GAAIK,UAEZC,KAAOD,KAAKL,IAEZgB,UAAYT,SAASC,eAAe,gDAE9BS,iBAAiB,4BAA6BX,MAAMY,MAAKC,WAACC,KAACA,WACjEJ,UAAUK,mBAAmB,YAAaD,SAE3CE,OAAMZ,IAELa,QAAQC,IAAId,MAlCJe,CAAOf,EAAEC,OAAOG,QAAQY,SAAUrB,MAEP,aAA3BK,EAAEC,OAAOG,QAAQC,iBA2Ebf,GAAI2B,UAEhBrB,KAAO,IAAOqB,KAAO,IAAM3B,IAC3BgB,UAAYT,SAASqB,cAAc,6BAA+BD,KAAO,IAAM3B,IAC\/E6B,QAAU,6BAA+BF,KAAO,IAAM3B,GACtD8B,GAAK,6BAA+BH,KAAO,IAAM3B,GAAK,MACtD+B,OAAS,SACH,GAAN\/B,KACA6B,QAAU,mDACVb,UAAYT,SAASqB,cAAc,2BACnCE,GAAK,8CACLC,OAAS,6BAGHd,iBAAiB,yBAA0BX,MAAMY,MAAKc,YAACZ,KAACA,YAC9DJ,UAAUK,mBAAmB,WAAYD,MACzCJ,UAAUiB,UAAUC,IAAIH,WAEzBb,MAAK,SAEAiB,YAAc,YAGdA,YADQ,GAARR,KACc,IAAIS,qBAAY7B,SAASqB,cAAcE,IAAK,wCAE5C,IAAIM,qBAAY7B,SAASqB,cAAcE,IAAK,0CAE9DK,YAAYE,KAAK,IACPrC,QACE2B,OAELQ,eACRjB,MAAMiB,cACLA,YAAY1B,iBAAiB0B,YAAYG,OAAOC,gBAAiB7B,IAC7DA,EAAE8B,iBACFxB,UAAUiB,UAAUQ,OAAOV,QAC3BxB,SAASqB,cAAcC,SAASY,SAChCC,OAAOC,SAASC,YAEpBT,YAAY1B,iBAAiB0B,YAAYG,OAAOO,gBAAiBnC,IAC7DA,EAAE8B,iBACFxB,UAAUiB,UAAUQ,OAAOV,QAC3BxB,SAASqB,cAAcC,SAASY,eAGrCnB,OAAMZ,IAELa,QAAQC,IAAId,MAxHJoC,CAAWpC,EAAEC,OAAOG,QAAQY,SAAUhB,EAAEC,OAAOG,QAAQa,MAE5B,UAA3BjB,EAAEC,OAAOG,QAAQC,qCAEEL,GAKvBA,EAAEC,OAAOoC,gBAAgB,gBA5BjCC,CAAU3C,MAmJUC,KAlJLD,wBAmJLY,iBAAiB,yBAA0BX,KAAK"}