


var BI_OS,BI_browser,BI_version;
function BrowserInfo()
{

var detect = navigator.userAgent.toLowerCase();
var total,thestring;



if (checkIt('konqueror'))
{
	BI_browser = "Konqueror";
	BI_OS = "Linux";
}
else if (checkIt('safari')) BI_browser = "Safari";
else if (checkIt('omniweb')) BI_browser = "OmniWeb";
else if (checkIt('opera')) BI_browser = "Opera";
else if (checkIt('webtv')) BI_browser = "WebTV";
else if (checkIt('icab')) BI_browser = "iCab";
else if (checkIt('firefox')) BI_browser = "Firefox";
else if (checkIt('msie')) BI_browser = "Internet Explorer";
else if (!checkIt('compatible'))
{
	BI_browser = "Netscape Navigator";
	BI_version = detect.charAt(8);
}
else BI_browser = "An unknown browser";

if (!BI_version) BI_version = detect.charAt(place + thestring.length);

if (!BI_OS)
{
	if (checkIt('linux')) BI_OS = "Linux";
	else if (checkIt('x11')) BI_OS = "Unix";
	else if (checkIt('mac')) BI_OS = "Mac";
	else if (checkIt('win')) BI_OS = "Windows";
	else BI_OS = "an unknown operating system";
}

function checkIt(string)
{
	place = detect.indexOf(string) + 1;
	thestring = string;
	return place;
}


}//Browser info


<!--

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.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			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"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// 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.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();


//->

/* initialise fader by hiding image object first
addEvent (window,'load',fadeInit)
 Added to cope with back
ScrollPos('artarticle',305);


/* 3rd party helper functions */

/* addEvent handler for IE and other browsers */
function addEvent(elm, evType, fn, useCapture)
// addEvent and removeEvent
// cross-browser event handling for IE5+,  NS6 and Mozilla
// By Scott Andrew
{
 if (elm.addEventListener){
   elm.addEventListener(evType, fn, useCapture);
   return true;
 } else if (elm.attachEvent){
   var r = elm.attachEvent("on"+evType, fn);
   return r;
 }
}

///////////////////////////////////
function showImg(object,val) {
document.getElementById(object).style.visibility = val;
}
///////////////////////////////////


///////////////////////////////////
function HideImg(object) {
document.getElementById(object).style.visibility = 'hidden';
}
///////////////////////////////////
<!--
var message="Not to be copied without permission and credit.";

///////////////////////////////////
function clickIE4()
{
if (event.button==2)
	{
	alert(message);
	return false;
	}
}
//--------------------
function clickNS4(e)
{
if (document.layers||document.getElementById&&!document.all)
{
	if (e.which==2||e.which==3)
		{
		alert(message);
		return false;
		}
	}
}
//--------------------
if (document.layers)
	{
	document.captureEvents(Event.MOUSEDOWN);
	document.onmousedown=clickNS4;
	}
	else
	{
	if (document.all&&!document.getElementById)
		{
		document.onmousedown=clickIE4;
		}
	}

document.oncontextmenu=new Function("alert(message);return false")

function openWin(wName)
   {
	popWin = window.open('',wName,config='');
    return true;
   }
   
   var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0;
var tempY = 0;
function getMouseXY(e) {
if (IE) { // grab the x-y pos.s if browser is IE
tempX = event.clientX + document.body.scrollLeft;
tempY = event.clientY + document.body.scrollTop;
}
else {  // grab the x-y pos.s if browser is NS
tempX = e.pageX;
tempY = e.pageY;
}
if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}

return true;
}

/*
   var sIE = document.all?true:false;
if (!sIE) document.captureEvents(Event.MOUSEOVER)
document.onmouseover = getMouseMXY;
var mtempX = 0;
var mtempY = 0;
function getMouseMXY(e){
if (sIE) { // grab the x-y pos.s if browser is IE
mtempX = event.clientX + document.body.scrollLeft;
mtempY = event.clientY + document.body.scrollTop;
}
else {  // grab the x-y pos.s if browser is NS
mtempX = e.pageX;
mtempY = e.pageY;
}


}
*/

function gCheck(someX)
{
   if (someX==tempX){alert('gotcha');}
}


function pausecomp(millis)
{
date = new Date();
var curDate = null;

do { var curDate = new Date(); }
while(curDate-date < millis);
}

function getDim(el){
	for (var lx=0,ly=0;el!=null;
		lx+=el.offsetLeft,ly+=el.offsetTop,el=el.offsetParent);
	return {x:lx,y:ly}
}

