var ibo_spd = 0
var draw_leng = 30
var draw_wt = 70
var arrow_wt = 350
var string_wt = 0
var arrowspd = 0
var KE = 0
var minArrowWt = 0
var arrowWtManual = 0
var arrowSpdManual = 0 
var MPH = 0
//var foc = 0
var foc_leng = 0
var arrow_leng =0


function set_ibo_spd(value){
	ibo_spd = value;
	calcArrowSpeed();
	calcMPH();
}
function set_arrow_wt(value){
	arrow_wt = value;
	calcArrowSpeed();
	checkMinArrowWt();
}
function set_draw_leng(value){
	draw_leng = value;
	calcArrowSpeed();
}
function set_draw_wt(value){
	draw_wt = value;
	calcArrowSpeed();
	calcMinArrowWt();
}
function set_string_wt(value){
	string_wt = value;
	calcArrowSpeed();
}
function set_arrow_wt_manual(value){
	arrowWtManual = value; 
	calcKEManual();	
}
function set_arrow_spd_manual(value){
	arrowSpdManual = value;
	calcKEManual();
}
function set_arrow_mph(value){
	MPH = value;
}
function set_arrow_leng(value){
	arrow_leng = value;	
	calcFOC();
}
function set_foc_leng(value){
	foc_leng = Number(value);
	calcFOC();
}

function getValues(){
	var gotAllValues = true;
	var temp_ibo_spd = document.getElementById("ibo_spd").value;
		if (temp_ibo_spd == ""){
		gotAllValues = false
		}
		else {
		ibo_spd = temp_ibo_spd
		}
	
	var temp_arrow_wt = document.getElementById("arrow_wt").value;
		if (temp_ibo_spd == ""){
		gotAllValues = false
		}
		else {
		arrow_wt = temp_arrow_wt
		}
	
	var temp_draw_leng = document.getElementById("draw_leng").value;
		if (temp_draw_leng == ""){
		gotAllValues = false
		}
		else {
		draw_leng = temp_draw_leng
		}
	var temp_draw_wt = document.getElementById("draw_wt").value;
		if (temp_draw_wt == ""){
		gotAllValues = false
		}
		else {
		draw_wt = temp_draw_wt
		}
	var temp_string_wt = document.getElementById("string_wt").value;
		if (temp_string_wt == ""){
		gotAllValues = true
		}
		else {
		string_wt = temp_string_wt
		}	
	calcArrowSpeed();	
}


function calcArrowSpeed(){
	arrowspd = (ibo_spd - (10 * (30 - draw_leng)) - (2 * (70 - draw_wt)) + (.3 * (350 - arrow_wt)) - (.3 * string_wt));
	//arrowspd = (ibo_spd - (10 * (30 - draw_leng)) - (.5 * (70 - draw_wt)) + (.3 * (350 - arrow_wt)) - (.3 * string_wt));
	var answer = document.getElementById("arrowSpeed");
	answer.innerHTML=arrowspd;
	var arrowSpdResult = document.getElementById("arrowSpdResult");
	if((arrowSpdResult.style.display=="none") && (ibo_spd > 0))
	{
	Effect.BlindDown("arrowSpdResult");
	}
	var MPHResult = document.getElementById("MPHResult");
	if((MPHResult.style.display=="none") && (MPH > 0 ))
	{
	Effect.BlindDown("MPHResult");
	}
	calcKE();
	calcMPH();
	setArrowSpeedPointer(arrowspd);
	setKePointer(KE);
}

function calcMinArrowWt(){
	minArrowWt = (draw_wt * 5);
	var answer = document.getElementById("minArrowWt");
	answer.innerHTML=minArrowWt;
	var minArrowWtResult = document.getElementById("minArrowWtResult");
	if(minArrowWtResult.style.display=="none")
	{
	Effect.BlindDown("minArrowWtResult");
	}
	checkMinArrowWt();

}

function checkMinArrowWt(){
	var answer = document.getElementById("minArrowWt");
	if(minArrowWt > arrow_wt)
	{
	answer.style.backgroundColor="red";
	}
	else{
	answer.style.backgroundColor="#999966";
	}
}

function calcKE(){
	KE = (arrowspd * arrowspd * arrow_wt/450240);
	KE = Math.round(KE * 10)/10;
	var answer = document.getElementById("KE");
	answer.innerHTML=KE;
	var KEResult = document.getElementById("KEResult");
	if((KEResult.style.display=="none") && (KE > 0))
	{
	Effect.BlindDown("KEResult");
	}
	
}

function calcMPH(){
	MPH = (arrowspd/1.46666667);	
	MPH = Math.round(MPH * 10)/10;
	var answer = document.getElementById("MPH");
	answer.innerHTML=MPH;
}


function calcKEManual(){
	KEManual = (arrowSpdManual * arrowSpdManual * arrowWtManual/450240);
	KEManual = Math.round(KEManual * 10)/10;
	var answer = document.getElementById("KEManual");
	answer.innerHTML=KEManual;
}
function calcFOC(){
	var foc = (((foc_leng / arrow_leng) - 0.5) *100);
	foc = Math.round(foc * 10)/10;
	var answer = document.getElementById("foc");
	if (foc < 0){
	foc = 0
	}
	answer.innerHTML=foc;
	var FOCResult = document.getElementById("FOCResult");
	if((FOCResult.style.display=="none") && (foc > 0))
	{
	Effect.BlindDown("FOCResult");
	}
	setFocPointer(foc);
}

var speedBarStart = 240;
var speedBarOffset = 5;
var speedBarRatio = 4;
function setArrowSpeedPointer(arrowSpd){
    var pixel = arrowSpd - speedBarStart;
    if (pixel < 0) pixel = 0; // this off our chart
    else pixel = (pixel * speedBarRatio) + speedBarOffset; 
	var arrow = document.getElementById("pointer");
	new Effect.Move(arrow, {x:pixel, y:5, mode:'absolute'});
}

var keBarStart = 20;
var keBarOffset = 5;
var keBarRatio = 4;
function setKePointer(KE){
    var pixel = KE - keBarStart;
    if (pixel < 0) pixel = 0; // this off our chart
    else pixel = (pixel * keBarRatio) + keBarOffset; 
	var arrow = document.getElementById("KEpointer");
	new Effect.Move(arrow, {x:pixel, y:5, mode:'absolute'});
}
var focBarStart = 5;
var focBarOffset = 5;
var focBarRatio = 20;
function setFocPointer(foc){
    var pixel = foc - focBarStart;
    if (pixel < 0) pixel = 0; // this off our chart
    else pixel = (pixel * focBarRatio) + focBarOffset; 
	var arrow = document.getElementById("FOCpointer");
	new Effect.Move(arrow, {x:pixel, y:5, mode:'absolute'});
}