//Guideline @ 2009 Jun 24
//Each time changing content, increase file's version number at style2.jin
var gDOM = document;
var	gOPcount = 0;

var bShowVo;
var Loading0 = -1;
var Loading1 = -1;

function AdvanceUI(){
	document.Advance.submit();
}

function BasicUI(){
	document.Basic.submit();
}

function ResetButton(){
	document.dummyform.submit();
}

function DoubleClickApp(name){
	var ans = confirm("Want a " + name + " power supply design?");
	if(ans){
		RecommendDesign();
	}
}
function TopologyView(v){
	if(v)
	document.TopologyView.elements[0].name = "PopUp";
	document.TopologyView.elements[0].value= v;
	document.TopologyView.submit();
}

function deleteOP(){
	var	obj;
	var	OP;
	var	fontNode;
	var	brNode;
	
	var form = document.MainForm;
	bShowVo = form.bShowVo.value;
	if(bShowVo == "false"){
		if (gOPcount > 0){
			OP = gDOM.getElementById("Loading1");	
			if(OP){
				OP.disabled = true;
			}
			OP = gDOM.getElementById("Load1");	
			if(OP){
				OP.style.visibility="hidden";
			}
			gOPcount--;
		} else 
			alert("Minimum number of Output is reached!");
	} else {
		if (gOPcount > 0){
			OP = gDOM.getElementById("OP"+gOPcount+"1");
			fontNode = gDOM.getElementById("font"+gOPcount+"_1");
			OP.removeChild(fontNode);
			
			OP = gDOM.getElementById("OP"+gOPcount+"2");
			fontNode = gDOM.getElementById("font"+gOPcount+"_2");
			OP.removeChild(fontNode);
			fontNode = gDOM.getElementById("font"+gOPcount+"_5");
			OP.removeChild(fontNode);

			OP = gDOM.getElementById("OP"+gOPcount+"3");
			fontNode = gDOM.getElementById("font"+gOPcount+"_3");
			OP.removeChild(fontNode);
			
			OP = gDOM.getElementById("OP"+gOPcount+"4");
			fontNode = gDOM.getElementById("font"+gOPcount+"_4");
			OP.removeChild(fontNode);
			fontNode = gDOM.getElementById("font"+gOPcount+"_6");
			OP.removeChild(fontNode);

			//sign
			OP = gDOM.getElementById("OP_Sign"+gOPcount);
			if(OP != null){
				fontNode = gDOM.getElementById("font"+gOPcount+"_Sign");
				OP.removeChild(fontNode);
				elementNode = gDOM.getElementById("Sign"+gOPcount);
				OP.removeChild(elementNode);
			}
			gOPcount--;
		} else 
			alert("Minimum number of Output is reached!");
		}
	}

function StartDeleteOP () {
	deleteOP();
}

