Proyectos de Subversion Moodle

Rev

Autoría | Ultima modificación | Ver Log |

{"version":3,"file":"activity_picker_button.min.js","sources":["../src/activity_picker_button.js"],"sourcesContent":["// 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 <http://www.gnu.org/licenses/>.\n\n/**\n * unilabel helper for activity picker button\n *\n * @author      Andreas Grabs <info@grabs-edv.de>\n * @copyright   2018 onwards Grabs EDV {@link https://www.grabs-edv.de}\n * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\nimport $ from 'jquery';\nimport log from 'core/log';\n\nexport const init = async(formid, inputidbase) => {\n    const str = await import('core/str');\n    const deletestr = await str.get_string('delete');\n    // The inputswitcher switches an text input element into a hidden element and added an activitylink clone.\n    const inputswitcher = await import('mod_unilabel/activity_picker_input_switcher');\n\n    let pickerlist = document.querySelector('#unilabel-activity-picker-list');\n    let links = pickerlist.querySelectorAll('a.activity-picker-link');\n\n    let maybeactivityelement;\n\n    log.debug('Get all picker-button-links');\n    let pickerbuttons = document.querySelectorAll('a.unilabel-picker-button-link');\n    log.debug(pickerbuttons);\n    pickerbuttons.forEach(el => {\n        try {\n            let id = el.parentElement.parentElement.parentElement.id.split(\"_\").slice(-1);\n            if (id) {\n                let currentinput = document.querySelector('#' + inputidbase + id);\n                log.debug(currentinput.value);\n                links.forEach(link => {\n                    if (link.href == currentinput.value) {\n                        let activitylinksrc = link.closest('.activitytitle');\n                        maybeactivityelement = currentinput.parentElement.querySelector(\n                            'div.activitytitle.unilabel-input-replacement'\n                        );\n                        if (maybeactivityelement) {\n                            return;\n                        }\n\n                        inputswitcher.switchInput(currentinput, activitylinksrc, currentinput.value, false, deletestr);\n                    }\n                });\n            }\n        } catch (error) {\n            log.debug(error);\n        }\n    });\n\n    $('[data-button=\"' + formid + '\"]').on('click', function(event) {\n        event.preventDefault();\n        // Get the id (repeat number) from parent element.\n        var id = $(this).parent().parent().parent().attr('id').split(\"_\").slice(-1);\n        var currentinput = inputidbase + id;\n\n        $('#unilabel-modal-activity-picker-' + formid).attr('data-inputid', currentinput);\n        $('#unilabel-modal-activity-picker-' + formid).modal('show');\n    });\n};\n"],"names":["async","formid","inputidbase","str","deletestr","get_string","inputswitcher","maybeactivityelement","links","document","querySelector","querySelectorAll","debug","pickerbuttons","forEach","el","id","parentElement","split","slice","currentinput","value","link","href","activitylinksrc","closest","switchInput","error","on","event","preventDefault","this","parent","attr","modal"],"mappings":"ufA0BoBA,MAAMC,OAAQC,qBACxBC,olBACAC,gBAAkBD,IAAIE,WAAW,UAEjCC,2sBAKFC,qBAFAC,MADaC,SAASC,cAAc,kCACjBC,iBAAiB,uCAIpCC,MAAM,mCACNC,cAAgBJ,SAASE,iBAAiB,8CAC1CC,MAAMC,eACVA,cAAcC,SAAQC,aAEVC,GAAKD,GAAGE,cAAcA,cAAcA,cAAcD,GAAGE,MAAM,KAAKC,OAAO,MACvEH,GAAI,KACAI,aAAeX,SAASC,cAAc,IAAMR,YAAcc,iBAC1DJ,MAAMQ,aAAaC,OACvBb,MAAMM,SAAQQ,UACNA,KAAKC,MAAQH,aAAaC,MAAO,KAC7BG,gBAAkBF,KAAKG,QAAQ,qBACnClB,qBAAuBa,aAAaH,cAAcP,cAC9C,gDAEAH,4BAIJD,cAAcoB,YAAYN,aAAcI,gBAAiBJ,aAAaC,OAAO,EAAOjB,gBAIlG,MAAOuB,oBACDf,MAAMe,+BAIhB,iBAAmB1B,OAAS,MAAM2B,GAAG,SAAS,SAASC,OACrDA,MAAMC,qBAEFd,IAAK,mBAAEe,MAAMC,SAASA,SAASA,SAASC,KAAK,MAAMf,MAAM,KAAKC,OAAO,GACrEC,aAAelB,YAAcc,uBAE/B,mCAAqCf,QAAQgC,KAAK,eAAgBb,kCAClE,mCAAqCnB,QAAQiC,MAAM"}