MDL-54796 forms: Editor restore event created.
[moodle.git] / lib / amd / src / event.js
CommitLineData
28de7771
DW
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 * Global registry of core events that can be triggered/listened for.
18 *
19 * @module core/event
20 * @package core
21 * @class event
22 * @copyright 2015 Damyon Wiese <damyon@moodle.com>
23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
24 * @since 3.0
25 */
35be5826 26define(['jquery', 'core/yui'],
28de7771
DW
27 function($, Y) {
28
29 return /** @alias module:core/event */ {
30 // Public variables and functions.
31 /**
32 * Trigger an event using both JQuery and YUI
33 *
34 * @method notifyFilterContentUpdated
c96f55e6 35 * @param {string|JQuery} nodes - Selector or list of elements that were inserted.
28de7771
DW
36 */
37 notifyFilterContentUpdated: function(nodes) {
38 nodes = $(nodes);
39 Y.use('event', 'moodle-core-event', function(Y) {
40 // Trigger it the JQuery way.
b5594973 41 $(document).trigger(M.core.event.FILTER_CONTENT_UPDATED, nodes);
28de7771
DW
42
43 // Create a YUI NodeList from our JQuery Object.
44 var yuiNodes = new Y.NodeList(nodes.get());
45
46 // And again for YUI.
9f5f3dcc 47 Y.fire(M.core.event.FILTER_CONTENT_UPDATED, {nodes: yuiNodes});
28de7771
DW
48 });
49 },
b5594973
AG
50 /**
51 * Trigger an event using both JQuery and YUI
52 * This event alerts the world that the editor has restored some content.
53 *
54 * @method notifyEditorContentRestored
55 */
56 notifyEditorContentRestored: function() {
57 Y.use('event', 'moodle-core-event', function(Y) {
58 // Trigger it the JQuery way.
59 $(document).trigger(M.core.event.EDITOR_CONTENT_RESTORED);
28de7771 60
b5594973
AG
61 // And again for YUI.
62 Y.fire(M.core.event.EDITOR_CONTENT_RESTORED);
63 });
64 },
28de7771
DW
65 };
66});