/////////////////////////////////////////////////////////////
// System Level JavaScripts for shea.co.uk (c) 2004 R.Shea //
/////////////////////////////////////////////////////////////

function ChangerWin(type){
	// Hide
	if (type == 0){
		this.hide('BGChanger'); this.hide('BGChangerTop');
		this.show('Customize');
		}
	// Show
	else {
		this.show('BGChanger'); this.show('BGChangerTop');
		this.hide('Customize');
	}
}
function DataWin(type){
	if (type == 'hide'){
		this.hide('RSDiv'); this.hide('RSFrame'); this.hide('Loading'); this.hide('LoadingText');
	}
	else {
		this.show('RSDiv'); this.show('RSFrame'); this.show('Loading'); this.show('LoadingText');
	}
}
function ChangeIMG(IMG,event){
	BGChange(IMG);
	this.hide('RSDiv');
	this.hide('Loading'); this.hide('LoadingText');
	this.hide('RSFrame');
	// Now set cookie //
	createCookie("williamorbit.com",IMG,30)
}
function ChangeLayerBG(LayName,BG){
	if (document.getElementById){
		document.getElementById(LayName).style.background=''+BG+''
	}
	else if (document.all){
		Lay=document.all(LayName).style.background=''+BG+''
	}
	else if (document.layers){
		Lay=document.layers[LayName].background=''+BG+''
	}
}

function BGChange(IMG){
	LoadedStars=0;
	this.show('BGLoader');
	LoadingBG(); BGFront(IMG);
}
function BGFront(IMG){
	BGD=new Image(); BGD.src='images/bg/'+IMG+'D.jpg';
	if (BGD.complete){BGBack(IMG);}
	else {BGD.onload=function(e){BGBack(IMG);}}
	}
function BGBack(IMG){
	BGD=new Image(); BGD.src='images/bg/'+IMG+'.jpg';
	if (BGD.complete){BGswap(IMG);}
	else {BGD.onload=function(e){BGswap(IMG);}}
	}
function BGswap(IMG){


	this.hide('BGLoader');
	WriteToLayer('BGLoad','');
	// Add 1px to bordered layers
	ChangeLayerBG('BGChanger','url(images/bg/'+IMG+'d.jpg) no-repeat -15px -505px')
	ChangeLayerBG('TopBar','url(images/bg/'+IMG+'d.jpg) no-repeat 0px 0px')
	document.body.style.background='url(images/bg/'+IMG+'.jpg) no-repeat 0px 0px'
	ChangeLayerBG('slideMenucont','url(images/bg/'+IMG+'d.jpg) no-repeat -15px -130px')	

	window.frames['RSFrame'].location.reload();
	CurrIMG = IMG;
	
	this.show('RSDiv');
	this.show('Loading'); this.show('LoadingText');
	this.show('RSFrame');

}
function LoadingBG(){
	Text = "Loading Background Image ";
	WriteToLayer('BGLoad',Text);
	StartPreloader('BGLoad',Text);
}

function FindWin(WinName){
	eval("parent.document."+WinName.name+".Focused()")
	}
/////////////////////////////////////////////////////////////
function QueryString() {
  var oQuery = new Object();
  var sSearch = document.location.search.substring(1);
  if (sSearch.length > 0) {
    var asKeyValues = sSearch.split('&');
    var asKeyValue = '';
    for (var i = 0; i < asKeyValues.length; i++) {
      asKeyValue = asKeyValues[i].split('=');
      oQuery[asKeyValue[0]] = asKeyValue[1];
    }
 } return oQuery;
}
var myQueryStuff = new QueryString();

function showRSDiv(){show('RSDiv')}
function hideRSDiv(){hide('RSDiv')}

/////////////////////////////////////////////////////////////
// Layer functions
/////////////////////////////////////////////////////////////

if (document.getElementById){
   var doc = 'document.', vis = '.style.visibility', pos = '.style.top';;
}
else if (document.all) {
   var doc = 'document.all.', vis = '.style.visibility', pos = '.style.top';;
}
else if (document.layers){
	var doc = 'document.document.', vis = '.visibility', pos = '.top';;
}
function show(object) {
	if (document.getElementById){
		eval(doc + "getElementById('"+object+"')" + vis + ' = "visible"');

	}
	else if (document.layers || document.all){
		eval(doc + object + vis + ' = "visible"');
	}
}

