
/*@cc_on _d=document;eval('var document=_d')@*/

var _si_nativeSetInterval = window.setInterval;
var _si_nativeClearInterval = window.clearInterval;
var _si_intervalTime = 10;
var _si_counter = 1;
var _si_length = 0;
var _si_functions = {};
var _si_counters = {};
var _si_numbers = {};
var _si_intervalId = undefined;
var _si_loop = function() {
    var f = _si_functions, c = _si_counters, n = _si_numbers;
    for(var i in f) {
        if(!--c[i]) {
            f[i]();
            c[i] = n[i];
        }
    } 
};
window.setInterval = function(handler, time) {
    if(typeof handler == 'string')
        handler = new Function(handler);
    _si_functions[_si_counter] = handler;
    _si_counters[_si_counter] = _si_numbers[_si_counter] = Math.ceil(time / _si_intervalTime);
    if (++_si_length && !_si_intervalId) {
       _si_intervalId = _si_nativeSetInterval(_si_loop, _si_intervalTime);
    }
    return _si_counter++;
};
window.clearInterval = function(id) {
    if(_si_functions[id]) {
        delete _si_functions[id];
        delete _si_numbers[id];
        delete _si_counters[id];
        if (!--_si_length && _si_intervalId) {
            _si_nativeClearInterval(_si_intervalId);
            _si_intervalId = undefined;
        }
    }
};

function ExecuteAjax(url,params,methodName){
	new Ajax.Request(
			url,
			{
				method : 'get',
				parameters : params,
				asynchronous: true,
				onFailure : function() {
								//alert("An error occurred");
							},
				onUninitialized : function() {
								// status:0
							},
				onLoading : function() {
								// status:1
							},
				onLoaded : function() {
								// status:2
							},
				onInteractive : function() {
								// status:3
							},
				onComplete : function(originalRequest) {
					if(methodName == "MyArticle")
					{
						GetResultExecuteAjaxForMyArticle(originalRequest.responseText);
					}
					else
					{
						GetResultExecuteAjax(originalRequest.responseText);
					}
				}
			});
}