var gstillhere = false;
function overLoop(obj,loopCount,endFunc){

/*
if (loopCount>46){alert(obj.stillhere);}
*/
if (obj.stillhere==false)
{}
else if (loopCount>50)
{
  eval(unescape(endFunc));
}
else
{
 
	loopCount=loopCount+2;
	window.setTimeout("overLoop("+obj.id+","+loopCount+",\'"+endFunc+"\')", 10);
}
}
//  End -->

//////////////////////////////////////////////////////////////////

function Objfader(obj,opacity) {
	/* helper function to deal specifically with images and the cross-browser differences in opacity handling */
	//var obj=theObject;
	if (obj.style.MozOpacity!=null) {
		/* Mozilla's pre-CSS3 proprietary rule */
		obj.style.MozOpacity = (opacity/100) - .001;
	} else if (obj.style.opacity!=null) {
		/* CSS3 compatible */
		obj.style.opacity = (opacity/100) - .001;
	} else if (obj.style.filter!=null) {
		/* IE's proprietary filter */
		obj.style.filter = "alpha(opacity="+opacity+")";
	}
}


var gZULoop=0;
var gZUDone=false;
var gZUTotalLoop=5;
var gMapDone=false;
var	gZoomCase=false;

function DummyFunction(theBoj){
  if (document.getElementById(theBoj))
  {
    someStr=document.getElementById(theBoj).width;
  }
  else
  {
    alert('else');
  someStr=theBoj.width;
  }
  
  alert(someStr);
}

function ZoomUp(obj,zULoop,startSizeWidth,startSizeHeight,startPosLeft,startPosTop,endSizeWidth,endSizeHeight,endPosLeft,endPosTop,startFade,endFade,endLayer,holdingDiv,thePage,endFunc)
		{
	

			gZUDone=false;
			if (zULoop<1){moveObjLayer(holdingDiv,endLayer); showImg(holdingDiv,'visible'); };

			
			zULoop+=1;

		  if (zULoop <= gZUTotalLoop)
		  	{

            loopF=zULoop/gZUTotalLoop;
            oneMinus=(1-(loopF));

            //setObjVis(obj.id,'hidden');
              
  			posLeft=oneMinus*startPosLeft+loopF*endPosLeft;
			posHeight=oneMinus*startPosTop+loopF*endPosTop;

			moveObjTo(holdingDiv,posLeft,posHeight);
			
		
			//obj.width=oneMinus*startSizeWidth+loopF*endSizeWidth;
			//obj.height=oneMinus*startSizeHeight+loopF*endSizeHeight;
			
			
			
			if (obj.width)
			{
				obj.width=oneMinus*startSizeWidth+loopF*endSizeWidth;
				obj.height=oneMinus*startSizeHeight+loopF*endSizeHeight;
			    someObjId=obj.id;
	  		}
	  		else
			{
			  document.getElementById(obj).width=oneMinus*startSizeWidth+loopF*endSizeWidth;
			  document.getElementById(obj).height=oneMinus*startSizeHeight+loopF*endSizeHeight;
			  someObjId=obj;
			}

			
			//document.getElementById(obj.id).style.width =oneMinus*startSizeWidth+loopF*endSizeWidth;


			//setObjVis(obj.id,'visible');

			/*
			fadeVal=oneMinus*startFade+loopF*endFade;
			Objfader(obj,fadeVal);
			*/
			

			//DummyFunction("T"+obj.id+"T");
			//window.setTimeout("DummyFunction('"+someObjId+"');");
			//alert(document.getElementById(someObjId).id+","+holdingDiv);

			window.setTimeout("ZoomUp('"+someObjId+"',"+zULoop+","+startSizeWidth+","+startSizeHeight+","+startPosLeft+","+startPosTop+","+endSizeWidth+","+endSizeHeight+","+endPosLeft+","+endPosTop+","+startFade+","+endFade+","+endLayer+",'"+document.getElementById(holdingDiv).id+"','"+thePage+"','"+endFunc+"')",5);
			

	  	    return false;
	  		}
		else
			{
	  		//clearTimeout(theTimer);

	  		zULoop=0;
	  		gZUDone=true;
	  		if (thePage!=""){window.location=thePage;}
	  		if (endFade<=1){showImg(holdingDiv,'hidden');}
			if (endFade>10){showImg(holdingDiv,'visible');}
			eval(endFunc);

			//moveObjLayer(holdingDiv,endLayer);
			
	  		return true;
			}

  		}
  		

//////////////////////////////////////////////////////////////////

function somebits(){
var lloop=0;

   if (j!=0){
     lastj=j-1;}
   else
   {lastj=p-1;}

   document.images.SlideShow1.src = galleryImages[lastj].src;
   //document.images.SlideShow1.title = galleryImages[lastj].title;
   document.images.SlideShow2.src = galleryImages[j].src;

   previousSlideShow=SlideShow1;
   currentSlideShow=SlideShow2;

   j = j + 1
   if (j > (p-1)) j=0
   t = setTimeout('runSlideShow()', slideShowSpeed);
}