function hide(object) {
	if (document.getElementById){
		eval(doc + "getElementById('"+object+"')" + vis + ' = "hidden"');
	}
	else if (document.layers || document.all){
		eval(doc + object + vis + ' = "hidden"');
	}
}

function WriteToLayer(object,content){
	if (document.getElementById){
		document.getElementById(object).innerHTML = "&nbsp;" + content + "&nbsp;";
	}
	else if (document.all){
		document.all(object).innerHTML = "&nbsp;" + content + "&nbsp;";
	}
	else if (document.layers) {
		document.layers[object].document.open();
		document.layers[object].document.write("&nbsp;"+content+"&nbsp;");
		document.layers[object].document.close();
	}
}

/////////////////////////////////////////////////////////////
// Browser Detection for shea.co.uk
// Written by Richard Shea
/////////////////////////////////////////////////////////////

var Plat='Unknown'; var BrowserName='Unknown'; var Browser=0; var CoolBrowser=false;
JSFS = true; // JavaScript & FSCommands available within Flash on browser.
if (navigator.appVersion.indexOf("NT") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("NT 5.1") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("98") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("95") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("16") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("3.1") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("2000") != -1){Plat='PC'}
if (navigator.appVersion.indexOf("68K") != -1){Plat='Mac'}
if (navigator.appVersion.indexOf("68000") != -1){Plat='Mac'}
if (navigator.appVersion.indexOf("PPC") != -1){Plat='Mac'}
if (navigator.appVersion.indexOf("PowerPC") != -1){Plat='Mac'}
if (navigator.appVersion.indexOf("Mac") != -1){Plat='Mac'}
Bver = parseFloat(navigator.appVersion);Bname = navigator.appName;
if (Bname.indexOf("Netscape") != -1){var BrowserName = "NS";}
else if (Bname.indexOf("Microsoft") != -1){var BrowserName = "MS";}
else {var Browser = Bname;}

if (Bname.indexOf("Netscape") != -1 && Bver >= 3.00){var Browser=2; BrowserName="NS2";}
if (Bname.indexOf("Netscape") != -1 && Bver >= 3.00){var Browser=3; BrowserName="NS3";}
if (Bname.indexOf("Netscape") != -1 && Bver >= 4.00){var Browser=4; BrowserName="NS4";}
if (Bname.indexOf("Netscape") != -1 && Bver >= 4.50){var Browser=4; BrowserName="NS4";}
if (Bname.indexOf("Netscape") != -1 && Bver >= 6.00){var Browser=6; BrowserName="NS6";}
if (Bname.indexOf("Microsoft") != -1 && Bver >= 2.00){var Browser=2; BrowserName="MS2";}
if (Bname.indexOf("Microsoft") != -1 && Bver >= 3.00){var Browser=2; BrowserName="MS3";}
if (Bname.indexOf("Microsoft") != -1 && Bver >= 3.02){var Browser=3; BrowserName="MS3";}
if (Bname.indexOf("Microsoft") != -1 && Bver >= 4.00){var Browser=4; BrowserName="MS4";}
if (Bname.indexOf("Microsoft") != -1 && Bver >= 4.01){var Browser=4; BrowserName="MS4";}
if (Plat == 'Mac' && BrowserName == "MS4"){} // typical Mac is crap
if (Bname.indexOf("Microsoft") != -1 && navigator.appVersion.indexOf("5.") != -1){var Browser=5; BrowserName="MS5";}
if (Bname.indexOf("Microsoft") != -1 && navigator.appVersion.indexOf("5.5") != -1){var Browser=5; BrowserName="MS5.5";}
if (Bname.indexOf("Microsoft") != -1 && navigator.appVersion.indexOf("6.") != -1){var Browser=6; BrowserName = "MS6";}
// There is a crap version of IE3 going around which reports itself as IE2(!)
if ((BrowserName == "MS2" && navigator.appVersion.indexOf('MSIE 3') != -1)){var Browser=3; BrowserName="MS3";}

if (BrowserName == "MS5.5"){CoolBrowser=true;}
if (BrowserName == "MS6"){CoolBrowser=true;}

/////////////////////////////////////////////////////////////
//// Pageloader function
function LeavePage(Text){
	HTML = "<span class='loadingtext'>"
	HTML += Text
	HTML += "&nbsp;<img src='images/loading.gif' border='0' align='absbottom'>&nbsp;";
	HTML += "</span>"
	WriteToLayer('LoadingText',HTML)
	show('LoadingText');
	show('Loading');
}
function StartPreloader(LayerName,Text){
	HTML = "<span class='loadingtext'>"
	HTML += Text
	HTML += "&nbsp;<img src='images/loading.gif' border='0' align='absbottom'>&nbsp;&nbsp;&nbsp;";
	HTML += "</span>"
	WriteToLayer(LayerName,HTML)
}
Text=""

