Your IP : 216.73.216.95


Current Path : /var/www/ljmtc/cbt/blocks/timeline/amd/build/
Upload File :
Current File : /var/www/ljmtc/cbt/blocks/timeline/amd/build/view_dates.min.js.map

{"version":3,"sources":["../src/view_dates.js"],"names":["define","$","Str","EventList","PubSub","PagedContentEvents","SELECTORS","EVENT_LIST_CONTAINER","DEFAULT_PAGE_LIMIT","getPagingLimits","root","limitPref","parseInt","data","isDefaultSet","limits","map","value","active","registerEventListeners","namespace","event","SET_ITEMS_PER_PAGE_LIMIT","subscribe","limit","load","eventListContainer","find","attr","Math","random","config","persistentLimitKey","eventNamespace","get_string","then","string","init","catch","hasClass","reset","removeAttr","shown"],"mappings":"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","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 * Manage the timeline dates view for the timeline block.\n *\n * @package    block_timeline\n * @copyright  2018 Ryan Wyllie <ryan@moodle.com>\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\ndefine(\n[\n    'jquery',\n    'core/str',\n    'block_timeline/event_list',\n    'core/pubsub',\n    'core/paged_content_events'\n],\nfunction(\n    $,\n    Str,\n    EventList,\n    PubSub,\n    PagedContentEvents\n) {\n\n    var SELECTORS = {\n        EVENT_LIST_CONTAINER: '[data-region=\"event-list-container\"]',\n    };\n\n    var DEFAULT_PAGE_LIMIT = [5, 10, 25];\n\n    /**\n     * Generate a paged content array of limits taking into account user preferences\n     *\n     * @param {object} root The root element for the timeline dates view.\n     * @return {array} Array of limit objects\n     */\n    var getPagingLimits = function(root) {\n        var limitPref = parseInt(root.data('limit'), 10);\n        var isDefaultSet = false;\n        var limits = DEFAULT_PAGE_LIMIT.map(function(value) {\n            if (limitPref == value) {\n                isDefaultSet = true;\n            }\n\n            return {\n                value: value,\n                active: limitPref == value\n            };\n        });\n\n        if (!isDefaultSet) {\n            limits[0].active = true;\n        }\n\n        return limits;\n    };\n\n    /**\n     * Setup the listeners for the timeline block\n     *\n     * @param {string} root view dates container\n     * @param {string} namespace The namespace for the paged content\n     */\n    var registerEventListeners = function(root, namespace) {\n        var event = namespace + PagedContentEvents.SET_ITEMS_PER_PAGE_LIMIT;\n        PubSub.subscribe(event, function(limit) {\n            $(root).data('limit', limit);\n        });\n    };\n\n    /**\n     * Initialise the event list and being loading the events.\n     *\n     * @param {object} root The root element for the timeline dates view.\n     */\n    var load = function(root) {\n        var eventListContainer = root.find(SELECTORS.EVENT_LIST_CONTAINER);\n        var namespace = $(eventListContainer).attr('id') + \"user_block_timeline\" + Math.random();\n        registerEventListeners(root, namespace);\n\n        var limits = getPagingLimits(root);\n        var config = {\n            persistentLimitKey: \"block_timeline_user_limit_preference\",\n            eventNamespace: namespace\n        };\n        Str.get_string('ariaeventlistpaginationnavdates', 'block_timeline')\n            .then(function(string) {\n                EventList.init(eventListContainer, limits, {}, string, config);\n                return string;\n            })\n            .catch(function() {\n                // Ignore if we can't load the string. Still init the event list.\n                EventList.init(eventListContainer, limits, {}, \"\", config);\n            });\n    };\n\n    /**\n     * Initialise the timeline dates view. Begin loading the events\n     * if this view is active.\n     *\n     * @param {object} root The root element for the timeline courses view.\n     */\n    var init = function(root) {\n        root = $(root);\n        if (root.hasClass('active')) {\n            load(root);\n            root.data('seen', true);\n        }\n    };\n\n    /**\n     * Reset the view back to it's initial state. If this view is active then\n     * beging loading the events.\n     *\n     * @param {object} root The root element for the timeline courses view.\n     */\n    var reset = function(root) {\n        root.removeAttr('data-seen');\n        if (root.hasClass('active')) {\n            load(root);\n            root.data('seen', true);\n        }\n    };\n\n    /**\n     * Load the events if this is the first time the view is displayed.\n     *\n     * @param {object} root The root element for the timeline courses view.\n     */\n    var shown = function(root) {\n        if (!root.data('seen')) {\n            load(root);\n            root.data('seen', true);\n        }\n    };\n\n    return {\n        init: init,\n        reset: reset,\n        shown: shown\n    };\n});\n"],"file":"view_dates.min.js"}