| Server IP : 138.197.176.125 / Your IP : 216.73.216.41 Web Server : Apache/2.4.41 (Ubuntu) System : Linux SuiteCRM-8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/crm_easylife/libraries/jquery/ |
Upload File : |
/*
* jQuery AjaxQ - AJAX request queueing for jQuery
*
* Version: 0.0.1
* Date: July 22, 2008
*
* Copyright (c) 2008 Oleg Podolsky (oleg.podolsky@gmail.com)
* Licensed under the MIT (MIT-LICENSE.txt) license.
*
* http://plugins.jquery.com/project/ajaxq
* http://code.google.com/p/jquery-ajaxq/
*/
jQuery.ajaxq = function (queue, options)
{
// Initialize storage for request queues if it's not initialized yet
if (typeof document.ajaxq == "undefined") document.ajaxq = {q:{}, r:null};
// Initialize current queue if it's not initialized yet
if (typeof document.ajaxq.q[queue] == "undefined") document.ajaxq.q[queue] = [];
if (typeof options != "undefined") // Request settings are given, enqueue the new request
{
// Copy the original options, because options.complete is going to be overridden
var optionsCopy = {};
for (var o in options) optionsCopy[o] = options[o];
options = optionsCopy;
// Override the original callback
var originalCompleteCallback = options.complete;
options.complete = function (request, status)
{
// Dequeue the current request
document.ajaxq.q[queue].shift ();
document.ajaxq.r = null;
// Run the original callback
if (originalCompleteCallback) originalCompleteCallback (request, status);
// Run the next request from the queue
if (document.ajaxq.q[queue].length > 0) document.ajaxq.r = jQuery.ajax (document.ajaxq.q[queue][0]);
};
// Enqueue the request
document.ajaxq.q[queue].push (options);
// Also, if no request is currently running, start it
if (document.ajaxq.q[queue].length == 1) document.ajaxq.r = jQuery.ajax (options);
}
else // No request settings are given, stop current request and clear the queue
{
if (document.ajaxq.r)
{
document.ajaxq.r.abort ();
document.ajaxq.r = null;
}
document.ajaxq.q[queue] = [];
}
}