function addLoadEvent(func){
	var oldonload = window.onload;
	if (typeof window.onload != 'function'){
	window.onload = func;
	}else{
		window.onload = function(){
		oldonload();
		func();
		}
	}
}
function changetoPNG(){
	var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=parseFloat(b_version);
var images = document.getElementsByTagName("img");
for (i=0; i<images.length; i++){
	var imgclass = images[i].className;
	if (imgclass.indexOf("png") != -1){
	var imgsrc = images[i].getAttribute("src").split(".")[0];
	var imgsrc2 = images[i].getAttribute("src").split(".")[1];
	var imgsrc3 = images[i].getAttribute("src").split(".")[2];
	
		if (browser.indexOf("Internet Explorer")!= -1){
			var ienewsrc = imgsrc +"."+ imgsrc2 +"." + imgsrc3 + ".png";
			var ie7newsrc = imgsrc +"."+ imgsrc2 +".png";
			var ie8newsrc = imgsrc+".png";
			if  (b_version.indexOf("7.0") != -1) {
			images[i].setAttribute("src", ie7newsrc);
			}else if (b_version.indexOf("8.0") != -1) {
				images[i].setAttribute("src", ie8newsrc);
			}else{
	images[i].setAttribute("src", "images/blank.gif"); 
	images[i].style.width = "440px";
	images[i].style.height = "300px";
	images[i].style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+ienewsrc+"',sizingMethod='scale')";
	}
		}else{
			var newsrc = imgsrc + ".png";
			images[i].setAttribute("src", newsrc);	
		}
		}
	}
}

function javascriptPortfolio(){
if (!document.getElementsByTagName) return false;
var links = document.getElementsByTagName("a");
for (i=0;i<links.length; i++){
var linkhref = links[i].getAttribute("href");
if (linkhref.indexOf("alt_portfolio") != -1){
	links[i].setAttribute("href", "portfolio.html");
}
}
}

function setURL(){
var intro = document.getElementById("logo");
var introlink = intro.getElementsByTagName("a");
introlink[0].onclick = function(){
	var page = "intro";
	document.location.href="homepage.html?" + page;
	return false;
}
	var menu = document.getElementById("menu");
	var links = menu.getElementsByTagName("a");
	for (var i=0;i<links.length;i++){
	links[i].onclick = function(){
	var linksrc = this.getAttribute("href");
	if (linksrc.indexOf("about") != -1){
			var page = "about";
	document.location.href="homepage.html?" + page;
	return false;
	}
	if (linksrc.indexOf("solutions") != -1){
	var page = "solutions";
	document.location.href="homepage.html?" + page;
	return false;
	}
	}
	}
}

function collapse(){
	if (!document.getElementById || !document.getElementsByTagName || !document.getElementById("gallerymenu") || !document.getElementById("multimedia") || !document.getElementById("graphicdesign")) return false;
	var menu = document.getElementById("gallerymenu");
	var multimedia = document.getElementById("multimedia");
	multimedia.style.display = "none";
	var graphic = document.getElementById("graphicdesign");
	graphic.style.display = "none";
	var menulinks = menu.getElementsByTagName("a");
	for (var i=0;i<menulinks.length;i++){
		var linksrc = menulinks[i].getAttribute("href");
		if (linksrc.indexOf("#") != -1){
		menulinks[i].onclick = function(){
		var src = this.getAttribute("href");
		var h2target = src.split("#")[1];
		var lists = menu.getElementsByTagName("ul");
		for (var j=0;j<lists.length;j++){
		var listid = lists[j].getAttribute("id");
		if (h2target != listid){
			lists[j].style.display = "none";
		}else{
			lists[j].style.display = "block";
			}
			}	
			return false;
			}
		}
	}
}



function portfolionav(){
	if (!document.getElementById || !document.getElementsByTagName || !document.getElementById("gallerymenu") || !document.getElementById("galleryphoto") || !document.getElementById("photocontrols") || !document.getElementById("abouttheproject")) return false;
	var photocontrols = document.getElementById("photocontrols");
	var pmenulis = photocontrols.getElementsByTagName("li");
	var about = document.getElementById("abouttheproject");
	var gallerydiv = document.getElementById("galleryphoto");
	var launchsite = document.getElementById("launchsite");
var galmenu = document.getElementById("gallerymenu");
var projects = galmenu.getElementsByTagName("a");
for (i=0;i<projects.length;i++){
	var projectsrc = projects[i].getAttribute("href");	
if (projectsrc.indexOf("jpg") != -1){
	projects[i].onclick = function(){
		if (this.className != "launch"){
			launchsite.style.visibility = "hidden";
			}else{
			launchsite.style.visibility = "visible";
			var linktitle = this.getAttribute("title");
			var linkdest = linktitle.split(" of ")[1];
			lanchsitefunc(linkdest);
		}
		var linksrc = this.getAttribute("href");
		if (linksrc.indexOf("flash") != -1){
				pmenulis[2].style.visibility = "hidden";
				about.firstChild.nodeValue = "Flash-based Wedding Invitations"
			}else{
				pmenulis[2].style.visibility = "visible";
				
			}	
			if (linksrc.indexOf("tkd") != -1){
				about.firstChild.nodeValue = "This web site was created for the Hapoel Kfar-Saba Taekwondo club"
			}
			if (linksrc.indexOf("ey") != -1){
				about.firstChild.nodeValue = "An online portfolio created for a husband-wife team of artists/photographers"
			}
			if (linksrc.indexOf("physio") != -1){
				about.firstChild.nodeValue = "A website created for a sports physiotherapy clinic"
			}
			if (linksrc.indexOf("tutb") != -1){
				about.firstChild.nodeValue = "An online portfolio created for a husband-wife team of wedding photographers"
			}
			if (linksrc.indexOf("itf_") != -1){
				about.firstChild.nodeValue = "A multimedia CD created for the Israeli Taekwondo Federation"
			}
			if (linksrc.indexOf("graphportfolio") != -1){
				about.firstChild.nodeValue = "A multimedia business card created for a graphic designer"
			}
			if (linksrc.indexOf("/invite") != -1){
				about.firstChild.nodeValue = "Wedding invitations"
			}
			if (linksrc.indexOf("tailwaggers") != -1){
				about.firstChild.nodeValue = "This web site was created for Tailwaggers - a London-based dog grooming parlour"
			}
			if (linksrc.indexOf("tumblr") != -1){
				about.firstChild.nodeValue = "A Tumblr blog template design"
			}
			if (linksrc.indexOf("sen") != -1){
				about.firstChild.nodeValue = "Design and usability consulting services for a media-based social network"
			}
			if (linksrc.indexOf("intdoc") != -1){
				about.firstChild.nodeValue = "The Interactive Documentary blog was designed by Safsal and built by CodeRequired.com"
			}
var galleryimg = gallerydiv.getElementsByTagName("img");
galleryimg[0].setAttribute("src", linksrc);

//fix for Safari's redrawing bug
galleryimg[0].onload = function(){
var boardbg = document.getElementById("boardbg");
var boardwidth = boardbg.offsetWidth;
boardbg.style.width = (boardwidth + 1)+"px";
setTimeout("resizeBack()",10);	
}

return false;
	}
}
}
}

