// productAttributes.js

var currentColour='';
// not called
function setAttributes(colr,sizr)
{
	for (var i in jstock.stocks)
	{
		if (jstock.stocks[i].colour==colr && jstock.stocks[i].size==sizr && jstock.stocks[i].quantity > 0)
		{
			markColourSelected(colr,true);
			markSizeSelected(sizr,true);
			break;			
		}
	}
	return;
}
function setColourSaveSize(colri)
{
	sizeCheckedName='';
	if (document.productAttributes.attrValueS!=undefined)
	{
		if (document.productAttributes.attrValueS.length == undefined) {
			sizeCheckedName=findSizeName(document.productAttributes.attrValueS.value);
		}
		else
		{
			for (i=0; i< document.productAttributes.attrValueS.length ; i++ ) {
				if (document.productAttributes.attrValueS[i].value != undefined) {
					if (document.productAttributes.attrValueS[i].checked && (document.productAttributes.attrValueS[i].disabled==false)) 
					{
						sizeCheckedName=findSizeName(document.productAttributes.attrValueS[i].value);
						break;
					}
				}
			}
		}
	}
	colr=findColourName(colri);
	sizeavailable=-1;
	for (var i3 in jstock.stocks)
	{
		if (jstock.stocks[i3].colour==colr && jstock.stocks[i3].size==sizeCheckedName && jstock.stocks[i3].quantity > 0)
		{
			sizeavailable=i3;
			break;
		}
	}
	setColour(colri);
	if (sizeavailable != -1)
		if (jstock.sizes.length >0)
			markSizeSelected(findSizeId(jstock.stocks[sizeavailable].size),true);
	
}

function setColour(colri)
{
	for (var i in jstock.colours)
		if (jstock.colours[i].id != colri)
			markColourSelected(jstock.colours[i].id,false);
		else
			if (colri !='') 
			{
				colr=jstock.colours[i].colour;
				markColourSelected(jstock.colours[i].id,true);
				if (document.getElementById("showcolour") != undefined)
					document.getElementById("showcolour").innerHTML=colr;
			}
				
	for (var i in jstock.sizes)
	{
		markSizeSelected(jstock.sizes[i].id,false);
		markSizeAvailable(jstock.sizes[i].id,false);
	}
	colr=findColourName(colri);
	for (var i in jstock.stocks)
	{
		if (jstock.stocks[i].colour==colr)
		{
			itemAvailable=0;
			sizr=jstock.stocks[i].size;
			if (sizr !='')
			{
				sizri=findSizeId(sizr);
				checkSize(sizri,false);
				if (jstock.stocks[i].quantity > 0) 
				{
					markSizeAvailable(sizri,true);
					itemAvailable=itemAvailable+1;
				}
			}
//			if (itemAvailable==0)
//				alert('no colours' + colr + ';');
		}
	}
	return;
}

function setSize(sizri)
{
	if (sizri=='')
		return;
	for (var i in jstock.sizes)
	{
		if (jstock.sizes[i].id==sizri)
		{
			markSizeSelected(sizri,true);
		}
		else
		{
			markSizeSelected(jstock.sizes[i].id,false);
			checkSize(jstock.sizes[i].id,false);
		}
	}
	return;
}
/* sample jstock
var jstock=
{
		colours: [ 		 			 
			{ "colour": 'Ardesia' , "id": '115168' }  
			],
		sizes: [ 		  
		{ "size": 'XS', "id": '115167' }    ,
		{ "size": 'S', "id": '115169' }    ,
		{ "size": 'M', "id": '115171' }    ,
		{ "size": 'L', "id": '115173' }    ,
		{ "size": 'XL', "id": '115175' }  
			],
		stocks: [  		   			
			{ "colour": 'Ardesia' , "size": "XS", "quantity": "4","catentryid" : "71461", "stem" : "/wcsstore/SpeedoCatalog/X" }    , 			
			{ "colour": 'Ardesia' , "size": "S", "quantity": "6","catentryid" : "71462", "stem" : "/wcsstore/SpeedoCatalog/X" }    , 			
			{ "colour": 'Ardesia' , "size": "M", "quantity": "10","catentryid" : "71463", "stem" : "/wcsstore/SpeedoCatalog/X" }    , 			
			{ "colour": 'Ardesia' , "size": "L", "quantity": "10","catentryid" : "71464", "stem" : "/wcsstore/SpeedoCatalog/X" }    , 			
			{ "colour": 'Ardesia' , "size": "XL", "quantity": "6","catentryid" : "71465", "stem" : "/wcsstore/SpeedoCatalog/X" }  
			]
	}
*/

