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