// JavaScript Document

// CODE PROTECTED BY COPYRIGHT
// AUTHOR: Mike Laye - http://www.image-access.net - mail@image-access.net
// CODE PROTECTED BY COPYRIGHT

// FUNCTION THAT CHECKS THE DOM 
function getObj(name){
if (document.getElementById)
{this.obj = document.getElementById(name);}
else if (document.all)
{this.obj = document.all[name];}
else if (document.layers)
{this.obj = document.layers[name];}
}

// CENTER WINDOW //
function getWindowHeight() {
var windowHeight=0;
if (typeof(window.innerHeight) == 'number') {
windowHeight = window.innerHeight;
}
else {
if (document.documentElement && document.documentElement.clientHeight) {
windowHeight = document.documentElement.clientHeight;
}
else {
if (document.body&&document.body.clientHeight) {
windowHeight = document.body.clientHeight;
}
}
}
return windowHeight;
}

function setSpacing() {
if (document.getElementById) {
var windowHeight = getWindowHeight();
if (windowHeight > 0) {
var contentElement = new getObj('wrapper');
var contentHeight = contentElement.obj.offsetHeight;
if (windowHeight - contentHeight > 0) {	
contentElement.obj.style.position = 'relative';
contentElement.obj.style.top = ((windowHeight / 2) - (contentHeight / 2)) + 'px';
}
else {
contentElement.obj.style.position = 'relative';
contentElement.obj.style.top = "0px";
}
}
}
} 

// GENERIC //

function doHide(theObject,theAction) {
	var thisHiding = new getObj(theObject);
	if (theAction == "hidden") {
	thisHiding.obj.className = "make_hidden";	
	}
	else {
	thisHiding.obj.className = "make_none";	
	}
}

function doShow(theObject, theAction) {
	var thisShowing = new getObj(theObject);
	if (theAction == "block") {		
	//YAHOO.util.Dom.addClass(thisShowing.obj,"make_block");
thisShowing.obj.className = "make_block";	
	}
	else {		
	//YAHOO.util.Dom.addClass(thisShowing.obj,"make_visible");
thisShowing.obj.className = "make_visible";	
	}
}

function doAddClass(theObject, theAction) {
	var thisDiv = new getObj(theObject);
	thisDiv.obj.className = theAction;
}

function getRandomNum(thenum) {
	var rndm = Math.floor(Math.random()*thenum);
	return rndm;
}

function goEnter(reqFolio) {
	var thisFolio = eval("folio" + reqFolio);
	var thisNum = getRandomNum(thisFolio.length);
	//getFullImage(reqFolio,thisNum);
	goImages(0,thisNum,"full");
	}
	
function goPage(thispage) {
setSelected("navigation",thispage,"selected");	
	var thisPage = new getObj('content_area');
	var thisHTML = eval("page" + thispage);
	if (document.getElementById || document.all) {
thisPage.obj.innerHTML = thisHTML;
}
else {
thisPage.obj.document.open();
thisPage.obj.document.write(thisHTML);
thisPage.obj.document.close();
}	
	}
	
function goHideNav() {
	doHide("nav_list","none");
//YAHOO.util.Dom.addClass("navigation", reqClass);	
	}
	
function goShowNav() {
	doShow("nav_list","block");
//YAHOO.util.Dom.addClass("navigation", reqClass);	
	}
	
function goImages(reqFolio,reqStart,reqFormat) {	
setSelected("navigation","Images" + reqFolio,"selected");
switch(reqFolio) {
	case 4:
	case 5:
	case 6:
	case 7:
	setSelected("navigation","Gallery","selected");
	break;
	}
if (reqFormat == "full") {getFullImage(reqFolio,reqStart);}	
else {getThumbs(reqFolio,reqStart);}	
	}	
	
function setSelected(reqElement, reqID, reqClass) {
var el = document.getElementById(reqElement);
var thisList = el.getElementsByTagName('a');
//if (reqID != "Folio") {
for (var i=0;i<thisList.length;i++) {YAHOO.util.Dom.removeClass(thisList[i], reqClass);}
//}
YAHOO.util.Dom.addClass(reqID, reqClass);
}	
	
