﻿Namespace.register("How2go.Ajax");
How2go.Ajax={
			
		Index:0
		,
		Path:''
		,
		Objects:'',
        ResponseText:'',
        CallFunction:'',
        CallBack: function(callBack) {    
        if(typeof callBack!="object"){callBack={};}
            this.callBack = {
            oncomplate:callBack.oncomplate||function(){}
            }
        },
        Post:function(action,send,callBack)
        {        
			this.Index +=1;
			if (parseInt(this.Index)>=1000 || parseInt(this.Index)==1)
			{
				this.Objects=new Array();
				this.ResponseText=new Array();
				this.CallFunction=new Array();	
			}
            if (typeof(How2go.Ajax.Objects[action])=='undefined')
            {
                if (!How2go.IE)
                {
                    How2go.Ajax.Objects[action]= new XMLHttpRequest();
                }
                else
                {
                    How2go.Ajax.Objects[action]=new ActiveXObject("Microsoft.XMLHTTP");
                }
            }               
            //Utility
            var path=How2go.Ajax.Path+"Ajax.aspx";    
            //alert(path);
            How2go.Ajax.Objects[action].open("POST",''+path+'?',true);
            How2go.Ajax.Objects[action].setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
            How2go.Ajax.Objects[action].send(send);
            How2go.Ajax.CallFunction[action]=callBack; 
            How2go.Ajax.Objects[action].onreadystatechange = function(){How2go.Ajax.Status(action,path);}  
        },
        Status:function(action,path)
        {
            if (null!=How2go.Ajax.Objects[action])
            {
                if (How2go.Ajax.Objects[action].readyState==4)
                {
                    if (How2go.Ajax.Objects[action].status==200)
                    {
                        How2go.Ajax.CallBack(How2go.Ajax.CallFunction); 
            //alert(How2go.Ajax.Objects[action].responseText);        
                        How2go.Ajax.ResponseText[action]=unescape(How2go.Ajax.Objects[action].responseText);
                        if(typeof How2go.Ajax.CallFunction[action]!="undefined")
                        {
                            How2go.Ajax.CallFunction[action].oncomplate(); 
                        }
                    }
					 else if (How2go.Ajax.Objects[action].status==500)
                        {
                            document.write(How2go.Ajax.Objects[action].responseText);
                        }
                        else if (How2go.Ajax.Objects[action].status==450 || How2go.Ajax.Objects[action].status==12030)
                        {
                            How2go.Load.Hidden();
                            //path=Dongwin.Path+"/Utility/"+path+".aspx";    
                           // alert(new Dongwin.Language.Ajax().Error.replace("{Path}",path));
							alert("error"+action);
                        }
					
					
                }   
                
          }    
         
        }
       // Obj:'',
//        CallBack: function(callBack) {    
//        if(typeof callBack!="object"){callBack={};}
//            this.callBack = {
//            oncomplate:callBack.oncomplate||function(){}
//            }
//        },
//        Post:function(send,callBack)
//        {
//            setTimeout(
//            function()
//            {
//            if (!How2go.IE)
//            {
//                How2go.Ajax.Obj= new XMLHttpRequest();
//            }
//            else
//            {
//                How2go.Ajax.Obj=new ActiveXObject("Microsoft.XMLHTTP");
//            }
//            var path=How2go.Path+"/Utility/Ajax.aspx";
//            //var path="http://www.how2go.cn:8058/Utility/Ajax.aspx";
//            How2go.Ajax.Obj.open("POST",''+path+'?',true);
//            How2go.Ajax.Obj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
//            //How2go.AjaxObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//            
//            //How2go.AjaxObj.setrequestheader("content-length",send.length);
//            How2go.Ajax.Obj.send(send);
//            How2go.Ajax.CallFunction=callBack; 
//            How2go.Ajax.Obj.onreadystatechange = How2go.Ajax.Status;  
//            }
//            ,
//            50);
//        },
//        Status:function()
//        {
//        if (null!=How2go.Ajax.Obj && How2go.Ajax.Obj.readyState==4)
//        {
//			//alert(How2go.Ajax.Obj.readyState);
//            //document.write(How2go.Ajax.Obj.responseText);
//            if (How2go.Ajax.Obj.status==200)
//            {
//				//alert(How2go.Ajax.Obj.responseText);
//                How2go.Ajax.CallBack(How2go.Ajax.CallFunction); 
//                How2go.Ajax.ResponseText=unescape(How2go.Ajax.Obj.responseText);
//                if(typeof How2go.Ajax.CallFunction!="undefined")
//                {
//                    How2go.Ajax.CallFunction.oncomplate();  
//                }
//                How2go.Ajax.Obj.abort();
//                How2go.Ajax.Obj=null;
//            }
//        }       
//         
//        },
//        ResponseText:'',
//        CallFunction:''
}