var ns4,op5,op6,agt,mac,ie;
var stepInterval;

function popup(mypage, myname, w, h, scroll, centered) {
	if(centered == 1){
		var winl = (screen.width - w) / 2;
		var wint = (screen.height - h) / 2;
		centerstr = ',top='+wint+',left='+winl;
	}else{
		centerstr = '';
	}
	winprops = 'height='+h+',width='+w + centerstr +',scrollbars='+scroll+',resizable=no';
	win = window.open(mypage, myname, winprops);
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}

prevSelId = 1;
imgArr = new Array;

function setImage(imageId){
	stopMoveThumbDiv();
	changeClass('thmb_'+prevSelId, 'thb');
	changeClass('thmb_'+imageId, 'thb_sel');
	prevSelId = imageId;
	document['mpic'].src= imgArr[imageId];
}

function nextImage(){
	nextImg = prevSelId + 1;
	if(nextImg > imgCount){
		nextImg = 1;
	}
	setImage(nextImg);
}

function prevImage(){
	nextImg = prevSelId - 1;
	if(nextImg<=0){
		nextImg = imgCount;
	}
	setImage(nextImg);
}

function changeThumbScroll(){
	var objDiv = getElement("thumbScroll");
	picHeight = getElementHeight('mainpic');
	thmbScroll = getStyleObject('thumbScroll');
	thmbScroll.height = (picHeight -20 ) + 'px';
	if(objDiv){
		if(getElementHeight('thumbScroll') < getElementHeight('thumbDiv')){
			changeObjectVisibility('thumbScrollUp','visible');
			changeObjectVisibility('thumbScrollDown','visible');
		}else{
			changeObjectVisibility('thumbScrollUp','hidden');
			changeObjectVisibility('thumbScrollDown','hidden');
		}
	}
	divH = getElementHeight('thumbScroll');
	
	if((objDiv.scrollHeight - objDiv.scrollTop) < divH){
		//alert('SH: ' + objDiv.scrollHeight + ' ST: '+ objDiv.scrollTop + ' DH: ' + divH + ' ('+ (objDiv.scrollHeight - objDiv.scrollTop) +' > '+ divH +' = '+ (divH - objDiv.scrollHeight) +')');
		objDiv.scrollTop = objDiv.scrollHeight - divH;
	}
}

function getObjNN4(obj,name)
{
	var x = obj.layers;
	var foundLayer;
	for (var i=0;i<x.length;i++)
	{
		if (x[i].id == name)
		 	foundLayer = x[i];
		else if (x[i].layers.length)
			var tmp = getObjNN4(x[i],name);
		if (tmp) foundLayer = tmp;
	}
	return foundLayer;
}

function sniffBrowsers() {
	ns4 = document.layers;
	op5 = (navigator.userAgent.indexOf("Opera 5")!=-1) 
		||(navigator.userAgent.indexOf("Opera/5")!=-1);
	op6 = (navigator.userAgent.indexOf("Opera 6")!=-1) 
		||(navigator.userAgent.indexOf("Opera/6")!=-1);
	agt=navigator.userAgent.toLowerCase();
	mac = (agt.indexOf("mac")!=-1);
	ie = (agt.indexOf("msie") != -1);
}

function getStyleObject(objectId) {
	if(document.getElementById && document.getElementById(objectId)) {
		return document.getElementById(objectId).style;
	} else if (document.all && document.all(objectId)) {
		return document.all(objectId).style;
	} else if (document.layers && document.layers[objectId]) {
		return getObjNN4(document,objectId);
	} else {
		return false;
	}
}

function changeObjectVisibility(objectId, newVisibility) {
    var styleObject = getStyleObject(objectId, document);
    if(styleObject) {
	styleObject.visibility = newVisibility;
	return true;
    } else {
	return false;
    }
}

function getElementHeight(Elem) {
	if (ns4) {
		var elem = getObjNN4(document, Elem);
		return elem.clip.height;
	} else {
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		if (op5) { 
			xPos = elem.style.pixelHeight;
		} else {
			xPos = elem.offsetHeight;
		}
		return xPos;
	} 
}

function getElementWidth(Elem) {
	if (ns4) {
		var elem = getObjNN4(document, Elem);
		return elem.clip.width;
	} else {
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		if (op5) {
			xPos = elem.style.pixelWidth;
		} else {
			xPos = elem.offsetWidth;
		}
		return xPos;
	}
}

function getElementLeft(Elem) {
	if (ns4) {
		var elem = getObjNN4(document, Elem);
		return elem.pageX;
	} else {
		var elem;
		if(document.getElementById) {
			var elem = document.getElementById(Elem);
		} else if (document.all){
			var elem = document.all[Elem];
		}
		xPos = elem.offsetLeft;
		tempEl = elem.offsetParent;
  		while (tempEl != null) {
  			xPos += tempEl.offsetLeft;
	  		tempEl = tempEl.offsetParent;
  		}
		return xPos;
	}
}


function getElementTop(Elem) {
	if (ns4) {
		var elem = getObjNN4(document, Elem);
		return elem.pageY;
	} else {
		if(document.getElementById) {	
			var elem = document.getElementById(Elem);
		} else if (document.all) {
			var elem = document.all[Elem];
		}
		yPos = elem.offsetTop;
		tempEl = elem.offsetParent;
		while (tempEl != null) {
  			yPos += tempEl.offsetTop;
	  		tempEl = tempEl.offsetParent;
  		}
		return yPos;
	}
}

function getElement(elementId){
	var elem;
	if(document.getElementById) {
		var elem = document.getElementById(elementId);
	} else if (document.all){
		var elem = document.all[elementId];
	}
	return elem;
}

function changeClass(Elem, myClass) {
	var elem;
	if(document.getElementById) {
		var elem = document.getElementById(Elem);
	} else if (document.all){
		var elem = document.all[Elem];
	}
	elem.className = myClass;
}

moveThumbDiv = function(addVal) {
	var objDiv = document.getElementById("thumbScroll");
	objDiv.scrollTop = objDiv.scrollTop + addVal;
	stepInterval = window.setTimeout('moveThumbDiv('+addVal+')', 20);
}

function startMoveThumbDiv(addVal){
	stepInterval = window.setTimeout('moveThumbDiv('+addVal+')', 20);
}

function stopMoveThumbDiv(){
	if(stepInterval){
		clearInterval(stepInterval);
	}
}

window.onload = function() {
	sniffBrowsers();
}