function Check(){
	var form = document.MainForm;
	var ACinput = form.ACDCinput[0].checked;
	var DCinput = form.ACDCinput[1].checked;
	Vmax = form.Vmax.value;
	Vmin = form.Vmin.value;

	if (ACinput)
		ACDCinput = "AC";
	else ACDCinput = "DC";
	

	bShowVo = form.bShowVo.value;
	if(bShowVo == "false"){
		Vo0 = 12;
		Io0 = 4;
		if (Vmax == "" || Vmin == ""){
			alert("Please fill in all box");
			return false;
		}
		else if (isNaN(Number(Vmax)) || isNaN(Number(Vmin))){
				alert("Invalid Input.");
				return false;
		}
		else if (parseFloat(Vmax) < parseFloat(Vmin)){
				alert("Vin min cannot larger than Vin max.");
				return false;
		}
		else if ((parseFloat(Vmax)<=0)||(parseFloat(Vmin)<=0)){
				alert("Vin min and Vin max should be positive.");
				return false;
		}
		else if	((parseFloat(Vmax)>9999) || (parseFloat(Vmin)>9999)){
				alert("Vin max or Vin min is too large.");
				return false;
		}
		if( form.Loading0)
			Loading0 = form.Loading0.options[form.Loading0.selectedIndex].value;
		if( form.Loading1)
			Loading1 = form.Loading1.options[form.Loading1.selectedIndex].value;
		return true;
	}


	Vo0 = form.Vo0.value;
	Io0 = form.Io0.value;
	Vo1 = document.getElementById("Vo1");
	Io1 = document.getElementById("Io1");
	Vo2 = document.getElementById("Vo2");
	Io2 = document.getElementById("Io2");
	Vo3 = document.getElementById("Vo3");
	Io3 = document.getElementById("Io3");
	Vo4 = document.getElementById("Vo4");
	Io4 = document.getElementById("Io4");
	
	if (Vmax == "" || Vmin == "" || Vo0 == "" || Io0 == ""){
		alert("Please fill in all box");
		return false;
	}
	else if (isNaN(Number(Vmax)) || isNaN(Number(Vmin)) || isNaN(Number(Vo0)) || isNaN(Number(Io0)) ){
			alert("Invalid Input.");
			return false;
	}
	else if (parseFloat(Vmax) < parseFloat(Vmin)){
			alert("Vin min cannot larger than Vin max.");
			return false;
	}
	else if ((parseFloat(Vmax)<=0)||(parseFloat(Vmin)<=0)){
			alert("Vin min and Vin max should be positive.");
			return false;
	}
	else if	((parseFloat(Vmax)>9999) || (parseFloat(Vmin)>9999)){
			alert("Vin max or Vin min is too large.");
			return false;
	}
	else if ((parseFloat(Vo0)<=0)||(parseFloat(Io0)<=0)){
			alert("Vout and Iout should be positive.");
			return false;
	}
	else if	((parseFloat(Io0)>9999)){
			alert("Iout is too large.");
			return false;
	}
	else if	((parseFloat(Vo0)>99999)){
			alert("Vout is too large.");
			return false;
	}
	else if (!ACinput && !DCinput){
			alert("Please select AC or DC input.");
			return false;
	}
		
	if (Vo1 == null){
	}
	else {
		Vo1 = Vo1.value;
		Io1 = Io1.value;
	
		if (Vo1 == "" || Io1 == ""){
			alert("Please fill in all box");
			return false;
		}
		else if (isNaN(Number(Vo1)) || isNaN(Number(Io1)) ){
				alert("Invalid Input.");
				return false;
		} else if ((parseFloat(Vo1)<=0)||(parseFloat(Io1)<0)){
			alert("Vout and Iout should be positive.");
			return false;
		}
		else if	((parseFloat(Io1)>9999)){
				alert("Iout is too large.");
				return false;
		}
		else if	((parseFloat(Vo1)>99999)){
				alert("Vout is too large.");
				return false;
		}

		if (Vo2 == null){
		}
		else {
			Vo2 = Vo2.value;
			Io2 = Io2.value;
			
			if (Vo2 == "" || Io2 == ""){
				alert("Please fill in all box");
				return false;
			}
			else if (isNaN(Number(Vo2)) || isNaN(Number(Io2)) ){
					alert("Invalid Input.");
					return false;
			} else if ((parseFloat(Vo2)<=0)||(parseFloat(Io2)<0)){
				alert("Vout and Iout should be positive.");
				return false;
			}
			else if	((parseFloat(Io2)>9999)){
					alert("Iout is too large.");
					return false;
			}
			else if	((parseFloat(Vo2)>99999)){
					alert("Vout is too large.");
					return false;
			}
		
			if (Vo3 == null){
			}
			else {
				Vo3 = Vo3.value;
				Io3 = Io3.value;
				
				if (Vo3 == "" || Io3 == ""){
					alert("Please fill in all box");
					return false;
				}
				else if (isNaN(Number(Vo3)) || isNaN(Number(Io3)) ){
						alert("Invalid Input.");
						return false;
				} else if ((parseFloat(Vo3)<=0)||(parseFloat(Io3)<0)){
					alert("Vout and Iout should be positive.");
					return false;
				}
				else if	((parseFloat(Io3)>9999)){
						alert("Iout is too large.");
						return false;
				}
				else if	((parseFloat(Vo3)>99999)){
						alert("Vout is too large.");
						return false;
				}
			
				if (Vo4 == null){
				}
				else {
					Vo4 = Vo4.value;
					Io4 = Io4.value;
					
					if (Vo4 == "" || Io4 == ""){
						alert("Please fill in all box");
						return false;
					}
					else if (isNaN(Number(Vo4)) || isNaN(Number(Io4)) ){
							alert("Invalid Input.");
							return false;
					} else if ((parseFloat(Vo4)<=0)||(parseFloat(Io4)<0)){
						alert("Vout and Iout should be positive.");
						return false;
					}
					else if	((parseFloat(Io4)>9999)){
							alert("Iout is too large.");
							return false;
					}
					else if	((parseFloat(Vo4)>99999)){
							alert("Vout is too large.");
							return false;
					}
				}//end-if check Vo4
			}//end-if check Vo3
		}//end-if check Vo2	
	}//end-if check Vo1
	
	return true;
}
function MainMenu(){
}
