var req;
var doesNotSupport = true;

function AjaxObjectCreate()
{
	if (window.XMLHttpRequest) {
        req = new XMLHttpRequest;
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
	return req;
}

/* user login check Starts */
function getLogin() 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   
		document.getElementById("error_login").innerHTML = "<img src='images/wheel.gif' border='0'>";
		var poststr = "Username=" + document.getElementById("Username").value + "&Password=" + document.getElementById("Password").value;	     
		req.onreadystatechange = processUserlogin;
		req.open("GET","login_check.php?"+poststr,true);
		req.send(null);
	}   						
}	
function processUserlogin() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {			   
				var msg_no=trim(req.responseText).substr(0,1);
				var msg_test=trim(req.responseText).substr(2);
				if(msg_no == 1)
				{
					window.location.href=msg_test;
				}
				else
				{
					document.getElementById("error_login").innerHTML = "";
					document.getElementById("error_login").innerHTML = msg_test;
				}
           } 
      }
 }
 
 /* user login check Ends */
/* General Process Starts */
function generalSubmit(url) 
{
	req=AjaxObjectCreate(); 
	if(req) 
	{   
	   // alert(url);
		//document.getElementById("error_display").innerHTML = "";
		document.getElementById("error_display").innerHTML = "<img src='images/wheel.gif' border='0'>";
		req.onreadystatechange = processGeneral;
		req.open("GET",url,true);
		req.send(null);
	}   						
}	
function processGeneral() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {			   
				var msg_no=trim(req.responseText).substr(0,1);
				var msg_test=trim(req.responseText).substr(2);
				//alert(msg_test);
				if(msg_no == 1)
				{
					window.location.href=msg_test;
				}
				else
				{
					//alert(msg_test);
					document.getElementById("error_display").innerHTML = "";
					document.getElementById("error_display").innerHTML = msg_test;
				}
           } 
      }
 }
 
 /* General Process Ends */
 
 /* Product Size Price Display Starts */
function getSizePrice(sel) 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   	
		var selected_features_str="";	
		var selected_features_arr=new Array();
		
		var ProductID=document.getElementById("ProductID").value;
		var IsFeatureAvailable=document.getElementById("IsFeatureAvailable").value;
		
		if(IsFeatureAvailable=="Y")
		{
			var AllFeatureIDs=document.getElementById('AllFeatureIDs').value;
			var AllFeatureIDsArr=AllFeatureIDs.split(",");
			for(i=0;i<AllFeatureIDsArr.length;i++)
			{			
				if(document.getElementById('SelectFeaturesIDArr_' + AllFeatureIDsArr[i]).checked==true)					
					selected_features_arr.push(AllFeatureIDsArr[i]);
			}
			if(selected_features_arr.length>0)
				selected_features_str=selected_features_arr.join(",");			
		}
					
		var SizeID = sel.options[sel.selectedIndex].value;		
		var poststr = "SizeID=" + SizeID + "&FeaturesIDs=" + selected_features_str+"&ProductID=" + ProductID;	 		
		req.onreadystatechange = processSizePrice;
		req.open("GET","products_more_process.php?"+poststr,true);
		req.send(null);
	}   						
}	
function processSizePrice() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {					   		
				if(req.responseText!="")
				{
					if(isNaN(req.responseText))
						req.responseText=0;
					var FinalPrice=parseFloat(req.responseText);						
					document.getElementById("FinalPrice").value = FinalPrice.toFixed(2);	
					VatCalculation(FinalPrice);
				}
           } 
      }
 }
 
 /* Product Size Price Display Ends */
 
 /* Product Features Price Display Starts */
function getFeaturesPrice() 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   
		var selected_features_arr=new Array();
		var SizeID=0;
		var selected_features_str="";
		
		var ProductID=document.getElementById("ProductID").value;
		var IsSizeAvailable=document.getElementById("IsSizeAvailable").value;
		if(IsSizeAvailable=="Y")
		{
			SizeID=document.getElementById("SelectSizeID").value;
		}
		
		var AllFeatureIDs=document.getElementById('AllFeatureIDs').value;
		var AllFeatureIDsArr=AllFeatureIDs.split(",");
		for(i=0;i<AllFeatureIDsArr.length;i++)
		{			
			if(document.getElementById('SelectFeaturesIDArr_' + AllFeatureIDsArr[i]).checked==true)					
				selected_features_arr.push(AllFeatureIDsArr[i]);
		}
		if(selected_features_arr.length>0)
			selected_features_str=selected_features_arr.join(",");			
		var poststr = "FeaturesIDs=" + selected_features_str+"&SizeID=" + SizeID+"&ProductID=" + ProductID;			
		req.onreadystatechange = processFeaturesPrice;
		req.open("GET","products_more_process.php?"+poststr,true);
		req.send(null);
	}   						
}	
function processFeaturesPrice() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {			   		
				if(req.responseText!="")
				{					
					if(isNaN(req.responseText))
						req.responseText=0;					
					var FinalPrice=parseFloat(req.responseText);
					document.getElementById("FinalPrice").value = FinalPrice.toFixed(2);
					VatCalculation(FinalPrice);
				}
           } 
      }
 }
 
 /* Product Features Price Display Ends */
 
 /* Vat Calculation Starts */
function VatCalculation(Ammount) 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   		
		var poststr = "Ammount=" + Ammount;	
		req.onreadystatechange = processVatCalculation;
		req.open("GET","vat_calculation_process.php?"+poststr,true);
		req.send(null);
	}   						
}	
function processVatCalculation() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {		
		   		if(req.responseText!="")
				{					
					if(isNaN(req.responseText))
						req.responseText=0;					
					var FinalVatPrice=parseFloat(req.responseText);
					document.getElementById("FinalVatPrice").value = FinalVatPrice.toFixed(2);	
				}
           } 
      }
 }
 
  /* Vat Calculation Ends */

/* Add To Vasket Starts */
function AddToBasket()
{    	
	var ProductID=trim(document.getElementById("ProductID").value);
    var IsSizeAvailable=trim(document.getElementById("IsSizeAvailable").value);   	    
	var SelectSizeID=trim(document.getElementById("SelectSizeID").value);
	
	var IsFeatureAvailable=trim(document.getElementById("IsFeatureAvailable").value); 
	var selected_features_arr=new Array();
	var selected_features_str="";
	
	if(IsFeatureAvailable=="Y")
	{
		var AllFeatureIDs=document.getElementById('AllFeatureIDs').value;
		var AllFeatureIDsArr=AllFeatureIDs.split(",");
		for(i=0;i<AllFeatureIDsArr.length;i++)
		{			
			if(document.getElementById('SelectFeaturesIDArr_' + AllFeatureIDsArr[i]).checked==true)					
				selected_features_arr.push(AllFeatureIDsArr[i]);
		}
		if(selected_features_arr.length>0)
			selected_features_str=selected_features_arr.join(",");			
	}
	
    if(SelectSizeID=="" && IsSizeAvailable=="Y")
    {        
        alert("Please select a size.");
        document.getElementById("SelectSizeID").focus();
        return false;        
    }    
    else
    {                		
		req=AjaxObjectCreate(); 
		if(req) 
		{   	
			
			var poststr ="Action=AddToCart&ProductID="+ProductID+"&IsSizeAvailable="+IsSizeAvailable+"&SizeID="+SelectSizeID+"&IsFeatureAvailable="+IsFeatureAvailable+"&FeaturesIDs=" + selected_features_str;				
			req.onreadystatechange = processAddToBasket;
			req.open("GET","shopping_cart_process.php?"+poststr,true);
			req.send(null);
		} 
    }    
       
}

