HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/8.0.30
System: Linux multiplicar 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue Oct 17 15:42:21 UTC 2023 x86_64
User: root (0)
PHP: 8.0.30
Disabled: NONE
Upload Files
File: /var/www/html/ceade.tocsa.com.py/calendar/amd/build/calendar.min.js.map
{"version":3,"file":"calendar.min.js","sources":["../src/calendar.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 * This module is the highest level module for the calendar. It is\n * responsible for initialising all of the components required for\n * the calendar to run. It also coordinates the interaction between\n * components by listening for and responding to different events\n * triggered within the calendar UI.\n *\n * @module     core_calendar/calendar\n * @copyright  2017 Simey Lameze <simey@moodle.com>\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\ndefine([\n            'jquery',\n            'core/ajax',\n            'core/str',\n            'core/templates',\n            'core/notification',\n            'core/custom_interaction_events',\n            'core/modal_events',\n            'core/modal_factory',\n            'core_calendar/modal_event_form',\n            'core_calendar/summary_modal',\n            'core_calendar/repository',\n            'core_calendar/events',\n            'core_calendar/view_manager',\n            'core_calendar/crud',\n            'core_calendar/selectors',\n        ],\n        function(\n            $,\n            Ajax,\n            Str,\n            Templates,\n            Notification,\n            CustomEvents,\n            ModalEvents,\n            ModalFactory,\n            ModalEventForm,\n            SummaryModal,\n            CalendarRepository,\n            CalendarEvents,\n            CalendarViewManager,\n            CalendarCrud,\n            CalendarSelectors\n        ) {\n\n    var SELECTORS = {\n        ROOT: \"[data-region='calendar']\",\n        DAY: \"[data-region='day']\",\n        NEW_EVENT_BUTTON: \"[data-action='new-event-button']\",\n        DAY_CONTENT: \"[data-region='day-content']\",\n        LOADING_ICON: '.loading-icon',\n        VIEW_DAY_LINK: \"[data-action='view-day-link']\",\n        CALENDAR_MONTH_WRAPPER: \".calendarwrapper\",\n        TODAY: '.today',\n    };\n\n    /**\n     * Handler for the drag and drop move event. Provides a loading indicator\n     * while the request is sent to the server to update the event start date.\n     *\n     * Triggers a eventMoved calendar javascript event if the event was successfully\n     * updated.\n     *\n     * @param {event} e The calendar move event\n     * @param {int} eventId The event id being moved\n     * @param {object|null} originElement The jQuery element for where the event is moving from\n     * @param {object} destinationElement The jQuery element for where the event is moving to\n     */\n    var handleMoveEvent = function(e, eventId, originElement, destinationElement) {\n        var originTimestamp = null;\n        var destinationTimestamp = destinationElement.attr('data-day-timestamp');\n\n        if (originElement) {\n            originTimestamp = originElement.attr('data-day-timestamp');\n        }\n\n        // If the event has actually changed day.\n        if (!originElement || originTimestamp != destinationTimestamp) {\n            Templates.render('core/loading', {})\n                .then(function(html, js) {\n                    // First we show some loading icons in each of the days being affected.\n                    destinationElement.find(SELECTORS.DAY_CONTENT).addClass('hidden');\n                    Templates.appendNodeContents(destinationElement, html, js);\n\n                    if (originElement) {\n                        originElement.find(SELECTORS.DAY_CONTENT).addClass('hidden');\n                        Templates.appendNodeContents(originElement, html, js);\n                    }\n                    return;\n                })\n                .then(function() {\n                    // Send a request to the server to make the change.\n                    return CalendarRepository.updateEventStartDay(eventId, destinationTimestamp);\n                })\n                .then(function() {\n                    // If the update was successful then broadcast an event letting the calendar\n                    // know that an event has been moved.\n                    $('body').trigger(CalendarEvents.eventMoved, [eventId, originElement, destinationElement]);\n                    return;\n                })\n                .always(function() {\n                    // Always remove the loading icons regardless of whether the update\n                    // request was successful or not.\n                    var destinationLoadingElement = destinationElement.find(SELECTORS.LOADING_ICON);\n                    destinationElement.find(SELECTORS.DAY_CONTENT).removeClass('hidden');\n                    Templates.replaceNode(destinationLoadingElement, '', '');\n\n                    if (originElement) {\n                        var originLoadingElement = originElement.find(SELECTORS.LOADING_ICON);\n                        originElement.find(SELECTORS.DAY_CONTENT).removeClass('hidden');\n                        Templates.replaceNode(originLoadingElement, '', '');\n                    }\n                    return;\n                })\n                .fail(Notification.exception);\n        }\n    };\n\n    /**\n     * Listen to and handle any calendar events fired by the calendar UI.\n     *\n     * @method registerCalendarEventListeners\n     * @param {object} root The calendar root element\n     * @param {object} eventFormModalPromise A promise reolved with the event form modal\n     */\n    var registerCalendarEventListeners = function(root, eventFormModalPromise) {\n        var body = $('body');\n\n        body.on(CalendarEvents.created, function() {\n            CalendarViewManager.reloadCurrentMonth(root);\n        });\n        body.on(CalendarEvents.deleted, function() {\n            CalendarViewManager.reloadCurrentMonth(root);\n        });\n        body.on(CalendarEvents.updated, function() {\n            CalendarViewManager.reloadCurrentMonth(root);\n        });\n        body.on(CalendarEvents.editActionEvent, function(e, url) {\n            // Action events needs to be edit directly on the course module.\n            window.location.assign(url);\n        });\n        // Handle the event fired by the drag and drop code.\n        body.on(CalendarEvents.moveEvent, handleMoveEvent);\n        // When an event is successfully moved we should updated the UI.\n        body.on(CalendarEvents.eventMoved, function() {\n            CalendarViewManager.reloadCurrentMonth(root);\n        });\n\n        CalendarCrud.registerEditListeners(root, eventFormModalPromise);\n    };\n\n    /**\n     * Register event listeners for the module.\n     *\n     * @param {object} root The calendar root element\n     */\n    var registerEventListeners = function(root) {\n        // Listen the click on the day link to render the day view.\n        root.on('click', SELECTORS.VIEW_DAY_LINK, function(e) {\n            var dayLink = $(e.target);\n            var year = dayLink.data('year'),\n                month = dayLink.data('month'),\n                day = dayLink.data('day'),\n                courseId = dayLink.data('courseid'),\n                categoryId = dayLink.data('categoryid');\n            CalendarViewManager.refreshDayContent(root, year, month, day, courseId, categoryId, root,\n                    'core_calendar/calendar_day').then(function() {\n                e.preventDefault();\n                var url = '?view=day&time=' + dayLink.data('timestamp');\n                return window.history.pushState({}, '', url);\n            }).fail(Notification.exception);\n        });\n\n        root.on('change', CalendarSelectors.elements.courseSelector, function() {\n            var selectElement = $(this);\n            var courseId = selectElement.val();\n            CalendarViewManager.reloadCurrentMonth(root, courseId, null)\n                .then(function() {\n                    // We need to get the selector again because the content has changed.\n                    return root.find(CalendarSelectors.elements.courseSelector).val(courseId);\n                })\n                .fail(Notification.exception);\n        });\n\n        var eventFormPromise = CalendarCrud.registerEventFormModal(root),\n            contextId = $(SELECTORS.CALENDAR_MONTH_WRAPPER).data('context-id');\n        registerCalendarEventListeners(root, eventFormPromise);\n\n        if (contextId) {\n            // Bind click events to calendar days.\n            root.on('click', SELECTORS.DAY, function (e) {\n\n                var target = $(e.target);\n\n                if (!target.is(SELECTORS.VIEW_DAY_LINK)) {\n                    var startTime = $(this).attr('data-new-event-timestamp');\n                    eventFormPromise.then(function (modal) {\n                        var wrapper = target.closest(CalendarSelectors.wrapper);\n                        modal.setCourseId(wrapper.data('courseid'));\n\n                        var categoryId = wrapper.data('categoryid');\n                        if (typeof categoryId !== 'undefined') {\n                            modal.setCategoryId(categoryId);\n                        }\n\n                        modal.setContextId(wrapper.data('contextId'));\n                        modal.setStartTime(startTime);\n                        modal.show();\n                        return;\n                    })\n                    .fail(Notification.exception);\n\n                    e.preventDefault();\n                }\n            });\n        }\n    };\n\n    return {\n        init: function(root) {\n            root = $(root);\n            CalendarViewManager.init(root);\n            registerEventListeners(root);\n        }\n    };\n});\n"],"names":["define","$","Ajax","Str","Templates","Notification","CustomEvents","ModalEvents","ModalFactory","ModalEventForm","SummaryModal","CalendarRepository","CalendarEvents","CalendarViewManager","CalendarCrud","CalendarSelectors","SELECTORS","handleMoveEvent","e","eventId","originElement","destinationElement","originTimestamp","destinationTimestamp","attr","render","then","html","js","find","addClass","appendNodeContents","updateEventStartDay","trigger","eventMoved","always","destinationLoadingElement","removeClass","replaceNode","originLoadingElement","fail","exception","registerEventListeners","root","on","dayLink","target","year","data","month","day","courseId","categoryId","refreshDayContent","preventDefault","url","window","history","pushState","elements","courseSelector","this","val","reloadCurrentMonth","eventFormPromise","registerEventFormModal","contextId","eventFormModalPromise","body","created","deleted","updated","editActionEvent","location","assign","moveEvent","registerEditListeners","registerCalendarEventListeners","is","startTime","modal","wrapper","closest","setCourseId","setCategoryId","setContextId","setStartTime","show","init"],"mappings":"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"}