var http_request3 = false;
var http_request4 = false;
var http_request5 = false;
var http_request6 = false;
var http_request7 = false;
var http_request8 = false;
var http_request9 = false;

function make_http_request_obj_xml(){
    http_request = false;
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
        http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) {
        
            http_request.overrideMimeType('text/xml');
           // http_request.overrideMimeType('text/html');
        }
    }
    else 
        if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } 
            catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } 
                catch (e) {
                }
            }
        }
    if (!http_request) {
        alert('Cannot create XMLHTTP instance');
        return false;
    }
	return http_request;
}

function make_http_request_obj_html(){
    var http_request_obj = false;
    if (window.XMLHttpRequest) 
    { // Mozilla, Safari,...
        http_request_obj = new XMLHttpRequest();
        if (http_request_obj.overrideMimeType)
        {
                    
            //http_request.overrideMimeType('text/xml');
            http_request_obj.overrideMimeType('text/html');
        }
    }
    else if (window.ActiveXObject){ // IE
        try{
            http_request_obj = new ActiveXObject("Msxml2.XMLHTTP");
        }catch (e){
            try{
                http_request_obj = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
        }
    }
    if (!http_request_obj){
        alert('Cannot create XMLHTTP instance');
        return false;
    }
	return http_request_obj;
}

function update_noi(quantity,prod_id,price,path){
		
		if(IsNumeric(quantity)==false){ alert("Please enter a valid quantity!");} 
		else if(quantity==0){alert("Please enter a valid quantity!");}		
		else {
			
			
		if(path=="") //home page
		{ var p = "cart/includes/ajax/handler.php";  } 
		
		else if(path==".") //immediately within cart folder
		{ var p = "includes/ajax/handler.php";	}
		
		else { var p = path+"/cart/includes/ajax/handler.php"; }
		
		var params = "update_shp_c_nois=true&quantity="+quantity+"&prod_id="+prod_id+"&key="+Math.random();
		http_request3 = make_http_request_obj_html();	
		http_request3.onreadystatechange = update_noi_;
		http_request3.open('POST', p, true);
		http_request3.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request3.setRequestHeader("Content-length", params.length);
		http_request3.setRequestHeader("Connection", "close");
		http_request3.send(params);
		}
}

function update_noi_(){
    if (http_request3.readyState == 4) {
        if (http_request3.status == 200) {
        
            var result = http_request3.responseText;
			
						
            if (result != null) {
				if(result=="err"){
					alert("Quantity you specified is higher than stock available!");
				} else{
					var grand_total, total, product_id,index1_of_delimeter,index2_of_delimeter;
					
					index1_of_delimeter = result.indexOf(':');
					index2_of_delimeter = result.lastIndexOf(':');
					
					product_id = result.substring(0, index1_of_delimeter);				
					total = result.substring(index1_of_delimeter+1,index2_of_delimeter);
					grand_total = result.substring(index2_of_delimeter+1);
		
					var element_prod_total;				
					element_prod_total = "total_for_"+product_id;								
					
					if(document.getElementById(element_prod_total)){
					document.getElementById(element_prod_total).innerHTML=total;
					}
					
					if(document.getElementById("grand_total")){
					if(grand_total<80){
						var deliver_charges = 9;
						var grand_total_return;
						grand_total_return = grand_total*1;						
									
						grand_total_return = grand_total_return+deliver_charges;	
						
						document.getElementById("delivery_charges").innerHTML='9';
					} else {
						document.getElementById("delivery_charges").innerHTML='0';
						grand_total_return = grand_total*1;
					}
					
					document.getElementById("grand_total").innerHTML=grand_total_return;
					
					}
				}			
			}
			
			
        }
        else {
            alert('Error Occured while processing the Request');
        }
    }
}

function IsNumeric(sText){
	var ValidChars = "0123456789"; // include . for float
	var IsNumber=true;
	var Char;
	
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	  { 
	  Char = sText.charAt(i); 
	  if (ValidChars.indexOf(Char) == -1) 
		 {
		 IsNumber = false;
		 }
	  }
	return IsNumber;
   
}

function view_all_items(path){
	var params = "_cmd=view_shp_c_all&key="+Math.random();

    http_request4 = make_http_request_obj_xml();
    http_request4.onreadystatechange = view_all_items_;
	
	if(path=="") //home page
	{ var p = "cart/includes/ajax/handler.php";  } 
	
	else if(path==".") //immediately within cart folder
	{ var p = "includes/ajax/handler.php";	}
	
	else { var p = path+"/cart/includes/ajax/handler.php"; }	
	
	http_request4.open('POST', p, true);
	http_request4.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request4.setRequestHeader("Content-length", params.length);
    http_request4.setRequestHeader("Connection", "close");
    http_request4.send(params);
	
}

function view_all_items_(){

    if (http_request4.readyState == 4) {
		
        if (http_request4.status == 200) {
        			
			xmlDoc=http_request4.responseXML;
			var shp = xmlDoc.getElementsByTagName("shop_items")[0].childNodes[0].nodeValue;

            if (shp != null) {
				document.getElementById('shop_items').innerHTML = shp;
            }
        }
        else {
            alert('Error Occured while processing the Request');
        }
    }
}

function delete_shp_item(prod_id){	
	if (confirm('Delete this item from shopping cart?')) {
	var params = "_cmd=del_shp_item&prod_id="+prod_id+"&key="+Math.random();
    http_request5 = make_http_request_obj_html();	
    http_request5.onreadystatechange = delete_shp_item_;
	http_request5.open('POST', 'includes/ajax/handler.php', true);
    http_request5.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request5.setRequestHeader("Content-length", params.length);
    http_request5.setRequestHeader("Connection", "close");
    http_request5.send(params);
	}	

}

function delete_shp_item_(){
    if (http_request5.readyState == 4) {
        if (http_request5.status == 200) {
        
            var result = http_request5.responseText;
									
            if (result != null) {
				if(result==1){
				window.location.href = 'index.php';
				}
            }
			
			
        }
        else {
            alert('Error Occured while processing the Request');
        }
    }
}

function add_item_to_cart(prod_id,path){

	var params = "prod_id="+prod_id+"&_cmd=add_shp_item&key="+Math.random();
   	http_request6 = make_http_request_obj_xml();
    http_request6.onreadystatechange = add_item_to_cart_;
	
	if(path=="") //home page
	{ var p = "cart/includes/ajax/handler.php";  } 
	
	else if(path==".") //immediately within cart folder
	{ var p = "includes/ajax/handler.php";	}
	
	else { var p = path+"/cart/includes/ajax/handler.php"; }	

	http_request6.open('POST', p, true);
    http_request6.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request6.setRequestHeader("Content-length", params.length);
    http_request6.setRequestHeader("Connection", "close");
    http_request6.send(params);
}

function add_item_to_cart_(){
    if (http_request6.readyState == 4) {
		
        if (http_request6.status == 200) {
        			
			xmlDoc=http_request6.responseXML;
			var shp = xmlDoc.getElementsByTagName("shop_items")[0].childNodes[0].nodeValue;
            if (shp != null) {				
				document.getElementById('shop_items').innerHTML = shp;
            }
        }
        else {
            alert('Error Occured while processing the Request');
        }
    }
}

//////////////////////////////////////////////////////////////////////

function add_express_post_fee(action){
	var params = "_cmd=express_post_fee_disp&action="+action+"&key="+Math.random();

    http_request9 = make_http_request_obj_html();
    http_request9.onreadystatechange = add_express_post_fee_;	
	http_request9.open('POST', 'includes/ajax/handler.php', true);
	http_request9.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    http_request9.setRequestHeader("Content-length", params.length);
    http_request9.setRequestHeader("Connection", "close");
    http_request9.send(params);	
}

function add_express_post_fee_(){

    if (http_request9.readyState == 4) {
		
        if (http_request9.status == 200) {        			
			var result = http_request9.responseText;
			var delivery_charges;
			var grand_total = result*1;
			delivery_charges = document.getElementById("delivery_charges").innerHTML;
			delivery_charges = delivery_charges*1;
			
			grand_total = grand_total+delivery_charges;
			
			document.getElementById("grand_total").innerHTML=grand_total;
        }
        else {
            alert('Error Occured while processing the Request');
        }
    }
}

/////////////////////////////////////////////////////////////////////

function validate_order_form(){
var usr_order_form_msg,i;
var elems = new Array("fname", "lname", "email", "telephone", "address");
var elem_names = new Array("First Name", "Last Name", "Email Address", "Telephone", "Address");
var status = Array();

usr_order_form_msg = document.getElementById("usr_order_form_msg");
	for(i=0;i<elems.length;i++){
		if(document.getElementById(elems[i]).value==""){
			usr_order_form_msg.innerHTML = "Please enter the "+elem_names[i]+".";
			status[i]="0";
		return false;
		}
	}
	
	var sameadd_no;
	sameadd_no = document.getElementById("sameadd_no");
	if(sameadd_no.checked==true){
		return validate_order_form_();
	} else {
		return true;
	}
}

function validate_order_form_(){
var usr_order_form_msg,i;
var elems = new Array("d_fname", "d_lname", "d_telephone", "d_email", "d_address","d_city","d_state","d_p_code","d_country");
var elem_names = new Array("First Name", "Last Name", "Telephone", "Email Address", "Address", "City", "State", "Postal Code", "Country");
var status = Array();

usr_order_form_msg = document.getElementById("usr_order_form_msg");
	for(i=0;i<elems.length;i++){
		if(document.getElementById(elems[i]).value==""){
			usr_order_form_msg.innerHTML = "Please enter the "+elem_names[i]+" of the delivery address.";
			status[i]="0";
			return false;
			
		}
	}
}

function clear_msg_area(){
document.getElementById("add_to_bag_msg").innerHTML='';
}
