﻿/********************************************************************************
Copyright (C) 1999 Thomas Brattli
This script is made by and copyrighted to Thomas Brattli at www.bratta.com
Visit for more great scripts. This may be used freely as long as this msg is intact!
I will also appriciate any links you could give me.
********************************************************************************/
function checkBrowser()
{
	this.ver=navigator.appVersion
	this.dom=document.getElementById?1:0
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
	this.ie4=(document.all && !this.dom)?1:0;
	this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
	return this
}
bw=new checkBrowser();

function TBMakeScrollObj(obj,nest,height,theSpeed){
    nest=(!nest) ? '':'document.'+nest+'.';
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  	this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
	this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
	this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
	this.up=TBScrollUp;
	this.down=TBScrollGoDown;
	this.moveIt=TBScrollMoveIt; 
	this.x; this.y; this.obj = obj + "Object"
    eval(this.obj + "=this")
    this.loop; this.loaded;
    this.contHeight = height;
    this.speed = (theSpeed) ? theSpeed : 50;
    return this
}

function TBScrollMoveIt(x,y){
	this.x=x;this.y=y;this.css.left=this.x;this.css.top=this.y
}

function TBScrollGoDown(move){
	if(this.y>-this.scrollHeight+this.contHeight){
		this.moveIt(0,this.y-move)
			if(this.loop) setTimeout(this.obj+".down("+move+")",this.speed)
	}
}

function TBScrollUp(move){
	if(this.y<0){
		this.moveIt(0,this.y-move)
		if(this.loop) setTimeout(this.obj+".up("+move+")",this.speed)
	}
}

function TBScroll(item,amount){
	if(document["SC "+item] && document["SC "+item].loaded){
		document["SC "+item].loop=true;
		if(amount>0) document["SC "+item].down(amount)
		else document["SC "+item].up(amount)
	}
}

function TBNoScroll(item){
	document["SC "+item].loop=false
}

function TBScrollInit(text,item,height,speed){
	document["SC "+item]=new TBMakeScrollObj(text,item,height,speed);
	document["SC "+item].moveIt(0,0);
	document["SC "+item].loaded=true;
}

function FWFindLayer(lay)
{
	if (lay)
	{
		if (document.layers) 
			return document[lay];
		else if (document.getElementById)
			return document.getElementById(lay).style;
		else if (document.all) 
			return document.all[lay].style;
	}
	return null;
}

function FWShowHideLayer(lay, vis, ch)
{
	if (ch && lay != "") 
	{
		vis = (vis) ? "visible" : "hidden";
		var obj = FWFindLayer(lay);
		if (obj && obj.visibility != vis) 
			obj.visibility = vis; 
	}
}

var fwIsNetscape = navigator.appName == 'Netscape';

fwLoad = new Object;
function FWLoad(image)
{
	if (!document.images)
		return null;
	if (!fwLoad[image])
	{
		fwLoad[image]=new Image;
		fwLoad[image].src=image;
	}
	return fwLoad[image].src;
}

fwRestore = new Object;
function FWRestore(msg,chain) 
{
	if (document.images) 
		for (var i in fwRestore)
		{
			var r = fwRestore[i];
			if (r && (!chain || r.chain==chain) && r.msg==msg)
			{
				r.src = FWLoad(r.old);
				fwRestore[i]=null;
			}
		}
}

function FWLSwap(name,msg,newImg,layer,chain,trigger) 
{
	var r = fwRestore[name];
	if (document.images && (!r || r.msg < msg)) 
	{
		var uselayers = fwIsNetscape && document.layers && layer != '';
		var hld = (uselayers) ? document.layers[layer].document : document;
		var im = hld[name];
		if (!im.old) im.old = im.src;
		im.msg = msg;
		im.chain = chain;
		im.trigger = trigger;
		if (newImg) im.src = FWLoad(newImg);
		fwRestore[name] = im;
	}
}

function FWCallHit(func,targNum,msg)
{
	if(func)
		for (var i in func)
			func[i](targNum,msg);
}
function FW_Hit(frameset,chain,targNum,msg)
{
	if (frameset && frameset.length)
		for (var i=0 ; i <frameset.length ; i++)
		{
			FW_Hit(frameset[i].frames,chain,targNum,msg);
			FWCallHit(top["FT_"+chain],targNum,msg);
			FWCallHit(frameset[i].window["FT_"+chain],targNum,msg);
		}
	else
		FWCallHit(window["FT_"+chain],targNum,msg);
}

fwHit = new Object;
function FWSlave(frameset,chain,targNum,msg)
{
	if (msg==1) fwHit[chain]=targNum;
	FW_Hit(frameset,chain,targNum,1);
}

function FWSRestore(frameset,chain)
{
	var hit=fwHit[chain];
	if (hit)
		FW_Hit(frameset,chain,hit,0);
	fwHit[chain]=null;
}
function FWPreload(){FWLoad("Resources/index3a.gif");FWLoad("Resources/index3.gif");FWLoad("Resources/item3ba.gif");FWLoad("Resources/item3b.gif");}