//End Slide show

gText1Left=125;
gText1Top=120;

gText2Left=395;
gText2Top=120;

gPicPane1Top=170;
gPicPane1Left=125;

gPicPane1Top=120;
gPicPane1Left=395;

gPicPanelWidth=530;
gPicPanelHeight=250;

gPicPanelWidth=255;
gPicPanelHeight=325;

gcloseCrossImgTop=120;
gcloseCrossImgLeft=720;

gcloseCrossImgWideLeft=720;
gcloseCrossImgStandardLeft=650;



gmapImgTop=120;
gmapImgLeft=395;

gmapCloseCrossImgTop=120;
gmapCloseCrossImgLeft=650;

if (typeof evals1 != "undefined"){if (evals1=='78.86.117.100'){gDoSmallPics=true;}}
else{gDoSmallPics = false;}

if (gDoSmallPics==false){
		gcloseCrossImgWideLeft=gcloseCrossImgStandardLeft;
	 }



//////////////////////////////////////////////////////////////////////////////////////

function CloseTheMap(thePage)
{
	ZoomUp(mapCloseCrossImg,0,12,12,gmapCloseCrossImgLeft,gmapCloseCrossImgTop,12,12,gmapCloseCrossImgLeft,gmapCloseCrossImgTop,0,0,501,'mapCloseCrossDiv','');
	showImg('mapCloseCrossDiv','hidden');
	ZoomUp(mapImg,0,255,325,gmapImgLeft,gmapImgTop,200,2,145,495,100,0,500,'mapDiv',thePage);
	gMapDone=false;
}

function OpenCase(){
	

		showImg('textDiv1','hidden');		
		//showImg('gridtable','hidden');
		//showImg('childthumbs','visible');
		//alert(gCurrentCaseObj.width);
		ZoomUp(gCurrentCaseObj,0,gCurrentCaseObj.width,gCurrentCaseObj.height,gCurrentStartCaseLeft,gCurrentCaseStartTop,gPicPanelWidth,gPicPanelHeight,gPicPane1Left,gPicPane1Top,100,100,200,gCurrentCaseDiv,'','');
		ZoomUp(closeCrossImg,0,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,0,100,200,'closeBoxDiv','','');
		ZoomUp(gCurrentTextObj,0,255,325,gText1Left,gText1Top,255,325,gText1Left,gText1Top,0,100,200,gCurrentTextDiv,'','');


		
		if (gDoSmallPics){
			if ( typeof( window[ 'gCurrentChildThumbsObj' ] ) != "undefined" ) {
						setTimeout("ZoomUp(gCurrentChildThumbsObj,0,70,275,500,120,70,275,650,120,0,100,100,gCurrentChildThumbsDiv,'','')",450);
						}
		}
		
		
		gZoomCase=true;
}

function HideCurrentCase(startLeft,startTop){  gCurrentCaseObj.width=75;  gCurrentCaseObj.height=95;  moveObjTo(gCurrentCaseDiv,startLeft,startTop);}

function CloseCase(){
			showImg('textDiv1','visible');
			//showImg('gridtable','visible');
			if(gDoSmallPics) {
			if ( typeof( window[ 'gCurrentChildThumbsObj' ] ) != "undefined" ) {
				ZoomUp(gCurrentChildThumbsDiv,0,70,275,650,120,70,275,650,120,20,0,200,gCurrentChildThumbsDiv,'','');
				}
			}
			
			ZoomUp(closeCrossImg,0,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,100,0,200,'closeBoxDiv','','');
			ZoomUp(gCurrentCaseObj,0,gCurrentCaseObj.width,gCurrentCaseObj.height,gPicPane1Left,gPicPane1Top,75,95,gCurrentStartCaseLeft,gCurrentCaseStartTop,100,100,200,gCurrentCaseDiv,'','showImg(holdingDiv,"hidden");');
			ZoomUp(gCurrentTextObj,0,255,325,gText1Left,gText1Top,255,325,gText1Left,gText1Top,100,0,20,gCurrentTextDiv,'','');
	
			//showImg(gCurrentChildThumbsDiv,'hidden');
		
			

			gZoomCase=false;
   			}

