[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 // This file is part of Moodle - http://moodle.org/ 2 // 3 // Moodle is free software: you can redistribute it and/or modify 4 // it under the terms of the GNU General Public License as published by 5 // the Free Software Foundation, either version 3 of the License, or 6 // (at your option) any later version. 7 // 8 // Moodle is distributed in the hope that it will be useful, 9 // but WITHOUT ANY WARRANTY; without even the implied warranty of 10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 // GNU General Public License for more details. 12 // 13 // You should have received a copy of the GNU General Public License 14 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 15 16 /** 17 * Evidence delete. 18 * 19 * @package tool_lp 20 * @copyright 2016 Frédéric Massart - FMCorz.net 21 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 22 */ 23 24 define(['jquery', 25 'core/notification', 26 'core/ajax', 27 'core/str', 28 'core/log'], 29 function($, Notification, Ajax, Str, Log) { 30 31 var selectors = {}; 32 33 /** 34 * Register an event listener. 35 * 36 * @param {String} triggerSelector The node on which the click will happen. 37 * @param {String} containerSelector The parent node that will be removed and contains the evidence ID. 38 */ 39 var register = function(triggerSelector, containerSelector) { 40 if (typeof selectors[triggerSelector] !== 'undefined') { 41 return; 42 } 43 44 selectors[triggerSelector] = $('body').delegate(triggerSelector, 'click', function(e) { 45 var parent = $(e.currentTarget).parents(containerSelector); 46 if (!parent.length || parent.length > 1) { 47 Log.error('None or too many evidence container were found.'); 48 return; 49 } 50 var evidenceId = parent.data('id'); 51 if (!evidenceId) { 52 Log.error('Evidence ID was not found.'); 53 return; 54 } 55 56 e.preventDefault(); 57 e.stopPropagation(); 58 59 Str.get_strings([ 60 {key: 'confirm', component: 'moodle'}, 61 {key: 'areyousure', component: 'moodle'}, 62 {key: 'delete', component: 'moodle'}, 63 {key: 'cancel', component: 'moodle'} 64 ]).done(function(strings) { 65 Notification.confirm( 66 strings[0], // Confirm. 67 strings[1], // Are you sure? 68 strings[2], // Delete. 69 strings[3], // Cancel. 70 function() { 71 var promise = Ajax.call([{ 72 methodname: 'core_competency_delete_evidence', 73 args: { 74 id: evidenceId 75 } 76 }]); 77 promise[0].then(function() { 78 parent.remove(); 79 }).fail(Notification.exception); 80 } 81 ); 82 }).fail(Notification.exception); 83 84 85 }); 86 }; 87 88 return /** @alias module:tool_lp/evidence_delete */ { 89 90 /** 91 * Register an event listener. 92 * 93 * @param {String} triggerSelector The node on which the click will happen. 94 * @param {String} containerSelector The parent node that will be removed and contains the evidence ID. 95 * @return {Void} 96 */ 97 register: register 98 }; 99 100 });
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Thu Aug 11 10:00:09 2016 | Cross-referenced by PHPXref 0.7.1 |