// Mimeo.com Online Pricing Calculator
// Author: Taulant Balla
// Last Updated: 09.04.2009
	
	var bw_paper_price = [
	//B&W Paper Type Prices By Turnaround
	['0.010','0.015','0.026','0.030','0.026','0.128','0.188','0.034','0.113'], // 96 Hrs	
	['0.010','0.015','0.027','0.032','0.027','0.145','0.213','0.036','0.128'], // 48 Hrs	
	['0.010','0.015','0.030','0.035','0.030','0.170','0.250','0.040','0.150']  // 24 Hrs
];
	var color_paper_price = [
	//Color Paper Type Prices By Turnaround
	['0.015','0.030','0.030','0.298','0.188','0.225','0.188'], // 96 Hrs	
	['0.015','0.030','0.032','0.315','0.213','0.255','0.213'], // 48 Hrs	
	['0.015','0.030','0.035','0.350','0.250','0.300','0.250']  // 24 Hrs
];
	var slip_sheets_price = [
	//Slip Sheets Prices By Turnaround
	['0','0.135','0.210'], // 96 Hrs	
	['0','0.153','0.238'], // 48 Hrs	
	['0','0.180','0.280']  // 24 Hrs
];
	var tabs_price = [
	//Tabs Prices By Turnaround
	['0','0.315','0.440'], // 96 Hrs	
	['0','0.478','0.667'], // 48 Hrs	
	['0','0.630','0.880']  // 24 Hrs
];
	var covers_backs_price = [
	//Covers and Backs Prices By Turnaround
	['0','0.800','0.920','1.200','1.200','1.400','1.680','1.680','0.240','0.480','0.720','0.272'], // 96 Hrs	
	['0','0.900','1.035','1.350','1.350','1.575','1.890','1.890','0.270','0.540','0.810','0.306'], // 48 Hrs	
	['0','1.000','1.150','1.500','1.500','1.750','2.100','2.100','0.300','0.600','0.900','0.340']  // 24 Hrs
];
	var binding_price = [
	//Binding Prices By Turnaround
	['0','4.730','5.590','6.450','4.085','6.020','3.010','3.010','3.010','0.026','3.010','3.010','3.311'], // 96 Hrs	
	['0','4.950','5.850','6.750','4.275','6.300','3.150','3.150','3.150','0.027','3.150','3.150','3.465'], // 48 Hrs	
	['0','5.500','6.500','7.500','4.750','7.000','3.500','3.500','3.500','0.030','3.500','3.500','3.850']  // 24 Hrs
];
	
	// this variable will track number calculator is used
	var calc_times_used = 0;	
	
function getRBtnName(GrpName) {
  var sel = document.getElementsByName(GrpName);
  var fnd = -1;
  var str = '';
  for (var i=0; i<sel.length; i++) {
    if (sel[i].checked == true) { str = sel[i].value;  fnd = i; }
  }
  return fnd;   // return option index of selection
} 
	
