var styleProducts = new Array();
var styleDescriptions = new Array();

function displayInventoryStatusMessage(fieldNameSuffix, message) {
	var elem = document.getElementById("inventoryStatusMessage" + fieldNameSuffix);
	elem.innerHTML = message;
} // End function

function styleOnChange(frmName, fieldNameSuffix, itemEdp, level, levelCount, showPrice) {
	var frm = document.forms[frmName];
	var entry1 = '', entry2 ='', entry3 = '';
	var l1descFldName = 'l1desc' + fieldNameSuffix;
	var l2descFldName = 'l2desc' + fieldNameSuffix;
	var l3descFldName = 'l3desc' + fieldNameSuffix;
	
	entry1 = frm[l1descFldName].options[frm[l1descFldName].selectedIndex].value;
	
	if (levelCount >= 2) entry2 = frm[l2descFldName].options[frm[l2descFldName].selectedIndex].value;
	
	if (levelCount == 3) entry3 = frm[l3descFldName].options[frm[l3descFldName].selectedIndex].value;
	
	var count = 0;
	
	if (levelCount > 1) {
		if (level == 1) {
			for (i = frm[l2descFldName].options.length - 1; i >= 0; i--) {
				frm[l2descFldName].options[i] = null;
			} // End for loop

			for (i = 0; i < styleProducts[itemEdp].length; i++) {
				if (styleProducts[itemEdp][i][0] == entry1) {
					var found = false;
					
					for(j = 0; j < frm[l2descFldName].options.length; j++) {
						if (frm[l2descFldName].options[j].value == styleProducts[itemEdp][i][1]) {
							found = true;
							break;
						} // End if
					} // End for loop
					
					if (!found) {
						if (entry2 == '') {
							entry2 = styleProducts[itemEdp][i][1];
						} // End if
						
						if (styleProducts[itemEdp][i][1] == '')
						    continue;
						    
						var selected = styleProducts[itemEdp][i][1] == entry2?true:false;
						
						if (levelCount == 2){
							frm[l2descFldName].options[count++] = new Option(styleProducts[itemEdp][i][1] + (showPrice?' - ' + styleProducts[itemEdp][i][3]:''), styleProducts[itemEdp][i][1], false, selected);
						} else {
							frm[l2descFldName].options[count++] = new Option(styleProducts[itemEdp][i][1], styleProducts[itemEdp][i][1], false, selected);
						} // End if/else
					} // End if
				} // End if
			} // End for loop
			
			if (frm[l2descFldName].options.length == 0) {
				frm[l2descFldName].options[0] = new Option("--Select " + styleDescriptions[itemEdp][1] +  " First--", "", false, false);
			} // End if
		} // End if

		if (levelCount == 3) {
			for (i = frm[l3descFldName].options.length - 1; i >= 0; i--) {
				frm[l3descFldName].options[i] = null;
			} // End for loop

            var count = 0;
            var entry3Found = false;

			for (i = 0; i < styleProducts[itemEdp].length; i++) {
				if (styleProducts[itemEdp][i][0] == entry1 && styleProducts[itemEdp][i][1] == entry2) {
					var found = false;
					
					for (j = 0; j < frm[l3descFldName].options.length; j++) {
						if (frm[l3descFldName].options[j].value == styleProducts[itemEdp][i][2]) {
							found = true;
							break;
						} // End if
					} // End for loop
					
					if (!found) {
						if (entry3 == '') {
							entry3 = styleProducts[itemEdp][i][2];
						} // End if
						
						var selected = styleProducts[itemEdp][i][2] == entry3?true:false;
						
						if (selected && !entry3Found) {
						    entry3Found = true;
						} // End if
					
						frm[l3descFldName].options[count++] = new Option(styleProducts[itemEdp][i][2] + (showPrice?' - ' + styleProducts[itemEdp][i][3]:''), styleProducts[itemEdp][i][2], false, selected);
					} // End if
				} // End if
			} // End for loop
			
			if (frm[l3descFldName].options.length == 0) {
				frm[l3descFldName].options[0] = new Option("--Select " + styleDescriptions[itemEdp][3] +  " First--", "", false, false);
			} else if (!entry3Found) {
			    entry3 = frm[l3descFldName].options[0].value;
			} // End if/else
		} // End if
	} // End if	
	
	for (i = 0; i < styleProducts[itemEdp].length; i++) {
		if (styleProducts[itemEdp][i][0] == entry1 && styleProducts[itemEdp][i][1] == entry2 && styleProducts[itemEdp][i][2] == entry3) {
			if (showPrice) displayInventoryStatusMessage(fieldNameSuffix, styleProducts[itemEdp][i][5]);
			
			return;
		} // End if
	} // End for loop
	
	displayInventoryStatusMessage(fieldNameSuffix, "&nbsp;");
} // End function