﻿// JavaScript Document



var transferfee = 20;

var hkpostrate = 160;

var hkpostrate_abs = 160;

var goodshkd = [];

var r = 1;

var txt = "不是有效的數值";





function getTransferfee ()

{

	document.write(transferfee);

}



function getTransferfee2()

{

	document.getElementById("transferFee").value = transferfee;

}



function getHKPostFee(weight)

{

	var hkpostfee;

	

	//if (weight < 0.5)

	//	hkpostfee = hkpostrate_abs;

	//else

		hkpostfee = (parseFloat(weight) + 0.5) * hkpostrate;

		

	return hkpostfee;

}



function changeHKPostFee(weight)

{

	document.getElementById("displayhkpostfee").innerHTML = getHKPostFee(weight);

	document.getElementById("hkPostFee").value = getHKPostFee(weight);

}



function validate(theForm)

{

	var errMsg = "";

	

	if ( isEmpty(theForm.price.value) )

		errMsg += "- 請填上貨品金額\n";

	else if ( !isFloatNumber(theForm.price.value) )

		errMsg += "- 貨品金額不是正數\n";



	if ( !isEmpty(theForm.postfee.value) &&　!isFloatNumber(theForm.postfee.value)　)

		errMsg += "- 當地郵費不是正數\n";

		



	if ( isEmpty(errMsg) )

		return true;

	else

	{

		alert("請修改以下問題:\n" + errMsg);

		return false;

	}

}



function clearValues()

{

	document.getElementById("price").value = "";

	document.getElementById("postfee").value = "100";

	document.myform.weight[0].selected = true;

	changeHKPostFee(document.myform.weight.value);

}



function calgoods( currency, postfee, weight)

{

	var goodstotalhkd = 0;

	var goodstotaltwd = 0;

	var totalqty = 0;

	//price = document.form.elements["price[]"];
	
	lastround = 0;

	for (i=0;i<=r - 1;i++)

	{

		if (r == 1)

		{

			goodshkd[i] = Math.round(document.form.elements["price[]"].value * document.form.elements["qty[]"].value * currency*Math.pow(10,1))/Math.pow(10,1);

			goodstotalhkd = goodstotalhkd + goodshkd[i];

			goodstotaltwd = goodstotaltwd + (document.form.elements["price[]"].value * document.form.elements["qty[]"].value);

			totalqty = parseFloat(document.form.elements["qty[]"].value);

			document.getElementById("displaygoodshkd" + i).innerHTML = goodshkd[i];
			
			thisround = document.form.elements["price[]"].value;

		}

		else if (r > 1)

		{

			goodshkd[i] = Math.round(document.form.elements["price[]"][i].value * document.form.elements["qty[]"][i].value * currency*Math.pow(10,1))/Math.pow(10,1);

			goodstotalhkd = goodstotalhkd + goodshkd[i];

			goodstotaltwd = goodstotaltwd + (document.form.elements["price[]"][i].value * document.form.elements["qty[]"][i].value);

			totalqty = parseFloat(totalqty) + parseFloat(document.form.elements["qty[]"][i].value);

			document.getElementById("displaygoodshkd" + i).innerHTML = goodshkd[i];
			
			thisround = document.form.elements["price[]"][i].value;

		}

		//var price = document.form.elements["price[" + i + "]"].value;

		//var qty = document.form.elements["qty[" + i + "]"].value;

		//a = document.form.elements["price[]"];

		//alert(a.value);

		//document.getElementById("displaygoodshkd[" + i + "]").innerHTML = goodshkd[i];
		
		if (thisround > lastround)

		{

			lastround = thisround;
		
		}

	}
	
	if (lastround > 5000)
	
	{
		first = 100;
	
	}
	else
	
	{
		
		first = 50;
		
	}

	//goodshkd = Math.round(price * qty * currency*Math.pow(10,1))/Math.pow(10,1);

	postfeehkd = Math.round(postfee * currency*Math.pow(10,1))/Math.pow(10,1);

	hkpostfeetwd = getHKPostFee(weight);

	hkpostfeehkd = Math.round(hkpostfeetwd * currency * Math.pow(10,1))/Math.pow(10,1);

	transferfeehkd = Math.round(transferfee * currency*Math.pow(10,1))/Math.pow(10,1);

	servicefee = (totalqty - 1) * 20 + first;

	if (servicefee > 1000)

	{

		servicefee = 1000;

	}

	totalhkd = Math.round((goodstotalhkd + transferfeehkd + postfeehkd + hkpostfeehkd + servicefee)*Math.pow(10,1))/Math.pow(10,1);

	deposite = Math.round((goodstotalhkd + postfeehkd + hkpostfeehkd)*Math.pow(10,1))/Math.pow(10,1);

	a = Math.round((goodstotalhkd + transferfeehkd + postfeehkd + servicefee)*Math.pow(10,1))/Math.pow(10,1);

	b = Math.round((goodstotalhkd + postfeehkd)*Math.pow(10,1))/Math.pow(10,1);

	//document.getElementById("displaygoodshkd").innerHTML = goodshkd;

	document.getElementById("displaypostfeehkd").innerHTML = postfeehkd;

	document.getElementById("displayhkpostfeetwd").innerHTML = hkpostfeetwd;

	document.getElementById("hkpostfeetwd").value = hkpostfeetwd;

	document.getElementById("displayhkpostfeehkd").innerHTML = hkpostfeehkd;

	document.getElementById("displaytransferhkd").innerHTML = transferfeehkd;

	document.getElementById("estimatedtotal").value = totalhkd;

	document.getElementById("displaytotalhkd").innerHTML = totalhkd;

	document.getElementById("displayservicefee").innerHTML = servicefee;

	document.getElementById("servicefee").value = servicefee;

	document.getElementById("displaydeposite").innerHTML = deposite;

	document.getElementById("estimateddeposite").value = deposite;

	document.getElementById("a").value = a;

	document.getElementById("b").value = b;

}



