Sindbad~EG File Manager

Current Path : /var/www/html/ch.sumar.com.py/cursos/theme/snap/amd/build/
Upload File :
Current File : /var/www/html/ch.sumar.com.py/cursos/theme/snap/amd/build/sharing_cart.min.js.map

{"version":3,"file":"sharing_cart.min.js","sources":["../src/sharing_cart.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 *  Sharing Cart\n *\n *  @package\n *  @copyright  Copyright (c) 2020 Open LMS (https://www.openlms.net)\n *  @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\nimport $ from 'jquery';\n\nexport default class SharingCartForSnap {\n    constructor(courseSections) {\n        this.snapSpinner = '';\n        this.courseSections = courseSections;\n    }\n\n    /**\n     * Get a string from moodle\n     * @param {String} identifier\n     * @returns {String}\n     */\n    str = (identifier) => {\n        return M.str.block_sharing_cart[identifier] || M.str.moodle[identifier];\n    };\n    /**\n     * Sets a create command pointer\n     * @param {string} create_command\n     */\n    setCreateCommand = (create_command) => {\n        this.create_command = create_command;\n    };\n    /**\n     *  Create a custom command icon\n     *  @param {String} cssClass The css class for the icon\n     *  @param {String} title The title and tooltip for the icon\n     *  @param {String} imageUrl Image URL for the icon\n     */\n    create_special_activity_command = (cssClass, title, imageUrl) => {\n        return $('<a href=\"javascript:void(0)\"/>')\n            .addClass(cssClass)\n            .addClass('dropdown-item menu-action cm-edit-action')\n            .attr('title', title)\n            .append(\n                $('<img class=\"icon\"/>')\n                    .attr('alt', title)\n                    .attr('src', imageUrl)\n            );\n    };\n    /**\n     * Adds a spinner when necessary\n     * @param {function} spinner\n     */\n    addSpinner = (spinner) => {\n        if (this.snapSpinner) {\n            this.snapSpinner.show();\n        } else {\n            this.snapSpinner = spinner;\n        }\n    };\n    /**\n     * Hides the spinner if exist\n     */\n    hideSpinner = () => {\n        if (this.snapSpinner) {\n            this.snapSpinner.hide();\n        }\n    };\n    /**\n     * Creates a custom modal when restoring a sharing cart activity/module\n     * @param {Object} input\n     */\n    onRestore = (input) => {\n        const restore_targets = input.restore_targets;\n        const course = input.course;\n        const param = input.param;\n        const get_action_url = input.get_action_url;\n        const ModalFactory = input.ModalFactory;\n        const ModalEvents = input.ModalEvents;\n        const id = input.id;\n\n        var sectionsURLs = [];\n        this.courseSections.forEach(function(section) {\n            var urlArray = {\n                'directory': restore_targets.is_directory,\n                'course'   : course.id,\n                'section'  : section.num,\n                'sesskey'  : M.cfg.sesskey\n            };\n            urlArray[param] = id;\n            var url = get_action_url('restore', urlArray);\n\n            var sectionName = null;\n            if (section.name === null) {\n                $('#chapters').find('.chapter-title').each(function() {\n                    var currSection = $(this).attr('href');\n                    if (currSection == '#section-'+section.num) {\n                        sectionName = $(this).text();\n                    }\n                });\n            } else {\n                sectionName = section.name;\n            }\n            var sectionURL = {\n                name : sectionName,\n                url : url\n            };\n            sectionsURLs.push(sectionURL);\n        });\n\n        ModalFactory.create({\n            type: ModalFactory.types.SAVE_CANCEL,\n            title: M.str.block_sharing_cart['restore'],\n            body: ((sections) => {\n                var s = M.str.block_sharing_cart['snap_dialog_restore'];\n                // Create Select element.\n                s += '<select id=\"select-dialog\" class=\"custom-select\">';\n                for(var i = 0; i < sections.length; i++) {\n                    s += '<option value=\"' + sections[i].url + '\">' + sections[i].name + '</option>';\n                }\n                s += '</select> <br> <br>';\n                return s;\n            })(sectionsURLs)\n        })\n            .done(function(modal) {\n                modal.show();\n                modal.getRoot().on(ModalEvents.save, function() {\n                    window.location.href = $('#select-dialog').val();\n                });\n                modal.getRoot().on(ModalEvents.cancel, function() {\n                    modal.destroy();\n                });\n            });\n    };\n\n    /**\n     *\n     * @param {node} $activity\n     * @param {object} iconBackup\n     * @param {function} on_backup\n     */\n    add_backup_command = ($activity, iconBackup, on_backup) => {\n        var $menu = $activity.find(\"ul[role='menu']\");\n\n        if($menu.length)\n        {\n            var li = $menu.find('li').first().clone();\n            var $backup = li.find('a').attr('title', this.str('backup'))\n                .attr('href', 'javascript:void(0)'); //eslint-disable-line no-script-url\n            var img = li.find('img');\n\n            if (img.length) {\n                li.find('img')\n                    .attr('alt', this.str('backup'))\n                    .attr('title', this.str('backup'))\n                    .attr('src', M.util.image_url(iconBackup.pix));\n            } else {\n                li.find('i')\n                    .attr('class', 'icon fa fa-upload')\n                    .attr('title', this.str('backup'))\n                    .attr('aria-label', this.str('backup'));\n            }\n\n            li.find('span').html(this.str('backup'));\n            $menu.append(li);\n        }\n        else\n        {\n            var $backup = this.create_command(\"backup\");\n            if ($('#page-course-view-tiles').length) {\n                $menu = $activity.find('div[role=\"menu\"]');\n            } else {\n                $menu = $activity.find('div.snap-edit-more-dropdown ul.dropdown-menu');\n            }\n            if($menu.length)\n            {\n                const cssClass = iconBackup.css;\n                const title = this.str('backup');\n                const imageUrl =  M.util.image_url(iconBackup.pix);\n                $backup = this.create_special_activity_command(cssClass, title, imageUrl);\n\n                if($menu.css(\"display\") === \"none\")\n                {\n                    var $button = $menu.find('.editing_backup');\n                    if ($button.length == 0) {\n                        $menu.append($backup);\n                        $backup.append($(\"<span class='menu-action-text'/>\").append($backup.attr('title')));\n                    }\n                }\n            }\n            else\n            {\n                $activity.find(\".commands\").append($backup);\n            }\n        }\n        // Get activity name\n        var activityClass = $activity[0].className;\n        var modtype = activityClass.substr(activityClass.indexOf('modtype_') + 8);\n        var activityName = this.str('activity_string');\n        if (modtype !== 'label') {\n            activityName = $('.activity#' + $activity[0].id)\n                .find('.activityinstance p.instancename')\n                .html();\n        }\n\n        $backup.click(function(e)\n        {\n            on_backup(e, activityName);\n        });\n    };\n\n    snapFix = (input) => {\n        const course = input.course;\n        const iconBackup = input.iconBackup;\n        const on_section_backup = input.on_section_backup;\n        const on_backup = input.on_backup;\n        const _this = this;\n\n        if(course.is_frontpage)\n        {\n            if($('.sitetopic li.activity').length > 0)\n            {\n                var valid = $('.sitetopic li.activity').data('block-sharing-cart');\n                if(valid !== 'done')\n                {\n                    $('.sitetopic li.activity').each(function()\n                    {\n                        _this.add_backup_command($(this), iconBackup, on_backup);\n                    });\n                    $('.sitetopic li.activity').data(\"block-sharing-cart\", \"done\");\n                }\n            }\n            if($('.block_site_main_menu').length > 0)\n            {\n                var valid = $('.block_site_main_menu .content > ul >  li').data('block-sharing-cart');\n                if(valid !== 'done')\n                {\n                    $('.block_site_main_menu .content > ul >  li').each(function()\n                    {\n                        _this.add_backup_command($(this), iconBackup, on_backup);\n                    });\n                    $('.block_site_main_menu .content > ul >  li').data(\"block-sharing-cart\", \"done\");\n                }\n            }\n        }\n        else\n        {\n            if($('.course-content li.activity').length > 0)\n            {\n                var valid = $('.course-content li.activity').data('block-sharing-cart');\n                if(valid !== 'done' || this.courseSections.length == 1)\n                {\n                    $('.course-content li.activity').each(function()\n                    {\n                        _this.add_backup_command($(this), iconBackup, on_backup);\n                    });\n                    $('.course-content li.activity').data(\"block-sharing-cart\", \"done\");\n                }\n            }\n        }\n\n        if (M.cfg.theme !== 'snap') {\n            let _this = this;\n            $(\"li.section\").each(function () {\n                var sectionID = $(this).find(\"div.content h3.sectionname span.inplaceeditable\").attr(\"data-itemid\");\n\n                var $menu = $(this).find(\"ul[role='menu']\").first();\n\n                if ($menu.length){\n                    var li = $menu.find('li').first().clone();\n                    var img = li.find('img');\n\n                    if (img.length) {\n                        img.attr('alt', _this.str('backup'))\n                            .attr('title', _this.str('backup'))\n                            .attr('src', M.util.image_url(iconBackup.pix, null));\n                    } else {\n                        li.find('i')\n                            .attr('class', 'icon fa fa-upload')\n                            .attr('title', _this.str('backup'))\n                            .attr('aria-label', _this.str('backup'));\n                    }\n\n                    li.find('span').html(_this.str('backup'));\n                    li.find('a').attr('href', 'javascript:void(0)'); //eslint-disable-line no-script-url\n\n                    $menu.append(li);\n\n                    li.find('a').click(function () {\n                        on_section_backup(sectionID);\n                    });\n                }\n                else {\n                    $menu = $(this).find(\"div[role='menu']\").first();\n\n                    var $backup = null;\n\n                    if ($menu.length) {\n                        const cssClass = iconBackup.css;\n                        const title = _this.str('backup');\n                        const imageUrl =  M.util.image_url(iconBackup.pix);\n                        $backup = _this.create_special_activity_command(cssClass, title, imageUrl);\n                        $menu.append($backup.attr(\"role\", \"menuitem\"));\n\n                        if ($menu.css(\"display\") === \"none\") {\n                            $backup.append($(\"<span class='menu-action-text'/>\").append($backup.attr('title')));\n                        }\n                    }\n                    else {\n                        $backup = _this.create_command(\"backup\");\n                        $(this).find(\".commands\").append($backup);\n                    }\n\n                    $backup.click(function () {\n                        on_section_backup(sectionID);\n                    });\n                }\n            });\n        } else {\n            $.each($(\"a.snap-delete\"), function(i, val)\n            {\n                var sectionID = $(val).attr(\"href\").split('?')[1].split('&')[0].split('=')[1];\n                var $link = $('<a/>').attr('class', 'snap-sharing-cart').attr('role', 'button').attr('id', sectionID);\n                $link.attr('tabindex', '0').attr('title', 'Backup Section');\n                var $button = $(val).parent().find('a.snap-sharing-cart');\n                if ($button.length == 0) {\n                    $(val).parent().append($link);\n                }\n            });\n\n            $('a.snap-sharing-cart').unbind().click(function () {\n                const sectionId = $(this).attr('id');\n                const section = _this.courseSections ? _this.courseSections.find(section => section['id'] === sectionId)\n                    : {num: 0, name: undefined};\n                const sectionNumber = section['num'];\n                const courseId = course.id;\n                const sectionName = section['name'] === null ? undefined : section['name'];\n                on_section_backup(sectionId, sectionNumber, courseId, sectionName);\n            });\n        }\n    };\n}"],"names":["constructor","courseSections","identifier","M","str","block_sharing_cart","moodle","create_command","cssClass","title","imageUrl","addClass","attr","append","spinner","this","snapSpinner","show","hide","input","restore_targets","course","param","get_action_url","ModalFactory","ModalEvents","id","sectionsURLs","forEach","section","urlArray","is_directory","num","cfg","sesskey","url","sectionName","name","find","each","text","sectionURL","push","create","type","types","SAVE_CANCEL","body","sections","s","i","length","done","modal","getRoot","on","save","window","location","href","val","cancel","destroy","$activity","iconBackup","on_backup","$menu","li","first","clone","$backup","util","image_url","pix","html","css","create_special_activity_command","activityClass","className","modtype","substr","indexOf","activityName","click","e","on_section_backup","_this","is_frontpage","data","add_backup_command","theme","sectionID","img","split","$link","parent","unbind","sectionId","undefined","sectionNumber","courseId"],"mappings":"oaA0BIA,YAAYC,4CAULC,YACIC,EAAEC,IAAIC,mBAAmBH,aAAeC,EAAEC,IAAIE,OAAOJ,uDAM5CK,sBACXA,eAAiBA,0EAQQ,CAACC,SAAUC,MAAOC,YACzC,mBAAE,kCACJC,SAASH,UACTG,SAAS,4CACTC,KAAK,QAASH,OACdI,QACG,mBAAE,uBACGD,KAAK,MAAOH,OACZG,KAAK,MAAOF,gDAOfI,UACNC,KAAKC,iBACAA,YAAYC,YAEZD,YAAcF,+CAMb,KACNC,KAAKC,kBACAA,YAAYE,4CAOZC,cACHC,gBAAkBD,MAAMC,gBACxBC,OAASF,MAAME,OACfC,MAAQH,MAAMG,MACdC,eAAiBJ,MAAMI,eACvBC,aAAeL,MAAMK,aACrBC,YAAcN,MAAMM,YACpBC,GAAKP,MAAMO,OAEbC,aAAe,QACd1B,eAAe2B,SAAQ,SAASC,aAC7BC,SAAW,WACEV,gBAAgBW,oBAChBV,OAAOK,WACPG,QAAQG,YACR7B,EAAE8B,IAAIC,SAEvBJ,SAASR,OAASI,OACdS,IAAMZ,eAAe,UAAWO,UAEhCM,YAAc,KACG,OAAjBP,QAAQQ,yBACN,aAAaC,KAAK,kBAAkBC,MAAK,YACrB,mBAAExB,MAAMH,KAAK,SACZ,YAAYiB,QAAQG,MACnCI,aAAc,mBAAErB,MAAMyB,WAI9BJ,YAAcP,QAAQQ,SAEtBI,WAAa,CACbJ,KAAOD,YACPD,IAAMA,KAEVR,aAAae,KAAKD,eAGtBjB,aAAamB,OAAO,CAChBC,KAAMpB,aAAaqB,MAAMC,YACzBrC,MAAON,EAAEC,IAAIC,mBAAN,QACP0C,KAAM,CAAEC,eACAC,EAAI9C,EAAEC,IAAIC,mBAAN,oBAER4C,GAAK,wDACD,IAAIC,EAAI,EAAGA,EAAIF,SAASG,OAAQD,IAChCD,GAAK,kBAAoBD,SAASE,GAAGf,IAAM,KAAOa,SAASE,GAAGb,KAAO,mBAEzEY,GAAK,uBAPH,CASHtB,gBAEFyB,MAAK,SAASC,OACXA,MAAMpC,OACNoC,MAAMC,UAAUC,GAAG9B,YAAY+B,MAAM,WACjCC,OAAOC,SAASC,MAAO,mBAAE,kBAAkBC,SAE/CP,MAAMC,UAAUC,GAAG9B,YAAYoC,QAAQ,WACnCR,MAAMS,8DAWD,CAACC,UAAWC,WAAYC,iBACrCC,MAAQH,UAAUzB,KAAK,sBAExB4B,MAAMf,OACT,KACQgB,GAAKD,MAAM5B,KAAK,MAAM8B,QAAQC,QAC9BC,QAAUH,GAAG7B,KAAK,KAAK1B,KAAK,QAASG,KAAKX,IAAI,WAC7CQ,KAAK,OAAQ,sBACRuD,GAAG7B,KAAK,OAEVa,OACJgB,GAAG7B,KAAK,OACH1B,KAAK,MAAOG,KAAKX,IAAI,WACrBQ,KAAK,QAASG,KAAKX,IAAI,WACvBQ,KAAK,MAAOT,EAAEoE,KAAKC,UAAUR,WAAWS,MAE7CN,GAAG7B,KAAK,KACH1B,KAAK,QAAS,qBACdA,KAAK,QAASG,KAAKX,IAAI,WACvBQ,KAAK,aAAcG,KAAKX,IAAI,WAGrC+D,GAAG7B,KAAK,QAAQoC,KAAK3D,KAAKX,IAAI,WAC9B8D,MAAMrD,OAAOsD,QAGjB,CACQG,QAAUvD,KAAKR,eAAe,cAE9B2D,OADA,mBAAE,2BAA2Bf,OACrBY,UAAUzB,KAAK,oBAEfyB,UAAUzB,KAAK,iDAElBa,OACT,OACU3C,SAAWwD,WAAWW,IACtBlE,MAAQM,KAAKX,IAAI,UACjBM,SAAYP,EAAEoE,KAAKC,UAAUR,WAAWS,QAC9CH,QAAUvD,KAAK6D,gCAAgCpE,SAAUC,MAAOC,UAEpC,SAAzBwD,MAAMS,IAAI,WAGa,GADRT,MAAM5B,KAAK,mBACba,SACRe,MAAMrD,OAAOyD,SACbA,QAAQzD,QAAO,mBAAE,oCAAoCA,OAAOyD,QAAQ1D,KAAK,iBAMjFmD,UAAUzB,KAAK,aAAazB,OAAOyD,aAIvCO,cAAgBd,UAAU,GAAGe,UAC7BC,QAAUF,cAAcG,OAAOH,cAAcI,QAAQ,YAAc,GACnEC,aAAenE,KAAKX,IAAI,mBACZ,UAAZ2E,UACAG,cAAe,mBAAE,aAAenB,UAAU,GAAGrC,IACxCY,KAAK,oCACLoC,QAGTJ,QAAQa,OAAM,SAASC,GAEnBnB,UAAUmB,EAAGF,oDAIV/D,cACDE,OAASF,MAAME,OACf2C,WAAa7C,MAAM6C,WACnBqB,kBAAoBlE,MAAMkE,kBAC1BpB,UAAY9C,MAAM8C,UAClBqB,MAAQvE,QAEXM,OAAOkE,aACV,KACO,mBAAE,0BAA0BpC,OAAS,EAGvB,UADD,mBAAE,0BAA0BqC,KAAK,4CAGvC,0BAA0BjD,MAAK,WAE7B+C,MAAMG,oBAAmB,mBAAE1E,MAAOiD,WAAYC,kCAEhD,0BAA0BuB,KAAK,qBAAsB,aAG5D,mBAAE,yBAAyBrC,OAAS,EAGtB,UADD,mBAAE,6CAA6CqC,KAAK,4CAG1D,6CAA6CjD,MAAK,WAEhD+C,MAAMG,oBAAmB,mBAAE1E,MAAOiD,WAAYC,kCAEhD,6CAA6CuB,KAAK,qBAAsB,aAKtF,KACO,mBAAE,+BAA+BrC,OAAS,EAG5B,UADD,mBAAE,+BAA+BqC,KAAK,uBACG,GAA9BzE,KAAKd,eAAekD,6BAErC,+BAA+BZ,MAAK,WAElC+C,MAAMG,oBAAmB,mBAAE1E,MAAOiD,WAAYC,kCAEhD,+BAA+BuB,KAAK,qBAAsB,YAKpD,SAAhBrF,EAAE8B,IAAIyD,MAAkB,KACpBJ,MAAQvE,yBACV,cAAcwB,MAAK,eACboD,WAAY,mBAAE5E,MAAMuB,KAAK,mDAAmD1B,KAAK,eAEjFsD,OAAQ,mBAAEnD,MAAMuB,KAAK,mBAAmB8B,WAExCF,MAAMf,OAAO,KACTgB,GAAKD,MAAM5B,KAAK,MAAM8B,QAAQC,QAC9BuB,IAAMzB,GAAG7B,KAAK,OAEdsD,IAAIzC,OACJyC,IAAIhF,KAAK,MAAO0E,MAAMlF,IAAI,WACrBQ,KAAK,QAAS0E,MAAMlF,IAAI,WACxBQ,KAAK,MAAOT,EAAEoE,KAAKC,UAAUR,WAAWS,IAAK,OAElDN,GAAG7B,KAAK,KACH1B,KAAK,QAAS,qBACdA,KAAK,QAAS0E,MAAMlF,IAAI,WACxBQ,KAAK,aAAc0E,MAAMlF,IAAI,WAGtC+D,GAAG7B,KAAK,QAAQoC,KAAKY,MAAMlF,IAAI,WAC/B+D,GAAG7B,KAAK,KAAK1B,KAAK,OAAQ,sBAE1BsD,MAAMrD,OAAOsD,IAEbA,GAAG7B,KAAK,KAAK6C,OAAM,WACfE,kBAAkBM,kBAGrB,KAGGrB,QAAU,SAFdJ,OAAQ,mBAAEnD,MAAMuB,KAAK,oBAAoB8B,SAI/BjB,OAAQ,OACR3C,SAAWwD,WAAWW,IACtBlE,MAAQ6E,MAAMlF,IAAI,UAClBM,SAAYP,EAAEoE,KAAKC,UAAUR,WAAWS,KAC9CH,QAAUgB,MAAMV,gCAAgCpE,SAAUC,MAAOC,UACjEwD,MAAMrD,OAAOyD,QAAQ1D,KAAK,OAAQ,aAEL,SAAzBsD,MAAMS,IAAI,YACVL,QAAQzD,QAAO,mBAAE,oCAAoCA,OAAOyD,QAAQ1D,KAAK,gBAI7E0D,QAAUgB,MAAM/E,eAAe,8BAC7BQ,MAAMuB,KAAK,aAAazB,OAAOyD,SAGrCA,QAAQa,OAAM,WACVE,kBAAkBM,uCAK5BpD,MAAK,mBAAE,kBAAkB,SAASW,EAAGU,SAE/B+B,WAAY,mBAAE/B,KAAKhD,KAAK,QAAQiF,MAAM,KAAK,GAAGA,MAAM,KAAK,GAAGA,MAAM,KAAK,GACvEC,OAAQ,mBAAE,QAAQlF,KAAK,QAAS,qBAAqBA,KAAK,OAAQ,UAAUA,KAAK,KAAM+E,WAC3FG,MAAMlF,KAAK,WAAY,KAAKA,KAAK,QAAS,kBAEpB,IADR,mBAAEgD,KAAKmC,SAASzD,KAAK,uBACvBa,4BACNS,KAAKmC,SAASlF,OAAOiF,8BAI7B,uBAAuBE,SAASb,OAAM,iBAC9Bc,WAAY,mBAAElF,MAAMH,KAAK,MACzBiB,QAAUyD,MAAMrF,eAAiBqF,MAAMrF,eAAeqC,MAAKT,SAAWA,QAAO,KAAWoE,YACxF,CAACjE,IAAK,EAAGK,UAAM6D,GACfC,cAAgBtE,QAAO,IACvBuE,SAAW/E,OAAOK,GAClBU,YAAkC,OAApBP,QAAO,UAAoBqE,EAAYrE,QAAO,KAClEwD,kBAAkBY,UAAWE,cAAeC,SAAUhE,wBApUzDpB,YAAc,QACdf,eAAiBA"}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists