var xmlHttp;
var xmlHttp1;
var secUrlMethodName;
var methodName;
var productAddedName;
function remoteCall(url)
{
    try
      {
      // Firefox, Opera 8.0+, Safari
      xmlHttp=new XMLHttpRequest();
      }
    catch (e)
      {
      // Internet Explorer
      try
        {
        xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
      catch (e)
        {
        try
          {
          xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
        catch (e)
          {
          alert("Your browser does not support AJAX!");
          return false;
          }
        }
      }
      
    if(methodName == "checkUser"){
	      xmlHttp.onreadystatechange=checkUserHandle;
	}else if(methodName == "stateCheckHandle"){
		      xmlHttp.onreadystatechange=stateCheckHandle;
	}else if(methodName == "defaultStateCheckHandle"){
	      	xmlHttp.onreadystatechange=defaultStateCheckHandle;
	}else if(methodName == "getShippingHandle"){
	       	xmlHttp.onreadystatechange=getShippingHandle;
	}else if(methodName == "checkUserIdHandle"){		      
		    xmlHttp.onreadystatechange=checkUserIdHandle;
	}else if(methodName == "getMicroCartHandle"){
	      	xmlHttp.onreadystatechange=updateMicroCartHandle;
	}else if(methodName == "addToShoppingMethod"){	      
      	xmlHttp.onreadystatechange=updateAddToShoppingMethod;	      
    } 
    xmlHttp.open("POST",url,true);
    xmlHttp.send(null);
}
var stateId;
function stateCheck(url,country1,state1){	
	if(url){
		if(url.length > 0){	
		stateId = state1;
		 methodName = "stateCheckHandle";
		 if(url.indexOf(';')>-1 ){
		         url = url.substring(0,url.lastIndexOf(';'));
		      }
       
       var countryCode = document.getElementById(country1).value;
       url = url +"?countryId="+countryCode;
       remoteCall(url);
       }
	  }      
}

function stateCheckHandle(){
	if(xmlHttp.readyState==4 && xmlHttp.status==200){
		jQuery("#"+stateId).empty();
			jQuery("#"+stateId).append(xmlHttp.responseText);
			     }
} 

function defaultStateCheckHandle(){
		if(xmlHttp.readyState==4 && xmlHttp.status==200){
		jQuery("#"+stateId).empty();
		jQuery("#"+stateId).append(xmlHttp.responseText);
     }

}

function defaultStateCheck(url,country1,state1){
	if(url){
		if(url.length > 0){	
		stateId = state1;
		 methodName = "defaultStateCheckHandle";
		 if(url.indexOf(';')>-1 ){
		         url = url.substring(0,url.lastIndexOf(';'));
		      }
       
       var countryCode = document.getElementById(country1).value;
       url = url +"?countryId="+countryCode;
       remoteCall(url);
       }
	  }
}

function updateMicroCartHandle(){
	if(xmlHttp.readyState==4 && xmlHttp.status==200){
		//alert("inside Macro - Cart");
 		jQuery("#microcart-body").empty(); 		
 		jQuery("#microcart-body").append(xmlHttp.responseText);
    }
}



function remoteCall2(url2)
{
    try{// Firefox, Opera 8.0+, Safari
    	xmlHttp1=new XMLHttpRequest();
    }
    catch (e) {// Internet Explorer
	      try{
	        	xmlHttp1=new ActiveXObject("Msxml2.XMLHTTP");
	      }catch (e){
		        try{
		          	xmlHttp1=new ActiveXObject("Microsoft.XMLHTTP");
		        }
		        catch (e){
		          alert("Your browser does not support AJAX!");
		          return false;
		        }
        	}
     }
	if(secUrlMethodName == "getMiniCartHandle"){
	      	xmlHttp1.onreadystatechange=updateMiniCartHandle;		      	
	}	  	      
    xmlHttp1.open("POST",url2,true);
    xmlHttp1.send(null);
}


function updateMiniCartHandle(){
	if(xmlHttp1.readyState==4 && xmlHttp1.status==200){
 		jQuery("#minicart").empty();
 		jQuery("#minicart").append(xmlHttp1.responseText);	 	
 		jQuery("#minicart-name").empty();
 		jQuery("#minicart-name").append("Product \"" + productAddedName + "\" added in the cart");	 	
 		
    }
}

function updateHeaderCart(url)
{
	
	 if(url){
		 		if(url.length > 0){	
			 		methodName = "getMicroCartHandle";	
			 		remoteCall(url);
			 	}
			}
}

function updateMiniCart(url, name)
{			
	//setTimeout("location.reload(true);",2000);
	productAddedName=name;	
	var date = new Date();
	  var curDate = null;
	do { curDate = new Date(); }
	while(500 > curDate-date);
	
	 if(url){		 	
				 	if(url.length > 0){
				 	secUrlMethodName = "getMiniCartHandle";
				 	var htmlText="";
			        htmlText = '<div id="minicart-name" class="content-messages eventMessage" style="background:#F6EED9 url(/ibaazartheme/images/icon-success.gif) no-repeat scroll left center; color:#444444;font-size:12px;padding-left:30px;"></div>' + '<div id="minicart"></div>';
					remoteCall2(url);	
				    jQuery.prompt(htmlText,{ show:'dropIn' });
			        }
		 	}      
}
function updateAddToShoppingMethod(){	
	if(xmlHttp.readyState==4 && xmlHttp.status==200){
		//jQuery("#shopping-list-messages").empty();		
		//alert(xmlHttp.responseText);
		jQuery.prompt(xmlHttp.responseText,{ show:'fadeIn' });
 		//jQuery("#shopping-list-messages").append(xmlHttp.responseText);	
	}
}
