/* Ergonet JavaScript Library */
var splashImageContainerHTML = "";
var browser;
var browserVersion;
var operatingSystem;
var xmlhttp;
var oldBrowserMode=false;
var IE6=false;
var operatingSystem='', browser='', browserVersion='', IE=false, ns=false, win=false, mac=false;

// The following are written by the dataSource of the gallery
/*
gallery=new Array();
labels=new Array();
galleryImageWidths=new Array();
timeinterval=1000;
frameinterval=10;
pathToRoot='';
tweenDistance=1;
oldBrowserMode=false;
spacerSrc='/gallery/graphics/spacer.gif';
var currentImageId='screenImage1';
var galleryInc=0;
*/

// ergoNet Gallery JavaScript Document 2007-11-30

var Id;
var Idfade;
var Fid;
var scroll_position=0;
var viewer = document.getElementById('screenImage');
var slide='';
var currentOverlayImageId='';

function showPicture(p,t,n,w) {
//trace("showPicture: "+p+"\n"+t+"\n"+n+"\n"+w);
//trace(galleryInc);
	var imageSoloDetails = document.getElementById('imageSoloEditDetails');
	if (imageSoloDetails !=null) {
		//imageSoloDetails.innerHTML="Loading..";
		// see lib.js
		getImageSoloDetails(gallery[galleryInc]);
	}
	if ( t ) {
		galleryInc=n;
		var txt = t.replace(/\'/g,"&apos;");
		currentOverlayImageId = 'screenImage'+galleryInc;
		var alphaStyleString="opacity:1;"; //"MozOpacity:0;opacity:0;-khtml-opacity:0;FILTER: Alpha(Opacity=80, FinishOpacity=0, Style=2);alpha(opacity=0);";
		//alert(browser);
		if (IE) {
			alphaStyleString="filter: Alpha(Opacity=100);"; // , FinishOpacity=0, Style=2
		}
//		slide = "<span><img class='noPointer' src='"+p+"' title='"+txt+"' width='"+w+"' id='"+currentOverlayImageId+"' style='"+alphaStyleString+"' /></span>";
		slide = "<span><img class='noPointer' src='"+p+"' title='"+txt+"' id='"+currentOverlayImageId+"' style='"+alphaStyleString+"' /></span>";
		
		viewer = document.getElementById('screenImage');
		var screenOverlay = document.getElementById('screenOverlay');
		if (screenOverlay != null) {
			screenOverlay.innerHTML = slide;
		} else {
//			trace('missing screenOverlay');
		}
		if (viewer != null) {
			// viewer.innerHTML=slide; 
			fadeChange();
		} else {
	//		trace('screen not found');
		}
	}
}
function qr(t) {
	trace(t);
}
var slideAlpha=100;
var overlayAlpha=0;
var step=1;
var fadeInterval=100;
function fadeChange() {
	//alert('ello');
	var screenImageOverlay=document.getElementById(currentOverlayImageId);
	var screenImage=document.getElementById(currentImageId);
	if (screenImage != null) {
		if (step<10) {
			step++;
			slideAlpha=Math.floor(100/step);
			overlayAlpha=Math.floor(step * 10);
			Idfade = window.setTimeout("fadeChange()",fadeInterval);
		} else {
			var viewer = document.getElementById('screenImage');
			viewer.innerHTML=slide;
			currentImageId = currentOverlayImageId;
			screenImage=document.getElementById(currentImageId);
			slideAlpha=100;
			overlayAlpha=0;
			step=1;
			clearTimeout(Idfade);
			//alert('viewer: '+viewer.innerHTML);
		}
		if (screenImage != null) {
		setImageOpacity(screenImage,slideAlpha);
		}
		if (screenImageOverlay) {
		setImageOpacity(screenImageOverlay,overlayAlpha);
		}
	//	qr(slideAlpha);
	} else {
		//qr('no screen image object: '+currentImageId);
		currentImageId = 'screenImage'+(galleryInc+1);
	}
}

function setImageOpacity(obj,num) {
	//var obj = ie4?eval("document.all."+which):document.getElementById(which);
	if (obj != null) {
		//alert('obj: '+obj.id+', num: '+num);
		if (IE) {
			//alert("this is IE");
			if (obj.filters.alpha != null) {
				try {obj.filters.alpha.opacity=num;} catch (err) {}; //alert('obj filters'); 
			}
		} else {
			if (obj.style.MozOpacity) {
				obj.style.MozOpacity=num/100; 
				//alert('mozOpacity'); 
			}
			if (obj.style.opacity) {
				obj.style.opacity=num/100; 
				//alert('opacity'); 
			}
			if (obj.style.setProperty) {
				var n = num/100;
				try {obj.style.setProperty('-khtml-opacity',n,null); } catch (err) {};
				//alert('khtml opacity'); 
			}
		}
	}
}
// and for $isOldBrowser
function setPicture(p,w) {
	var galleryImage = document.getElementById("galleryImageTag");
	alert("set Picture: "+p);
	if (galleryImage !=null) {
		galleryImage.src=spacerSrc;
		galleryImage.style.width=w+'px';
		galleryImage.src=p;
	} else {
		trace('missing galleryImageTag');	
	}
}
function playGallery() {
	Id = window.setTimeout("nextImage()",timeinterval);
	Fid = window.setTimeout("setscroll()",frameinterval);
	timeinterval=5000;
}
function nextImage() {
	clearTimeout(Id); 
	var j=0;
	if (oldBrowserMode) {
		var img = new Image;
		j=i+1;
		if (j>=gallery.length) j=0; 
		img.src=pathToRoot+gallery[j];
		setPicture(pathToRoot+gallery[galleryInc],galleryImageWidths[galleryInc]);
		if (galleryInc>=gallery.length) galleryInc=0; scroll_position=-350;
		//Id = window.setTimeout("nextImage()",timeinterval);
		setscroll();
		playGallery();
	} else {
		showPicture(pathToRoot+gallery[galleryInc],labels[galleryInc],galleryInc,galleryImageWidths[galleryInc]);
		if (galleryInc>=gallery.length-1) {galleryInc=-1;scroll_position=-350;}
		//setscroll();
		setHighlight();
		playGallery();
	}
	galleryInc ++;
}
function resumeGallery() {
	//scroll_position = document.getElementById('scroller').scrollLeft
	var obj = document.getElementById('content01');
	if (obj != null) {
		obj.innerHTML='';	
	}
	nextImage();
	if (!oldBrowserMode) {
	obj=document.getElementById("transport");
	if (obj != null) {
		obj.innerHTML = "<a onclick='stopGallery()'>Stop</a>";
	}
	}
}
function stopGallery() {
	//alert('stop!');
	clearTimeout(Id); 
	clearTimeout(Fid); 
	clearTimeout(launchGalleryPeriod);
	if (!oldBrowserMode) {
		obj=document.getElementById("transport");
		if (obj!=null) {
			obj.innerHTML = "<a onclick='resumeGallery()'>Play</a>";
		}
	}
}
function setscroll() {
	obj=document.getElementById('img'+galleryInc);
	//this_scroll = parseInt((obj.width+4)/24);
	this_scroll=tweenDistance; 
	scroll_position += this_scroll;
	tween(this_scroll);
}
function setHighlight() {
	for (var s=0; s<galleryMenuDivs.length; s++) {
		var obj = document.getElementById(galleryMenuDivs[s]);
		//trace(galleryMenuDivs[s]);
		if (obj !=null) {
			obj.className="galleryMenuThumb";
			if (s==galleryInc) {
				obj.className="galleryMenuThumb gmtc";
			}
			
		} else {
//			trace('not found: '+galleryMenuDivs[s]);	
		}
	}
	if (galleryInc==-1) {
		var n=galleryMenuDivs.length;
		var obj = document.getElementById(galleryMenuDivs[n-1]);
		if (obj !=null) {
			obj.className="galleryMenuThumb gmtc";
		}
	}
}
function tween(this_scroll) {
		for (var j=0; j<24; j++) {
			var obj=document.getElementById('galleryMenu');
			if (obj != null) {
				obj.scrollLeft = scroll_position;
		//		trace(obj.scrollLeft + " : " + scroll_position);
			} else {
				//populate('features01','och noo');
			}
		clearTimeout(Fid); 
		Fid = window.setTimeout("setscroll()",frameinterval);
	}
}
function setPos(w) {
	if (w) {
		scroll_position=w;
	}
}
/*
		Many thanks to Quirksmode for the following excellent Browser Detect tool
		www.quirksmode.org
*/
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{	// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 	// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();
browserVersion=BrowserDetect.version;
operatingSystem=BrowserDetect.OS;	
browser=BrowserDetect.browser;
if (browser=="Explorer") { IE=true;  }  //alert(browser);