var dynamicOptionListCount=0;var dynamicOptionListObjects = new Array();function initDynamicOptionLists() {	for(var i=0;i<dynamicOptionListObjects.length;i++) {		var dol = dynamicOptionListObjects[i];		if(dol.formName!=null) {			dol.form = document.forms[dol.formName];		}		else if(dol.formIndex!=null) {			dol.form = document.forms[dol.formIndex];		}		else {			var name = dol.fieldNames[0][0];			for(var f=0;f<document.forms.length;f++) {				if(typeof(document.forms[f][name])!="undefined") {					dol.form = document.forms[f];					break;				}			}			if(dol.form==null) {				alert("ERROR: Couldn't find form element "+name+" in any form on the page! Init aborted");				return;			}		}		for(var j=0;j<dol.fieldNames.length;j++) {			for(var k=0;k<dol.fieldNames[j].length-1;k++) {				var selObj = dol.form[dol.fieldNames[j][k]];				if(typeof(selObj)=="undefined") {					alert("Select box named "+dol.fieldNames[j][k]+" could not be found in the form. Init aborted");					return;				}				if(k==0) {					if(selObj.options!=null) {						for(l=0;l<selObj.options.length;l++) {							var sopt = selObj.options[l];							var m = dol.findMatchingOptionInArray(dol.options,sopt.text,sopt.value,false);							if(m!=null) {								var reselectForNN6 = sopt.selected;								var m2 = new Option(sopt.text, sopt.value, sopt.defaultSelected, sopt.selected);								m2.selected = sopt.selected;m2.defaultSelected = sopt.defaultSelected;m2.DOLOption = m;								selObj.options[l] = m2;								selObj.options[l].selected = reselectForNN6;							}						}					}				}				if(selObj.onchange==null) {					selObj.onchange = new Function("dynamicOptionListObjects["+dol.index+"].change(this)");				}			}		}	}	resetDynamicOptionLists();}function resetDynamicOptionLists(theform) {	for(var i=0;i<dynamicOptionListObjects.length;i++) {		var dol = dynamicOptionListObjects[i];		if(typeof(theform)=="undefined" || theform==null || theform==dol.form){			for(var j=0;j<dol.fieldNames.length;j++) {				dol.change(dol.form[dol.fieldNames[j][0]],true);			}		}	}}function DOLOption(text,value,defaultSelected,selected) {	this.text = text;	this.value = value;	this.defaultSelected = defaultSelected;	this.selected = selected;	this.options = new Array();	return this;}function DynamicOptionList() {	this.form = null;	this.options = new Array();	this.longestString = new Array();	this.numberOfOptions = new Array();	this.currentNode = null;	this.currentField = null;	this.currentNodeDepth = 0;	this.fieldNames = new Array();	this.formIndex = null;	this.formName = null;	this.fieldListIndexes = new Object();	this.fieldIndexes = new Object();	this.selectFirstOption = true;	this.numberOfOptions = new Array();	this.longestString = new Array();	this.values = new Object();	this.forValue = DOL_forValue;	this.forText = DOL_forText;	this.forField = DOL_forField;	this.forX = DOL_forX;	this.addOptions = DOL_addOptions;	this.addOptionsTextValue = DOL_addOptionsTextValue;	this.setDefaultOptions = DOL_setDefaultOptions;	this.setValues = DOL_setValues;	this.setValue = DOL_setValues;	this.setFormIndex = DOL_setFormIndex;	this.setFormName = DOL_setFormName;	this.printOptions = DOL_printOptions;	this.addDependentFields = DOL_addDependentFields;	this.change = DOL_change;	this.child = DOL_child;	this.selectChildOptions = DOL_selectChildOptions;	this.populateChild = DOL_populateChild;	this.change = DOL_change;	this.addNewOptionToList = DOL_addNewOptionToList;	this.findMatchingOptionInArray = DOL_findMatchingOptionInArray;	if(arguments.length > 0) {		for(var i=0;i<arguments.length;i++) {			this.fieldListIndexes[arguments[i].toString()] = this.fieldNames.length;			this.fieldIndexes[arguments[i].toString()] = i;		}		this.fieldNames[this.fieldNames.length] = arguments;	}	this.index = window.dynamicOptionListCount++;	window["dynamicOptionListObjects"][this.index] = this;}function DOL_findMatchingOptionInArray(a,text,value,exactMatchRequired) {	if(a==null || typeof(a)=="undefined"){return null;}var value_match = null;var text_match = null;for(var i=0;i<a.length;i++){var opt = a[i];if(opt.value==value && opt.text==text){return opt;}if(!exactMatchRequired){if(value_match==null && value!=null && opt.value==value){value_match = opt;}if(text_match==null && text!=null && opt.text==text){text_match = opt;}}}return(value_match!=null)?value_match:text_match;}function DOL_forX(s,type) {	if(this.currentNode==null){this.currentNodeDepth=0;}var useNode =(this.currentNode==null)?this:this.currentNode;var o = this.findMatchingOptionInArray(useNode["options"],(type=="text")?s:null,(type=="value")?s:null,false);if(o==null){o = new DOLOption(null,null,false,false);o[type] = s;useNode.options[useNode.options.length] = o;}this.currentNode = o;this.currentNodeDepth++;return this;}function DOL_forValue(s) {	return this.forX(s,"value");}function DOL_forText(s) {	return this.forX(s,"text");}function DOL_forField(f) {	this.currentField = f;return this;}function DOL_addNewOptionToList(a, text, value, defaultSelected) {	var o = new DOLOption(text,value,defaultSelected,false);if(a==null){a = new Array();}for(var i=0;i<a.length;i++){if(a[i].text==o.text && a[i].value==o.value){if(o.selected){a[i].selected=true;}if(o.defaultSelected){a[i].defaultSelected = true;}return a;}}a[a.length] = o;}function DOL_addOptions() {	if(this.currentNode==null){this.currentNode = this;}if(this.currentNode["options"] == null){this.currentNode["options"] = new Array();}for(var i=0;i<arguments.length;i++){var text = arguments[i];this.addNewOptionToList(this.currentNode.options,text,text,false);if(typeof(this.numberOfOptions[this.currentNodeDepth])=="undefined"){this.numberOfOptions[this.currentNodeDepth]=0;}if(this.currentNode.options.length > this.numberOfOptions[this.currentNodeDepth]){this.numberOfOptions[this.currentNodeDepth] = this.currentNode.options.length;}if(typeof(this.longestString[this.currentNodeDepth])=="undefined" ||(text.length > this.longestString[this.currentNodeDepth].length)){this.longestString[this.currentNodeDepth] = text;}}this.currentNode = null;this.currentNodeDepth = 0;}function DOL_addOptionsTextValue() {	if(this.currentNode==null){this.currentNode = this;}if(this.currentNode["options"] == null){this.currentNode["options"] = new Array();}for(var i=0;i<arguments.length;i++){var text = arguments[i++];var value = arguments[i];this.addNewOptionToList(this.currentNode.options,text,value,false);if(typeof(this.numberOfOptions[this.currentNodeDepth])=="undefined"){this.numberOfOptions[this.currentNodeDepth]=0;}if(this.currentNode.options.length > this.numberOfOptions[this.currentNodeDepth]){this.numberOfOptions[this.currentNodeDepth] = this.currentNode.options.length;}if(typeof(this.longestString[this.currentNodeDepth])=="undefined" ||(text.length > this.longestString[this.currentNodeDepth].length)){this.longestString[this.currentNodeDepth] = text;}}this.currentNode = null;this.currentNodeDepth = 0;}function DOL_child(obj) {	var listIndex = this.fieldListIndexes[obj.name];var index = this.fieldIndexes[obj.name];if(index <(this.fieldNames[listIndex].length-1)){return this.form[this.fieldNames[listIndex][index+1]];}return null;}function DOL_setDefaultOptions() {	if(this.currentNode==null){this.currentNode = this;}for(var i=0;i<arguments.length;i++){var o = this.findMatchingOptionInArray(this.currentNode.options,null,arguments[i],false);if(o!=null){o.defaultSelected = true;}}this.currentNode = null;}function DOL_setValues() {	if(this.currentField==null){alert("Can't call setValues() without using forField() first!");return;}if(typeof(this.values[this.currentField])=="undefined"){this.values[this.currentField] = new Object();}for(var i=0;i<arguments.length;i++){this.values[this.currentField][arguments[i]] = true;}this.currentField = null;}function DOL_setFormIndex(i) {	this.formIndex = i;}function DOL_setFormName(n) {	this.formName = n;}function DOL_printOptions(name) {	if((navigator.appName == 'Netscape') &&(parseInt(navigator.appVersion) <= 4)){var index = this.fieldIndexes[name];var ret = "";if(typeof(this.numberOfOptions[index])!="undefined"){for(var i=0;i<this.numberOfOptions[index];i++){ret += "<OPTION>";}}ret += "<OPTION>";if(typeof(this.longestString[index])!="undefined"){for(var i=0;i<this.longestString[index].length;i++){ret += "_";}}document.writeln(ret);}}function DOL_addDependentFields() {	for(var i=0;i<arguments.length;i++){this.fieldListIndexes[arguments[i].toString()] = this.fieldNames.length;this.fieldIndexes[arguments[i].toString()] = i;}this.fieldNames[this.fieldNames.length] = arguments;}function DOL_change(obj, usePreselected) {	if(usePreselected==null || typeof(usePreselected)=="undefined"){usePreselected = false;}var changedListIndex = this.fieldListIndexes[obj.name];var changedIndex = this.fieldIndexes[obj.name];var child = this.child(obj);if(child == null){return;}if(obj.type == "select-one"){if(child.options!=null){child.options.length=0;}if(obj.options!=null && obj.options.length>0 && obj.selectedIndex>=0){var o = obj.options[obj.selectedIndex];this.populateChild(o.DOLOption,child,usePreselected);this.selectChildOptions(child,usePreselected);}}else if(obj.type == "select-multiple"){var currentlySelectedOptions = new Array();if(!usePreselected){for(var i=0;i<child.options.length;i++){var co = child.options[i];if(co.selected){this.addNewOptionToList(currentlySelectedOptions, co.text, co.value, co.defaultSelected);}}}child.options.length=0;if(obj.options!=null){var obj_o = obj.options;for(var i=0;i<obj_o.length;i++){if(obj_o[i].selected){this.populateChild(obj_o[i].DOLOption,child,usePreselected);}}var atLeastOneSelected = false;if(!usePreselected){for(var i=0;i<child.options.length;i++){var m = this.findMatchingOptionInArray(currentlySelectedOptions,child.options[i].text,child.options[i].value,true);if(m!=null){child.options[i].selected = true;atLeastOneSelected = true;}}}if(!atLeastOneSelected){this.selectChildOptions(child,usePreselected);}}}this.change(child,usePreselected);}function DOL_populateChild(dolOption,childSelectObj,usePreselected) {	if(dolOption!=null && dolOption.options!=null){for(var j=0;j<dolOption.options.length;j++){var srcOpt = dolOption.options[j];if(childSelectObj.options==null){childSelectObj.options = new Array();}var duplicate = false;var preSelectedExists = false;for(var k=0;k<childSelectObj.options.length;k++){var csi = childSelectObj.options[k];if(csi.text==srcOpt.text && csi.value==srcOpt.value){duplicate = true;break;}}if(!duplicate){var newopt = new Option(srcOpt.text, srcOpt.value, false, false);newopt.selected = false;newopt.defaultSelected = false;newopt.DOLOption = srcOpt;childSelectObj.options[childSelectObj.options.length] = newopt;}}}}function DOL_selectChildOptions(obj,usePreselected) {	var values = this.values[obj.name];var preselectedExists = false;if(usePreselected && values!=null && typeof(values)!="undefined"){for(var i=0;i<obj.options.length;i++){var v = obj.options[i].value;if(v!=null && values[v]!=null && typeof(values[v])!="undefined"){preselectedExists = true;break;}}}var atLeastOneSelected = false;for(var i=0;i<obj.options.length;i++){var o = obj.options[i];if(preselectedExists && o.value!=null && values[o.value]!=null && typeof(values[o.value])!="undefined"){o.selected = true;atLeastOneSelected = true;}else if(!preselectedExists && o.DOLOption!=null && o.DOLOption.defaultSelected){o.selected = true;atLeastOneSelected = true;}else{o.selected = false;}}if(this.selectFirstOption && !atLeastOneSelected && obj.options.length>0){obj.options[0].selected = true;}else if(!atLeastOneSelected &&  obj.type=="select-one"){obj.selectedIndex = -1;}}function validate(L1,L2,L3) {	var msg;	var msgflag;	var fjtPDF;	fldLoc = new Array(1)	msgflag = "false";	msg="The \"Get PDF\" button will launch IPC-1752 information in a new window based on your dropdown option selections:\n\r";	if(document.FORM1.L1.options[document.FORM1.L1.selectedIndex].value == ""){		msg+="\n\r   Begin where it says \"Start Here\", on the \"Construction\" dropdown option";		msgflag="true";		if (fldLoc[0] == null){			fldLoc[0] = "L1";		}	}/*//  The following is for testing purposes	else {		//This allows us to exclude the date code from the file attachment documents title		//if L2 has a '_', then it this pdf does not have a termination code		if(L2.value.indexOf("_") <0) {			tempL3 = L3.value.charAt(0);		}		else {			tempL3 = L3.value;		}		//end			msg+="\n\r   This would have launched: IPC_1.1_2_" + L1.value +'_'+ L2.value +'_'+ L3.value + '.pdf';			msg+="\n\r   /kemet/web/homepage/kechome.nsf/file/IPC_1.1_2_" + L1.value+'_'+L2.value+'_'+tempL3 + "/$file/IPC_1.1_2_" + L1.value +'_'+ L2.value +'_'+ L3.value + ".pdf"	}//  End of testing//  The following allows testing for partial rollout	if(document.FORM1.L1.options[document.FORM1.L1.selectedIndex].value != "AORG") {		if(document.FORM1.L1.options[document.FORM1.L1.selectedIndex].value != "EB45") {			if(document.FORM1.L2.value != "528") {				msg+="\n\r   At this time, PDF's are only available for the Aluminum A700 Series, B45 Series, and the Polymer T528 Series";				msgflag="true";				if (fldLoc[0] == null){					fldLoc[0] = "L1";				}			}		}	}//  End of partial rollout*/	if(msgflag == "true"){		msg+="\n\r\n\rPress OK to return to the form";		alert(msg);		eval('document.FORM1.'+fldLoc[0]+'.focus()');		return false;	}	if(msgflag == "false"){	fetch(L1,L2,L3);	}}function fetch(L1, L2, L3){//  The following is kept for future testing purposes	//alert(L1.value);	//alert(L2.value);	//alert(L3.value);	//alert('hello');	//alert(L2.value.indexOf("_"));//  End of testing	//This allows us to exclude the date code from the file attachment documents title	//if L2 has a '_', then it this pdf does not have a termination code	if(L2.value.indexOf("_") <0) {		tempL3 = '_' + L3.value.charAt(0);	}	else {		tempL3 = '';	}		var fjt1 = L1.value+'_'+L2.value+tempL3;	var fjt2 = L1.value+'_'+L2.value+'_'+L3.value;	//alert(fjt);	var windowURL = '/kemet/web/homepage/kechome.nsf/file/IPC_1.1_4_' + fjt1 + '/$file/IPC_1.1_4_' + fjt2 + '.pdf';	var windowName = 'IPC1752';	//var windowFeatures = 'fullscreen=1,menubar=1,resizable=1,scrollbars=1,status=1,toolbar=1'; 	var windowFeatures = 'resizable=1,status=1,channelmode=0,dependent=0,directories=0,location=0,menubar=0,toolbar=0'; 	window.open(windowURL, windowName, windowFeatures);}
