Sindbad~EG File Manager

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

{"version":3,"file":"accessibility.min.js","sources":["../src/accessibility.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 <http://www.gnu.org/licenses/>.\n *\n * @package\n * @author    Oscar Nadjar oscar.nadjar@openlms.net\n * @copyright Copyright (c) 2019 Open LMS (https://www.openlms.net)\n * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\n/**\n * JS code to assign attributes and expected behavior for elements in the Dom regarding accessibility.\n */\ndefine(['jquery', 'core/str', 'core/event'],\n    function($, str, Event) {\n        return {\n            snapAxInit: function(localJouleGrader, allyReport, blockReports, localCatalogue) {\n\n                /**\n                 * Module to get the strings from Snap to add the aria-label attribute to new accessibility features.\n                 */\n                str.get_strings([\n                    {key: 'accessforumstringdis', component: 'theme_snap'},\n                    {key: 'accessforumstringmov', component: 'theme_snap'},\n                    {key: 'calendar', component: 'calendar'},\n                    {key: 'accessglobalsearchstring', component: 'theme_snap'},\n                    {key: 'viewcalendar', component: 'theme_snap'},\n                    {key: 'viewmyfeedback', component: 'theme_snap'},\n                    {key: 'viewmessaging', component: 'theme_snap'},\n                    {key: 'viewforumposts', component: 'theme_snap'},\n                    {key: 'editcoursesettings', component: 'theme_snap'},\n                    {key: 'gradebook', component: 'local_joulegrader'},\n                    {key: 'gradebook', component: 'core_grades'},\n                    {key: 'numparticipants', component: 'core_message'},\n                    {key: 'pld', component: 'theme_snap'},\n                    {key: 'competencies', component: 'core_competency'},\n                    {key: 'outcomes', component: 'core_outcome'},\n                    {key: 'badges', component: 'core_badges'},\n                    {key: 'coursereport', component: 'report_allylti'},\n                    {key: 'pluginname', component: 'local_catalogue'},\n                    {key: 'experimental', component: 'block_reports'}\n                ]).done(function(stringsjs) {\n                    if ($(\"#page-mod-forum-discuss\")) {\n                        $(\"div[data-content='forum-discussion'] div.singleselect form.form-inline \" +\n                            \"select.custom-select.singleselect\").attr(\"aria-label\", stringsjs[0]);\n                        $(\"div[data-content='forum-discussion'] div.movediscussionoption \" +\n                            \"select.custom-select.urlselect\").attr(\"aria-label\", stringsjs[1]);\n                    }\n                    $(\"i.fa-calendar\").parent().attr(\"aria-label\", stringsjs[2]);\n                    $(\"input[name='TimeEventSelector[calendar]']\").attr('aria-label', stringsjs[2]);\n                    var searchbutton = $(\"#mr-nav .simplesearchform a.btn.btn-open\");\n                    $(searchbutton).attr({\n                        title: stringsjs[3],\n                        'aria-label': stringsjs[3],\n                    });\n\n\n                    // Add needed ID's for personal menu links.\n                    $('#snap-pm-updates section a.snap-personal-menu-more small:contains(\"' + stringsjs[4] + '\")')\n                        .attr(\"id\", \"snap-pm-deadline\");\n                    $('#snap-pm-updates section a.snap-personal-menu-more small:contains(\"' + stringsjs[5] + '\")')\n                        .attr(\"id\", \"snap-pm-feedback\");\n                    $('#snap-pm-updates section a.snap-personal-menu-more small:contains(\"' + stringsjs[6] + '\")')\n                        .attr(\"id\", \"snap-pm-messages\");\n                    $('#snap-pm-updates section a.snap-personal-menu-more small:contains(\"' + stringsjs[7] + '\")')\n                        .attr(\"id\", \"snap-pm-forum-posts\");\n\n                    // Add needed ID's for course dashboard.\n                    // These ID's were added for the most used elements in the course dashboard.\n\n                    // There is not a lang string that contains {$a} participants with capital P, and this function helps with that.\n                    // Taken from https://css-tricks.com/snippets/jquery/make-jquery-contains-case-insensitive/\n                    $.expr[\":\"].contains = $.expr.createPseudo(function(arg) {\n                        return function(elem) {\n                            return $(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;\n                        };\n                    });\n                    var ctparticipantsnumber = stringsjs[11].split(\" \");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[8] + '\")')\n                        .attr(\"id\", \"ct-course-settings\");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + ctparticipantsnumber[1] + '\")')\n                        .attr(\"id\", \"ct-participants-number\");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[12] + '\")')\n                        .attr(\"id\", \"ct-pld\");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[13] + '\")')\n                        .attr(\"id\", \"ct-competencies\");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[14] + '\")')\n                        .attr(\"id\", \"ct-outcomes\");\n                    $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[15] + '\")')\n                        .attr(\"id\", \"ct-badges\");\n\n                    // Check if the plugins are installed to pass the strings. These parameters are being passed from\n                    // $initaxvars in snap/classes/output/shared.php. More validations can be added if needed.\n                    if (localJouleGrader) {\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + 'Open Grader' + '\")')\n                            .attr(\"id\", \"ct-open-grader\");\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[9] + '\")')\n                            .attr(\"id\", \"ct-course-gradebook\");\n                    } else {\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[10] + '\")')\n                            .attr(\"id\", \"ct-course-gradebook\");\n                    }\n                    if (blockReports) {\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + 'Open Reports' + '\")')\n                            .attr(\"id\", \"ct-open-reports\");\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[18] + '\")')\n                            .attr(\"id\", \"ct-open-reports-experimental\");\n                    }\n                    if (allyReport) {\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[16] + '\")')\n                            .attr(\"id\", \"ct-ally\");\n                    }\n                    if (localCatalogue) {\n                        $('section#coursetools ul#coursetools-list a:contains(\"' + stringsjs[17] + '\")')\n                            .attr(\"id\", \"ct-open-catalogue\");\n                    }\n\n                    // Add ARIA attributes.\n                    $('div[role=\"main\"] div.sitetopic ul.section.img-text').attr('role', 'presentation');\n                });\n\n                $(document).ready(function() {\n                    // Add necessary attributes to needed DOM elements to new accessibility features.\n                    $(\"#page-mod-data-edit input[id*='url']\").attr(\"type\", \"url\").attr(\"autocomplete\", \"url\");\n                    $(\"#moodle-blocks aside#block-region-side-pre a.sr-only.sr-only-focusable\").attr(\"tabindex\", \"-1\");\n\n                    // Focus first invalid input after a submit is done.\n                    $('.mform').submit(function() {\n                        $('input.form-control.is-invalid:first').focus();\n                    });\n\n                    // Retrieve value from the input buttons from add/remove users in a group inside a course.\n                    var addtext = $('.groupmanagementtable #buttonscell p.arrow_button input[name=\"add\"]').attr('value');\n                    var removetext = $(\".groupmanagementtable #buttonscell p.arrow_button input[name='remove']\").attr('value');\n\n                    // Snap tab panels.\n                    new Tabpanel(\"snap-pm-accessible-tab\");\n                    new Tabpanel(\"modchooser-accessible-tab\");\n\n                    // Wrapping for dropdown elements in the actionable elements in an activity for PLD.\n                    if( $(\".dropdown-item.editing_pld\").closest(\".pld-dropdown\").length == 0 ) {\n                        $(\".dropdown-item.editing_pld\").wrap(\"<li class='pld-dropdown'></li>\");\n                    }\n                    $(\".dropdown-item.editing_pld\").attr(\"role\",\"button\");\n\n                    /**\n                     * Store the references outside the event handler.\n                     * Window reload to change the inputs value for Add and Remove buttons when adding new\n                     * members to a group.\n                     */\n                    var $window = $(window);\n\n                    /**\n                     * Modifies attributes depending on the window size.\n                     */\n                    function checkWidth() {\n                        var windowsize = $window.width();\n                        if (windowsize < 1220) {\n                            $(\".groupmanagementtable #buttonscell p.arrow_button input[name='add']\").attr(\"value\", \"+\");\n                            $(\".groupmanagementtable #buttonscell p.arrow_button input[name='remove']\").attr(\"value\", \"-\");\n                        } else if (windowsize > 1220) {\n                            $(\".groupmanagementtable #buttonscell p.arrow_button input[name='add']\").attr(\"value\", addtext);\n                            $(\".groupmanagementtable #buttonscell p.arrow_button input[name='remove']\").attr(\"value\", removetext);\n                        }\n                    }\n                    // Execute on load\n                    checkWidth();\n                    // Bind event listener\n                    $(window).resize(checkWidth);\n\n                    /**\n                     * Change for the active carousel slide.\n                     */\n                    function carouselAriaCurrentValue() {\n                        var carouselindicator = $('#snap-site-carousel .carousel-indicators button');\n                        carouselindicator.click(function (e) {\n                            var element = $(e.target);\n                            carouselindicator.attr('aria-current', false);\n                            element.attr('aria-current', true);\n                        });\n\n                        /**\n                         * Listener to change aria-current value dynamically.\n                         */\n                        var targetNode = document.getElementById('snap-carousel-container');\n\n                        // Options for the observer (which mutations to observe)\n                        var config = { attributes: true, childList: true, subtree: true };\n\n                        // Callback function to execute when mutations are observed\n                        var callback = () => {\n                            $('.carousel-indicators button').attr('aria-current', false);\n                            $('.carousel-indicators button.active').attr('aria-current', true);\n                        };\n\n                        // Create an observer instance linked to the callback function\n                        var observer = new MutationObserver(callback);\n\n                        if (targetNode) {\n                            // Start observing the target node for configured mutations.\n                            observer.observe(targetNode, config);\n                        }\n                    }\n                    carouselAriaCurrentValue();\n\n                    /**\n                     * Creates a pause and resume cycles for Snap's carousel.\n                     */\n                    function carouselPausePlay() {\n                        $('#snap-site-carousel').carousel({\n                            interval: 6000,\n                            pause: \"false\"\n                        });\n\n                        $('#play-button').click(function () {\n                            $('#snap-site-carousel').carousel('cycle');\n                        });\n                        $('#pause-button').click(function () {\n                            $('#snap-site-carousel').carousel('pause');\n                        });\n                    }\n                    carouselPausePlay();\n                });\n\n                /**\n                 * Add needed accessibility for tabs inside Snap.\n                 * This makes use of Bootstrap accessible tab panel with WAI-ARIA with the arrow keys binding codes.\n                 * @param {string} id\n                 */\n                function Tabpanel(id) {\n                    this._id = id;\n                    this.$tpanel = $('#' + id);\n                    this.$tabs = this.$tpanel.find('.tab');\n                    this.$panels = this.$tpanel.find('.tab-pane');\n                    this.bindHandlers();\n                    this.init();\n                }\n\n                Tabpanel.prototype.keys = {\n                    left: 37,\n                    up: 38,\n                    right: 39,\n                    down: 40\n                };\n\n                Tabpanel.prototype.init = function() {\n                    var $tab;\n                    this.$panels.attr('aria-hidden', 'true');\n                    this.$panels.removeClass('active in');\n                    $tab = this.$tabs.filter('.active');\n                    if ($tab === undefined) {\n                        $tab = this.$tabs.first();\n                        $tab.addClass('active');\n                    }\n                    this.$tpanel\n                        .find('#' + $tab.find('a').attr('aria-controls'))\n                        .addClass('active in').attr('aria-hidden', 'false');\n                };\n\n                Tabpanel.prototype.switchTabs = function($curTab, $newTab) {\n                    var $curTabLink = $curTab.find('a'),\n                        $newTabLink = $newTab.find('a');\n                    $curTab.removeClass('active');\n                    $curTabLink.attr('tabindex', '-1').attr('aria-selected', 'false');\n                    $newTab.addClass('active');\n                    $newTabLink.attr('aria-selected', 'true');\n                    this.$tpanel\n                        .find('#' + $curTabLink.attr('aria-controls'))\n                        .removeClass('active in').attr('aria-hidden', 'true');\n                    this.$tpanel\n                        .find('#' + $newTabLink.attr('aria-controls'))\n                        .addClass('active in').attr('aria-hidden', 'false');\n                    $newTabLink.attr('tabindex', '0');\n                    $newTabLink.focus();\n                };\n\n                Tabpanel.prototype.bindHandlers = function() {\n                    var self = this;\n                    this.$tabs.keydown(function(e) {\n                        return self.handleTabKeyDown($(this), e);\n                    });\n                    this.$tabs.click(function(e) {\n                        return self.handleTabClick($(this), e);\n                    });\n                };\n\n                Tabpanel.prototype.handleTabKeyDown = function($tab, e) {\n                    var $newTab, tabIndex;\n                    switch (e.keyCode) {\n                        case this.keys.left:\n                        case this.keys.up: {\n                            tabIndex = this.$tabs.index($tab);\n                            if (tabIndex === 0) {\n                                $newTab = this.$tabs.last();\n                            } else {\n                                $newTab = this.$tabs.eq(tabIndex - 1);\n                            }\n                            this.switchTabs($tab, $newTab);\n                            e.preventDefault();\n                            return false;\n                        }\n                        case this.keys.right:\n                        case this.keys.down: {\n                            tabIndex = this.$tabs.index($tab);\n                            if (tabIndex === this.$tabs.length - 1) {\n                                $newTab = this.$tabs.first();\n                            } else {\n                                $newTab = this.$tabs.eq(tabIndex + 1);\n                            }\n                            this.switchTabs($tab, $newTab);\n                            e.preventDefault();\n                            return false;\n                        }\n                    }\n                };\n\n                Tabpanel.prototype.handleTabClick = function($tab) {\n                    var $oldTab = this.$tpanel.find('.tab.active');\n                    this.switchTabs($oldTab, $tab);\n                };\n            },\n\n            /**\n             * Custom form error event handler to manipulate the bootstrap markup and show\n             * nicely styled errors in an mform focusing the necessary elements in the form.\n             * @param {string} elementid\n             */\n            enhanceform: function(elementid) {\n                var element = document.getElementById(elementid);\n                $(element).on(Event.Events.FORM_FIELD_VALIDATION, function(event, msg) {\n                    event.preventDefault();\n                    var parent = $(element).closest('.form-group');\n                    var feedback = parent.find('.form-control-feedback');\n                    var invalidinput = parent.find('input.form-control.is-invalid');\n\n                    // Sometimes (atto) we have a hidden textarea backed by a real contenteditable div.\n                    if (($(element).prop(\"tagName\") == 'TEXTAREA') && parent.find('[contenteditable]')) {\n                        element = parent.find('[contenteditable]');\n                    }\n                    if (msg !== '') {\n                        parent.addClass('has-danger');\n                        parent.data('client-validation-error', true);\n                        $(element).addClass('is-invalid');\n                        $(element).attr('aria-describedby', feedback.attr('id'));\n                        $(element).attr('aria-invalid', true);\n                        invalidinput.attr('tabindex', 0);\n                        feedback.html(msg);\n\n                        // Only display and focus when the error was not already visible.\n                        if (!feedback.is(':visible')) {\n                            feedback.show();\n                            feedback.focus();\n                        }\n                    } else {\n                        if (parent.data('client-validation-error') === true) {\n                            parent.removeClass('has-danger');\n                            parent.data('client-validation-error', false);\n                            $(element).removeClass('is-invalid');\n                            $(element).removeAttr('aria-describedby');\n                            $(element).attr('aria-invalid', false);\n                            feedback.hide();\n                        }\n                    }\n                });\n            }\n        };\n    }\n);\n"],"names":["define","$","str","Event","snapAxInit","localJouleGrader","allyReport","blockReports","localCatalogue","Tabpanel","id","_id","$tpanel","$tabs","this","find","$panels","bindHandlers","init","get_strings","key","component","done","stringsjs","attr","parent","searchbutton","title","expr","contains","createPseudo","arg","elem","text","toUpperCase","indexOf","ctparticipantsnumber","split","document","ready","submit","focus","addtext","removetext","closest","length","wrap","$window","window","checkWidth","windowsize","width","resize","carouselindicator","click","e","element","target","targetNode","getElementById","observer","MutationObserver","observe","attributes","childList","subtree","carouselAriaCurrentValue","carousel","interval","pause","prototype","keys","left","up","right","down","$tab","removeClass","undefined","filter","first","addClass","switchTabs","$curTab","$newTab","$curTabLink","$newTabLink","self","keydown","handleTabKeyDown","handleTabClick","tabIndex","keyCode","index","last","eq","preventDefault","$oldTab","enhanceform","elementid","on","Events","FORM_FIELD_VALIDATION","event","msg","feedback","invalidinput","prop","data","html","is","show","removeAttr","hide"],"mappings":"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"}

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