function getFullImage(reqFolio,reqNum) {
	var thisDiv = new getObj("content_area"); 
	var thisFullImage = eval(thisFolioRoot + reqFolio)[reqNum][0];
	thisFullImage = "<img src=\"fi\/" + thisFullImage + "\" alt=\""  + copyline + "\" \/>";
	if (reqFolio != 0) {
	// Has the thumbs link
	thisFullImage =  "<table><tr><td id='image_cell'><a href='Javascript:getThumbs(" + reqFolio + ", " + reqNum + ");'>" + thisFullImage + "<\/a><\/td><\/tr>";
	// Has the nav bar
	thisFullImage =  thisFullImage +  "<tr><td><div id='image_nav'><\/div><\/td><\/tr>"; 
	}
	else {thisFullImage = "<table><tr><td id='image_cell'>" + thisFullImage + "<\/td><\/tr>";}
	thisFullImage = thisFullImage + "<\/table>";
if (document.getElementById || document.all) {
thisDiv.obj.innerHTML = thisFullImage;
	}
else {
thisDiv.obj.document.open();
thisDiv.obj.document.write(thisFullImage);
thisDiv.obj.document.close();
	}
	if (reqFolio != 0) {
getFullImageNav(reqFolio,reqNum);
	}
	}
	
function getFullImageNav(reqFolio,reqNum) {
	var thisNum = reqNum;
	var thisDiv = new getObj("image_nav");
	var thisFolio = eval(thisFolioRoot + reqFolio);	
	var thisFolioLength = thisFolio.length;
/* Go back & Go on */
if (reqNum > 0)
	{ var thisprevHTML = "<a href='Javascript:getFullImage(" + reqFolio + "," + (thisNum-1) + ");'>&lt;<\/a>"; }
else { var thisprevHTML = "&lt;";}
if (thisNum < (thisFolio.length-1)) 
	{ var thisnextHTML = "<a href='Javascript:getFullImage(" + reqFolio + "," + (thisNum+1) + ");'>&gt;<\/a>"; }
else {var thisnextHTML = "&gt;"; }
/* Image Count */
var thiscountHTML = (reqNum+1) + " \/ " + thisFolioLength;
/* Thumbs Link */
var thisThumbsLinkHTML = "<a href='Javascript:getThumbs(" + reqFolio + ");' id='butt_thumbs'><img src='graphics\/butt_thumbs.gif' alt='click here for gallery overview' \/><\/a>";
// var thisThumbsLinkHTML = "";
/* Image Title */
var thisFullImageTitle = thisFolio[reqNum][1] ;
thisFullImageTitle = '<p id="imageTitle">' +  thisFullImageTitle + '</p>'; 
var thisHTML = "<ul id='nav_butts'><li id='butt_thumbs'>" + thisThumbsLinkHTML + "<\/li><li id='butt_prev'>" + thisprevHTML + "<\/li><li id='butt_count'>" + thiscountHTML + "<\/li><li id='butt_next'>" + thisnextHTML + "<\/li><\/ul>" + thisFullImageTitle;
if (document.getElementById || document.all) {
thisDiv.obj.innerHTML = thisHTML;
	}
else {
thisDiv.obj.document.open();
thisDiv.obj.document.write(thisHTML);
thisDiv.obj.document.close();
	}		
	}
	
var getThumbs = function(reqFolio,reqNum) {
var thisImageFolio = eval(thisFolioRoot + reqFolio);
var thisHTML =  "<div id='thumbs_area'><ol id='thumbs'>";
//alert(thisHTML);
for (var i=0;i<thisImageFolio.length;i++) {
thisHTML =  thisHTML + "<li><table><tr><td class='thumb_cell'><a href='Javascript:getFullImage(" + reqFolio + ", " + i + ");'><img src='" + thumbsImageDir + "\/" + thisImageFolio[i][0] + "' alt='" + copyline + "' \/><\/a><\/td><\/tr><\/table><\/li>";	
}
var thisgrid = thumbrows * thumbcols;
if (thisgrid > thisImageFolio.length) { var thisExtraCells = thisgrid-thisImageFolio.length;}
else {var thisExtraCells = (thumbcols - (thisImageFolio.length % thumbcols));
if (thisExtraCells == thumbcols) {thisExtraCells = 0;}
}
	for (var i=0;i<(thisExtraCells);i++) {	
thisHTML =  thisHTML + "<li><table><tr><td class='thumb_cell'><\/td><\/tr><\/table><\/li>";	
}
thisHTML =  thisHTML + "<\ol><\/div>";
var thisDiv = YAHOO.util.Dom.get("content_area");
thisDiv.innerHTML = thisHTML;
		};

// START SITE //

/*window.onload = function() {
  setSpacing();
 // doDate();
 }*/
 
 YAHOO.util.Event.onDOMReady(function () { 
	  setSpacing();
	  	YAHOO.util.Event.addListener("content_area", "mouseover", goHideNav);
		YAHOO.util.Event.addListener("navigation", "mouseover", goShowNav);
		goEnter(0);
});

window.onresize = function() {
  setSpacing();
}
