// JavaScript Document

var familyMenu;
var polesMenu;
var typeMenu;
var wireMenu;
var unitMenu;
var textLeadLength;
var shellMenu;

var thread_poles = ["Please Select...", "3 Poles", "4 Poles", "5 Poles"];
var snap_poles = ["Please Select...", "3 Poles", "4 Poles"];

var single_end_types = ["Please Select...", "Female Straight", "Female 90\u00B0", "Male Straight"];
var single_end_thread_types = ["Please Select...", "Female Straight", "Female 90\u00B0", "Male Straight", "Male 90\u00B0"];
var single_end_3P_types = ["Please Select...", "Female Straight", "Female 90\u00B0", "Male Straight", "Female 90\u00B0, LED, NPN", "Female 90\u00B0, LED, PNP"];
var single_end_thread_3P_types = ["Please Select...", "Female Straight", "Female 90\u00B0", "Male Straight", "Male 90\u00B0", "Female 90\u00B0, LED, NPN", "Female 90\u00B0, LED, PNP"];

var double_end_types = ["Please Select...", "Female Straight to Male Straight", "Female 90\u00B0 to Male Straight"];
var double_end_thread_types  = ["Please Select...", "Female Straight to Male Straight", "Female 90\u00B0 to Male Straight", "Female Straight to Male 90\u00B0", "Female 90\u00B0 to Male 90\u00B0"];
var double_end_3P_types = ["Please Select...", "Female Straight to Male Straight", "Female 90\u00B0 to Male Straight", "Female 90\u00B0, LED, NPN to Male Straight", "Female 90\u00B0, LED, PNP to Male Straight"];
var double_end_thread_3P_types =["Please Select...", "Female Straight to Male Straight", "Female 90\u00B0 to Male Straight", "Female Straight to Male 90\u00B0", "Female 90\u00B0 to Male 90\u00B0", "Female 90\u00B0, LED, NPN to Male Straight", "Female 90\u00B0, LED, NPN to Male 90\u00B0", "Female 90\u00B0, LED, PNP to Male Straight", "Female 90\u00B0, LED, PNP to Male 90\u00B0"];


var family_code = ["", "40", "44", "50", "55"];

var poles_code = ["", "3", "4", "5"];

var single_end_types_code = ["", "000", "001", "006"];
var single_end_thread_types_code = ["", "000", "001", "006", "007"];
var single_end_3P_types_code = ["", "000", "001", "006", "0N1", "0P1"];
var single_end_thread_3P_types_code = ["", "000", "001", "006", "007", "0N1", "0P1"];

var double_end_types_code = ["", "030", "031"];
var double_end_thread_types_code  = ["", "030", "031", "032", "033"];
var double_end_3P_types_code = ["", "030", "031", "0N7", "0P1"];
var double_end_thread_3P_types_code =["", "030", "031", "032", "033", "0N7", "0N9", "0P1", "0P1"];

var wire_code = ["", "A10", "B09"];



