function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();
var offer = createRequestObject();

function setFinish(fin)
{
	var fin = fin.value;
	
	if(fin == 'Classic')
	{
		document.getElementById('fin1').innerHTML = 'Textured velour';
		document.getElementById('fin2').innerHTML = 'Velplush';
		document.getElementById('fin3').innerHTML = 'Jacqaurd';
	} else if(fin == 'Contemporary') {
		document.getElementById('fin1').innerHTML = 'Leather Look';
		document.getElementById('fin2').innerHTML = 'Suede Effect';
		document.getElementById('fin3').innerHTML = 'Chenille';	
	} else {
		document.getElementById('fin1').innerHTML = 'N/A';
		document.getElementById('fin2').innerHTML = 'N/A';
		document.getElementById('fin3').innerHTML = 'N/A';		
	}
	
}

function product_options()
{

	var c1 = document.forms.theform.product_category.value;
	var c2 = document.forms.theform.product_subcategory.value;

	var url = "admin.php";
	var data = "action=product_options&c1=" + c1 + "&c2=" + c2;

	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;

}

function dynamic_price(id, dtype, size, selected_size)
{

	var storage = document.forms.p.selected_storage.value;
	var end = document.forms.p.selected_end.value;
	
	document.forms.p.offer_size.value = selected_size;
	
	var offer2 = document.forms.p.offer_on.value;

	var url = "shop.php";
	var data = "action=dynamic&id=" + id + "&size=" + size + "&dtype=" + dtype + "&storage=" + storage + "&end=" + end;
		
	document.forms.p.selected_size.value = size;

	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
	offer_function();

}

function offer_function()
{

	var offer2 = document.forms.p.offer_on.value;
	var offer_size = document.forms.p.offer_size.value;
	
	if(offer2 == 'on') {
		var url = "shop.php";
		var data = "action=offer2&offer_size=" + offer_size;

		offer.open("POST", url, true);
		offer.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	    offer.send(data);
		offer.onreadystatechange = handleOffer;		
	} else {
		document.forms.p.offer_discount.value = '0.00';
	}

}

function dynamic_drawers(id, dtype)
{

	var drawers = document.forms.p.drawers.value;
	
	if(drawers == '0')
	{
	document.forms.p.p2.value = '0.00';
	}
	else if(drawers == '2')
	{
	document.forms.p.p2.value = '50.00';
	}	
	else if(drawers == '4')
	{
	document.forms.p.p2.value = '100.00';
	}
	
	var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));
					
	var total_price_rounded = round(total_price);
													
	document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;
	
}

function dynamic_storage(id, dtype)
{

	var drawers = document.forms.p.storage.value;
	var size = document.forms.p.selected_size.value;
	
	if(drawers == '1') {
	document.forms.p.selected_storage.value = '1';
	} else {
	document.forms.p.selected_storage.value = '0';
	}
	
	var url = "shop.php";
	var data = "action=dynamic&id=" + id + "&drawers=" + drawers + "&size=" + size + "&dtype=" + dtype;

	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
}

function dynamic_offer()
{

	var offer1_selection = document.forms.p.offer1_selection.value;
	
	document.forms.p.selected_offer.value = offer1_selection;
	
	var url = "shop.php";
	var data = "action=dynamic&offer=" + offer1_selection + "&dtype=offer";

	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
}

function dynamic_end(id, dtype)
{

	var size = document.forms.p.selected_size.value;
	var end = document.forms.p.end.value;
	
	if(end == '1') {
	document.forms.p.selected_end.value = '1';
	} else {
	document.forms.p.selected_end.value = '0';
	}
	
	var end = document.forms.p.selected_end.value;	
	
	var url = "shop.php";
	var data = "action=dynamic&id=" + id + "&end=" + end + "&size=" + size + "&dtype=" + dtype;

	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
}

