📁
SKYSHELL MANAGER
PHP v8.2.31
Create
Create
Path:
root
/
home
/
thevaxnx
/
nativize.com
/
staging
/
wp-includes
/
js
/
tinymce
/
themes
/
Name
Size
Perm
Actions
📁
inlite
-
0755
🗑️
🏷️
🔒
📁
modern
-
0755
🗑️
🏷️
🔒
📄
wp-links-opml.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: TransferMasterLogProcessor.js
/*global console:true, alert:true, TransferTailWindowUI:false, TransferLogTail:false, TransferLogRender:false, TransferQueueWindowUI:false */ /*jshint -W116, -W035 */ /* eslint camelcase: 0 */ (function(window) { "use strict"; var YAHOO = window.YAHOO; var DOM = window.DOM; var EVENT = window.EVENT; var ENABLE_SUBITEMS = 0; //TODO: This needs to be redone in a localizable way. var ITEM_TYPES = { failure: { className: "subitem_status", maketext_string: "[_1]", // ## no extract maketext }, warnings: { className: "warningmsg", maketext_string: "[quant,_1,warning,warnings]", // ## no extract maketext }, skipped_items: { className: "warningmsg", maketext_string: "[quant,_1,skipped item,skipped items]", // ## no extract maketext }, dangerous_items: { className: "errormsg", maketext_string: "[quant,_1,dangerous item,dangerous items]", // ## no extract maketext }, altered_items: { className: "warningmsg", maketext_string: "[quant,_1,altered item,altered items]", // ## no extract maketext } }; var TransferMasterLogProcessor = function(transfer_session_id, sessionUIObj, masterErrorProcessorObj) { this._queue_windows = {}; this._logfiles = {}; this._childTailObj = new TransferLogTail(transfer_session_id, "child", masterErrorProcessorObj); this._sessionUIObj = sessionUIObj; this._sessionState = "UNKNOWN"; this._transfer_session_id = transfer_session_id; }; YAHOO.lang.augmentObject(TransferMasterLogProcessor.prototype, { getTransferSessionId: function() { return this._transfer_session_id; }, getSessionState: function() { return this._sessionState; }, setSessionState: function(newState) { this._sessionState = newState; this._sessionUIObj.setUIState(newState); return 1; }, renderMessage: function(msg) { if (msg.type == "control") { if (msg.contents.action === "process-item") { this._start_item_tail(msg.contents); } else if (msg.contents.action === "initiator") { // do nothing // new TransferLogName(this._sessionUIObj.get_app_name_element(), msg.contents.msg); } else if (msg.contents.action === "start") { //do nothing } else if (msg.contents.action === "remotehost") { this._sessionUIObj.set_source(msg.contents.msg); } else if (msg.contents.action === "version") { //do nothing } else if (msg.contents.action === "pause") { this.setSessionState("PAUSED"); } else if (msg.contents.action === "pausing") { this.setSessionState("PAUSING"); } else if (msg.contents.action === "aborting") { this.setSessionState("ABORTING"); } else if (msg.contents.action === "resume") { this.setSessionState("RUNNING"); } else if (msg.contents.action === "child-failed") { // do nothing } else if (msg.contents.action === "complete" || msg.contents.action === "abort" || msg.contents.action === "fail") { this._complete_queue(msg.contents); if (!msg.contents.child_number) { if (msg.contents.action === "complete") { this.setSessionState("COMPLETED"); } else if (msg.contents.action === "abort") { this.setSessionState("ABORTED"); } else { this.setSessionState("FAILED"); } } } else if (msg.contents.action === "queue_count") { //Start a new queue window group this._setup_queue(msg.contents); } else if (msg.contents.action === "queue_size") { this._track_queue_size(msg.contents); } else if (msg.contents.action === "start-item") { this._start_item(msg.contents); } else if (msg.contents.action === "success-item" || msg.contents.action === "warning-item" || msg.contents.action === "failed-item") { this._finish_item(msg.contents.action, msg.contents); } else { console.log("Unhandled message"); console.log(msg.contents); } } }, _getQueueTailWindow: function(queue, windownum) { if (!this._queue_windows[queue]) { alert("Message out of order for queue: " + queue); console.trace(); return; } if (!this._queue_windows[queue].tail_windows["w_" + windownum]) { this._queue_windows[queue].tail_windows["w_" + windownum] = { logFile: null, ui: new TransferTailWindowUI(queue, windownum, this._sessionUIObj) }; this._queue_windows[queue].ui.addWindow(this._queue_windows[queue].tail_windows["w_" + windownum].ui.containerElement); this._queue_windows[queue].tail_windows["w_" + windownum].ui.render(); } return this._queue_windows[queue].tail_windows["w_" + windownum]; }, _start_item_tail: function(item_message) { var logfile = item_message.msg; var queue = item_message.queue; var tail_window = this._getQueueTailWindow(queue, item_message.child_number); if (tail_window.logFile) { this._childTailObj.delLog(tail_window.logFile); } this._logfiles[logfile] = { //FIXME: digging in the tail_window object renderer: new TransferLogRender(tail_window, this._queue_windows[queue]) }; if (item_message.local_item && item_message.local_item !== item_message.item) { tail_window.ui.set_item(LOCALE.maketext("[_1]: “[_2]” → “[_3]”", item_message.item_name, item_message.item, item_message.local_item)); } else { tail_window.ui.set_item(LOCALE.maketext("[_1]: “[_2]”", item_message.item_name, item_message.item)); } tail_window.ui.setProgressBarPercentage(0); tail_window.logFile = logfile; //FIXME this is a hack if (this.getSessionState() === "PAUSED" || this.getSessionState() === "ABORTED") { this._sessionUIObj._hide_spinners(); } this._childTailObj.addLog( logfile, this._logfiles[logfile].renderer.renderMessage.bind(this._logfiles[logfile].renderer) ); }, _setup_queue: function(item_message) { var itemcount = parseInt(item_message.msg, 10); var queue = item_message.queue; this._setup_queue_window_group(queue, itemcount); }, _track_queue_size: function(item_message) { var size = parseInt(item_message.msg, 10); var queue = item_message.queue; this._queue_windows[queue].relative_item_size = { completed: 0, total: size }; }, _setup_queue_window_group: function(queue, itemcount) { if (this._queue_windows[queue]) { //replay on resume so no need to set it up again return; } this._queue_windows[queue] = { tail_windows: {}, items: {}, itemcount: itemcount, itemstatus: { success: 0, warnings: 0, failed: 0, }, processedcount: 0, relative_item_size: { completed: 0, total: 0, }, ui: new TransferQueueWindowUI(queue, this._sessionUIObj) }; var self = this; this._queue_windows[queue].setItemPercentage = function(logfile, pct) { self._update_progress(queue, logfile, pct); }; }, _update_progress: function(queue, logfile, pct) { var pctQueue; var queue_window = this._queue_windows[queue]; if (!queue_window.items[logfile]) { /* already reached 100% from the master.log */ return; } var previous_percent = queue_window.items[logfile].percent; var size = queue_window.items[logfile].size; var newly_completed_percent = (pct - previous_percent); var additional_relative_size_completed = (newly_completed_percent / 100) * size; queue_window.items[logfile].percent = pct; queue_window.items[logfile].completed += additional_relative_size_completed; queue_window.relative_item_size.completed += additional_relative_size_completed; if (pct >= 99.9999) { var epsilon = 0; if (queue_window.items[logfile].completed > size) { epsilon = queue_window.items[logfile].completed - size; } queue_window.relative_item_size.completed -= epsilon; delete queue_window.items[logfile]; } // http://en.wikipedia.org/wiki/Machine_epsilon if (Math.abs(queue_window.relative_item_size.completed - queue_window.relative_item_size.total) < 0.0001) { pctQueue = 1; } else { pctQueue = queue_window.relative_item_size.completed / queue_window.relative_item_size.total; } queue_window.ui.setProgressBarPercentage(parseInt(pctQueue * 100, 10)); }, _start_item: function(item_message) { var queue = item_message.queue; var queue_window = this._queue_windows[queue]; var this_message = item_message.msg; var size = parseInt(this_message.size, 10); queue_window.items[item_message.logfile] = { size: size, completed: 0, percent: 0 }; }, _finish_item: function(item_type, item_message) { var queue = item_message.queue; var queue_window = this._queue_windows[queue]; var this_message = item_message.msg; var was_at_end = (queue_window.ui.outputEl.scrollTop + queue_window.ui.outputEl.offsetHeight + 1 >= queue_window.ui.outputEl.scrollHeight) || (queue_window.ui.outputEl.scrollHeight <= queue_window.ui.outputEl.offsetHeight) ? 1 : 0; queue_window.processedcount++; // on the last item disable the state button if (queue === "RESTORE" && queue_window.processedcount >= queue_window.itemcount - 1) { this._sessionUIObj.hideStateButton(); } //Update progressbar this._update_progress(queue, item_message.logfile, 100); var report_item_in_summary = 0; /* Add each item to the report */ var div_html; var itemClass; var fallback_msg; if (item_type === "success-item") { fallback_msg = LOCALE.maketext("Success"); itemClass = "okmsg"; this._queue_windows[queue]["itemstatus"]["success"]++; } else if (item_type === "warning-item") { fallback_msg = LOCALE.maketext("Warnings"); itemClass = "warningmsg"; report_item_in_summary = 1; this._queue_windows[queue]["itemstatus"]["warnings"]++; } else { fallback_msg = LOCALE.maketext("Failed"); itemClass = "errormsg"; report_item_in_summary = 1; this._queue_windows[queue]["itemstatus"]["failed"]++; } /* TODO: THIS SHOULD ALL BE IN THE UI OBJECT */ var summary_msg = this_message.failure || this_message.message || fallback_msg; if (item_message.local_item && item_message.local_item !== item_message.item) { div_html = LOCALE.maketext("[_1] “[_2]” → “[_3]”: [_4][comment,## no extract maketext (will be done via task 32670)]", item_message.item_name, item_message.item, item_message.local_item, summary_msg); } else { div_html = LOCALE.maketext("[_1] “[_2]”: [_3][comment,## no extract maketext (will be done via task 32670)]", item_message.item_name, item_message.item, summary_msg); } var link; var statusDiv = document.createElement("div"); if (item_message.logfile) { link = this._create_log_link(queue, div_html, this._transfer_session_id, item_message.logfile); statusDiv.appendChild(link); } else { statusDiv[CPANEL.has_text_content ? "textContent" : "innerText"] = div_html; } statusDiv.className = itemClass; queue_window.ui.outputEl.appendChild(statusDiv); var item; if (ENABLE_SUBITEMS) { /* Now build any subitems that go under the item * for exmaple 12 Warnings * 3 Dangerous Item */ for (item in this_message) { if (ITEM_TYPES[item] && this_message[item]) { var newDiv = document.createElement("div"); newDiv[CPANEL.has_text_content ? "textContent" : "innerText"] = LOCALE.maketext(ITEM_TYPES[item].maketext_string, this_message[item]); // ## no extract maketext newDiv.className = ITEM_TYPES[item].className + " subitem_status"; queue_window.ui.outputEl.appendChild(newDiv); } } } if (report_item_in_summary) { var report = DOM.get("report"); // FIXME use UI object var actual_items = this_message.contents; var masterDiv = document.createElement("div"); masterDiv.className = itemClass; if (item_message.local_item && item_message.local_item !== item_message.item) { div_html = LOCALE.maketext("[_1]: [_2] “[_3]” → “[_4]”: [_5][comment,## no extract maketext (will be done via task 32670)]", queue, item_message.item_name, item_message.item, item_message.local_item, summary_msg); } else { div_html = LOCALE.maketext("[_1]: [_2] “[_3]”: [_4][comment,## no extract maketext (will be done via task 32670)]", queue, item_message.item_name, item_message.item, summary_msg); } if (item_message.logfile) { link = this._create_log_link(queue, div_html, this._transfer_session_id, item_message.logfile); masterDiv.appendChild(link); } else { masterDiv[CPANEL.has_text_content ? "textContent" : "innerText"] = div_html; } report.appendChild(masterDiv); var logEntryDiv = document.createElement("div"); report.appendChild(logEntryDiv); for (item in actual_items) { if (ITEM_TYPES[item] && actual_items[item] && actual_items[item].length) { for (var logindex = 0; logindex < actual_items[item].length; logindex++) { /* TODO: this logic exists in TransferLogRender.js as well */ var log_message_to_display = actual_items[item][logindex]; //This doesn’t seem to get the actual message. var log_text = log_message_to_display[1]; //This is where the message seems to be. //Leaving it as fallback logic to avoid //inadvertent breakage. if (!log_text && log_message_to_display.msg) { log_text = log_message_to_display.msg[0]; } var msg_div = document.createElement("div"); msg_div.className = ITEM_TYPES[item].className + " subitem_status"; msg_div[CPANEL.has_text_content ? "textContent" : "innerText"] = log_text; logEntryDiv.appendChild(msg_div); var action_url = log_message_to_display[2]; if (action_url) { msg_div.innerHTML += " "; link = document.createElement("a"); link.href = ".." + action_url[1] + "?" + CPANEL.util.make_query_string(action_url[2]); link[CPANEL.has_text_content ? "textContent" : "innerText"] = action_url[0]; link.target = "_blank"; msg_div.appendChild(link); } } } } } if (was_at_end) { queue_window.ui.outputEl.scrollTop = queue_window.ui.outputEl.scrollHeight; } }, _addLogReviewAction: function(el, logfile) { EVENT.on(el, "click", function() { window.open("render_transfer_log?transfer_session_id=" + encodeURIComponent(this._transfer_session_id) + "&log_file=" + encodeURIComponent(logfile)); }); }, _create_log_link: function(queue, text_content, transfer_session_id, logfile) { var link = document.createElement("a"); link.href = "render_transfer_log?" + CPANEL.util.make_query_string({ transfer_session_id: transfer_session_id, log_file: logfile }); link[CPANEL.has_text_content ? "textContent" : "innerText"] = text_content; link.target = "_blank"; if (queue === "TRANSFER") { link.title = LOCALE.maketext("View this transfer’s log."); link.id = "transfer_log_for_" + transfer_session_id; } else { link.title = LOCALE.maketext("View this restoration’s log."); link.id = "restoration_log_for_" + transfer_session_id; } var spacer = document.createElement("span"); spacer[CPANEL.has_text_content ? "textContent" : "innerText"] = " "; link.appendChild(spacer); var icon = document.createElement("span"); icon.className = "glyphicon glyphicon-expand"; link.appendChild(icon); return link; }, _completeSummary: function() { /* TODO: THIS SHOULD ALL BE IN THE UI OBJECT */ var queue; var queues = []; for (queue in this._queue_windows) { if (this._queue_windows.hasOwnProperty(queue)) { queues.push(queue); } } queues = queues.sort(); for (var i = 0; i < queues.length; i++) { queue = queues[i]; var itemstatus = this._queue_windows[queue]["itemstatus"]; var summaryDiv = document.createElement("h5"); summaryDiv.className = "summary_of_summary"; summaryDiv[CPANEL.has_text_content ? "textContent" : "innerText"] = LOCALE.maketext("[_1]: [_2] completed, [_3] had warnings, and [_4] failed.[comment,## no extract maketext (will be done via task 32670)]", queue, (itemstatus["success"] + itemstatus["warnings"]), itemstatus["warnings"], itemstatus["failed"]); var report = DOM.get("report"); // FIXME use UI object if (report.firstChild) { report.insertBefore(summaryDiv, report.firstChild); } else { report.appendChild(summaryDiv); } } }, _complete_queue: function(item_message) { if (item_message.child_number) { var tail_window = this._getQueueTailWindow(item_message.queue, item_message.child_number); if (tail_window) { if (tail_window.logFile) { this._childTailObj.delLog(tail_window.logFile); } tail_window.ui.set_item(LOCALE.maketext(item_message.action)); // ## no extract maketext CPANEL.animate.slide_up(tail_window.ui.containerElement); } } else { this._completeSummary(); } } }); window.TransferMasterLogProcessor = TransferMasterLogProcessor; }(window));
Save