Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
cesa.co.za /
sipdm.cesa.co.za /
lib /
amd /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
addblockmodal.js
2.45
KB
-rw-r--r--
2017-06-22 15:32
ajax.js
6.41
KB
-rw-r--r--
2017-06-22 15:32
auto_rows.js
2.85
KB
-rw-r--r--
2017-06-22 15:32
backoff_timer.js
5.12
KB
-rw-r--r--
2017-06-22 15:32
chart_axis.js
7.43
KB
-rw-r--r--
2017-06-22 15:32
chart_bar.js
3.13
KB
-rw-r--r--
2017-06-22 15:32
chart_base.js
10.63
KB
-rw-r--r--
2017-06-22 15:32
chart_builder.js
1.67
KB
-rw-r--r--
2017-06-22 15:32
chart_line.js
2.13
KB
-rw-r--r--
2017-06-22 15:32
chart_output.js
1.1
KB
-rw-r--r--
2017-06-22 15:32
chart_output_base.js
2.09
KB
-rw-r--r--
2017-06-22 15:32
chart_output_chartjs.js
10.48
KB
-rw-r--r--
2017-06-22 15:32
chart_output_htmltable.js
3.36
KB
-rw-r--r--
2017-06-22 15:32
chart_pie.js
3.09
KB
-rw-r--r--
2017-06-22 15:32
chart_series.js
7.88
KB
-rw-r--r--
2017-06-22 15:32
chartjs-lazy.js
311.89
KB
-rw-r--r--
2017-06-22 15:32
chartjs.js
933
B
-rw-r--r--
2017-06-22 15:32
config.js
1.05
KB
-rw-r--r--
2017-06-22 15:32
custom_interaction_events.js
14.82
KB
-rw-r--r--
2017-06-22 15:32
event.js
3.03
KB
-rw-r--r--
2017-06-22 15:32
first.js
1.38
KB
-rw-r--r--
2017-06-22 15:32
form-autocomplete.js
36.23
KB
-rw-r--r--
2017-06-22 15:32
form-course-selector.js
3.75
KB
-rw-r--r--
2017-06-22 15:32
fragment.js
4.96
KB
-rw-r--r--
2017-06-22 15:32
inplace_editable.js
9.23
KB
-rw-r--r--
2017-06-22 15:32
key_codes.js
1.32
KB
-rw-r--r--
2017-06-22 15:32
localstorage.js
5.73
KB
-rw-r--r--
2017-06-22 15:32
log.js
1.76
KB
-rw-r--r--
2017-06-22 15:32
loglevel.js
8.79
KB
-rw-r--r--
2017-06-22 15:32
modal.js
17.79
KB
-rw-r--r--
2017-06-22 15:32
modal_backdrop.js
3.86
KB
-rw-r--r--
2017-06-22 15:32
modal_cancel.js
2.57
KB
-rw-r--r--
2017-06-22 15:32
modal_confirm.js
3.12
KB
-rw-r--r--
2017-06-22 15:32
modal_events.js
1.3
KB
-rw-r--r--
2017-06-22 15:32
modal_factory.js
5.24
KB
-rw-r--r--
2017-06-22 15:32
modal_save_cancel.js
3.18
KB
-rw-r--r--
2017-06-22 15:32
mustache.js
22.8
KB
-rw-r--r--
2017-06-22 15:32
notification.js
9.09
KB
-rw-r--r--
2017-06-22 15:32
permissionmanager.js
9.17
KB
-rw-r--r--
2017-06-22 15:32
popover_region_controller.js
12.58
KB
-rw-r--r--
2017-06-22 15:32
search-input.js
3.24
KB
-rw-r--r--
2017-06-22 15:32
str.js
7.37
KB
-rw-r--r--
2017-06-22 15:32
tag.js
16.22
KB
-rw-r--r--
2017-06-22 15:32
templates.js
24.73
KB
-rw-r--r--
2017-06-22 15:32
tooltip.js
4.1
KB
-rw-r--r--
2017-06-22 15:32
tree.js
17.58
KB
-rw-r--r--
2017-06-22 15:32
url.js
3.69
KB
-rw-r--r--
2017-06-22 15:32
yui.js
1.15
KB
-rw-r--r--
2017-06-22 15:32
Save
Rename
// This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * This module provides a wrapper to encapsulate a lot of the common combinations of * user interaction we use in Moodle. * * @module core/custom_interaction_events * @class custom_interaction_events * @package core * @copyright 2016 Ryan Wyllie <ryan@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * @since 3.2 */ define(['jquery', 'core/key_codes'], function($, keyCodes) { // The list of events provided by this module. Namespaced to avoid clashes. var events = { activate: 'cie:activate', keyboardActivate: 'cie:keyboardactivate', escape: 'cie:escape', down: 'cie:down', up: 'cie:up', home: 'cie:home', end: 'cie:end', next: 'cie:next', previous: 'cie:previous', asterix: 'cie:asterix', scrollLock: 'cie:scrollLock', scrollTop: 'cie:scrollTop', scrollBottom: 'cie:scrollBottom', ctrlPageUp: 'cie:ctrlPageUp', ctrlPageDown: 'cie:ctrlPageDown', enter: 'cie:enter', }; /** * Check if the caller has asked for the given event type to be * registered. * * @method shouldAddEvent * @private * @param {string} eventType name of the event (see events above) * @param {array} include the list of events to be added * @return {bool} true if the event should be added, false otherwise. */ var shouldAddEvent = function(eventType, include) { include = include || []; if (include.length && include.indexOf(eventType) !== -1) { return true; } return false; }; /** * Check if any of the modifier keys have been pressed on the event. * * @method isModifierPressed * @private * @param {event} e jQuery event * @return {bool} true if shift, meta (command on Mac), alt or ctrl are pressed */ var isModifierPressed = function(e) { return (e.shiftKey || e.metaKey || e.altKey || e.ctrlKey); }; /** * Register a keyboard event that ignores modifier keys. * * @method addKeyboardEvent * @private * @param {object} element A jQuery object of the element to bind events to * @param {string} event The custom interaction event name * @param {int} keyCode The key code. */ var addKeyboardEvent = function(element, event, keyCode) { element.off('keydown.' + event).on('keydown.' + event, function(e) { if (!isModifierPressed(e)) { if (e.keyCode == keyCode) { $(e.target).trigger(event, [{originalEvent: e}]); } } }); }; /** * Trigger the activate event on the given element if it is clicked or the enter * or space key are pressed without a modifier key. * * @method addActivateListener * @private * @param {object} element jQuery object to add event listeners to */ var addActivateListener = function(element) { element.off('click.cie.activate').on('click.cie.activate', function(e) { $(e.target).trigger(events.activate, [{originalEvent: e}]); }); element.off('keydown.cie.activate').on('keydown.cie.activate', function(e) { if (!isModifierPressed(e)) { if (e.keyCode == keyCodes.enter || e.keyCode == keyCodes.space) { $(e.target).trigger(events.activate, [{originalEvent: e}]); } } }); }; /** * Trigger the keyboard activate event on the given element if the enter * or space key are pressed without a modifier key. * * @method addKeyboardActivateListener * @private * @param {object} element jQuery object to add event listeners to */ var addKeyboardActivateListener = function(element) { element.off('keydown.cie.keyboardactivate').on('keydown.cie.keyboardactivate', function(e) { if (!isModifierPressed(e)) { if (e.keyCode == keyCodes.enter || e.keyCode == keyCodes.space) { $(e.target).trigger(events.keyboardActivate, [{originalEvent: e}]); } } }); }; /** * Trigger the escape event on the given element if the escape key is pressed * without a modifier key. * * @method addEscapeListener * @private * @param {object} element jQuery object to add event listeners to */ var addEscapeListener = function(element) { addKeyboardEvent(element, events.escape, keyCodes.escape); }; /** * Trigger the down event on the given element if the down arrow key is pressed * without a modifier key. * * @method addDownListener * @private * @param {object} element jQuery object to add event listeners to */ var addDownListener = function(element) { addKeyboardEvent(element, events.down, keyCodes.arrowDown); }; /** * Trigger the up event on the given element if the up arrow key is pressed * without a modifier key. * * @method addUpListener * @private * @param {object} element jQuery object to add event listeners to */ var addUpListener = function(element) { addKeyboardEvent(element, events.up, keyCodes.arrowUp); }; /** * Trigger the home event on the given element if the home key is pressed * without a modifier key. * * @method addHomeListener * @private * @param {object} element jQuery object to add event listeners to */ var addHomeListener = function(element) { addKeyboardEvent(element, events.home, keyCodes.home); }; /** * Trigger the end event on the given element if the end key is pressed * without a modifier key. * * @method addEndListener * @private * @param {object} element jQuery object to add event listeners to */ var addEndListener = function(element) { addKeyboardEvent(element, events.end, keyCodes.end); }; /** * Trigger the next event on the given element if the right arrow key is pressed * without a modifier key in LTR mode or left arrow key in RTL mode. * * @method addNextListener * @private * @param {object} element jQuery object to add event listeners to */ var addNextListener = function(element) { // Left and right are flipped in RTL mode. var keyCode = $('html').attr('dir') == "rtl" ? keyCodes.arrowLeft : keyCodes.arrowRight; addKeyboardEvent(element, events.next, keyCode); }; /** * Trigger the previous event on the given element if the left arrow key is pressed * without a modifier key in LTR mode or right arrow key in RTL mode. * * @method addPreviousListener * @private * @param {object} element jQuery object to add event listeners to */ var addPreviousListener = function(element) { // Left and right are flipped in RTL mode. var keyCode = $('html').attr('dir') == "rtl" ? keyCodes.arrowRight : keyCodes.arrowLeft; addKeyboardEvent(element, events.previous, keyCode); }; /** * Trigger the asterix event on the given element if the asterix key is pressed * without a modifier key. * * @method addAsterixListener * @private * @param {object} element jQuery object to add event listeners to */ var addAsterixListener = function(element) { addKeyboardEvent(element, events.asterix, keyCodes.asterix); }; /** * Trigger the scrollTop event on the given element if the user scrolls to * the top of the given element. * * @method addScrollTopListener * @private * @param {object} element jQuery object to add event listeners to */ var addScrollTopListener = function(element) { element.off('scroll.cie.scrollTop').on('scroll.cie.scrollTop', function(e) { var scrollTop = element.scrollTop(); if (scrollTop === 0) { element.trigger(events.scrollTop, [{originalEvent: e}]); } }); }; /** * Trigger the scrollBottom event on the given element if the user scrolls to * the bottom of the given element. * * @method addScrollBottomListener * @private * @param {object} element jQuery object to add event listeners to */ var addScrollBottomListener = function(element) { element.off('scroll.cie.scrollBottom').on('scroll.cie.scrollBottom', function(e) { var scrollTop = element.scrollTop(); var innerHeight = element.innerHeight(); var scrollHeight = element[0].scrollHeight; if (scrollTop + innerHeight >= scrollHeight) { element.trigger(events.scrollBottom, [{originalEvent: e}]); } }); }; /** * Trigger the scrollLock event on the given element if the user scrolls to * the bottom or top of the given element. * * @method addScrollLockListener * @private * @param {jQuery} element jQuery object to add event listeners to */ var addScrollLockListener = function(element) { // Lock mousewheel scrolling within the element to stop the annoying window scroll. element.off('DOMMouseScroll.cie.DOMMouseScrollLock mousewheel.cie.mousewheelLock') .on('DOMMouseScroll.cie.DOMMouseScrollLock mousewheel.cie.mousewheelLock', function(e) { var scrollTop = element.scrollTop(); var scrollHeight = element[0].scrollHeight; var height = element.height(); var delta = (e.type == 'DOMMouseScroll' ? e.originalEvent.detail * -40 : e.originalEvent.wheelDelta); var up = delta > 0; if (!up && -delta > scrollHeight - height - scrollTop) { // Scrolling down past the bottom. element.scrollTop(scrollHeight); e.stopPropagation(); e.preventDefault(); e.returnValue = false; // Fire the scroll lock event. element.trigger(events.scrollLock, [{originalEvent: e}]); return false; } else if (up && delta > scrollTop) { // Scrolling up past the top. element.scrollTop(0); e.stopPropagation(); e.preventDefault(); e.returnValue = false; // Fire the scroll lock event. element.trigger(events.scrollLock, [{originalEvent: e}]); return false; } return true; }); }; /** * Trigger the ctrlPageUp event on the given element if the user presses the * control and page up key. * * @method addCtrlPageUpListener * @private * @param {object} element jQuery object to add event listeners to */ var addCtrlPageUpListener = function(element) { element.off('keydown.cie.ctrlpageup').on('keydown.cie.ctrlpageup', function(e) { if (e.ctrlKey) { if (e.keyCode == keyCodes.pageUp) { $(e.target).trigger(events.ctrlPageUp, [{originalEvent: e}]); } } }); }; /** * Trigger the ctrlPageDown event on the given element if the user presses the * control and page down key. * * @method addCtrlPageDownListener * @private * @param {object} element jQuery object to add event listeners to */ var addCtrlPageDownListener = function(element) { element.off('keydown.cie.ctrlpagedown').on('keydown.cie.ctrlpagedown', function(e) { if (e.ctrlKey) { if (e.keyCode == keyCodes.pageDown) { $(e.target).trigger(events.ctrlPageDown, [{originalEvent: e}]); } } }); }; /** * Trigger the enter event on the given element if the enter key is pressed * without a modifier key. * * @method addEnterListener * @private * @param {object} element jQuery object to add event listeners to */ var addEnterListener = function(element) { addKeyboardEvent(element, events.enter, keyCodes.enter); }; /** * Get the list of events and their handlers. * * @method getHandlers * @private * @return {object} object key of event names and value of handler functions */ var getHandlers = function() { var handlers = {}; handlers[events.activate] = addActivateListener; handlers[events.keyboardActivate] = addKeyboardActivateListener; handlers[events.escape] = addEscapeListener; handlers[events.down] = addDownListener; handlers[events.up] = addUpListener; handlers[events.home] = addHomeListener; handlers[events.end] = addEndListener; handlers[events.next] = addNextListener; handlers[events.previous] = addPreviousListener; handlers[events.asterix] = addAsterixListener; handlers[events.scrollLock] = addScrollLockListener; handlers[events.scrollTop] = addScrollTopListener; handlers[events.scrollBottom] = addScrollBottomListener; handlers[events.ctrlPageUp] = addCtrlPageUpListener; handlers[events.ctrlPageDown] = addCtrlPageDownListener; handlers[events.enter] = addEnterListener; return handlers; }; /** * Add all of the listeners on the given element for the requested events. * * @method define * @public * @param {object} element the DOM element to register event listeners on * @param {array} include the array of events to be triggered */ var define = function(element, include) { element = $(element); include = include || []; if (!element.length || !include.length) { return; } $.each(getHandlers(), function(eventType, handler) { if (shouldAddEvent(eventType, include)) { handler(element); } }); }; return /** @module core/custom_interaction_events */ { define: define, events: events, }; });