////////////////////////////////////////////////////////////
///////// ORDER PRICE AND TIME CALCULATION SCRIPT //////////
////////////////////////////////////////////////////////////

// DESIGN OPTIONS CALCULATION
function designOption(costfor1design, costfor2design, costfor3design, timefor1design, timefor2design, timefor3design)
{
	//price parameter
	var designoptionprice = document.order.designoption.value;
	document.order.baseprice.value = designoptionprice;
	var baseprice = document.order.baseprice.value;
	var totalsubpageprice = document.order.totalsubpageprice.value;
	var otherprice = document.order.otherprice.value;
	var totalprice = document.order.totalprice.value;
	
	//price calculation
	var modifiedtotalprice = eval(eval(baseprice) + eval(otherprice) + eval(totalsubpageprice));
	document.order.totalprice.value = modifiedtotalprice;
	document.getElementById("totalpricetext").innerHTML = modifiedtotalprice;
	
	//time parameter
	var basetime = document.order.basetime.value;
	var othertime = document.order.othertime.value;
	var deliverytime = document.order.deliverytime.value;
	var pagenumber = document.order.pagenumber.value;
	
	//time calculation for option 1
	//condition for option 1
	if (designoptionprice == costfor1design)
	{
		document.order.basetime.value = eval(timefor1design);
		var modifiedbasetime = document.order.basetime.value;
		var modifieddeliverytime = eval(eval(modifiedbasetime) + eval(othertime) + eval(pagenumber));
		document.order.deliverytime.value = modifieddeliverytime;
		document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
	}
	
	//time calculation for option 2
	//condition for option 2
	if (designoptionprice == costfor2design)
	{
		document.order.basetime.value = eval(timefor2design);
		var modifiedbasetime = document.order.basetime.value;
		var modifieddeliverytime = eval(eval(modifiedbasetime) + eval(othertime) + eval(pagenumber));
		document.order.deliverytime.value = modifieddeliverytime;
		document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
	}
	
	//time calculation for option 3
	//condition for option 3
	if (designoptionprice == costfor3design)
	{
		document.order.basetime.value = eval(timefor3design);
		var modifiedbasetime = document.order.basetime.value;
		var modifieddeliverytime = eval(eval(modifiedbasetime) + eval(othertime) + eval(pagenumber));
		document.order.deliverytime.value = modifieddeliverytime;
		document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
	}
}

// SUB PAGE CALCULATION
function subpage()
{
	//field value checking
	var initialpagenumber = document.order.pagenumber.value;
	if (initialpagenumber == "")
	{
		document.order.pagenumber.value = 0;
	}
	if (isNaN(initialpagenumber))
	{
		alert("Please Enter Only Numeric Value!")
		document.order.pagenumber.value = 0;
	}
	if (!isNaN(initialpagenumber))
	{
		document.order.pagenumber.value = initialpagenumber.replace(/^[0]+/g,"")
		var resetpagenumber = document.order.pagenumber.value;
		if (resetpagenumber == "")
		{
			document.order.pagenumber.value = 0;
		}
	}
	
	//price parameter
	var baseprice = document.order.baseprice.value;
	var otherprice = document.order.otherprice.value;
	var totalprice = document.order.totalprice.value;
	var pagenumber = document.order.pagenumber.value;
	var subpageprice = document.order.subpageprice.value;
	
	//sub-page price calculation
	var modifiedtotalsubpageprice = eval(eval(subpageprice) * eval(pagenumber));
	document.order.totalsubpageprice.value = modifiedtotalsubpageprice;
	var totalsubpageprice = document.order.totalsubpageprice.value;

	//price calculation
	var modifiedtotalprice = eval(eval(baseprice) + eval(otherprice) + eval(totalsubpageprice));
	document.order.totalprice.value = modifiedtotalprice;
	document.getElementById("totalpricetext").innerHTML = modifiedtotalprice;

	//time calculation
	var basetime = document.order.basetime.value;
	var othertime = document.order.othertime.value;
	var deliverytime = document.order.deliverytime.value;

	//time parameter
	var modifieddeliverytime = eval(eval(basetime) + eval(othertime) + eval(pagenumber));
	document.order.deliverytime.value = modifieddeliverytime;
	document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
}

// ADDON CALCULATION
function addon(fieldname, time)
{
	//price parameter
	var otherprice = document.order.otherprice.value;
	var addonprice = fieldname.value;
	var otherprice = document.order.otherprice.value;
	var baseprice = document.order.baseprice.value;
	var totalsubpageprice = document.order.totalsubpageprice.value;
	var totalprice = document.order.totalprice.value;
	var pagenumber = document.order.pagenumber.value;
	
	//time parameter
	var basetime = document.order.basetime.value;
	var deliverytime = document.order.deliverytime.value;

	if (fieldname.checked == true)
	{
		//price calculation
		var modifiedotherprice = eval(eval(otherprice) + eval(addonprice));
		document.order.otherprice.value = modifiedotherprice;
		var modifiedtotalprice = eval(eval(baseprice) + eval(modifiedotherprice) + eval(totalsubpageprice));
		document.order.totalprice.value = modifiedtotalprice;
		document.getElementById("totalpricetext").innerHTML = modifiedtotalprice;

		//time calculation
		var othertime = document.order.othertime.value;
		var modifiedothertime = eval(eval(othertime) + eval(time));
		document.order.othertime.value = modifiedothertime;
		var modifieddeliverytime = eval(eval(basetime) + eval(modifiedothertime) + eval(pagenumber));
		document.order.deliverytime.value = modifieddeliverytime;
		document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
	}
	else 
	{
		//price calculation
		var modifiedotherprice = eval(eval(otherprice) - eval(addonprice));
		document.order.otherprice.value = modifiedotherprice;
		var modifiedtotalprice = eval(eval(baseprice) + eval(modifiedotherprice) + eval(totalsubpageprice));
		document.order.totalprice.value = modifiedtotalprice;
		document.getElementById("totalpricetext").innerHTML = modifiedtotalprice;

		//time calculation
		var othertime = document.order.othertime.value;
		var modifiedothertime = eval(eval(othertime) - eval(time));
		document.order.othertime.value = modifiedothertime;
		var modifieddeliverytime = eval(eval(basetime) + eval(modifiedothertime) + eval(pagenumber));
		document.order.deliverytime.value = modifieddeliverytime;
		document.getElementById("deliverytimetext").innerHTML = modifieddeliverytime;
	}
}

