[ Index ] |
PHP Cross Reference of moodle-2.8 |
[Summary view] [Print] [Text view]
1 YUI.add('moodle-core-notification-alert', function (Y, NAME) { 2 3 var DIALOGUE_PREFIX, 4 BASE, 5 CONFIRMYES, 6 CONFIRMNO, 7 TITLE, 8 QUESTION, 9 CSS; 10 11 DIALOGUE_PREFIX = 'moodle-dialogue', 12 BASE = 'notificationBase', 13 CONFIRMYES = 'yesLabel', 14 CONFIRMNO = 'noLabel', 15 TITLE = 'title', 16 QUESTION = 'question', 17 CSS = { 18 BASE : 'moodle-dialogue-base', 19 WRAP : 'moodle-dialogue-wrap', 20 HEADER : 'moodle-dialogue-hd', 21 BODY : 'moodle-dialogue-bd', 22 CONTENT : 'moodle-dialogue-content', 23 FOOTER : 'moodle-dialogue-ft', 24 HIDDEN : 'hidden', 25 LIGHTBOX : 'moodle-dialogue-lightbox' 26 }; 27 28 // Set up the namespace once. 29 M.core = M.core || {}; 30 /** 31 * A dialogue type designed to display an alert to the user. 32 * 33 * @module moodle-core-notification 34 * @submodule moodle-core-notification-alert 35 */ 36 37 var ALERT_NAME = 'Moodle alert', 38 ALERT; 39 40 /** 41 * Extends core Dialogue to show the alert dialogue. 42 * 43 * @param {Object} config Object literal specifying the dialogue configuration properties. 44 * @constructor 45 * @class M.core.alert 46 * @extends M.core.dialogue 47 */ 48 ALERT = function(config) { 49 config.closeButton = false; 50 ALERT.superclass.constructor.apply(this, [config]); 51 }; 52 Y.extend(ALERT, M.core.notification.info, { 53 /** 54 * The list of events to detach when destroying this dialogue. 55 * 56 * @property _closeEvents 57 * @type EventHandle[] 58 * @private 59 */ 60 _closeEvents: null, 61 initializer: function() { 62 this._closeEvents = []; 63 this.publish('complete'); 64 var yes = Y.Node.create('<input type="button" id="id_yuialertconfirm-' + this.get('COUNT') + '" value="'+this.get(CONFIRMYES)+'" />'), 65 content = Y.Node.create('<div class="confirmation-dialogue"></div>') 66 .append(Y.Node.create('<div class="confirmation-message">'+this.get('message')+'</div>')) 67 .append(Y.Node.create('<div class="confirmation-buttons"></div>') 68 .append(yes)); 69 this.get(BASE).addClass('moodle-dialogue-confirm'); 70 this.setStdModContent(Y.WidgetStdMod.BODY, content, Y.WidgetStdMod.REPLACE); 71 this.setStdModContent(Y.WidgetStdMod.HEADER, 72 '<h1 id="moodle-dialogue-'+this.get('COUNT')+'-header-text">' + this.get(TITLE) + '</h1>', Y.WidgetStdMod.REPLACE); 73 74 this._closeEvents.push( 75 Y.on('key', this.submit, window, 'down:13', this), 76 yes.on('click', this.submit, this) 77 ); 78 79 var closeButton = this.get('boundingBox').one('.closebutton'); 80 if (closeButton) { 81 // The close button should act exactly like the 'No' button. 82 this._closeEvents.push( 83 closeButton.on('click', this.submit, this) 84 ); 85 } 86 }, 87 submit: function() { 88 new Y.EventHandle(this._closeEvents).detach(); 89 this.fire('complete'); 90 this.hide(); 91 this.destroy(); 92 } 93 }, { 94 NAME: ALERT_NAME, 95 CSS_PREFIX: DIALOGUE_PREFIX, 96 ATTRS: { 97 98 /** 99 * The title of the alert. 100 * 101 * @attribute title 102 * @type String 103 * @default 'Alert' 104 */ 105 title: { 106 validator: Y.Lang.isString, 107 value: 'Alert' 108 }, 109 110 /** 111 * The message of the alert. 112 * 113 * @attribute message 114 * @type String 115 * @default 'Confirm' 116 */ 117 message: { 118 validator: Y.Lang.isString, 119 value: 'Confirm' 120 }, 121 122 /** 123 * The button text to use to accept the alert. 124 * 125 * @attribute yesLabel 126 * @type String 127 * @default 'Ok' 128 */ 129 yesLabel: { 130 validator: Y.Lang.isString, 131 setter: function(txt) { 132 if (!txt) { 133 txt = 'Ok'; 134 } 135 return txt; 136 }, 137 value: 'Ok' 138 } 139 } 140 }); 141 142 M.core.alert = ALERT; 143 144 145 }, '@VERSION@', {"requires": ["moodle-core-notification-dialogue"]});
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:29:05 2014 | Cross-referenced by PHPXref 0.7.1 |