function changeItemPhotoTo(myIndex) {
	//var src = '../noimage.gif';
	//if (itemData[myIndex].image != undefined)
	//	src = itemData[myIndex].image;	
	//document.getElementById('item_photo').src = 'images/items/colorpics/' + src;
}

function showModelImage() {
	document.getElementById('item_photo').src = 'images/items/pics/' + modelImage;
}

function changeSelectTo(myIndex) {
	document.getElementById('select_color_dropdown').selectedIndex = myIndex;
}

function changeColorTo(i,swapPhoto) {
	if (swapPhoto == undefined) swapPhoto = true;
	if (swapPhoto)
		changeItemPhotoTo(i);
	changeSelectTo(i);
	createItemDataTable(i);
	changeSelectedSwatchTo(i);
}

function changeSelectedSwatchTo(i) {
	for (var j=0; j<itemData.length; j++)
		document.getElementById('swatch'+j).className = 'item_color';
	document.getElementById('swatch'+i).className = 'item_color item_color_selected';			
}

function changeToCheapestInStockColor() {
	if (defaultColor == null) {
		var cheapestColorID = 0;
		var cheapestColorCost = 10000.00;
		for (var i=0;i<itemData.length;i++)	{
			if (itemData[i].instock) {
				for (var j=0; j<itemData[i].data.length; j++) {	
					for (var k=0; k<itemData[i].data[j].prices.length; k++) {
						var curPrice = Number(itemData[i].data[j].prices[k].substring(1));						
						if (curPrice <= cheapestColorCost) { 
							cheapestColorCost = curPrice;
							cheapestColorID = i;
						}
					}				
				}
			}
		}
		changeColorTo(cheapestColorID, false);
	} else 
		changeColorTo(defaultColor, true);	
}

function colorSelectChanged(me) {
	changeColorTo(me.selectedIndex);
}

function updateColorStock() {
	for (var i=0;i<itemData.length;i++)	{
		itemData[i].instock = 0;
		for (var j=0; j<itemData[i].data.length; j++) {	
			if (itemData[i].data[j].instock) itemData[i].instock = 1;
		}
		if (!itemData[i].instock) document.getElementById('swatch_link'+i).className = 'oos';
	}
}

function createSwatches() {
	var numColors = itemData.length;

	
	/* single column layout */
	document.write('<div class="item_color_column">');
	for (var i=0;i<itemData.length;i++) {
		var color = itemData[i].name;
		var swatch = itemData[i].swatch;
		if (swatch == undefined) swatch = '../noswatch.jpg';	
		document.write('<div id="swatch'+i+'" class="item_color"><a id="swatch_link'+i+'" href="javascript:changeColorTo('+i+', false)" onfocus="this.hideFocus=true;"><img class="item_swatch" src="images/items/swatches/'+swatch+'" width="41" height="37" alt="'+color+'" title="'+color+'" />'+color+'</a></div>');
	}
	document.write('</div>');	

	updateColorStock();
}



function createColorDropdown() {
	document.write('<select onchange="colorSelectChanged(this)" id="select_color_dropdown" name="color" style="vertical-align: middle;">');
	
	for (var i=0;i<itemData.length;i++) {
		var color = itemData[i].name;
		document.write('<option value="'+color+'">'+color+'</option>');
	}
	document.write('</select>');
}

function createItemDataTable(i) {
	var cont = document.getElementById('item_data_table_holder');
	
	var tblHeader 	= '<table id="tbl_prices" border="0" cellspacing="0" cellpadding="0">';	
	var tblFooter 	= '</table>';
	var addToCart	= '<div id="item_panel_prices_addlinks"><ul class="bullet_menu">';
	addToCart		+= '<li><a href="#" onclick="submit_addtowishlist();return false;">Add to Wishlist</a></li>';
	addToCart		+= '<li><a href="#" onclick="submit_addtofastord();return false;">Add to Fast Order Form</a></li>';
	addToCart		+= '</ul></div><div id="item_panel_prices_add"><input id="btn_addtocart" type="submit" value="Add to Cart" class="form_button" onclick="clearsubmits()" /></div>';
	//var addToCart 	= '<div id="item_panel_prices_add"><a href="#" onclick="submit_addtowishlist();return false;">Add to Wishlist</a> &nbsp; <input id="btn_addtocart" type="submit" value="Add to Cart" class="form_button" onclick="clearwish()" /></div>';
	var outOfStock	= '<tr><td class="tbl_header_notavail">Color is Out of Stock or Discontinued.</td></tr>'; 
	
	/* if color data isn't available, show out of stock without add to cart button */
	if (itemData[i].data.length == 0) 
		tblData = outOfStock;
	else {
		/* build table headers based off of priceColumns */
		var tblData = '<tr class="tbl_header"><td>Size</td>';
		for (var j=0; j<priceColumns.length; j++) {
			tblData += '<td>'+priceColumns[j]+'</td>';
		}
		tblData += '<td>Stk.</td><td>Qty.</td></tr>';
		/* show add to cart button if pricing is available and at least one item is in stock */
		if (itemData[i].instock) tblFooter += addToCart;		
	}
	
	/* for each color, output the pricing row */
	for (var j=0; j<itemData[i].data.length; j++) {
		if (j%2==0)
			var tblClass="tbl_data_even";
		else
			var tblClass="tbl_data_odd";
		
		var itemSize = itemData[i].data[j].size;
		var itemStock = '';
		var itemID = itemData[i].data[j].id;
		
		if (itemData[i].data[j].instock) 
			itemStock = '<img src="images/status_yes.gif" alt="In Stock" title="In Stock" width="14" height="14" />';
		else
			itemStock = '<img src="images/status_no.gif" alt="Out of Stock" title="Out of Stock" width="14" height="14" />';
		
		tblData += '<tr class="tbl_data ' + tblClass + '">' +
			'<td>'+itemSize+'</td>';
		
		/* output pricing based on # of priceColumns */
		for (var k=0; k<priceColumns.length; k++) {
			var curPrice = itemData[i].data[j].prices[k];
			if (curPrice == undefined)
				curPrice = 'N/A';			
			tblData += '<td>'+curPrice+'</td>';
		}
		tblData += '<td>'+itemStock+'</td>';
		
		/* if item is out of stock, disable the qty input */
		if (itemData[i].data[j].instock) 
			tblData += '<td><input name="qty_'+itemID+'" type="text" class="tbl_input_qty" size="4" maxlength="5" /></td>';			
		else
			tblData += '<td><input title="Out of Stock" value="N/A" disabled name="qty_'+itemID+'" type="text" class="tbl_input_qty" size="4" maxlength="5" /></td>';
			
		tblData += '</tr>';
	}

	/* write all of the data that was prepared above */
	cont.innerHTML = tblHeader + tblData + tblFooter;
}