// JavaScript Document
function toCalc(buyAt, sellAt, lotSize, direction) {
	if (direction == "U") {
		document.getElementById('tradeType01').checked = true ;
		document.getElementById('tradeType02').checked = false ;
	}
	else {
		document.getElementById('tradeType02').checked = true ;
		document.getElementById('tradeType01').checked = false ;
	}
	
	document.getElementById('buyAt').value = buyAt;
	document.getElementById('sellAt').value = sellAt;
	document.getElementById('lotSize').value = lotSize;
	document.getElementById('numShare').value = lotSize;
	
	showCalcResult();
}

function showCalcResult() {

	if(isNaN(document.getElementById('buyAt').value) || Trim(document.getElementById('buyAt').value)=="" || document.getElementById('buyAt').value<=0 || isNaN(document.getElementById('sellAt').value) || Trim(document.getElementById('sellAt').value)=="" || document.getElementById('sellAt').value<=0 || !isInt(document.getElementById('numShare').value) || Trim(document.getElementById('numShare').value)=="" || document.getElementById('numShare').value<=0) {
		document.getElementById('lblCalcResult').innerHTML = "N/A";			
		document.getElementById('lblCalcCost').innerHTML = "N/A";		
	}
	else {
		var buyAt = parseFloat(document.getElementById('buyAt').value);
		var sellAt = parseFloat(document.getElementById('sellAt').value);
		var numShare = parseInt(document.getElementById('numShare').value);
		var calcCost = buyAt * numShare;
		var calcResult = 0;
	
		if (document.getElementById('tradeType01').checked) {
			calcResult = (sellAt - buyAt) * numShare;
		}
		else {
			calcResult = (buyAt - sellAt) * numShare;
		}
		
		document.getElementById('lblCalcResult').innerHTML = addCommas(calcResult.toFixed(2));
		document.getElementById('lblCalcCost').innerHTML = addCommas(calcCost.toFixed(2));
	}
}

function catchKeyPress(e) {
	var key = window.event ? e.keyCode : e.which;
	var element=e.srcElement || e.target;
	if (key==13) {
		switch (element.id) {
			case 'buyAt':
				document.getElementById("sellAt").select();
				break;
			case 'sellAt':
				document.getElementById("numShare").select();
				break;
			case 'numShare':
				document.getElementById("buyAt").select();
				break;
		}
	}
	else {
		showCalcResult();
	}
}

function catchKeyPress2(e) {
	var key = window.event ? e.keyCode : e.which;
	var element=e.srcElement || e.target;
	if (key==13) {
		switch (element.id) {
			case 'searching_scode':
				window.location.href='searching_result.php?searching_scode='+document.getElementById('searching_scode').value;
				break;
			case 'searching_scode_advance':
				window.location.href='searching_result_advance.php?searching_scode='+document.getElementById('searching_scode_advance').value;
				break;
		}
	}
}

function autoIncrement(target, isAdd) {
	var val = parseFloat(target.value);
	
	if (target.id=="numShare") {
		if (!isNaN(val) && val>=0 && isAdd) {
			//val = Math.round(floatAdd(val, priceInterval(val))*1000)/1000;
			val = Math.round(val + parseInt(document.getElementById('lotSize').value));
			target.value = val;
		}
		else if (!isNaN(val) && val>0 && !isAdd) {
			//val = Math.round(floatAdd(val, (priceInterval(val)*-1))*1000)/1000;
			if (Math.round(val - document.getElementById('lotSize').value)>=0) {
				val = Math.round(val - parseInt(document.getElementById('lotSize').value));
				target.value = val;	
			}
			else {
				target.value = 0;
			}
		}
		else {
			target.value = 0;
		}		
	}
	else {
		if (!isNaN(val) && val>=0 && isAdd) {
			//val = Math.round(floatAdd(val, priceInterval(val))*1000)/1000;
			val = Math.round((val + priceInterval(val, isAdd))*1000)/1000;
			target.value = val;
		}
		else if (!isNaN(val) && val>0 && !isAdd) {
			//val = Math.round(floatAdd(val, (priceInterval(val)*-1))*1000)/1000;
			val = Math.round((val - priceInterval(val, isAdd))*1000)/1000;
			target.value = val;	
		}
		else {
			target.value = 0;
		}
	}
	
	showCalcResult();
	target.select();
}

//價位表
function priceInterval(price, isAdd) {
	if (isAdd) {
		if (price>=0 && price<0.25) {
			return 0.001;
		}
		else if (price>=0.25 && price<0.5) {
			return 0.005;
		}
		else if (price>=0.5 && price<10) {
			return 0.01;
		}
		else if (price>=10 && price<20) {
			return 0.02;
		}
		else if (price>=20 && price<100) {
			return 0.05;
		}
		else if (price>=100 && price<200) {
			return 0.1;
		}
		else if (price>=200 && price<500) {
			return 0.2;
		}
		else if (price>=500 && price<1000) {
			return 0.5;
		}
		else if (price>=1000 && price<2000) {
			return 1;
		}
		else {
			return 10;
		}
	}
	else {
		if (price>=0 && price<=0.25) {
			return 0.001;
		}
		else if (price>0.25 && price<=0.5) {
			return 0.005;
		}
		else if (price>0.5 && price<=10) {
			return 0.01;
		}
		else if (price>10 && price<=20) {
			return 0.02;
		}
		else if (price>20 && price<=100) {
			return 0.05;
		}
		else if (price>100 && price<=200) {
			return 0.1;
		}
		else if (price>200 && price<=500) {
			return 0.2;
		}
		else if (price>500 && price<=1000) {
			return 0.5;
		}
		else if (price>1000 && price<=2000) {
			return 1;
		}
		else {
			return 10;
		}		
	}
}