


function changeBg()
{
	var allColor = new Array('a5c4de','aeb1ff','aee6ff','aeffed','b3ffcf','b8beff','b8feff','bbffd6','bbffed','bce4b7','beb8ff','c6aeff','c7ffb8','caedb3','ccffbb','cdd2ff','cde8ff','cdffe4','cdfffe','cfffb8','d1b8ff','d1ffcd','e2cfff','e4b8ff','e9b8ff','e9ffb8','edb3b7','efb3ff','efffcd','f0ffbb','f1bbff','f6d5ff','fbffbb','ffb3b5','ffb3e6','ffb8d4','ffb8ec','ffbcb8','ffcbae','ffcdf0','ffcecd','ffd1f3','ffd4b8','ffd6b8','ffe5cd','ffeeb8','ffefb8','fff7cd');

	var backColor = new Array(); // don't change this
	
	for (var i = 0; i < 6; i++) 
	{	
		var randomnumber=Math.floor(Math.random()*allColor.length)
		backColor[i] = allColor[randomnumber];
		allColor.splice(randomnumber,1);
	
	}

	document.getElementById("colorLine1").style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[0] + '.gif)';
	document.getElementById("colorLine2").style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[1] + '.gif)';
	document.getElementById("colorLine3").style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[2] + '.gif)';
	document.getElementById("colorLine4").style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[3] + '.gif)';
	document.getElementById("colorLine5").style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[4] + '.gif)';

	var classTags = getElementByClass("extraLinkLine" );
	var extraLink = getElementByClass("extraLink" );
	
	for(var i = 0;i<classTags.length;i++)
	{
		classTags[i].style.backgroundImage = 'url(http://www.publicreative.com/css/images/colours/'+ backColor[i] + '.gif)';
		extraLink[i].style.backgroundColor = '#' + backColor[i];
		
		sealedExtraOnMouseOver( extraLink[i] );
		sealedExtraOnMouseOut( extraLink[i] , backColor[i]);
	}
	
	var navItems = document.getElementById("nav").getElementsByTagName("li");

	//for(var i=0;i<6;i++)
	for( var i = 0; i < navItems.length; i++ )
	{
		if( document.getElementById("active") == navItems[i] )
		{
				navItems[i].getElementsByTagName('a')[0].style.backgroundColor = '#' + backColor[i];
		}
		else {
			sealedOnMouseOver( navItems[i] , backColor[i]);
			sealedOnMouseOut( navItems[i] );
		}

	}
	
	var featuredRelatedDivs = getElementByClass("featuredRelated");
	var newProjectDivs = getElementByClass("newProject");
	var galleryItemDivs = getElementByClass("galleryItem");
	var featuredRelatedBigDivs = getElementByClass("featuredRelatedBig");
	
	for( var i = 0;i<featuredRelatedBigDivs.length;i++)
	{
		featuredRelatedBigDivs[i].onmouseover = function()
		{
			this.style.backgroundColor = "#eeeded";
		}
		
		featuredRelatedBigDivs[i].onmouseout = function()
		{
			this.style.backgroundColor = "#ffffff";
		}
	}
	
	for( var i = 0;i<featuredRelatedDivs.length;i++)
	{
		featuredRelatedDivs[i].onmouseover = function()
		{
			this.style.backgroundColor = "#eeeded";
		}
		
		featuredRelatedDivs[i].onmouseout = function()
		{
			this.style.backgroundColor = "#ffffff";
		}
	}
	
	for( var i = 0;i<newProjectDivs.length;i++)
	{
		newProjectDivs[i].onmouseover = function()
		{
			this.style.backgroundColor = "#eeeded";
		}
		
		newProjectDivs[i].onmouseout = function()
		{
			this.style.backgroundColor = "";
		}
	}
	
	for( var i = 0;i<galleryItemDivs.length;i++)
	{
		galleryItemDivs[i].onmouseover = function()
		{
			this.style.backgroundColor = "#eeeded";
		}
		
		galleryItemDivs[i].onmouseout = function()
		{
			this.style.backgroundColor = "";
		}
	}
}

function sealedExtraOnMouseOver( element )
{
	element.onmouseover = function()
	{
		
		element.style.backgroundColor = "#ffffff";	
		element.style.cursor = "pointer";
	}
}

function sealedExtraOnMouseOut( element , prop)
{
	element.onmouseout = function()
	{
		element.style.backgroundColor = '#'+prop;
	}
}


function sealedOnMouseOver( element , prop )
{
	element.onmouseover = function()
	{
		element.getElementsByTagName('a')[0].style.backgroundColor = '#'+prop;
	}
}

function sealedOnMouseOut( element )
{
	element.onmouseout = function()
	{
		element.getElementsByTagName('a')[0].style.backgroundColor = '';
	}
}


var allHTMLTags = new Array();

function getElementByClass(theClass)
{

    var allHTMLTags=document.getElementsByTagName("*");
	var classTags = new Array();
    for (var i=0; i<allHTMLTags.length; i++) 
	{

		if (allHTMLTags[i].className==theClass) 
		{
			classTags.push( allHTMLTags[i] );
    	}
    }
	return classTags;
}

var newDiv = null;
var targetDiv = null;

function insertAfter( referenceNode, newNode )
{
	referenceNode.parentNode.insertBefore( newNode, referenceNode.nextSibling );
}

function addElement()
{
	newDiv = document.createElement("div");
	newDiv.id = "flashHeader";
	newDiv.innerHTML = '<div id="flash"><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></div><div class="clear"></div>';

	targetDiv = document.getElementById("subHeader");
	insertAfter(targetDiv,newDiv);
}


// GA - Tim 2009-02-12
// ==-----------------
var pageTracker;
function runGA(){
	// intialize and track default page view
	try {
		var gcode = /^lab\./.test(window.location.hostname) ? 'UA-6477557-2' : 'UA-6477557-1';
		pageTracker = _gat._getTracker( gcode );
		pageTracker._trackPageview();
		// add external link trackers with /external/* pseudo-path
		var lnks = document.getElementsByTagName('a');
		var regLocal = new RegExp("^https?:\\/\\/"+window.location.hostname);
		for( var i = 0; i < lnks.length; i++ ){
			try {
				var elLnk = lnks[i];
				if( regLocal.test(elLnk.href) || elLnk.getAttribute('rel') === 'nofollow' ){
					continue;
				}
				if( elLnk.attachEvent ){
					elLnk.attachEvent( 'onclick', onExtClick );
				}
				else if( elLnk.addEventListener ){
					elLnk.addEventListener('click', onExtClick, true );
				}
				elLnk.setAttribute('target','_blank');
			}
			catch( Err ){
				// ignore error
			}
		}
	}
	catch( Err ){
		// ignore error
	}	
}

function trackExt( elLnk ){
	try {
		//var path = elLnk.href.replace(/^https?:\/\//, '/external/');
		//if( path && path.indexOf('/external/') === 0 ){
		//	pageTracker._trackPageview(path);
		//}
		pageTracker._trackEvent('links','external',elLnk.href);
	}
	catch( Err ) {
		// ignore error
	}
}

function onExtClick( Evt ){
	try {
		var elLnk = Evt ? ( Evt.target ? Evt.target : Evt.srcElement ) : event.srcElement;
		trackExt( elLnk );
	}
	catch( Err ){
		// ignore error
	}
	return true;
}
	






