function setAttribute(colr,sizr)
{
	if (colr=='' && jstock.colours.length >0)
		colr=jstock.colours[0].colour;
	setImagery(colr,sizr);
	colri=findColourId(colr);
	for (var i in jstock.stocks) {
		if (jstock.colours.length==0 || colr=='' || colr==jstock.stocks[i].colour) 
		{
			setColour(colri);
			for (var i in jstock.sizes) 
			{
				markSizeSelected(jstock.sizes[i].id,false);
				checkSize(jstock.sizes[i].id,false);
			}
			if (jstock.sizes.length>0)
			{
				for (var i in jstock.stocks)
				{
					if (jstock.stocks[i].colour==colr)
					{
						if (jstock.stocks[i].size==sizr)
						{
							if (jstock.stocks[i].quantity > 0) 
							{
								markSizeSelected(findSizeId(sizr),true);
							}
							return;
						}
					}
				}
			}
			return;
		}
	}
	setColour('');
	return;
}
function hideUnused()
{
	for (var c in jstock.colours) {
		bshow=false;
		for (var i in jstock.stocks) {
			if (jstock.stocks[i].colour==jstock.colours[c] && jstock.stocks[i].quantity > 0) {
				bshow=true;
				break;
			}
		}
		if (bshow==false)
			hideColour(jstock.colours[c]);
	}
	for (var s in jstock.sizes) {
		bshow=false;
		for (var i in jstock.stocks) {
			if (jstock.stocks[i].size==jstock.sizes[s] && jstock.stocks[i].quantity > 0) {
				bshow=true;
				break;
			}
		}
		if (bshow==false)
			hideSize(jstock.sizes[s]);
	}
}

function hideColour(colr)
{
	hideItem("attrValueCLi"+colr);
}
function hideSize(sizr)
{
	hideItem("attrValueSLi"+sizr);
}
function hideItem(itm)
{
	document.getElementById(itm).style.display="none";
}
function markColourSelected(colr,which)
{
	document.getElementById("attrValueCLabel"+colr).className=which?'selected':'';
	checkColour(colr,which);
	
}
function markSizeSelected(sizr,which)
{
//	alert('MarkSizeSelected ' + sizr + ' ' + which);
	document.getElementById("attrValueSLabel"+sizr).className=which?'selected':'';
	checkSize(sizr,which);
	
}
function markSizeAvailable(sizr,which)
{
	document.getElementById("attrValueSLi"+sizr).className=which?'':'outofstock';
	document.getElementById("attrValueS"+sizr).disabled=which?false:true;
	document.getElementById("attrValueSLabel"+sizr).disabled=which?false:true;
	document.getElementById("attrValueSLi"+sizr).disabled=which?false:true;
	if (which==false) {
		document.getElementById("attrValueS"+sizr).checked=false;
		if (document.productAttributes.attrValueS.length == undefined)
			document.productAttributes.attrValueS.selected=false;
		else
			for (i=0; i< document.productAttributes.attrValueS.length ; i++ )
				document.productAttributes.attrValueS[i].checked=false;
	}
}