function CloseCaseConstantSize(){
  			showImg('textDiv1','visible');
			ZoomUp(closeCrossImg,0,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,12,12,gcloseCrossImgLeft,gcloseCrossImgTop,100,0,200,'closeBoxDiv','','');
			ZoomUp(gCurrentCaseObj,0,gCurrentCaseObj.width,gCurrentCaseObj.height,gPicPane1Left,gPicPane1Top,255,325,gPicPane1Left,gPicPane1Top,100,100,20,gCurrentCaseDiv,'','');
			ZoomUp(gCurrentTextObj,0,255,325,gText1Left,gText1Top,255,325,gText1Left,gText1Top,100,0,20,gCurrentTextDiv,'','');
			gZoomCase=false;
   			}

/////////////////////////////////////////////////////////////////////////////////////

var aDOM = 0, ieDOM = 0, nsDOM = 0
var stdDOM = document.getElementById;
if (stdDOM) aDOM = 1; else {
  ieDOM = document.all;
  if (ieDOM) aDOM = 1; else {
    var nsDOM = (
      (navigator.appName.indexOf('Netscape') != -1)
      && (parseInt(navigator.appVersion) ==4));
    if (nsDOM) aDOM = 1;
  }
  //if ((aDOM == 0) and (ieDOM == 0) and (nsDOM == 0)){alert('nope');}
}
function xDOM(objectId, withStyle) {
var st = ''; if (withStyle) st = '.style';
if (stdDOM)
  return (eval('document.getElementById(objectId)'+st));
if (ieDOM) return (eval('document.all[objectId]'+st));
if (nsDOM) return (document.layers[objectId]);
}

//if (document.getElementById || document.all || document.layers)
//if (document.getElementById && document.createElement)


function setObjVis(objectID,vis) {var objs = xDOM(objectID,1); objs.visibility = vis;}
function setObjDisplay(objectID,dis) {var objs = xDOM(objectID,1); objs.display = dis;}
function toggleObjVis(objectID) {var objs = xDOM(objectID,1); var vis = objs.visibility; objs.visibility = (vis == "visible" || vis == "show") ? 'hidden' : 'visible';}
function moveObjTo(objectID,x,y) {var objs = xDOM(objectID,1); objs.left = x; objs.top = y;}
function moveObjBy(objectID,x,y) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1); if (obj.offsetLeft != null) {var l = obj.offsetLeft; var t = obj.offsetTop; objs.left = l+x; objs.top = t+y;} else if (objs.pixelLeft != null) {objs.pixelLeft += x; objs.pixelTop += y;} else obj.moveBy(x,y);}
function moveObjLayer(objectID,z) {var objs = xDOM(objectID,1); objs.zIndex = z;}

function AllocObj(theObjName){
 objs=xDOM(theObjName,0);
 return objs;
}

function ScrollPos(id,val){if (document.getElementById(id))	{//alert('id');	document.getElementById(id).scrollTop=document.getElementById(id).scrollTop+val;	document.body.id.scrollTop=document.body.id.scrollTop+val;	}else if (document.body)	{	//alert('bd');	document.body.id.scrollTop=document.body.id.scrollTop+val;	}else	{	window.pageYOffset = window.pageYOffset+val;	}	}


/** This is high-level function. * It must react to delta being more/less than zero. */function handle(delta) {
		//alert('delta');        if (delta < 0)		ScrollPos('artarticle',40);        else		ScrollPos('artarticle',-40);}/** Event handler for mouse wheel event. */function wheel(event){        var delta = 0;
                if (!event) /* For IE. */                event = window.event;        if (event.wheelDelta) { /* IE/Opera. */                delta = event.wheelDelta/120;                /** In Opera 9, delta differs in sign as compared to IE.                 */                if (window.opera)                        delta = -delta;        } else if (event.detail) { /** Mozilla case. */                /** In Mozilla, sign of delta is different than in IE.                 * Also, delta is multiple of 3.                 */                delta = -event.detail/3;        }        /** If delta is nonzero, handle it.         * Basically, delta is now positive if wheel was scrolled up,         * and negative, if wheel was scrolled down.         */        if (delta)                handle(delta);        /** Prevent default actions caused by mouse wheel.         * That might be ugly, but we handle scrolls somehow         * anyway, so don't bother here..         */        if (event.preventDefault)                event.preventDefault();	event.returnValue = false;}/* Initialization code. */
/*if (window.addEventListener)
	{	window.addEventListener('DOMMouseScroll', wheel, false);
		}window.onmousewheel = document.onmousewheel = wheel;
*/

function ExpandDown(obj,inc,end){
	//obj.style.height = inc + 'px';
	pureheight = eval(obj.style.height.split('px')[0]);
	if (pureheight < end){
		obj.style.height = pureheight + inc;
		pureheight = eval(obj.style.height.split('px')[0]);
	
		if (pureheight < end){window.setTimeout(function(){ExpandDown(obj,inc,end)},5);}		
	}
}
