/*
*** Multiple dynamic combo boxes
*** by Mirko Elviro, 9 Mar 2005
*** Script featured and available on JavaScript Kit (http://www.javascriptkit.com)
***
***Please do not remove this comment
*/

// This script supports an unlimited number of linked combo boxed
// Their id must be "combo_0", "combo_1", "combo_2" etc.
// Here you have to put the data that will fill the combo boxes
// ie. data_2_1 will be the first option in the second combo box
// when the first combo box has the second option selected

window.onload = function () {
	//get a reference to the second comboBox.
	var currentCOMBO = document.getElementById("combo_1")
	//Check to see if it has a null value (false) - if so that means were dealing with I.E., so refresh the page.
	if (!currentCOMBO.value) { 
		window.location = window.location; // on reload the currentCombo.value = 1. No idea why.
	}; 
}
data_0 = new Option("", ""); //Nothing Selected
	data_0_1 = new Option("", "");
data_1 = new Option("FPRO", "FPRO"); //FPRO
	data_1_1 = new Option("19mm", "19mm");
	data_1_2 = new Option("24mm", "24mm");
	data_1_3 = new Option("25mm", "25mm");
	data_1_4 = new Option("25.5mm", "25.5mm");
	data_1_5 = new Option("27mm", "27mm");
	data_1_6 = new Option("28mm", "28mm");
	data_1_7 = new Option("28.5mm", "28.5mm");
	data_1_8 = new Option("30.5mm", "30.5mm");
	data_1_9 = new Option("34mm", "34mm");
	data_1_10 = new Option("35mm", "35mm");
	data_1_11 = new Option("35.5mm", "35.5mm");
	data_1_12 = new Option("37mm", "37mm");
	data_1_13 = new Option("37.5mm", "37.5mm");
	data_1_14 = new Option("38mm", "38mm");
	data_1_15 = new Option("39mm", "39mm");
	data_1_16 = new Option("40mm", "40mm");
	data_1_17 = new Option("40.5mm", "40.5mm");
	data_1_18 = new Option("41mm", "41mm");
	data_1_19 = new Option("43mm", "43mm");
	data_1_20 = new Option("46mm", "46mm");
	data_1_21 = new Option("48mm", "48mm");
	data_1_22 = new Option("49mm", "49mm");
	data_1_23 = new Option("52mm", "52mm");
	data_1_24 = new Option("55mm", "55mm");
	data_1_25 = new Option("58mm", "58mm");
	data_1_26 = new Option("60mm", "60mm");
	data_1_27 = new Option("62mm", "62mm");
	data_1_28 = new Option("67mm", "67mm");
	data_1_29 = new Option("72mm", "72mm");
	data_1_30 = new Option("77mm", "77mm");
	data_1_31 = new Option("82mm", "82mm");
	data_1_32 = new Option("86mm", "86mm");
	data_1_33 = new Option("95mm", "95mm");
	data_1_34 = new Option("105mm", "105mm");
	data_1_35 = new Option("112mm", "112mm");
	data_1_36 = new Option("122mm", "'122mm'");	
data_2 = new Option("XS", "XS"); //SLIM
	data_2_1 = new Option("49mm", "49mm");
	data_2_2 = new Option("52mm", "52mm");
	data_2_3 = new Option("55mm", "55mm");
	data_2_4 = new Option("58mm", "58mm");
	data_2_5 = new Option("60mm", "60mm");
	data_2_6 = new Option("62mm", "62mm");
	data_2_7 = new Option("67mm", "67mm");
	data_2_8 = new Option("72mm", "72mm");
	data_2_9 = new Option("77mm", "77mm");
	data_2_10 = new Option("82mm", "82mm");
	data_2_11 = new Option("86mm", "86mm");
data_3 = new Option("SLIM", "SLIM"); //SLIM
	data_3_1 = new Option("49mm", "49mm");
	data_3_2 = new Option("52mm", "52mm");
	data_3_3 = new Option("55mm", "55mm");
	data_3_4 = new Option("58mm", "58mm");
	data_3_5 = new Option("60mm", "60mm");
	data_3_6 = new Option("62mm", "62mm");
	data_3_7 = new Option("67mm", "67mm");
	data_3_8 = new Option("72mm", "72mm");
	data_3_9 = new Option("77mm", "77mm");
	data_3_10 = new Option("82mm", "82mm");
	data_3_11 = new Option("86mm", "86mm");
	data_3_12 = new Option("95mm", "95mm");
	data_3_13 = new Option("105mm", "105mm");
	data_3_14 = new Option("127mm", "127mm");
data_4 = new Option("EW", "EW"); //EW
	data_4_1 = new Option("49mm", "49mm");
	data_4_2 = new Option("52mm", "52mm");
	data_4_3 = new Option("55mm", "55mm");
	data_4_4 = new Option("58mm", "58mm");
	data_4_5 = new Option("62mm", "62mm");
	data_4_6 = new Option("67mm", "67mm");
	data_4_7 = new Option("72mm", "72mm");
	data_4_8 = new Option("77mm", "77mm");
	data_4_9 = new Option("82mm", "82mm");
	data_4_10 = new Option("86mm", "86mm");
	data_4_11 = new Option("95mm", "95mm");
	data_4_12 = new Option("105mm", "105mm");
	data_4_13 = new Option("110mm", "110mm");
	data_4_14 = new Option("112mm", "112mm");
