var strCategory = "";
var intSelectedProjectIndex = 0;
var intSelectedImageIndex = 0;
var objProjects = new Array();
var objPreloadedImages = new Array();
/* ===================================== String Functions ==================================== */
String.prototype.removeQueryString = removeQueryString;
/*---------------------------------------------------------------------------------------------*/
function removeQueryString() {
	if (this.indexOf("?") == -1) return this;
	return this.substr(0, this.indexOf("?"));
}
/* ==================================== General Functions ==================================== */
function preloadImages() {
	for (var intArgumentsCounter = 0; intArgumentsCounter < arguments.length; intArgumentsCounter++) {
		var tmpImage = document.createElement("img");
		tmpImage.src = arguments[intArgumentsCounter];
		objPreloadedImages.push(tmpImage);
	}
}
/*---------------------------------------------------------------------------------------------*/
function setExternalURLs() {
	var objExternalURLs = document.getElementsByTagName("a");
	
	for (var intCounter = 0; intCounter < objExternalURLs.length; intCounter++) {
	if (objExternalURLs[intCounter].rel.length) objExternalURLs[intCounter].onclick = function() {
			window.open(this.href);
			return false;
		}
	}
}
/*---------------------------------------------------------------------------------------------*/
function showProject() {
	intSelectedImageIndex = null;

	if (!objProjects || !objProjects.length) return null;

	// adjust images navigation
	var projectImageSelector = document.getElementById("projectImageSelector_wrapper").getElementsByTagName("span");
	for (var intCounter = 0; intCounter < 9; intCounter++) {
		projectImageSelector[intCounter].style.display = (intCounter < objProjects[intSelectedProjectIndex].strImages.length && objProjects[intSelectedProjectIndex].strImages.length > 1)?"inline":"none";
	}

	// adjust "back" and "next" buttons
	document.getElementById("backButton").style.display = intSelectedProjectIndex?"block":"none";
	document.getElementById("nextButton").style.display = (intSelectedProjectIndex == objProjects.length - 1)?"none":"block";

	// set description and URL
	var strNC = new Array();
	strNC.push(objProjects[intSelectedProjectIndex].strDescription);
	if (objProjects[intSelectedProjectIndex].strURL) strNC.push("<br /><a href=\"http://" + unescape(objProjects[intSelectedProjectIndex].strURL) + "\" rel=\"external\">" + unescape(objProjects[intSelectedProjectIndex].strURL).removeQueryString() + "</a>");

	document.getElementById("projectDescription").innerHTML = strNC;

	// load the image
	switchImage(0);

	// adjust URLs
	setExternalURLs();

	// show entire project layer
	document.getElementById("projects_wrapper").style.visibility = "visible";
}
/*---------------------------------------------------------------------------------------------*/
function switchImage(intImageIndex) {
	if (intSelectedImageIndex == intImageIndex) return null;
	intSelectedImageIndex = intImageIndex;

	// change the source
	document.getElementById("projectImage").src = "images/projects/" + strCategory + "/" + objProjects[intSelectedProjectIndex].strImages[intSelectedImageIndex];
}
/* ======================================= Global Events ===================================== */
onload = function() {
	var backButton, nextButton, projectImageSelector, topmenuImages, bottommenuImages;
	// preload navigation images
	preloadImages("images/button_advertising_over.gif", "images/button_clients_over.gif", "images/button_contact_over.gif", "images/button_corporateIdentity_over.gif", "images/button_fonts_over.gif", "images/button_hebrew_over.gif", "images/button_presentations_over.gif", "images/button_printedMaterials_over.gif", "images/button_salesPromotions_over.gif", "images/button_webSites_over.gif");

	// attach events
	// navigation buttons
	topmenuImages = document.getElementById("topmenu_wrapper").getElementsByTagName("img");
	for (var intCounter = 0; intCounter < topmenuImages.length; intCounter++) {
		topmenuImages[intCounter].onmouseover = function() {
			this.src = "images/button_" + this.id + "_over.gif";
		}

		topmenuImages[intCounter].onmouseout = function() {
			this.src = "images/button_" + this.id + "_out.gif";
		}
	}

	bottommenuImages = document.getElementById("bottommenu_wrapper").getElementsByTagName("img");
	for (var intCounter = 0; intCounter < bottommenuImages.length; intCounter++) {
		bottommenuImages[intCounter].onmouseover = function() {
			this.src = "images/button_" + this.id + "_over.gif";
		}

		bottommenuImages[intCounter].onmouseout = function() {
			this.src = "images/button_" + this.id + "_out.gif";
		}
	}

	// project image selectors
	if (document.getElementById("projectImageSelector_wrapper")) {
		projectImageSelector = document.getElementById("projectImageSelector_wrapper").getElementsByTagName("span");
		for (var intCounter = 0; intCounter < projectImageSelector.length; intCounter++) {
			projectImageSelector[intCounter].intIndex = intCounter;
	
			projectImageSelector[intCounter].onclick = function() {
				switchImage(this.intIndex);
			}
		}
	}

	// "back' Button
	if (backButton = document.getElementById("backButton")) {
		backButton.onclick = function() {
			showProject(--intSelectedProjectIndex);
		}
	}

	// "next" Button
	if (nextButton = document.getElementById("nextButton")) {
		nextButton.onclick = function() {
			showProject(++intSelectedProjectIndex);
		}
	}

	// adjust URLs
	setExternalURLs();

	// show first project
	showProject(0);
}