//// ZOOMLINK /////
/* Zooming link script by Paul Anderson, copyright 2001 CNET Builder.com.
   May be freely used with attribution. Not for resale. All rights reserved.
   Make a link zoom open by adding the event handler

   onclick="zoomBox(event,this);return false"

   To zoom into a new, positioned window add width, height, left, and top

   onclick="zoomBox(event,this,640,480,100,50);return false"
   */

var WW,WH,maxW,maxH,fromX,fromY,toX,toY,adjX,adjY,zBox,zStep=0,EvRun,func,zNew;

function zoomBox(EvRun,evt,func,maxw,maxh,tox,toy,WW,WH) {
if (EvRun == 'hide'){eval(func);}
Ww=WW?WW:0;  Wh=WH?WH:0;
if (arguments.length > 2) zNew=1;
scrollH=(window.pageYOffset!=null)?window.pageYOffset:document.body.scrollTop;
maxW=maxw?maxw:window.innerWidth?innerWidth:document.body.clientWidth;
maxH=maxh?maxh:window.innerHeight?innerHeight:document.body.clientHeight;
toX=tox?tox:0;
toY=(toy?toy:0)+scrollH;
fromX=evt.pageX?evt.pageX:evt.clientX;
fromX=fromX+CurrPos
fromY=(evt.pageY?evt.pageY:evt.clientY)+(document.all?scrollH:0);
adjX=toX+evt.screenX-fromX;
adjY=toY+evt.screenY-fromY;
if (document.createElement && document.body.appendChild && !zBox) {
	zBox=document.createElement("div");
	zBox.style.position="absolute";
	document.body.appendChild(zBox);
} else if (document.all && !zBox) {
	document.all[document.all.length-1].outerHTML+='<div id="zBoxDiv" style="position:absolute"></div>';
	zBox=document.all.zBoxDiv;
} else if (document.layers && !zBox) {
	zBox=new Layer(maxW);
	zBox.style=zBox;
	}
funcpostrun=func;
EVpostrun=EvRun;
doZoom();
}

function doZoom() {
zStep+=1;
zPct=(10-zStep)/10
if (document.layers) {
	zBox.moveTo(toX+zPct*(fromX-toX),toY+zPct*(fromY-toY));
	zBox.document.open();
	zBox.document.write("<table width='"+maxW*(1-zPct)+"' height="+maxH*(1-zPct)+" border=2 cellspacing=0><tr><td></td></tr></table>");
	zBox.document.close();
	} else {
	zBox.style.border="1px solid #FFDCB3";
	zBox.style.left=toX+zPct*(fromX-toX);
	zBox.style.top=toY+zPct*(fromY-toY);
	zBox.style.width=maxW*(1-zPct);
	zBox.style.height=maxH*(1-zPct);
	}
zBox.style.visibility="visible";
if (zStep < 10) setTimeout("doZoom("+fromX+","+fromY+","+toX+","+toY+")",30);
else {
	setTimeout("zBox.style.visibility='hidden'",1000)
	zStep=0;
	if (EVpostrun=='show'){eval(funcpostrun);}
	}
}


/////////////////////////////////////////////////////////////

function OpenURL(URL,width,height,WinName){
	var x = 800-10, y = 600-10;
	if (document.all || document.layers) {
	        x= (screen.width - width) / 2 - 10;
	        y= (screen.height - height) / 2 - 15;
	}
	if (document.getElementById){
	        x= (screen.availWidth - width) / 2 - 10;
	        y= (screen.availHeight - height) / 2 - 15;
	
	}
	if (WinName == null || WinName == ""){WinName="popup"}
	var popWin = window.open(URL,WinName,'height='+height+',width='+width+',top='+y+',left='+x+',screenY='+y+',screenX='+x+',alwaysLowered=0,alwaysRaised=0,channelmode=0,dependent=0,directories=0,fullscreen=0,hotkeys=1,location=0,menubar=0,resizable=1,scrollbars=1,status=0,titlebar=0,toolbar=0,z-lock=0')
}



/////////////////////////////////////////////////////////////

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}