function EmptyBasket()
{    	
	req=AjaxObjectCreate(); 
	if(req) 
	{   		
		var poststr ="Action=EmptyBasket";			
		req.onreadystatechange = processAddToBasket;
		req.open("GET","shopping_cart_process.php?"+poststr,true);
		req.send(null);
	}
}

function ReCalculateQuantity()
{    	
	req=AjaxObjectCreate(); 
	if(req) 
	{   		
		var poststr ="Action=ReCalculateQuantity";			
		req.onreadystatechange = processAddToBasket;
		req.open("GET","shopping_cart_process.php?"+poststr,true);
		req.send(null);
	}
}

function processAddToBasket() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {						
				window.location.href="shopping_cart.php";
           } 
      }
 }
/* Add To Vasket Ends */

/* CheckOut Validations Starts */
function CheckOutValidation() 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   
		document.getElementById("ErrMsgDisplay").innerHTML = "<img src='images/wheel.gif' border='0'>";
		var poststr = "BillFirstName=" + document.getElementById("BillFirstName").value 
					+ "&BillSurname=" + document.getElementById("BillSurname").value
					+ "&BillEmail=" + document.getElementById("BillEmail").value
					+ "&BillAddress=" + document.getElementById("BillAddress").value
					+ "&BillCity=" + document.getElementById("BillCity").value					
					+ "&BillPostCode=" + document.getElementById("BillPostCode").value
					+ "&BillCountry=" + document.getElementById("BillCountry").value
					+ "&BillPhone=" + document.getElementById("BillPhone").value
					+ "&ShipFirstName=" + document.getElementById("ShipFirstName").value
					+ "&ShipSurname=" + document.getElementById("ShipSurname").value
					+ "&ShipAddress=" + document.getElementById("ShipAddress").value
					+ "&ShipCity=" + document.getElementById("ShipCity").value
					+ "&ShipPostCode=" + document.getElementById("ShipPostCode").value
					+ "&ShipCountry=" + document.getElementById("ShipCountry").value
					+ "&ShipPhone=" + document.getElementById("ShipPhone").value;	 
					
		req.onreadystatechange = processCheckOutValidation;
		req.open("GET","checkout_validation_process.php?"+poststr,true);
		req.send(null);
	}   						
}	
function processCheckOutValidation() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {			   
				var msg_no=trim(req.responseText).substr(0,1);
				var msg_test=trim(req.responseText).substr(2);
				if(msg_no == 1)
				{
					document.frmCheckout.submit();
				}
				else
				{
					document.getElementById("ErrMsgDisplay").innerHTML = "";
					document.getElementById("ErrMsgDisplay").innerHTML = msg_test;
				}
           } 
      }
 }
/* CheckOut Validations Ends */

/* Confirm Order Starts */
function ConfirmOrder(payment_type) 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   	
		req.onreadystatechange = processConfirmOrder;
		req.open("GET","checkout_confirm_process.php?payment_type="+payment_type,true);
		req.send(null);
	}   						
}	
function processConfirmOrder() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {							   
		   		if(req.responseText!="")
				{			
					eval("window.location.href='"+req.responseText+"';");/* Go To Payment Page */  					
				}
           } 
      }
 }
 
/* Confirm Order Ends */


//         save terms & condition in session    
function save_terms() 
{	
	req=AjaxObjectCreate(); 
	if(req) 
	{   	
		req.onreadystatechange = process_save_terms;
		req.open("GET","general_db_operation.php?action=saveTerms",true);
		req.send(null);
	}   						
}	
function process_save_terms() 
{
      if(req.readyState == 4) 
	   {
           if(req.status == 200) 
		   {							   
				//NewWindow("erud_terms.pdf");
				return true;
           }     
      }
 }
function NewWindow(mypage)
{
	//var winl = (screen.width - w) / 2;
	//var wint = (screen.height - h) / 2;
	//winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
	win = window.open(mypage)
	if(win.focus) { win.focus(); }
	return true;
}
//         save terms & condition in session    