function checkSize(sizr,which)
{
	document.getElementById("attrValueSLabel"+sizr).checked=which;
	document.getElementById("attrValueS"+sizr).checked=which;
	document.getElementById("attrValueSLi"+sizr).selected=which;
	if (which ) {
		setImagery('',sizr);
	}
}
function checkColour(colr,which)
{
	document.getElementById("attrValueCLabel"+colr).checked=which;
	document.getElementById("attrValueC"+colr).checked=which;
	if (which ) {
		setImagery(colr,'');
	}
}

function chgImage (imgName,newImg ) 
{
	if (document.images) 
	{
		document[imgName].src=eval(newImg+".src");
	}
}
var abc= new Array('-a','-b','-c');
function setImagery(colr,sizr)
{
	colr=findColourName(colr);
	sizr=findSizeName(sizr);
	if (colr=='')
		colr=currentColour;
	else
		currentColour=colr;
	for (stm =0; stm <jstock.stocks.length; stm++) 
	{
		if ((colr=='' || jstock.stocks[stm].colour==colr) && (sizr=='' || jstock.stocks[stm].size==sizr))
		{
			stem = jstock.stocks[stm].stem;
			n=stem.lastIndexOf('/');
			if (n>0)
				stem=stem.substr(n+1);
			if (imageZ[0]==scene7BaseURL+stem+abc[0])
				return;
			for (i=0;i<3;i++)
			{
				is=scene7BaseURL+stem+abc[i];
				if (imageZ[i]==is)
					return;
				img=document.getElementById("thumb"+abc[i]);
				imageZ[i]=is;
				is=is+"?hei=116&wid=96" + "&op_sharpen=0&qlt=85,1&resMode=sharp2&op_usm=0.5,0.5,0,0";
				img.src=is;
			}
			if (s7zoom != null) {
				s7zoom.setImage(imageZ[0]+"?op_sharpen=0&qlt=85,1&resMode=sharp2&op_usm=0.5,0.5,0,0", true, 1200, 1453);
				s7zoom.reset();
			}
			else
			{
				img=document.getElementById("bigimagepopup");
				if (img != undefined)
					img.src=imageZ[0];
			}
			break;
		}
	}
}
function findColourName(colrid)
{
	for (var i2 in jstock.colours)
	{
		if (jstock.colours[i2].id==colrid)
			return (jstock.colours[i2].colour);
	}
	return(colrid);
}
function findColourId(colrname)
{
	for (var i2 in jstock.colours)
	{
		if (jstock.colours[i2].colour==colrname)
			return (jstock.colours[i2].id);
	}
	return(colrname);
}
function findSizeName(sizeid)
{
	for (var i2 in jstock.sizes)
	{
		if (jstock.sizes[i2].id==sizeid)
			return (jstock.sizes[i2].size);
	}
	return(sizeid);
}
function findSizeId(sizename)
{
	for (var i2 in jstock.sizes)
	{
		if (jstock.sizes[i2].size==sizename)
			return (jstock.sizes[i2].id);
	}
	return(sizename);
}

function setAltLabels()
{
	for (var i2 in jstock.sizes) 
	{
		document.getElementById('attrValueSLabel'+jstock.sizes[i2].id).alt=jstock.sizes[i2].size;
		document.getElementById('attrValueSLabel'+jstock.sizes[i2].id).title=jstock.sizes[i2].size;
	}
	for (var i2 in jstock.colours) 
	{
		document.getElementById('attrValueCLabel'+jstock.colours[i2].id).alt=jstock.colours[i2].colour;
		document.getElementById('attrValueCLabel'+jstock.colours[i2].id).title=jstock.colours[i2].colour;
	}

}
function decrementBasketCounts(exceptfor)
{
	for (i=0 ; i < jstock.stocks.length; i++)
	{
		if (jstock.stocks[i].quantity > 0)
		{
			for (j=1; j< bIds.length; j++) 
			{
				if (jstock.stocks[i].catentryid == bIds[j])
				{
					if (bbId[j] != exceptfor)
					{
						jstock.stocks[i].quantity -= bInv[j];
					}
				}
			}
		}
	}
	return;

}