function family(Obj)
{
	
	var x;
	typeMenu = document.getElementById("selType");	
	polesMenu = document.getElementById("selPoles");	
	clearPartNum();
	
	
	switch(Obj.selectedIndex)
	{
		case 0:
			polesMenu.options.length = 0;			
			var y=document.createElement('option');
			y.text = "Please Select...";
			polesMenu.options[0] = y;
		break;
		case 1:
		case 2:
			polesMenu.options.length = 0;			
			for (x = 0; x < thread_poles.length; x++)
			{
				var y=document.createElement('option');
				y.text = thread_poles[x];
				polesMenu.options[x] = y;				
			}			
			break;
		case 3:
		case 4:
			polesMenu.options.length = 0;			
			for (x = 0; x < snap_poles.length; x++)
			{
				var y=document.createElement('option');
				y.text = snap_poles[x];
				polesMenu.options[x] = y;				
			}			
			break;
	}
	typeMenu.options.length = 0;
	y=document.createElement('option');
	y.text = "Please Select...";
	typeMenu.options[0] = y;
}
			
			
function poles(Obj)
{
	var x;
	var typeList;
	familyMenu = document.getElementById("selFamily");	
	typeMenu = document.getElementById("selType");	
	clearPartNum();
	switch (familyMenu.selectedIndex)
	{
		case 0:
		return;
		break;
		case 1:			// Single Ended Threaded
			if (Obj.selectedIndex == 1)
			{
				typeList = single_end_thread_3P_types;
			}else
			{
				typeList = single_end_thread_types;
			}
			break;
		case 2:			// Double Ended Threaded
			if (Obj.selectedIndex == 1)
			{
				typeList = double_end_thread_3P_types;
			}else
			{
				typeList = double_end_thread_types;
			}
			break;
		case 3:			// single ended snap
			if (Obj.selectedIndex == 1)
			{
				typeList = single_end_3P_types;
			}else
			{
				typeList = single_end_types;
			}
			break;
		case 4:			// double ended snap
			if (Obj.selectedIndex == 1)
			{
				typeList = double_end_3P_types;
			}else
			{
				typeList = double_end_types;
			}
			break;
	}
	
	typeMenu.options.length = 0;
	for (x = 0; x < typeList.length; x++)
	{
		var y=document.createElement('option');
		y.text = typeList[x];
		typeMenu.options[x] = y;					
	}
}


function calculate()
{	
	var len;
	var partNum;
	var typeList;
	
	familyMenu = document.getElementById("selFamily");
	polesMenu = document.getElementById("selPoles");
	typeMenu = document.getElementById("selType");		
	wireMenu = document.getElementById("selWire");
	textLeadLength = document.getElementById("txtLength");	
	
	if (familyMenu.selectedIndex < 1 || polesMenu.selectedIndex < 1 || typeMenu.selectedIndex < 1 )
	{
		alert ("Please select valid options for all items");
		return;
	}
	
	len = parseFloat(textLeadLength.value);
	
	if (isNaN(len) || len > 99.9 || len < 1)
	{
		alert ("Please enter a valid length");
		textLeadLength.focus();
		textLeadLength.select();
		return;
	}
	partNum = family_code[familyMenu.selectedIndex];	
	partNum += poles_code[polesMenu.selectedIndex];
	switch (familyMenu.selectedIndex)
	{
		case 0:
		return;
		break;
		case 1:			// Single Ended Threaded
			if (polesMenu.selectedIndex == 1)
			{
				typeList = single_end_thread_3P_types_code;
			}else
			{
				typeList = single_end_thread_types_code;
			}
			break;
		case 2:			// Double Ended Threaded
			if (polesMenu.selectedIndex == 1)
			{
				typeList = double_end_thread_3P_types_code;
			}else
			{
				typeList = double_end_thread_types_code;
			}
			break;
		case 3:			// single ended snap
			if (polesMenu.selectedIndex == 1)
			{
				typeList = single_end_3P_types_code;
			}else
			{
				typeList = single_end_types_code;
			}
			break;
		case 4:			// double ended snap
			if (polesMenu.selectedIndex == 1)
			{
				typeList = double_end_3P_types_code;
			}else
			{
				typeList = double_end_types_code;
			}
			break;
	}	
	partNum += typeList[typeMenu.selectedIndex];
	partNum += wire_code[wireMenu.selectedIndex];
	partNum += "M";	
	if ( len < 10)
	{
		partNum += "0";
		partNum += parseInt(len*10);
	}else
	{
		
		partNum += parseInt(len*10);
	}				
		

	var addQuote = "<a href=\'quote/quote_action.php?action=add&part_num=" + partNum + "&description=Custom Generated Cable\'>Add to Quote</a>";
	document.getElementById("custompartnum").innerHTML = partNum +"          "+ addQuote;
	document.getElementById("custompartnum").style.display = "block";
	document.getElementById("butCalculate").style.display = "none";
	
	
}

function clearPartNum()
{
	document.getElementById("custompartnum").innerHTML = "";
	document.getElementById("custompartnum").style.display = "none";
	document.getElementById("butCalculate").style.display = "block";
	
}

	
	