function add(currency)

{  

 var tbl = document.getElementById('goods2');

  var lastRow = tbl.rows.length;

  // if there's no header row in the table, then iteration = lastRow + 1

  var iteration = lastRow - 13;

  if (iteration <= 10)

  {

	  var row = tbl.insertRow(lastRow - 11);

	  r = r + 1;

  // left cell

  var cell1 = row.insertCell(0);

  var textNode = document.createTextNode("貨品(" + iteration + ")");

  cell1.setAttribute("class", "sub_text");

  cell1.appendChild(textNode);

  

  // right cell

  var cell2 = row.insertCell(1);

  cell2.innerHTML = "<input type='text' name='price[]' id='price[]' size='5' onchange='javascript:if (isFloatNumber(this.value) && this.value.length > 0){calgoods(this.form.currency.value,this.form.postfee.value, this.form.weight.value);}else{alert(txt);this.value=null}' onkeyup='javascript:if (isFloatNumber(this.value) && this.value.length > 0){calgoods(this.form.currency.value,this.form.postfee.value, this.form.weight.value);}else{alert(txt);this.value=null}'>";

  //var el2 = document.createElement("input");

  //el2.type = "text";

  //el2.name = "price[]";

  //el2.id = "price[]";

  //el2.size = 6;

  //el2.onchange = "javascript:calgoods(this.form.currency.value,this.form.tax.value,this.form.postfee.value, this.form.weight.value, this.form.lenght.value, this.form.width.value, this.form.height.value, this.form.dw.value);";

  var textNode2 = document.createTextNode(" x");

  

  cell2.setAttribute("class", "sub_text");

  cell2.setAttribute("align", "right");

  //cell2.appendChild(el2);

  cell2.appendChild(textNode2);

  

  // select cell

  var cell3 = row.insertCell(2);

  cell3.innerHTML = "<input type='text' name='qty[]' id='qty[]' size='3' value='1' onchange='javascript:if (isNumber(this.value) && this.value.length > 0){calgoods(this.form.currency.value,this.form.postfee.value, this.form.weight.value);}else{alert(txt);this.value=1;}' onkeyup='javascript:if (isNumber(this.value) && this.value.length > 0){calgoods(this.form.currency.value,this.form.postfee.value, this.form.weight.value);}else{alert(txt);this.value=1;}'>";

  //var el3 = document.createElement("input");

  //el3.type = "text";

  //el3.name = "qty[]";

  //el3.id = "qty[]";

  //el3.value = "1";

  //el3.size = 3;

  //el3.onchange = "javascript:calgoods(this.form.currency.value,this.form.tax.value,this.form.postfee.value, this.form.weight.value, this.form.lenght.value, this.form.width.value, this.form.height.value, this.form.dw.value);";

  var textNode3 = document.createTextNode(" x");

  

  cell3.setAttribute("class", "sub_text");

  cell3.setAttribute("align", "right");

  //cell3.appendChild(el3);

  cell3.appendChild(textNode3);

  

  //

  var cell4 = row.insertCell(3);

  var textNode4 = document.createTextNode(currency + "=");

  cell4.setAttribute("class", "sub_text");

  cell4.setAttribute("align", "right");

  cell4.appendChild(textNode4);

  

  //

  var cell5 = row.insertCell(4);

  var el5 = document.createElement("span");

  //el5.type = "text";

  //el5.name = "qty"; //+ iteration;

  //el5.id = "displaygoodshkd" + iteration;

  //el5.size = 3;

  //var textNode3 = document.createTextNode("$");

  

  cell5.setAttribute("class", "sub_text");

  display = iteration - 1;

  cell5.innerHTML = "$<span id='displaygoodshkd" + display + "'>0</span>";

  //cell5.appendChild(textNode3);

  //cell5.appendChild(el5);

  //var cell3 = row.insertCell(2);

  //var sel = document.createElement('select');

  //sel.name = 'selRow' + iteration;

  //sel.options[0] = new Option('text zero', 'value0');

  //sel.options[1] = new Option('text one', 'value1');

  //cell3.appendChild(sel);

  }

}



function del()

{

  var tbl = document.getElementById('goods2');

  var lastRow = tbl.rows.length;

  var row = lastRow - 12;

  if (r > 1)

  {

	  tbl.deleteRow(row);

	  r = r - 1;

  }

}



function calgoods2(hkpostfeetwd, currency, a, b)

{

	hkpostfeehkd = Math.round(hkpostfeetwd * currency * Math.pow(10,1))/Math.pow(10,1);

	totalhkd = Math.round((parseFloat(a) + hkpostfeehkd)*Math.pow(10,1))/Math.pow(10,1);

	deposite = Math.round((parseFloat(b) + hkpostfeehkd)*Math.pow(10,1))/Math.pow(10,1);

	document.getElementById("displayhkPostFeehkd").innerHTML = hkpostfeehkd;

	document.getElementById("displaytotalhkd").innerHTML = totalhkd;

	document.getElementById("displaydeposite").innerHTML = deposite;

}
