https://t.me/RX1948
Server : Apache/2.4.18 (Ubuntu)
System : Linux canvaswebdesign 3.13.0-71-generic #114-Ubuntu SMP Tue Dec 1 02:34:22 UTC 2015 x86_64
User : oppastar ( 1041)
PHP Version : 7.0.33-0ubuntu0.16.04.15
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
Directory :  /var/www/andreassugianto.com/public_html/media/com_admintools/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/andreassugianto.com/public_html/media/com_admintools/js/backend.js
/**
 *  @package AdminTools
 *  @copyright Copyright (c)2010-2013 Nicholas K. Dionysopoulos
 *  @license GNU General Public License version 3, or later
 *  @version $Id$
 */

/** @var The AJAX proxy URL */
var admintools_ajax_url = "";

/** @var The callback function to call on error */
var admintools_error_callback = dummy_error_handler;

/** @var The password sent to the restoration script */
var admintools_update_password = '';

var	admintools_update_stat_inbytes = 0;
var	admintools_update_stat_outbytes = 0;
var	admintools_update_stat_files = 0;
var admintools_update_factory = null;

/**
 * An extremely simple error handler, dumping error messages to screen
 * @param error The error message string
 */
function dummy_error_handler(error)
{
	alert("ERROR:\n"+error);
}

/**
 * Performs an AJAX request and returns the parsed JSON output.
 * The global akeeba_ajax_url is used as the AJAX proxy URL.
 * If there is no errorCallback, the global akeeba_error_callback is used.
 * @param data An object with the query data, e.g. a serialized form
 * @param successCallback A function accepting a single object parameter, called on success
 * @param errorCallback A function accepting a single string parameter, called on failure
 */
function doAjax(data, successCallback, errorCallback)
{
	var json = JSON.stringify(data);
	if( admintools_update_password.length > 0 )
	{
		json = AesCtr.encrypt( json, admintools_update_password, 128 );
	}
	var post_data = 'json='+encodeURIComponent(json);


	var structure =
	{
		onSuccess: function(msg, responseXML)
		{
			// Initialize
			var junk = null;
			var message = "";

			// Get rid of junk before the data
			var valid_pos = msg.indexOf('###');
			if( valid_pos == -1 ) {
				// Valid data not found in the response
				msg = 'Invalid AJAX data:\n' + msg;
				if(errorCallback == null)
				{
					if(admintools_error_callback != null)
					{
						admintools_error_callback(msg);
					}
				}
				else
				{
					errorCallback(msg);
				}
				return;
			} else if( valid_pos != 0 ) {
				// Data is prefixed with junk
				junk = msg.substr(0, valid_pos);
				message = msg.substr(valid_pos);
			}
			else
			{
				message = msg;
			}
			message = message.substr(3); // Remove triple hash in the beginning

			// Get of rid of junk after the data
			var valid_pos = message.lastIndexOf('###');
			message = message.substr(0, valid_pos); // Remove triple hash in the end
			// Decrypt if required
			if( admintools_update_password.length > 0 )
			{
				try {
					var data = JSON.parse(message);
				} catch(err) {
					message = AesCtr.decrypt(message, admintools_update_password, 128);
				}
			}

			try {
				var data = JSON.parse(message);
			} catch(err) {
				var msg = err.message + "\n<br/>\n<pre>\n" + message + "\n</pre>";
				if(errorCallback == null)
				{
					if(admintools_error_callback != null)
					{
						admintools_error_callback(msg);
					}
				}
				else
				{
					errorCallback(msg);
				}
				return;
			}

			// Call the callback function
			successCallback(data);
		},
		onFailure: function(req) {
			var message = 'AJAX Loading Error: '+req.statusText;
			if(errorCallback == null)
			{
				if(admintools_error_callback != null)
				{
					admintools_error_callback(message);
				}
			}
			else
			{
				errorCallback(message);
			}
		}
	};

	var ajax_object = null;
	
	// Damn you, Internet Explorer!!!
	var randomJunk = new Date().getTime();
	var url = admintools_ajax_url+'?randomJunk='+randomJunk;
	
	if(typeof(XHR) == 'undefined') {
		structure.url = url;
		ajax_object = new Request(structure);
		ajax_object.send(post_data);
	} else {
		ajax_object = new XHR(structure);
		ajax_object.send(url, post_data);
	}
}

/**
 * Pings the update script (making sure its executable!!)
 * @return
 */
function pingUpdate()
{
	// Reset variables
	admintools_update_stat_files = 0;
	admintools_update_stat_inbytes = 0;
	admintools_update_stat_outbytes = 0;

	// Do AJAX post
	var post = {task : 'ping'};
	doAjax(post, function(data){
		startUpdate(data);
	});
}

/**
 * Starts the update
 * @return
 */
function startUpdate()
{
	// Reset variables
	admintools_update_stat_files = 0;
	admintools_update_stat_inbytes = 0;
	admintools_update_stat_outbytes = 0;

	var post = { task : 'startRestore' };
	doAjax(post, function(data){
		processUpdateStep(data);
	});
}

/**
 * Steps through the update
 * @param data
 * @return
 */
function processUpdateStep(data)
{
	if(data.status == false)
	{
		// handle failure
		admintools_error_callback(data.message);
	}
	else
	{
		if(data.done)
		{
			admintools_update_factory = data.factory;
			finalizeUpdate();
		}
		else
		{
			// Add data to variables
			admintools_update_stat_inbytes += data.bytesIn;
			admintools_update_stat_outbytes += data.bytesOut;
			admintools_update_stat_files += data.files;

			// Display data
			document.getElementById('extbytesin').innerHTML = admintools_update_stat_inbytes;
			document.getElementById('extbytesout').innerHTML = admintools_update_stat_outbytes;
			document.getElementById('extfiles').innerHTML = admintools_update_stat_files; 

			// Do AJAX post
			post = {
				task: 'stepRestore',
				factory: data.factory
			};
			doAjax(post, function(data){
				processUpdateStep(data);
			});
		}
	}
}

function finalizeUpdate()
{
	// Do AJAX post
	var post = { task : 'finalizeRestore', factory: admintools_update_factory };
	doAjax(post, function(data){
		updateFinished(data);
	});
}

function updateFinished()
{
	window.location = 'index.php?option=com_admintools&view=jupdate&task=finalize&file='+admintools_file;
}

function showWhatthis()
{
	if(document.getElementById('admintools-whatsthis-info').style.display == 'block') {
		document.getElementById('admintools-whatsthis-info').style.display = 'none';
	} else {
		document.getElementById('admintools-whatsthis-info').style.display = 'block';
	}
}

function hideWhatthis()
{
	document.getElementById('admintools-whatsthis-info').style.display = 'none';
}

https://t.me/RX1948 - 2025