function FormatNumber (asNum, aiDecPlace) {
	var f = CDbl(asNum);
	if (f == NaN) {
		return NaN;
	}
	var d = Math.pow(10, aiDecPlace);
	f *= d;
	f = Math.round(f) / d;
	s = f.toString();
	dp = s.indexOf(".");
	if (dp == -1) {
		dp = s.length;
	}

	intPart = s.substr(0, dp);
	var Sign = "";
	if (intPart.substr(0, 1) == "-") {
		Sign = "-";
		intPart = intPart.substr(1, intPart.length);
	}

	decPart = s.substr(dp+1, s.length) + RepeatString("0", aiDecPlace);
	decPart = decPart.substr(0, aiDecPlace);
	return Sign + AddComma(intPart, 3) + "." + decPart;
}
function AddComma(asString, aiPartLength){
	var ysTemp = String2Array(asString, aiPartLength);
	return ysTemp.join(",");
}

function String2Array(asString, aiPartLength){
	var iStrLen = asString.length;
	var ysArray = new Array();
	var sTemp = asString;
	var i = 0;
	var j = 0;
	
	do {
		var start = asString.length-aiPartLength;
		if (start < 0) {
			start = 0;
		}
		sTemp = asString.substr(start, asString.length);
		if (sTemp == ""){
			break;
		}
		ysArray[i] = sTemp;
		j += aiPartLength;
		asString = asString.substr(0, asString.length-aiPartLength);
		i++;
	} while (j <= iStrLen);
	ysArray.reverse();
	return ysArray;
}

function RepeatString(asString, iNoOfTime){
	var s = "";
	for (var i = 0; i<iNoOfTime; i++){
		if (i>5)
		{
			return;
		}
		s += asString;
	}
	return s;
}
function CDbl(asNum){
	return parseFloat(asNum);
}


function CalTotal(iRec) {
	iCur = eval("document.form1.Cur" + iRec).value;
	iId = eval("document.form1.Cur" + iRec).options[eval("document.form1.Cur" + iRec).options.selectedIndex].id;
	iBuy = eval("document.form1.Buy" + iRec).value;
	iSell = eval("document.form1.Sell" + iRec).value;
	iNum = eval("document.form1.Num" + iRec).value;
	iSubTotal = eval("document.form1.SubTotal" + iRec);

	if (!isNaN(iCur) && !isNaN(iId) && !isNaN(iBuy) && !isNaN(iSell) && !isNaN(iNum)) {
		if (iCur!="" && iId!="" && iBuy!="" && iSell!="" && iNum!="") {

			if (iId=="1") iTemp=(iSell-iBuy)*iCur*7.8*iNum;
			if (iId=="2") iTemp=(1/iSell-1/iBuy)*iCur*7.8*iNum;

			iSubTotal.value = FormatNumber(iTemp, 2);
		}
	}
}

var cal_formula = new Array();
var count = 0;

cal_formula[count] = {'value': count, 'selected':'', 'text':' ', 'formula':'"-"'};count++;
cal_formula[count] = {'value': count, 'selected':' selected ', 'text':'倫敦金/XAU', 'formula':'(SELL-BUY)*100*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'港金/HKG', 'formula':'(SELL-BUY)*100*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'倫敦銀/XAG', 'formula':'(SELL-BUY)*2500*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'歐元/EUR', 'formula':'(SELL-BUY)*62500*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'日圓/JPY', 'formula':'(1/SELL-1/BUY)*12500000*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'英鎊/GBP', 'formula':'(SELL-BUY)*62500*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'瑞士法郎/CHF', 'formula':'(1/SELL-1/BUY)*125000*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'澳元/AUD', 'formula':'(SELL-BUY)*100000*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'紐元/NZD', 'formula':'(SELL-BUY)*100000*7.8*HAND'};count++;
cal_formula[count] = {'value': count, 'selected':'', 'text':'加元/CAD', 'formula':'(1/SELL-1/BUY)*100000*7.8*HAND'};count++;

function cal2() {
	var BUY = document.form1.buy.value;
	var SELL = document.form1.sell.value;
	var HAND = document.form1.hand.value;
	var result = "-";

	var formula_idx = document.form1.currency_formula.options[document.form1.currency_formula.selectedIndex].value;

	if ( !(isNaN(BUY) || isNaN(SELL) || isNaN(HAND)) ) {
		result = eval(cal_formula[formula_idx]['formula']);
		if ( !isNaN(result) ) {
			result = FormatNumber(result, 2);
		}
	}
	document.form1.result.value = result;
}
