function Ajax()
{
this.Get = function(script_url, callback_obj, func_name)
{
                var url_str = script_url;
                var params = '';
                if(script_url.indexOf('?')>=0)
                {
                        var url_arr= script_url.split('?');
                        url_str = url_arr[0];

                        if(url_arr.length==2)
                        {
                                params = url_arr[1];
                        }
                        else if(url_arr.length>2)
                        {
                                for(j=1; j<url_arr.length; j++)
                                {
                                        params += url_arr[j]+"?";
                                }
                                params = params.substring(0, params.length-1);
                        }
                }

          //   alert(url_str+" : "+params);
$.ajax({
        url : url_str,
        type : 'post',
        data :  params,
        dataType : 'json',
        timeout : 5000,
        tryCount : 0,
        retryLimit : 4,
        success : function(json) {                
                var func_exists=0;
                for(var eachvar in callback_obj)
                {
                        if(eachvar==func_name)
                        {
                                func_exists = 1;
                        }
                }
                if(func_exists==1)
                {
                        var func_call = "callback_obj."+func_name+"(json)";
                        eval(func_call);
                }
                else{ alert("No return function defined."); }
        },
        error : function(xhr, textStatus, errorThrown ) {
                if (textStatus == 'timeout') {
                        this.tryCount++;
                        if (this.tryCount <= this.retryLimit) {
                                $.ajax(this);
                                return;
                        }
                        return;
                }
                if (xhr.status == 500) {
                        alert("Timeout "+xhr.status);
                } else  {
                    alert("Timeout "+xhr.status+" "+textStatus);
                }
        }
});
}
}
