function initShop()
{
	if( document.getElementById )
	{
		/*
		if( elements = document.getElementsByTagName( "form" ) )
		{
			var i;
		
			for( i = 0 ; i < elements.length ; i++ )
			{
				if( elements[i].getAttribute( "class" ) == "ProductQuantityInput" )
				{
					if( divs = elements[i].getElementsByTagName( "div" ) )
					{
						for( x = 0 ; x < divs.length ; x++ )
						{
							if( divs[x].getAttribute( "class" ) == "update" )
							{
								divs[x].replaceChild( getLinkNode( "javascript:document.forms[" + i + "].submit()", "Opdater indkøbskurv" ), divs[x].childNodes[0] );
							}
						}
					}
				}
			}
		}
		*/
		
		setFocusOnFirstHighlightedInput();
		
		flashBackgroundColor( "ShoppingCartMessages", 250, 231, 192, 3 );
		
		//flashBackgroundColor( "ErrorMessage", 250, 231, 192, 3 );
	}
}

function toogleVisibility( nodeId )
{
	if( document.getElementById && ( node = document.getElementById( nodeId ) ) )
	{
		if( node.style.display == "none" )
		{
			node.style.display = "block";
		
			if( elements = document.getElementsByTagName( "textarea" ) )
			{
				elements[0].focus();
			}
		}
		else
		{
			node.style.display = "none";
		}
	}
}

function setFocusOnFirstHighlightedInput()
{
	if( elements = document.getElementsByTagName( "input" ) )
	{
		var i;
	
		for( i = 0 ; i < elements.length ; i++ )
		{
			if( parentNode = elements[i].parentNode )
			{
				if( parentNode = parentNode.parentNode )
				{
					if( parentNode.getAttribute( "class" ) == "highlighted" )
					{
						elements[i].focus();
						
						return;
					}
				}
			}			
		}
	}
}

function disableInputsInDiv( id )
{
	if( document.getElementById )
	{
		if( div = document.getElementById( id ) )
		{
			div.setAttribute( "class", "disabled" );

			if( elements = div.getElementsByTagName( "input" ) )
			{
				var i;
			
				for( i = 0 ; i < elements.length ; i++ )
				{
					elements[i].disabled = true;
				}
			}
		}
	}
}

function enableInputsInDiv( id )
{
	if( document.getElementById )
	{
		if( div = document.getElementById( id ) )
		{
			div.setAttribute( "class", "enabled" );
		
			if( elements = div.getElementsByTagName( "input" ) )
			{
				var i;
				var focusSet = false;
			
				for( i = 0 ; i < elements.length ; i++ )
				{
					elements[i].disabled = false;
					
					if( !focusSet && elements[i].value == "" )
					{
						elements[i].focus();
						
						focusSet = true;
					}
				}
			}
		}
	}
}

function setBackgroundColor( id, red, green, blue )
{
	if( object = document.getElementById( id ) )
	{
		object.style.backgroundColor = "rgb(" + red + "," + green + "," + blue + ")";
	}
}

//var flashLog = "";

function flashBackgroundColor( id, red, green, blue, counter, subcounter )
{
	if( object = document.getElementById( id ) )
	{
		if( subcounter == null )
		{
			counter *= 2;
			subcounter = 4;
		}
		
		var factor = 1;
		
		if( counter % 2 > 0 )
		{
			factor = 1 + ( .05 * subcounter );
		}
				
		r = Math.min( 255, Math.floor( red * factor ) );
		g = Math.min( 255, Math.floor( green * factor ) );
		b = Math.min( 255, Math.floor( blue * factor ) );
				
		object.style.backgroundColor = "rgb(" + r + "," + g + "," + b + ")";
		
		//flashLog += "Factor: " + factor + " (" + counter + "/" + subcounter + ")\n";
		
		if( counter > 0 )
		{			
			if( counter % 2 == 0 )
			{
				counter -= 1;
				subcounter = 4;
				
				window.setTimeout( "flashBackgroundColor('" + id + "'," + red + "," + green + "," + blue + "," + counter + "," + subcounter + ")", 400 );
			}
			else
			{
				if( subcounter == 1 )
				{
					counter -= 1;
					subcounter = 4;
				}
				else
				{
					subcounter -= 1;
				}
			
				window.setTimeout( "flashBackgroundColor('" + id + "'," + red + "," + green + "," + blue + "," + counter + "," + subcounter + ")", 100 );
			}
		}
		else
		{
			//alert( flashLog );
		}
	}
}

function getLinkNode( address, text )
{
	node = document.createElement( "a" );
	node.setAttribute( "href", address );
	
	textNode = document.createTextNode( text );
	
	node.appendChild( textNode );
	
	return node;
}

function setClass( objectId, className )
{
	if( document.getElementById )
	{
		if( object = document.getElementById( objectId ) )
		{
			object.setAttribute( "class", className );
		}
	}
}