data_5 = new Option("Digital Pro", "Digital Pro"); //Digital Pro
	data_5_1 = new Option("25mm", "25mm");
	data_5_2 = new Option("25.5mm", "25.5mm");
	data_5_3 = new Option("27mm", "27mm");
	data_5_4 = new Option("28mm", "28mm");
	data_5_5 = new Option("30mm", "30mm");
	data_5_6 = new Option("30.5mm", "30.5mm");
	data_5_7 = new Option("34mm", "34mm");
	data_5_8 = new Option("35.5mm", "35.5mm");
	data_5_9 = new Option("37mm", "37mm");
	data_5_10 = new Option("37.5mm", "37.5mm");
	data_5_11 = new Option("39mm", "39mm");
	data_5_12 = new Option("40.5mm", "40.5mm");
	data_5_13 = new Option("43mm", "43mm");
	data_5_14 = new Option("46mm", "46mm");
	data_5_15 = new Option("49mm", "49mm");
	data_5_16 = new Option("52mm", "52mm");
	data_5_17 = new Option("55mm", "55mm");
	data_5_18 = new Option("58mm", "58mm");
	data_5_19 = new Option("62mm", "62mm");
data_6 = new Option("HSB", "HSB"); //HSB
	data_6_1 = new Option("HSB 50", "HSB 50");
	data_6_2 = new Option("HSB 60", "HSB 60");
	data_6_3 = new Option("HSB 70", "HSB 70");
data_7 = new Option("SERIES", "SERIES"); //SERIES
	data_7_1 = new Option("Series 5", "Series 5");
	data_7_2 = new Option("Series 6", "Series 6");
	data_7_3 = new Option("Series 7", "Series 7");
	data_7_4 = new Option("Series 8", "Series 8");
	data_7_5 = new Option("Series 9", "Series 9");
	data_7_6 = new Option("Series 93", "Series 93");	
data_8 = new Option("DROP IN", "DROP IN"); //DROP IN
	data_8_1 = new Option("74mm", "74mm");
data_9 = new Option("BAY", "BAY"); //BAY
	data_9_1 = new Option("Bayonet 1", "Bayonet 1");
	data_9_2 = new Option("Bayonet 2", "Bayonet 2");
	data_9_3 = new Option("Bayonet 3", "Bayonet 3");
	data_9_4 = new Option("Bayonet 6", "Bayonet 6");
	data_9_5 = new Option("Bayonet 104", "Bayonet 104");
	

// other parameters
    var displaywhenempty="&nbsp;"
    var valuewhenempty=-1
	var displaywhennotempty="- Select or click search -"
    var valuewhennotempty=""
		
// Pass the .value property to this var from the selected combo, only when 'currentbox' is created in the change(currentbox) function. WM.
	var selectedComboURL="";
	
// submit button onClick: check if only the first combo options has been selected, if so 'manually' forward to page, if not then send user to page. WM.
function goToURL () {
	switch (selectedComboURL) {
		case "value1": alert ("Please selected from the drop down");
		break;
		case "value2": window.location = "/ecommerce/CatalogSubCategoryDisplay.aspx?CID=57";
		break;
		case "value3": window.location = "/ecommerce/CatalogSubCategoryDisplay.aspx?CID=56";
		break;
		default: window.location = selectedComboURL;
	};
}


function change(currentbox) {
	selectedComboURL = currentbox.value
	numb = currentbox.id.split("_");
	currentbox = numb[1];
    i=parseInt(currentbox)+1

// I empty all combo boxes following the current one
    while ((eval("typeof(document.getElementById(\"combo_"+i+"\"))!='undefined'")) &&
           (document.getElementById("combo_"+i)!=null)) {
         son = document.getElementById("combo_"+i);
	     // I empty all options except the first one (it isn't allowed)
	     for (m=son.options.length-1;m>0;m--) son.options[m]=null;
	     // I reset the first option
	     son.options[0]=new Option(displaywhenempty,valuewhenempty)
	     i=i+1
    }

// now I create the string with the "base" name ("stringa"), ie. "data_1_0"
// to which I'll add _0,_1,_2,_3 etc to obtain the name of the combo box to fill
    stringa='data'
    i=0
    while ((eval("typeof(document.getElementById(\"combo_"+i+"\"))!='undefined'")) &&
           (document.getElementById("combo_"+i)!=null)) {
           eval("stringa=stringa+'_'+document.getElementById(\"combo_"+i+"\").selectedIndex")
           if (i==currentbox) break;
           i=i+1
    }

// filling the "son" combo (if exists)
    following=parseInt(currentbox)+1

    if ((eval("typeof(document.getElementById(\"combo_"+following+"\"))!='undefined'")) &&
       (document.getElementById("combo_"+following)!=null)) {
       son = document.getElementById("combo_"+following);
       stringa=stringa+"_"
       i=0
       while ((eval("typeof("+stringa+i+")!='undefined'")) || (i==0)) {

       // if there are no options, I empty the first option of the "son" combo
	   // otherwise I put "-select-" in it
	   	  if ((i==0) && eval("typeof("+stringa+"0)=='undefined'"))
	   	      if (eval("typeof("+stringa+"1)=='undefined'"))
	   	         eval("son.options[0]=new Option(displaywhenempty,valuewhenempty)")
	   	      else
	             eval("son.options[0]=new Option(displaywhennotempty,valuewhennotempty)")
	      else
              eval("son.options["+i+"]=new Option("+stringa+i+".text,"+stringa+i+".value)")
	      i=i+1
	   }
       //son.focus()
       i=1
       combostatus=''
       cstatus=stringa.split("_")
       while (cstatus[i]!=null) {
          combostatus=combostatus+cstatus[i]
          i=i+1
          }
       return combostatus;
    }
}

