var numProjects = 12;
var projectNr = 0;
var refreshIframe = false;

title = new Array();

title[1] = "Virtual events: real-time anaglyph monitor";
title[2] = "Space jockey: positioning sound in space";
title[3] = "Fietsersbond: haptic bicycle traffic trainer";
title[4] = "Cycling 74: free externals and patches";
title[5] = "Sample paradijs: experimental theatre and concerts";
title[6] = "Smadsteck: video sampling technology";
title[7] = "Eboman: audio and visuals for innovative events";
title[8] = "d'Electrique: theatre with sensors and interactive audio";
title[9] = "Picnic conference: real time av speaker announcements";
title[10] = "Blendid: touchme hd engine";
title[11] = "Midiator: operating system Vision";
title[12] = "Flinke Namen & Dio: En toen was er licht";
//title[13] = "EXO: sound controlled laser floor";

function parseQuery() {
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		if (pos > 0) {
			var key = parms[i].substring(0,pos);
			var val = parseInt(parms[i].substring(pos+1));
			if (key == "project") projectNr = val; 
		}
	}
	if (projectNr == 0) projectNr = Math.ceil(Math.random() * numProjects);	
}

function load() {
	setTitles();
	setDescription();
	setImages();
	preLoadImages();
}

function placeLogo() {
	var logoTd = document.getElementById("logoHolder");
	logoTd.innerHTML = "<table cellspacing=\"0\" cellpadding=\"5\" onClick=\"doEmail();\" style=\"cursor: hand; cursor: pointer;\"><tr><td><span style=\"width:434px; height:178px; display:inline-block; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='index-logo.png');\"><img width=\"434\" height=\"178\" src=\"index-logo.png\" border=\"0\" title=\"Email me\" onClick=\"doEmail();\" style=\"filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0); cursor: hand; cursor: pointer;\"></span></td></tr></table>";
}

function preLoadImages() {
	for (var i = 1; i <= 5; i++) {
		var bigImg = new Image();
		bigImg.src = "projects/" + projectNr + "/big/" + i + ".jpg";
	}
	
	nextProject = scrollProject(1);
	for (var i = 1; i <= 5; i++) {
		var bigImg = new Image();
		var smallImg = new Image();		
		bigImg.src = "projects/" + nextProject + "/big/" + i + ".jpg";
		smallImg.src = "projects/" + nextProject + "/small/" + i + ".jpg";
	}	
	
	nextProject = scrollProject(-1);
	for (var i = 1; i <= 5; i++) {
		var bigImg = new Image();
		var smallImg = new Image();		
		bigImg.src = "projects/" + nextProject + "/big/" + i + ".jpg";
		smallImg.src = "projects/" + nextProject + "/small/" + i + ".jpg";
	}		
}

function resizeContentDiv() {
	var contentDiv = document.getElementById("content");
	var h = (typeof window.innerHeight != 'undefined' ? window.innerHeight : document.body.offsetHeight);
	contentDiv.style.height = (h - findPosY(contentDiv)) + "px";
}

function show(clickSource) {
	var mainImgTd = document.getElementById("mainImgTd");
	mainImgTd.innerHTML = "<img width=550 height=330 id=mainImg src=projects/" + projectNr + "/big/"  + clickSource + ".jpg>"
}

function scrollProject(direction) {
	var nextProjectNr = projectNr + direction;
	if (nextProjectNr <= 0) nextProjectNr += numProjects;
	if (nextProjectNr > numProjects) nextProjectNr -= numProjects;
	return nextProjectNr;
}

function setTitles() {

	var linksTable = document.getElementById("linksTable");
	linksTable.innerHTML = "<table width='100%' cellspacing='0' cellpadding='5'>";
	
	for (var i = 1 ; i <= numProjects; i++) {
		if (i != projectNr)
			linksTable.innerHTML += "<tr><td><table cellspacing='0' cellpadding='0'><tr><td class='header1'><a href='project.html?project=" + i + "'>" + title[i] + "</a></td></tr></table></td></tr>\n";
		else
			linksTable.innerHTML += "<tr><td><table cellspacing='0' cellpadding='0'><tr><td class='header0'>" + title[i] + "</td></tr></table></td></tr>\n";
	}
	
//	for (var i = Math.round(numProjects / 2) * -1 ; i < Math.round(numProjects / 2); i++) {
//		if (i != 0)
//			linksTable.innerHTML += "<tr><td><table cellspacing='0' cellpadding='0' onClick='jumpProject(" + i + ");'><tr><td class='header1' onmouseover=\"this.style.textDecoration='underline';\" onmouseout=\"this.style.textDecoration='none'\">" + title[scrollProject(i)] + "</td></tr></table></td></tr>\n";
//		else
//			linksTable.innerHTML += "<tr><td><table cellspacing='0' cellpadding='0'><tr><td class='header0'>" + title[scrollProject(i)] + "</td></tr></table></td></tr>\n";
//	}	
	linksTable.innerHTML += '</table>';
}

function setImages() {
	var mainImgTd = document.getElementById("mainImgTd");
	mainImgTd.innerHTML = "<img width=550 height=330 id=mainImg src=projects/" + projectNr + "/big/1.jpg>"

	for (var i = 1; i <= 5; i++) {
		var smallImgTd=document.getElementById("small" + i);
		smallImgTd.innerHTML="<img width=110 height=80 src=projects/" + projectNr + "/small/" + ((i % 5) + 1) + ".jpg>";
	}
}

function setDescription() {
	var iframe = self.frames['descriptionSource'];
	refreshIframe = true;
	iframe.location.replace("projects/" + projectNr + "/description.html");
}

function iframeLoadDone() {
	if (refreshIframe == true) {
		var contentCell = document.getElementById("myDescription");
		var iframe = self.frames['descriptionSource'];

		var newDiv = document.createElement("div");
		newDiv.innerHTML = iframe.document.body.innerHTML;

		contentCell.replaceChild(newDiv, contentCell.firstChild);
	
		refreshIframe = false;
	}
}

function jumpProject(direction) {
	window.location.href="project.html?project=" + scrollProject(direction);
}

function doEmail() {
	var emailString = "";
	emailString += "k_rrghq";
	emailString += ">_prrcaf,lj";	

	shift = 2;
    g = "";c = "";  
    for ( i=0;i < emailString.length;i++)  
    {c = emailString.charAt(i);g += String.fromCharCode( c.charCodeAt(0) + shift );}
	
	window.location.href = "mailto:" + g;
}

// findPos by Peter-Paul Koch & Alex Tingle:
// http://blog.firetree.net/2005/07/04/javascript-find-position/

  function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }
