Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.51
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
var /
www /
html /
moodle.backup.39 /
lib /
amd /
src /
[ HOME SHELL ]
Name
Size
Permission
Action
adapter.js
195.35
KB
-rw-rw-r--
addblockmodal.js
2.56
KB
-rw-rw-r--
ajax.js
7.69
KB
-rw-rw-r--
auto_rows.js
3.35
KB
-rw-rw-r--
backoff_timer.js
5.12
KB
-rw-rw-r--
chart_axis.js
7.43
KB
-rw-rw-r--
chart_bar.js
3.13
KB
-rw-rw-r--
chart_base.js
10.63
KB
-rw-rw-r--
chart_builder.js
1.67
KB
-rw-rw-r--
chart_line.js
2.13
KB
-rw-rw-r--
chart_output.js
1.1
KB
-rw-rw-r--
chart_output_base.js
2.09
KB
-rw-rw-r--
chart_output_chartjs.js
10.79
KB
-rw-rw-r--
chart_output_htmltable.js
3.36
KB
-rw-rw-r--
chart_pie.js
3.09
KB
-rw-rw-r--
chart_series.js
7.88
KB
-rw-rw-r--
chartjs-lazy.js
670.93
KB
-rw-rw-r--
chartjs.js
933
B
-rw-rw-r--
config.js
1.05
KB
-rw-rw-r--
custom_interaction_events.js
16.56
KB
-rw-rw-r--
event.js
3.03
KB
-rw-rw-r--
first.js
1.38
KB
-rw-rw-r--
form-autocomplete.js
40.7
KB
-rw-rw-r--
form-cohort-selector.js
2.56
KB
-rw-rw-r--
form-course-selector.js
3.75
KB
-rw-rw-r--
fragment.js
4.72
KB
-rw-rw-r--
icon_system.js
2.52
KB
-rw-rw-r--
icon_system_fontawesome.js
3.59
KB
-rw-rw-r--
icon_system_standard.js
2.14
KB
-rw-rw-r--
inplace_editable.js
13.18
KB
-rw-rw-r--
key_codes.js
1.32
KB
-rw-rw-r--
localstorage.js
2.1
KB
-rw-rw-r--
log.js
1.76
KB
-rw-rw-r--
loglevel.js
8.99
KB
-rw-rw-r--
modal.js
23.49
KB
-rw-rw-r--
modal_backdrop.js
3.86
KB
-rw-rw-r--
modal_cancel.js
2.57
KB
-rw-rw-r--
modal_confirm.js
1.78
KB
-rw-rw-r--
modal_events.js
1.49
KB
-rw-rw-r--
modal_factory.js
7.64
KB
-rw-rw-r--
modal_registry.js
2.29
KB
-rw-rw-r--
modal_save_cancel.js
3.74
KB
-rw-rw-r--
mustache.js
22.86
KB
-rw-rw-r--
notification.js
9.2
KB
-rw-rw-r--
paged_content_events.js
998
B
-rw-rw-r--
paged_content_factory.js
9.6
KB
-rw-rw-r--
paged_content_pages.js
10.26
KB
-rw-rw-r--
paged_content_paging_bar.js
6.83
KB
-rw-rw-r--
paged_content_paging_dropdown....
7.18
KB
-rw-rw-r--
permissionmanager.js
9.61
KB
-rw-rw-r--
popover_region_controller.js
12.58
KB
-rw-rw-r--
popper.js
79.2
KB
-rw-rw-r--
search-input.js
3.24
KB
-rw-rw-r--
sessionstorage.js
2.24
KB
-rw-rw-r--
storagewrapper.js
5.17
KB
-rw-rw-r--
str.js
7.37
KB
-rw-rw-r--
tag.js
18.12
KB
-rw-rw-r--
templates.js
31.41
KB
-rw-rw-r--
tooltip.js
4.1
KB
-rw-rw-r--
tree.js
17.58
KB
-rw-rw-r--
truncate.js
6.65
KB
-rw-rw-r--
url.js
3.69
KB
-rw-rw-r--
user_date.js
7.47
KB
-rw-rw-r--
yui.js
1.15
KB
-rw-rw-r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : truncate.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/>. /** * Description of import/upgrade into Moodle: * 1.) Download from https://github.com/pathable/truncate * 2.) Copy jquery.truncate.js into lib/amd/src/truncate.js * 3.) Edit truncate.js to return the $.truncate function as truncate * 4.) Apply Moodle changes from git commit 7172b33e241c4d42cff01f78bf8570408f43fdc2 */ /** * Module for text truncation. * * Implementation provided by Pathable (thanks!). * See: https://github.com/pathable/truncate * * @module core/truncate * @package core * @class truncate * @copyright 2017 Pathable * 2017 Mathias Bynens * 2017 Ryan Wyllie <ryan@moodle.com> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ define(['jquery'], function($) { // Matches trailing non-space characters. var chop = /(\s*\S+|\s)$/; // Matches the first word in the string. var start = /^(\S*)/; // Matches any space characters. var space = /\s/; // Special thanks to Mathias Bynens for the multi-byte char // implementation. Much love. // see: https://github.com/mathiasbynens/String.prototype.at/blob/master/at.js var charLengthAt = function(text, position) { if (this == null) { throw TypeError(); } var string = String(text); var size = string.length; // `ToInteger` var index = position ? Number(position) : 0; if (index != index) { // better `isNaN` index = 0; } // Account for out-of-bounds indices // The odd lower bound is because the ToInteger operation is // going to round `n` to `0` for `-1 < n <= 0`. if (index <= -1 || index >= size) { return ''; } // Second half of `ToInteger` index = index | 0; // Get the first code unit and code unit value var cuFirst = string.charCodeAt(index); var cuSecond; var nextIndex = index + 1; var len = 1; if ( // Check if it’s the start of a surrogate pair. cuFirst >= 0xD800 && cuFirst <= 0xDBFF && // high surrogate size > nextIndex // there is a next code unit ) { cuSecond = string.charCodeAt(nextIndex); if (cuSecond >= 0xDC00 && cuSecond <= 0xDFFF) { // low surrogate len = 2; } } return len; }; var lengthMultiByte = function(text) { var count = 0; for (var i = 0; i < text.length; i += charLengthAt(text, i)) { count++; } return count; }; var getSliceLength = function(text, amount) { if (!text.length) { return 0; } var length = 0; var count = 0; do { length += charLengthAt(text, length); count++; } while (length < text.length && count < amount); return length; }; // Return a truncated html string. Delegates to $.fn.truncate. $.truncate = function(html, options) { return $('<div></div>').append(html).truncate(options).html(); }; // Truncate the contents of an element in place. $.fn.truncate = function(options) { if ($.isNumeric(options)) options = {length: options}; var o = $.extend({}, $.truncate.defaults, options); return this.each(function() { var self = $(this); if (o.noBreaks) self.find('br').replaceWith(' '); var ellipsisLength = o.ellipsis.length; var text = self.text(); var textLength = lengthMultiByte(text); var excess = textLength - o.length + ellipsisLength; if (textLength < o.length) return; if (o.stripTags) self.text(text); // Chop off any partial words if appropriate. if (o.words && excess > 0) { var sliced = text.slice(0, getSliceLength(text, o.length - ellipsisLength) + 1); var replaced = sliced.replace(chop, ''); var truncated = lengthMultiByte(replaced); var oneWord = sliced.match(space) ? false : true; if (o.keepFirstWord && truncated === 0) { excess = textLength - lengthMultiByte(start.exec(text)[0]) - ellipsisLength; } else if (oneWord && truncated === 0) { excess = textLength - o.length + ellipsisLength; } else { excess = textLength - truncated - 1; } } // The requested length is larger than the text. No need for ellipsis. if (excess > textLength) { excess = textLength - o.length; } if (excess < 0 || !excess && !o.truncated) return; // Iterate over each child node in reverse, removing excess text. $.each(self.contents().get().reverse(), function(i, el) { var $el = $(el); var text = $el.text(); var length = lengthMultiByte(text); // If the text is longer than the excess, remove the node and continue. if (length <= excess) { o.truncated = true; excess -= length; $el.remove(); return; } // Remove the excess text and append the ellipsis. if (el.nodeType === 3) { var splitAmount = length - excess; splitAmount = splitAmount >= 0 ? getSliceLength(text, splitAmount) : 0; $(el.splitText(splitAmount)).replaceWith(o.ellipsis); return false; } // Recursively truncate child nodes. $el.truncate($.extend(o, {length: length - excess + ellipsisLength})); return false; }); }); }; $.truncate.defaults = { // Strip all html elements, leaving only plain text. stripTags: false, // Only truncate at word boundaries. words: false, // When 'words' is active, keeps the first word in the string // even if it's longer than a target length. keepFirstWord: false, // Replace instances of <br> with a single space. noBreaks: false, // The maximum length of the truncated html. length: Infinity, // The character to use as the ellipsis. The word joiner (U+2060) can be // used to prevent a hanging ellipsis, but displays incorrectly in Chrome // on Windows 7. // http://code.google.com/p/chromium/issues/detail?id=68323 //ellipsis: '\u2026' // '\u2060\u2026' ellipsis: '\u2026' // '\u2060\u2026' }; return { truncate: $.truncate, }; });
Close