function redirectIfNeeded ()
{
	var retval = false;
	var re = /^([^?]+)(\?[^#]*)?#(i=[hv]\d)$/;
	var matches = String (document.location).match (re);
	if (matches)
	{
		retval = true;
		document.location = matches [1] + '?' + matches [3];
	}
	return retval;
}


function readURIVars ()
{
	var retval = new Hash ();
	var parts = String (document.location).split ('?');
	if (parts [1])
	{
		var URIVars = parts [1].split ('&');
		for (var i = 0; i < URIVars.length; i++)
		{
			if (URIVars [i])
			{
				var pair = URIVars [i].split ('=');
				retval.set (pair [0], pair [1]);
			}
		}
	}
	return retval;   
}


function setImage (identifier)
{
	var el = $('project_image');
    var linkEl = $('project_image_link');

	var orientation = defaultImageOrientation;
	var index = 1;
	if (identifier)
	{
		orientation = identifier.charAt (0);
		index = parseInt (identifier.substring (1));
	}

	el.src = '/images/filler.gif';
    linkEl.removeAttribute ('href');

	if ('h' == orientation)
	{
		el.addClassName ('horizontal')
		el.removeClassName ('vertical');
	}
	else
	{
		el.addClassName ('vertical')
		el.removeClassName ('horizontal');
	}

	el.src = images.get (orientation).get (index);
    linkEl.setAttribute ('href', el.src);
}


function setImageFromURI ()
{
	if (! redirectIfNeeded ())
	{
		var URIVars = readURIVars ();
		var identifier = URIVars.get ('i');
		setImage (identifier);
	}
}


function toggleProject (link)
{
	var container = link.parentNode.nextSibling;
	if (Element.hasClassName (container, 'hidden'))
	{
		Element.removeClassName (container, 'hidden');
	}
	else
	{
		Element.addClassName (container, 'hidden');
	}
}


/* Google analytics */
try
{
	var pageTracker = _gat._getTracker ("UA-9910952-1");
	pageTracker._trackPageview ();
}
catch (err) 
{
}