function resizeBack(){
	var boardbg = document.getElementById("boardbg");
	var boardbgoriginalwidth = document.getElementById("boardbg").offsetWidth - 1;
document.getElementById("boardbg").style.width = boardbgoriginalwidth+"px";
}

function lanchsitefunc(title){
	var launchsite = document.getElementById("launchsite");
	var launchlink = launchsite.getElementsByTagName("a");
	launchlink[0].setAttribute("href", title);
	launchlink[0].setAttribute("target", "_blank");	
}


function projectnav(){
	if (!document.getElementById || !document.getElementsByTagName || !document.getElementById("galleryphoto") || !document.getElementById("photocontrols")) return false;
	var imgdiv = document.getElementById("galleryphoto");
	var img = imgdiv.getElementsByTagName("img");
	var projectmenu = document.getElementById("photocontrols");
	var pmenulist = projectmenu.getElementsByTagName("ul");
	var pmenulinks = pmenulist[0].getElementsByTagName("a");
		for (i=0;i<pmenulinks.length;i++){
				eval('pmenulinks[i].onclick = function(){ var newlinksrc = img[0].getAttribute("src"); 		var halfimgsrc = newlinksrc.split("_")[0]; var newsrc = halfimgsrc + "_" + ('+(i+1)+') +".jpg"; 		img[0].setAttribute("src", newsrc); return false;}');
		}
}

function showMobile(){
	if (!document.getElementById || !document.getElementsByTagName || !document.getElementById("extras") || !document.getElementById("wallpapers") || !document.getElementById("mobiledesktop")) return false;
	var extras = document.getElementById("extras");
	var extraslinks = extras.getElementsByTagName("a");
	var wallpapers = document.getElementById("wallpapers");
	var mobiledesktop = document.getElementById("mobiledesktop");
	var screensavers = document.getElementById("screensavers");
	var mobilescreensaver = document.getElementById("mobilescreensaver");
	for (var i=0;i<extraslinks.length;i++){
		extraslinks[i].onclick = function(){
			var linksrc = this.getAttribute("href");
			if (this.className == "title" && linksrc.indexOf("mobiledesktop") != -1){
			wallpapers.style.display = "none";
			mobiledesktop.style.display = "block";
			return false;
			}
			if (this.className == "title" && linksrc.indexOf("pcdesktop") != -1){
			wallpapers.style.display = "block";
			mobiledesktop.style.display = "none";
			return false;
			}
			if (this.className == "title" && linksrc.indexOf("mobilescreensaver") != -1){
			screensavers.style.display = "none";
			mobilescreensaver.style.display = "block";
			return false;
			}
			if (this.className == "title" && linksrc.indexOf("pcscreensaver") != -1){
			screensavers.style.display = "block";
			mobilescreensaver.style.display = "none";
			return false;
			}
			}
		}
}

function hideMoreInfo(){
	if (!document.getElementById || !document.getElementById("showmoreButton") || !document.getElementById("moreinfo")) return false;
	var moreinfobtn = document.getElementById("showmoreButton");
	var moreinfo = document.getElementById("moreinfo");
	moreinfobtn.style.display = "block";
	moreinfo.style.display = "none";
	moreinfobtn.onclick = function(){
		if (moreinfo.style.display == "none"){
		moreinfo.style.display = "block";
		moreinfobtn.innerHTML = "Hide additiobal information";
		}else{
			moreinfo.style.display = "none";
			moreinfobtn.innerHTML = "More on this project";
		}
	}
}

addLoadEvent(javascriptPortfolio);
addLoadEvent(changetoPNG);
addLoadEvent(setURL);
addLoadEvent(collapse);
addLoadEvent(portfolionav);
addLoadEvent(projectnav);
addLoadEvent(showMobile);
addLoadEvent(hideMoreInfo);

