Current Path : /var/www/ljmtc/cbt/admin/tool/dataprivacy/amd/build/ |
Current File : /var/www/ljmtc/cbt/admin/tool/dataprivacy/amd/build/myrequestactions.min.js.map |
{"version":3,"sources":["../src/myrequestactions.js"],"names":["define","$","Ajax","Notification","Str","ModalFactory","ModalEvents","Templates","Pending","ACTIONS","CANCEL_REQUEST","CONTACT_DPO","MyRequestActions","registerEvents","prototype","click","e","preventDefault","requestId","data","get_strings","key","component","then","langStrings","title","confirmMessage","create","body","type","types","SAVE_CANCEL","modal","setSaveButtonText","getRoot","on","save","call","methodname","args","done","result","window","location","reload","addNotification","message","warnings","fail","exception","hidden","destroy","show","pendingPromise","replyToEmail","sendButtonText","modalTitle","render","large","val","trim","length","addClass","removeAttr","sendMessageToDPO","resolve","catch","requestType","get_string","join"],"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 * AMD module to enable users to manage their own data requests.\n *\n * @module tool_dataprivacy/myrequestactions\n * @package tool_dataprivacy\n * @copyright 2018 Jun Pataleta\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\ndefine([\n 'jquery',\n 'core/ajax',\n 'core/notification',\n 'core/str',\n 'core/modal_factory',\n 'core/modal_events',\n 'core/templates',\n 'core/pending'],\nfunction($, Ajax, Notification, Str, ModalFactory, ModalEvents, Templates, Pending) {\n\n /**\n * List of action selectors.\n *\n * @type {{CANCEL_REQUEST: string}}\n * @type {{CONTACT_DPO: string}}\n */\n var ACTIONS = {\n CANCEL_REQUEST: '[data-action=\"cancel\"]',\n CONTACT_DPO: '[data-action=\"contactdpo\"]',\n };\n\n /**\n * MyRequestActions class.\n */\n var MyRequestActions = function() {\n this.registerEvents();\n };\n\n /**\n * Register event listeners.\n */\n MyRequestActions.prototype.registerEvents = function() {\n $(ACTIONS.CANCEL_REQUEST).click(function(e) {\n e.preventDefault();\n\n var requestId = $(this).data('requestid');\n var stringkeys = [\n {\n key: 'cancelrequest',\n component: 'tool_dataprivacy'\n },\n {\n key: 'cancelrequestconfirmation',\n component: 'tool_dataprivacy'\n }\n ];\n\n Str.get_strings(stringkeys).then(function(langStrings) {\n var title = langStrings[0];\n var confirmMessage = langStrings[1];\n return ModalFactory.create({\n title: title,\n body: confirmMessage,\n type: ModalFactory.types.SAVE_CANCEL\n }).then(function(modal) {\n modal.setSaveButtonText(title);\n\n // Handle save event.\n modal.getRoot().on(ModalEvents.save, function() {\n // Cancel the request.\n var params = {\n 'requestid': requestId\n };\n\n var request = {\n methodname: 'tool_dataprivacy_cancel_data_request',\n args: params\n };\n\n Ajax.call([request])[0].done(function(data) {\n if (data.result) {\n window.location.reload();\n } else {\n Notification.addNotification({\n message: data.warnings[0].message,\n type: 'error'\n });\n }\n }).fail(Notification.exception);\n });\n\n // Handle hidden event.\n modal.getRoot().on(ModalEvents.hidden, function() {\n // Destroy when hidden.\n modal.destroy();\n });\n\n return modal;\n });\n }).done(function(modal) {\n // Show the modal!\n modal.show();\n\n }).fail(Notification.exception);\n });\n\n $(ACTIONS.CONTACT_DPO).click(function(e) {\n var pendingPromise = new Pending('dataprivacy/crud:initModal:contactdpo');\n e.preventDefault();\n\n var replyToEmail = $(this).data('replytoemail');\n\n var keys = [\n {\n key: 'contactdataprotectionofficer',\n component: 'tool_dataprivacy'\n },\n {\n key: 'send',\n component: 'tool_dataprivacy'\n },\n ];\n\n var sendButtonText = '';\n Str.get_strings(keys).then(function(langStrings) {\n var modalTitle = langStrings[0];\n sendButtonText = langStrings[1];\n var context = {\n 'replytoemail': replyToEmail\n };\n return ModalFactory.create({\n title: modalTitle,\n body: Templates.render('tool_dataprivacy/contact_dpo', context),\n type: ModalFactory.types.SAVE_CANCEL,\n large: true\n });\n }).then(function(modal) {\n modal.setSaveButtonText(sendButtonText);\n\n // Show the modal!\n modal.show();\n\n // Handle send event.\n modal.getRoot().on(ModalEvents.save, function(e) {\n var message = $('#message').val().trim();\n if (message.length === 0) {\n e.preventDefault();\n // Show validation error when the message is empty.\n $('[data-region=\"messageinput\"]').addClass('has-danger notifyproblem');\n $('#id_error_message').removeAttr('hidden');\n } else {\n // Send the message.\n sendMessageToDPO(message);\n }\n });\n\n // Handle hidden event.\n modal.getRoot().on(ModalEvents.hidden, function() {\n // Destroy when hidden.\n modal.destroy();\n });\n\n return;\n }).then(pendingPromise.resolve)\n .catch(Notification.exception);\n });\n };\n\n /**\n * Send message to the Data Protection Officer.\n *\n * @param {String} message The message to send.\n */\n function sendMessageToDPO(message) {\n var request = {\n methodname: 'tool_dataprivacy_contact_dpo',\n args: {\n message: message\n }\n };\n\n var requestType = 'success';\n Ajax.call([request])[0].then(function(data) {\n if (data.result) {\n return Str.get_string('requestsubmitted', 'tool_dataprivacy');\n }\n requestType = 'error';\n return data.warnings.join('<br>');\n\n }).done(function(message) {\n Notification.addNotification({\n message: message,\n type: requestType\n });\n\n }).fail(Notification.exception);\n }\n\n return /** @alias module:tool_dataprivacy/myrequestactions */ {\n // Public variables and functions.\n\n /**\n * Initialise the unified user filter.\n *\n * @method init\n * @return {MyRequestActions}\n */\n 'init': function() {\n return new MyRequestActions();\n }\n };\n});\n"],"file":"myrequestactions.min.js"}