Your IP : 216.73.216.95


Current Path : /var/www/ljmtc/cbt/mod/forum/amd/build/
Upload File :
Current File : /var/www/ljmtc/cbt/mod/forum/amd/build/favourite_toggle.min.js.map

{"version":3,"sources":["../src/favourite_toggle.js"],"names":["define","$","Templates","Notification","Repository","Selectors","String","init","registerEventListeners","root","preventDefault","callback","on","favourite","toggle","e","toggleElement","forumId","data","discussionId","subscriptionState","setFavouriteDiscussionState","then","context","get_string","done","s","addNotification","message","type","catch","exception"],"mappings":"AAwBAA,OAAM,8BAAC,CACC,QADD,CAEC,gBAFD,CAGC,mBAHD,CAIC,sBAJD,CAKC,qBALD,CAMC,UAND,CAAD,CAOC,SACCC,CADD,CAECC,CAFD,CAGCC,CAHD,CAICC,CAJD,CAKCC,CALD,CAMCC,CAND,CAOD,CAqCF,MAAO,CACHC,IAAI,CA7BqB,QAAzBC,CAAAA,sBAAyB,CAASC,CAAT,CAAeC,CAAf,CAA+BC,CAA/B,CAAyC,CAClEF,CAAI,CAACG,EAAL,CAAQ,OAAR,CAAiBP,CAAS,CAACQ,SAAV,CAAoBC,MAArC,CAA6C,SAASC,CAAT,CAAY,IACjDC,CAAAA,CAAa,CAAGf,CAAC,CAAC,IAAD,CADgC,CAEjDgB,CAAO,CAAGD,CAAa,CAACE,IAAd,CAAmB,SAAnB,CAFuC,CAGjDC,CAAY,CAAGH,CAAa,CAACE,IAAd,CAAmB,cAAnB,CAHkC,CAIjDE,CAAiB,CAAGJ,CAAa,CAACE,IAAd,CAAmB,aAAnB,CAJ6B,CAMrDd,CAAU,CAACiB,2BAAX,CAAuCJ,CAAvC,CAAgDE,CAAhD,CAA8DC,CAA9D,EACKE,IADL,CACU,SAASC,CAAT,CAAkB,CACpB,MAAOZ,CAAAA,CAAQ,CAACK,CAAD,CAAgBO,CAAhB,CAClB,CAHL,EAIKD,IAJL,CAIU,UAAW,CACb,MAAOhB,CAAAA,CAAM,CAACkB,UAAP,CAAkB,kBAAlB,CAAsC,OAAtC,EACFC,IADE,CACG,SAASC,CAAT,CAAY,CACd,MAAOvB,CAAAA,CAAY,CAACwB,eAAb,CAA6B,CAChCC,OAAO,CAAEF,CADuB,CAEhCG,IAAI,CAAE,MAF0B,CAA7B,CAIV,CANE,CAOV,CAZL,EAaKC,KAbL,CAaW3B,CAAY,CAAC4B,SAbxB,EAeA,GAAIrB,CAAJ,CAAoB,CAChBK,CAAC,CAACL,cAAF,EACH,CACJ,CAxBD,CAyBH,CAEM,CAGV,CAtDK,CAAN","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 * Handle discussion subscription toggling on a discussion list in\n * the forum view.\n *\n * @module     mod_forum/favourite_toggle\n * @package    mod_forum\n * @copyright  2019 Peter Dias <peter@moodle.com>\n * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\ndefine([\n        'jquery',\n        'core/templates',\n        'core/notification',\n        'mod_forum/repository',\n        'mod_forum/selectors',\n        'core/str',\n    ], function(\n        $,\n        Templates,\n        Notification,\n        Repository,\n        Selectors,\n        String\n    ) {\n\n    /**\n     * Register event listeners for the subscription toggle.\n     *\n     * @param {object} root The discussion list root element\n     * @param {boolean} preventDefault Should the default action of the event be prevented\n     * @param {function} callback Success callback\n     */\n    var registerEventListeners = function(root, preventDefault, callback) {\n        root.on('click', Selectors.favourite.toggle, function(e) {\n            var toggleElement = $(this);\n            var forumId = toggleElement.data('forumid');\n            var discussionId = toggleElement.data('discussionid');\n            var subscriptionState = toggleElement.data('targetstate');\n\n            Repository.setFavouriteDiscussionState(forumId, discussionId, subscriptionState)\n                .then(function(context) {\n                    return callback(toggleElement, context);\n                })\n                .then(function() {\n                    return String.get_string(\"favouriteupdated\", \"forum\")\n                        .done(function(s) {\n                            return Notification.addNotification({\n                                message: s,\n                                type: \"info\"\n                            });\n                        });\n                })\n                .catch(Notification.exception);\n\n            if (preventDefault) {\n                e.preventDefault();\n            }\n        });\n    };\n\n    return {\n        init: registerEventListeners\n    };\n});\n"],"file":"favourite_toggle.min.js"}