function calculatePrice(form) {
 
 	var vndx = getRBtnName('turnaround_time');
	
	// get sides radio button value and set variable sides
   	for (var i=0; i < document.calcForm.sides.length; i++)
   	{
   	if (document.calcForm.sides[i].checked)
	    {
      		var sides = document.calcForm.sides[i].value;
    	}
   	}	
	
	// set slip sheet variables
	var slip_sheets_num = 0;
	
   	if ( (document.calcForm.slip_sheets_num.value !="") && !isNaN(document.calcForm.slip_sheets_num.value) && (document.calcForm.slip_sheets.selectedIndex != 0) ) 
   	{
   		slip_sheets_num = parseFloat(document.calcForm.slip_sheets_num.value);
	}
	slipsheet_selected_Item = document.calcForm.slip_sheets.selectedIndex;
    var slip_sheets = parseFloat(slip_sheets_price[vndx][slipsheet_selected_Item]);
	
	// set tabs variables
	var tabs_num = 0;
   	if (document.calcForm.tabs_num.value !="" && !isNaN(document.calcForm.tabs_num.value) && (document.calcForm.tabs.selectedIndex != 0) ) 
   	{
   		tabs_num = parseFloat(document.calcForm.tabs_num.value);		 
	}
	tabs_selected_Item = document.calcForm.tabs.selectedIndex;
    var tabs = parseFloat(tabs_price[vndx][tabs_selected_Item]);
   	
	// set b&w variables
 	var bw_paper_num = 0; // number of paper needed
	var bw_num_imp = 0;   // number of impressions
	if (document.calcForm.bw_paper_num.value!="" && !isNaN(document.calcForm.bw_paper_num.value)) 
	{
		bw_paper_num = (parseFloat((document.calcForm.bw_paper_num.value)) / sides);
		bw_num_imp = (parseFloat(document.calcForm.bw_paper_num.value)  + tabs_num + slip_sheets_num);		
	}
    bw_selected_Item = document.calcForm.bw_paper_type.selectedIndex;
    var bw_paper_type = parseFloat(bw_paper_price[vndx][bw_selected_Item]);
	
	// set color variables
	var color_paper_num = 0; // number of paper needed
	var color_num_imp = 0;   // number of impressions
	if (document.calcForm.color_paper_num.value!="" && !isNaN(document.calcForm.color_paper_num.value)) 
	{
		color_paper_num = (parseFloat( (document.calcForm.color_paper_num.value)) / sides);
		color_num_imp = (parseFloat(document.calcForm.color_paper_num.value));		
	}
    color_selected_Item = document.calcForm.color_paper_type.selectedIndex;
    var color_paper_type = parseFloat(color_paper_price[vndx][color_selected_Item]);
	
	// set total number of sheets (b&w + color)
	var total_paper_num = (bw_paper_num + color_paper_num + tabs_num + slip_sheets_num);
	document.getElementById('sheets_num').innerHTML = Math.round(total_paper_num);	
	
	// set total number of copies
	var total_num_copies = 0;
   	if (document.calcForm.total_num_copies.value!="" && !isNaN(document.calcForm.total_num_copies.value)) 
   	{
   		total_num_copies = parseFloat(document.calcForm.total_num_copies.value);
	}
	
	// set covers & backs
	covers_and_backs_selected_Item = document.calcForm.covers_and_backs.selectedIndex;
 	var covers_and_backs = parseFloat(covers_backs_price[vndx][covers_and_backs_selected_Item]);
	
	// set binding
	binding_selected_Item = document.calcForm.binding.selectedIndex;
 	var binding = parseFloat(binding_price[vndx][binding_selected_Item]);	
	
	var turnaround_time = parseFloat(document.calcForm.turnaround_time.value); // sameday, two-days, four-days 
	
	// set price of bw printing based on turnaround production time
	var bw_printing_price=0;
 	if(document.calcForm.turnaround_time[0].checked==true){bw_printing_price=parseFloat(0.035);} //96 hrs
 	if(document.calcForm.turnaround_time[1].checked==true){bw_printing_price=parseFloat(0.045);} //48 hrs
 	if(document.calcForm.turnaround_time[2].checked==true){bw_printing_price=parseFloat(0.065);} //24 hrs
	
	// set price of color printing based on turnaround production time
	var color_printing_price=0;
 	if(document.calcForm.turnaround_time[0].checked==true){color_printing_price=parseFloat(0.280);} //96 hrs
 	if(document.calcForm.turnaround_time[1].checked==true){color_printing_price=parseFloat(0.390);} //48 hrs
 	if(document.calcForm.turnaround_time[2].checked==true){color_printing_price=parseFloat(0.560);} //24 hrs
	
	var max_discount = 1000; //50% off first order, max of $1000
	var discount = new Number(00);
	var total_cost = new Number(00); // total cost before 50% discount
	var final_price_quote = new Number(00); // final price for this quote after discount
	
	if (bw_paper_num != 0 || color_paper_num != 0 || slip_sheets_num != 0 || tabs_num != 0) 
	{
		total_cost = parseFloat( (total_num_copies * ( (bw_paper_num * bw_paper_type) + (bw_num_imp * bw_printing_price) + (color_paper_num * color_paper_type) + (color_num_imp * color_printing_price) + (slip_sheets_num * slip_sheets) + (tabs_num * tabs) + covers_and_backs + binding ) ) ); 
	}
	else
	{
		total_cost = 0;
		//document.calcForm.covers_and_backs.selectedIndex = 0;
		//document.calcForm.binding.selectedIndex = 0;
	}
		
	//display total cost
	if (total_cost != 0)
	{
		document.getElementById('totalcost').innerHTML = "&nbsp;&nbsp;$" + total_cost.toFixed(2);
	}
	else
	{
		document.getElementById('totalcost').innerHTML = "&nbsp;&nbsp;0";
	}

	// display discount and final cost	
	if (total_cost >= max_discount) 
	{
		discount = max_discount/2;
		document.getElementById('discount').innerHTML = "- $" + discount.toFixed(2);
		final_price_quote = total_cost - discount;
		document.getElementById('yourquote').innerHTML = "&nbsp;&nbsp;$" + final_price_quote.toFixed(2);		
	}
	else if (total_cost != 0)
	{
		discount = total_cost/2;
		document.getElementById('discount').innerHTML = "-$" + discount.toFixed(2);
		final_price_quote = total_cost - discount;
		document.getElementById('yourquote').innerHTML = "&nbsp;&nbsp;$" + final_price_quote.toFixed(2);		
	}
	else
	{
		document.getElementById('discount').innerHTML = "&nbsp;&nbsp;0";
		document.getElementById('yourquote').innerHTML = "&nbsp;&nbsp;0";
	}
	
	//// CHECK NUMBERS 
//	document.getElementById('test-results').style.display = "block";
//	document.getElementById('test-results').innerHTML = "<b><br>RESULTS CHECK (for 1 document set):</b><br> " + "<br><b>Sheets:</b><br>Color Paper Price:&nbsp;" + color_paper_type  + "<br>B&W Paper Price: " + bw_paper_type + "<br>Total Paper Needed for Color:&nbsp;" + color_paper_num + "<br>Total Paper Needed for B&W:&nbsp;" + bw_paper_num+ "<br><br><b>Impressions:</b><br>Color Impression Price:&nbsp; " + color_printing_price + "<br>B&W Impression Price:&nbsp; " + bw_printing_price + "<br>Total B&W Impressions&nbsp;:" + bw_num_imp + "<br>Total Color Impressions&nbsp;:" + color_num_imp + "<br><br>Bindng Price:&nbsp; " + binding + "<br><br><b>Additional Options:</b><br>Slip Sheet Price:&nbsp;" + slip_sheets + "<br># of Slip Sheets: " + slip_sheets_num + "<br><br>Tab:&nbsp;" + tabs  + "<br># of Tabs: " + tabs_num + "<br><br>Covers & Backs Price:&nbsp; " + covers_and_backs + "<br><br>";

}
