// galleryManager JavaScript Document for Crea!

// set the following in each html file based on directory showing for this html file 
// var galleryPath = ".\/photos\/";		// where photos and thumbnails reside for this page
// var arrowPath = "..\/images\/";
// var pics = new Array(
//			"achilles2.jpg",
//			...
//			"lastpic.jpg );		

var currSet = 0;
var numSets = 0;
var numFrames = 0;
var thumbPath = galleryPath +  "thumbs\/";
var frames;
var arrowLeft;
var arrowRight;
var stdBrowser;
var infoDiv = null;

window.onload = function() { init(); } 
//addEvent(window, "load", init);

function init() {
	// load thumb nail images into frames
	if (document.images) {	
		frames = document.getElementsByName("tiny");
		numFrames = frames.length;
		numSets = pics.length / numFrames;
		
		for (var i=0;i<numFrames;i++) {
				frames[i].src = thumbPath + pics[i];
				frames[i].onmousedown= function() {showPic(this);}
				frames[i].onmouseover= function() {outlineThumb(this);}
		}
		arrows = document.getElementsByName("arrow");
		if (arrows.length > 0) {
			arrowLeft = arrows[0];
			arrowLeft.onmousedown= function() {prevSet();}
			arrowRight = arrows[1];
			arrowRight.onmousedown= function() {nextSet();}
		}
		if (infos) {
			infoDiv = document.getElementById("info");
		}	
	} else {
		alert("No document.images supported");
	}
}
function outlineThumb(obj) {
	for (var i = 0; i < numFrames; i++) {
		if (obj == frames[i]) { obj.className = 'thumbOn'; }
		else { frames[i].className = 'thumbOff'; }
	}
	
}
function showPic(obj) {
	for (var i = 0; i <= numFrames; i++) {
		if (obj == frames[i]) break;
	}
	
	frameNum = i;
	var realNum = (currSet * numFrames) + frameNum;
	document.bigPic.src = galleryPath + pics[realNum];
	if (infoDiv) {
		infoDiv.innerHTML = infos[realNum];
	}
}

function nextSet() {
	if (++currSet == numSets) {
			--currSet;
	} else {
		var offSet = currSet * frames.length;
		for (var i=0;i<frames.length;i++) {
				frames[i].src = thumbPath + pics[i + offSet];
		}
		if (currSet == (numSets - 1)) {
				if (arrowRight) arrowRight.src = arrowPath + "arrowEmpty.gif";	
		}		
		if (arrowLeft) arrowLeft.src = arrowPath + "arrowLeft.gif";	
	}
}

function prevSet() {
	if (--currSet < 0) {
			++currSet;
	} else {
		var offSet = currSet * frames.length;
		for (var i=0;i<frames.length;i++) {
				frames[i].src = thumbPath + pics[i + offSet];
		}
		if (currSet == 0) {
				if (arrowLeft) arrowLeft.src = arrowPath + "arrowEmpty.gif";	
		}			
		if (arrowRight) arrowRight.src = arrowPath + "arrowRight.gif";	
	}
}

//==============================================================================
// utility functions below...
//==============================================================================

// adds an eventListener for browsers which support it.
/*** not good for MAC ??? function addEvent(obj, evType, fn){
   if (obj.addEventListener){  
    obj.addEventListener(evType, fn, true);
    return true;
  } else if (obj.attachEvent){
	var r = obj.attachEvent("on"+evType, fn);
    return r;
  } else {
	alert("Can't add event " + evType + " for " + obj);
	return false;
  }
}
****/
