﻿/*******************************
 * Pure Ajax JScript File.     *
 * Auther: Shadi Abu Hilal.    *
 *******************************/

var strLoding = "<b><center><img alt='' src='images/loading.gif' />Loading...</center><b/>";
var objCompleted= null;

//---------------------------------------------------------------------------------------
/** Don't Change Any Thing **/
function GetXmlHttpObject()
{
    var xmlHttp=null;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e)
    {
        // Internet Explorer
        try
        {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}
//---------------------------------------------------------------------------------------
/** Don't Change Any Thing **/
function DoAjax(url,divLoadingID,strMsg)
{
    var xmlHttp;
  xmlHttp=GetXmlHttpObject();
    if (xmlHttp==null)
    {
        alert ("Your browser does not support AJAX!");
        return;
    } 
    
    xmlHttp.onreadystatechange=function stateChanged(){ 
           
           var strLodingTemp ="";
           
           if(strMsg != null && strMsg != "" ) 
            strLodingTemp =  strMsg; // Use the Custom loading
           else 
            strLodingTemp = strLoding; // Use the Default loading
           
            switch(xmlHttp.readyState)
            {
                
               case 0: //  0 The request is not initialized 
                 document.getElementById("divAjaxLoading").innerHTML="No Connection...";
                 break;
                 
              case 1: // 1 The request has been set up 
                  document.getElementById(divLoadingID).innerHTML =  strLodingTemp; //"start Connecting...";
                 break;
            
              case 2: // 2 The request has been sent
                  document.getElementById(divLoadingID).innerHTML = strLodingTemp; //"Connecting...";
                 break;
                 
              case 3: // 3 The request is in process 
                 document.getElementById(divLoadingID).innerHTML = strLodingTemp; //"Loading...";
                 break;
                 
              case 4: // 4 The request is complete 
                  document.getElementById(divLoadingID).innerHTML=xmlHttp.responseText;
                  if( objCompleted != null )
                  {
                    objCompleted.complete();
                  }
                  
                
            };
        };
        
    xmlHttp.open("GET",url,true);
    xmlHttp.send(null);
}
//---------------------------------------------------------------------------------------



//---------------------------------------------------------------------------------------------------
// Your function here
//--- TestShAjax ------------------------------------------------------------------------------------
function TestShAjax(siteURL,txtID,divResultID, obj_Completed)
{ 
    var strName;
    //strName  = document.getElementById(txtID).value; 
        
    var url= siteURL;
    
    this.objCompleted= obj_Completed
    
    divLoadingID = divResultID;
    DoAjax(url,divLoadingID);
}



