uawdijnntqw1x1x1
IP : 216.73.216.219
Hostname : webm015.cluster127.gra.hosting.ovh.net
Kernel : Linux webm015.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
OS : Linux
PATH:
/
home
/
pteabiscqq
/
www
/
188ee
/
..
/
libraries
/
..
/
media
/
com_akeeba
/
js
/
IncludeFolders.js
/
/
/** * @package akeebabackup * @copyright Copyright (c)2006-2023 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ // Object initialisation if (typeof akeeba == "undefined") { var akeeba = {}; } if (typeof akeeba.Extradirs == "undefined") { akeeba.Extradirs = {}; } akeeba.Extradirs.render = function (data) { var tbody = document.getElementById("ak_list_contents"); tbody.innerHTML = ""; for (rootname in data) { if (!data.hasOwnProperty(rootname)) { continue; } var def = data[rootname]; akeeba.Extradirs.addRow(rootname, def, tbody); } akeeba.Extradirs.addNewRecordButton(tbody); }; akeeba.Extradirs.addRow = function (rootuuid, def, append_to_here) { var elTr = document.createElement("tr"); elTr.className = "ak_filter_row"; // Cache UUID of this entry akeeba.System.data.set(elTr, "rootuuid", rootuuid); // Cache the definition data (virtual directory) akeeba.System.data.set(elTr, "def", def); var elDeleteContainer = document.createElement("td"); var elEditContainer = document.createElement("td"); var elDirPath = document.createElement("td"); var elVirtualPath = document.createElement("td"); // Delete button var elDeleteSpan = document.createElement("span"); elDeleteSpan.className = "ak_filter_tab_icon_container akeeba-btn--red--mini delete"; akeeba.System.addEventListener(elDeleteSpan, "click", function () { var new_data = { uuid: akeeba.System.data.get(this.parentNode.parentNode, "rootuuid"), verb: "remove" }; akeeba.Fsfilters.toggle(new_data, this, function (response, caller) { if (response.success == true) { var elRemove = caller.parentNode.parentNode; elRemove.parentNode.removeChild(elRemove); } }); }); elDeleteSpan.insertAdjacentHTML("beforeend", "<span class=\"akion-trash-a deletebutton ak-toggle-button\"></span>"); elDeleteContainer.appendChild(elDeleteSpan); // Edit button var elEditSpan = document.createElement("span"); elEditSpan.className = "ak_filter_tab_icon_container akeeba-btn--teal--mini"; akeeba.System.addEventListener(elEditSpan, "click", function () { // Get reference to data root var data_root = this.parentNode.parentNode; // Hide pencil icon this.style.display = "none"; // Hide delete icon data_root.querySelector("span.delete").style.display = "none"; var elTd = this.parentNode; var elTr = elTd.parentNode; // Add a disk icon (save) var elDiskIcon = document.createElement("span"); elDiskIcon.className = "ak_filter_tab_icon_container akeeba-btn--teal--mini save ak-toggle-button ak-stacked-button"; elDiskIcon.insertAdjacentHTML("beforeend", "<span class=\"akion-checkmark\"></span>"); akeeba.System.addEventListener(elDiskIcon, "click", function () { var that = this; var new_directory = data_root.querySelector("input.folder_editor").value; new_directory = trim(new_directory); var add_dir = data_root.querySelector("input.virtual_editor").value; add_dir = trim(add_dir); if (empty(add_dir)) { add_dir = Math.uuid(8) + "-" + basename(new_directory); } var old_data = akeeba.System.data.get(data_root, "def", ","); old_data = old_data.split(",", 2); if (new_directory == "") { if (old_data[0] == "") { // Tried to save empty data on new row. That's like Cancel... akeeba.System.triggerEvent(that.parentNode.querySelector("span.cancel"), "click"); } else { // Tried to save empty data on existing row. That's like Delete... var elDelete = data_root.querySelector("span.delete"); elDelete.style.display = "inline-block"; akeeba.System.triggerEvent(elDelete, "click"); } } else { // Save entry var new_data = { uuid: akeeba.System.data.get(data_root, "rootuuid"), root: new_directory, data: add_dir, verb: "set" }; akeeba.Fsfilters.toggle(new_data, that, function (response, caller) { if (response.success == true) { // Catch case of new row if (old_data[0] == "") { // Change icon to pencil var elIcon = caller.parentNode.querySelector("span.editbutton"); akeeba.System.removeClass(elIcon, "akion-plus"); akeeba.System.addClass(elIcon, "akion-edit ak-toggle-button"); // Add new row akeeba.Extradirs.addNewRecordButton(append_to_here); } // Update cached data var new_cache_data = [new_directory, add_dir]; akeeba.System.data.set(data_root, "def", new_cache_data); // Update values in table console.debug(data_root); data_root.querySelector("span.ak_directory").textContent = new_directory; data_root.querySelector("span.ak_virtual").textContent = add_dir; // Show pencil icon caller.parentNode.querySelector( "span.ak_filter_tab_icon_container").style.display = "inline-block"; // Remove cancel icon var elRemove = caller.parentNode.querySelector("span.cancel"); elRemove.parentNode.removeChild(elRemove); // Show the delete button data_root.querySelector("span.delete").style.display = "inline-block"; // Remove disk icon caller.parentNode.removeChild(caller); // Remove input boxes elRemove = data_root.querySelector("input.folder_editor"); elRemove.parentNode.removeChild(elRemove); elRemove = data_root.querySelector("input.virtual_editor"); elRemove.parentNode.removeChild(elRemove); // Remove browser button elRemove = data_root.querySelector("span.browse"); elRemove.parentNode.removeChild(elRemove); // Show values data_root.querySelector("span.ak_directory").style.display = "inline-block"; data_root.querySelector("span.ak_virtual").style.display = "inline-block"; } }, false); } }); elTd.appendChild(elDiskIcon); // Add a Cancel icon var elCancelIcon = document.createElement("span"); elCancelIcon.className = "ak_filter_tab_icon_container akeeba-btn--orange--mini cancel ak-toggle-button"; elCancelIcon.insertAdjacentHTML("beforeend", "<span class=\"akion-close \"></span>"); akeeba.System.addEventListener(elCancelIcon, "click", function () { var that = this; // Show pencil icon that.parentNode.querySelector("span.ak_filter_tab_icon_container").style.display = "inline-block"; // Remove disk icon var elRemove = that.parentNode.querySelector( "span.save"); elRemove.parentNode.removeChild(elRemove); // Remove cancel icon that.parentNode.removeChild(that); // Remove input boxes elRemove = data_root.querySelector("input.folder_editor"); elRemove.parentNode.removeChild(elRemove); elRemove = data_root.querySelector("input.virtual_editor"); elRemove.parentNode.removeChild(elRemove); // Remove browser button elRemove = data_root.querySelector("span.browse"); elRemove.parentNode.removeChild(elRemove); // Show values data_root.querySelector("span.ak_directory").style.display = "inline-block"; data_root.querySelector("span.ak_virtual").style.display = "inline-block"; // Show the delete button (if it's NOT a new row) var old_data = akeeba.System.data.get(data_root, "def", ","); old_data = old_data.split(",", 2); if (old_data[0] != "") { data_root.querySelector("span.delete").style.display = "inline-block"; } }); elTd.appendChild(elCancelIcon); // Show edit box var old_data = akeeba.System.data.get(data_root, "def", ","); old_data = old_data.split(",", 2); var elFilterContainer = elTr.querySelector("td.ak_filter_item"); var elVirtualContainer = elFilterContainer.nextElementSibling; // -- Show input element for the filter (folder to include) var elFilterInput = document.createElement("input"); elFilterInput.setAttribute("type", "text"); elFilterInput.setAttribute("size", "60"); elFilterInput.className = "folder_editor"; elFilterInput.value = old_data[0]; // -- Show browser button var elBrowser = document.createElement("span"); elBrowser.className = "ak_filter_tab_icon_container akeeba-btn--dark--mini browse ak-toggle-button"; elBrowser.insertAdjacentHTML("beforeend", "<span class=\"akion-folder\"></span>"); akeeba.System.addEventListener(elBrowser, "click", function () { var that = this; // Show folder open dialog var editor = that.parentNode.querySelector("input.folder_editor"); var val = trim(editor.value); if (val == "") { val = "[ROOTPARENT]"; } akeeba.Configuration.onBrowser(val, editor); }); elFilterContainer.appendChild(elFilterInput); elFilterContainer.appendChild(elBrowser); var elVirtualInput = document.createElement("input"); elVirtualInput.setAttribute("type", "text"); elVirtualInput.setAttribute("size", "60"); elVirtualInput.className = "virtual_editor"; elVirtualInput.value = old_data[1]; elVirtualContainer.appendChild(elVirtualInput); // Hide existing value boxes elFilterContainer.querySelector("span.ak_directory").style.display = "none"; elVirtualContainer.querySelector("span.ak_virtual").style.display = "none"; }); elEditSpan.insertAdjacentHTML("beforeend", "<span class=\"akion-edit editbutton ak-toggle-button\"></span>"); elEditContainer.appendChild(elEditSpan); // Directory path elDirPath.className = "ak_filter_item"; var elFilterNameSpan = document.createElement("span"); elFilterNameSpan.className = "ak_filter_name ak_directory"; elFilterNameSpan.textContent = def[0]; elDirPath.appendChild(elFilterNameSpan); // Virtual path elVirtualPath.className = "ak_filter_item"; var elVirtualNameSpan = document.createElement("span"); elVirtualNameSpan.className = "ak_filter_name ak_virtual"; elVirtualNameSpan.textContent = def[1]; elVirtualPath.appendChild(elVirtualNameSpan); elTr.appendChild(elDeleteContainer); elTr.appendChild(elEditContainer); elTr.appendChild(elDirPath); elTr.appendChild(elVirtualPath); append_to_here.appendChild(elTr); }; akeeba.Extradirs.addNewRecordButton = function (append_to_here) { var newUUID = Math.uuid(); var dummyData = ["", ""]; akeeba.Extradirs.addRow(newUUID, dummyData, append_to_here); var trList = document.getElementById("ak_list_contents").children; var lastTr = trList[trList.length - 1]; var tdList = lastTr.querySelectorAll("td"); tdList[0].querySelector("span").style.display = "none"; var spanList = tdList[1].querySelectorAll("span"); var elPencil = spanList[spanList.length - 1]; akeeba.System.removeClass(elPencil, "akion-edit"); akeeba.System.addClass(elPencil, "akion-plus ak-toggle-button"); }; akeeba.Loader.add(['akeeba.UserInterfaceCommon', 'akeeba.System', 'akeeba.Configuration'], function () { var guiData = akeeba.System.getOptions("akeeba.IncludeFolders.guiData", null); if (guiData === null) { return; } akeeba.Configuration.enablePopoverFor(document.querySelectorAll("[rel=\"popover\"]")); akeeba.Extradirs.render(guiData); });
/home/pteabiscqq/www/188ee/../libraries/../media/com_akeeba/js/IncludeFolders.js