function dynamic_finish(id, dtype, size)
{

	var finish = document.forms.p.finish.value;
	// var size = document.forms.p.selected_size.value;
	
	document.forms.p.selected_finish.value = finish;
	document.forms.p.selected_size.value = size;

	var url = "shop.php";
	var data = "action=dynamic&id=" + id + "&finish=" + finish + "&size=" + size + "&dtype=" + dtype;
	
	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
}

function dynamic_finish_now(id, dtype)
{

	var finish = document.forms.p.finish.value;
	// var size = document.forms.p.selected_size.value;
	
	document.forms.p.selected_finish.value = finish;
	var size = document.forms.p.selected_size.value;

	var url = "shop.php";
	var data = "action=dynamic&id=" + id + "&finish=" + finish + "&size=" + size + "&dtype=" + dtype;
	
	http.open("POST", url, true);
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    http.send(data);
	http.onreadystatechange = handleResponse;
	
}

function handleResponse() {
	
    if(http.readyState == 4){
	
        var response = http.responseText;
		var layers_replace = new Array();

		    layers_replace = response.split('*');	
					
			for(i=0;i<layers_replace.length;i++) {
					var update = new Array();
					update = layers_replace[i].split('|');
					if(update[0] == 'disable_boxes')
					{
					document.forms.theform.product_code.disabled = true;
					document.forms.theform.product_code.style.backgroundColor = "#CCCCCC";
					document.forms.theform.product_price.disabled = true;
					document.forms.theform.product_price.style.backgroundColor = "#CCCCCC";
					document.forms.theform.product_discount.disabled = true;
					document.forms.theform.product_discount.style.backgroundColor = "#CCCCCC";					
					}
					else if(update[0] == 'restore_boxes')
					{
					document.forms.theform.product_code.disabled = false;
					document.forms.theform.product_code.style.backgroundColor = "#FFFFFF";
					document.forms.theform.product_price.disabled = false;
					document.forms.theform.product_price.style.backgroundColor = "#FFFFFF";
					document.forms.theform.product_discount.disabled = false;
					document.forms.theform.product_discount.style.backgroundColor = "#FFFFFF";					
					}	
					else if(update[0] == 'p1')
					{
					document.forms.p.p1.value = update[1];
					var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));
					
					var total_price_rounded = round(total_price);
													
					document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;
					}	
					else if(update[0] == 'p2')
					{
					document.forms.p.p2.value = update[1];
					var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));
					
					var total_price_rounded = round(total_price);
													
					document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;
					}	
					else if(update[0] == 'p3')
					{
					document.forms.p.p3.value = update[1];
					var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));
					
					var total_price_rounded = round(total_price);
													
					document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;
					}	
					else if(update[0] == 'p4')
					{
					document.forms.p.p4.value = update[1];
					var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));
					
					var total_price_rounded = round(total_price);
													
					document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;
					}	
					else if(update[0] == 'offer2')
					{
					alert(update[1]);
					}						
					else {
					document.getElementById(update[0]).innerHTML = update[1];
					}
									
			}

    }
}

function handleOffer() {
	
    if(offer.readyState == 4){
	
        var response = offer.responseText;
		var layers_replace = new Array();
	
		    layers_replace = response.split('*');	
					
			for(i=0;i<layers_replace.length;i++) {
					var update = new Array();
					update = layers_replace[i].split('|');
					if(update[0] == 'offer2')
					{
						document.forms.p.offer_discount.value = update[1];
						document.getElementById('discount_text').innerHTML = 'SAVE &pound;' + update[1] + '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
					}						
									
			}
			
	var total_price = parseFloat(round(document.forms.p.p1.value)) + parseFloat(round(document.forms.p.p2.value)) + parseFloat(round(document.forms.p.p3.value)) + parseFloat(round(document.forms.p.p4.value)) + parseFloat(round(document.forms.p.p5.value)) - parseFloat(round(document.forms.p.offer_discount.value));		
	var total_price_rounded = round(total_price);													
	document.getElementById('update_price').innerHTML = '&pound;' + total_price_rounded;

    }
}

function round( value) {
var temp = "" + (Math.round( value * 100));

return temp.slice(0,-2) + "." + temp.slice(-2);
}

