// JavaScript Document
//this page contains generic scripts for use thrughout the site

//Browser / platform detection
//###################################################

var agt=navigator.userAgent.toLowerCase();
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);

var NS=((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1));
var NS4=(NS && (is_major == 4));
var NS6=(NS&&(is_major == 5));
var NS6up=(NS&&(is_major >= 5));

var Opera=(agt.toLowerCase().indexOf("opera")!=-1);
var OperaDOM=(Opera && (agt.toLowerCase().indexOf("msie 5.5") !=-1))

var mozFire=(NS && agt.toLowerCase().indexOf('firebird')>-1);

var IE=((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var IE3    = (IE && (is_major < 4));
var IE4 = (IE && (is_major == 4) && (agt.indexOf("msie 4")!=-1) );
var IE4up  = (IE && (is_major >= 4));
var IE5 = (IE && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1) );
var IE55 = (IE && (is_major == 4) && (agt.indexOf("msie 5.5") !=-1));
var IE5up = (IE && !IE3 && !IE4);
var IE5_5up =(IE && !IE3 && !IE4 && !IE5);
var IE6 = (IE && (is_major == 4) && (agt.indexOf("msie 6.")!=-1) );
var IE6up = (IE && !IE3 && !IE4 && !IE5 && !IE55);

var ver5 = (IE5 || NS6);
var Netscape = (navigator.appName.toLowerCase().indexOf("netscape")!=-1);
var Mac = (navigator.appVersion.toLowerCase().indexOf("macintosh")!=-1);
var Win = (navigator.appVersion.toLowerCase().indexOf("windows")!=-1);
var MacIE4 = (IE4 && (Mac) && (navigator.appVersion.indexOf("4.5")>0));
var MacIE5 = ((Mac) && (navigator.appVersion.indexOf("5")>0));
var WinIE4 = (IE4 && Win && !(IE55 || IE6));
var WinIE5 = (IE5 && Win);
var WinIE55 = (IE55 && Win);
var WinIE6 = (IE6 && Win);




//##########################################


// function getObj - used to get a handle on the object
function getObj(name)
{
	if (Mac && (!NS4)) {
		return document.all(name);
	}
	else if (NS6up || IE5_5up)
	{
		return document.getElementById(name);
	}
	else if (NS4)
	{
		return document.layers[name];
	}
	
	else if (document.all)
	{
		return document.all[name];
	}	
	else 
	{
		return false;
	}
}
// ################################# load images - JS generated by Fireworks
/* Functions that handle preload. */
function MM_preloadImages() 
{ //v3.0
 var d=document; 
 	if(d.images)
	{ 
		if(!d.MM_p) d.MM_p=new Array();
	 	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
	 	for(i=0; i<a.length; i++) 
		{
   			if (a[i].indexOf("#")!=0)
			{ 
   				d.MM_p[j]=new Image; 
				d.MM_p[j++].src=a[i];
			}
		}
	}
}
// #######################################


function swapImg(sEvent, imgName) {
	var ext = '.gif';
	var o, src, newSrc;
	o = getObj(imgName);
		
	if ((!IE5) && (!Mac)) 
	{
		if (sEvent=='over')  
		{
			//check to see if it is NOT a down or over image before continuing
			if ((o.src.indexOf('_over') ==-1 ) && (o.src.indexOf('_down') ==-1))
			{ 
				src = o.src.split('.gif', 1);
				newSrc = src + '_over' + ext;
				o.src=newSrc;
			}
		} 
		else if (sEvent=='out') 
		{
			//check whether the image is a down image or an over image
			if ((o.src.indexOf('_over') >0 ) && (o.src.indexOf('_down') ==-1))  //over image
			{
				src = o.src.split('_over', 1);
				newSrc = src + ext;
				o.src=newSrc;
			} //else don't need to do anything as the image has already been swapped back to the original
		} 
		else if (sEvent=='down') 
		{
			//check whether the image is already 'down' or 'over' 
			if ((o.src.indexOf('_over') ==-1) && (o.src.indexOf('_down') ==-1)) //neither over nor down (should never happen)
			{
				src = o.src.split('.gif', 1);
				newSrc = src + '_down' + ext;
				o.src=newSrc;
			} 
			else if ((o.src.indexOf('_over') >0) && (o.src.indexOf('_down') ==-1)) //over image
			{ //must be plain image
				newSrc = o.src
				resetImg();				
				newSrc=newSrc.replace('_over', '_down');
				o.src=newSrc;				
			}		
			//else must already be a down image so do nothing	
		} 
	} else if (Mac) 
	{
		if (sEvent =='over')  
		{
			src=o.src.split('.gif',1);
			escSrc= escape(src)
			comma=escSrc.indexOf('%2C');
			if (comma>0) 
			{
				escSrc=escSrc.substring(0,comma);
			} 	
			src=unescape(escSrc);
			newSrc = src + '_over' + ext;
			o.src=newSrc;
		}  else if (sEvent == 'out')
		{
			if ((o.src.indexOf('_over') >0) && (o.src.indexOf('_down') ==-1)) //over image
			{
				src=o.src.split('_over',1);
				escSrc= escape(src)
				comma=escSrc.indexOf('%2C');
				if (comma>0) 
				{
					escSrc=escSrc.substring(0,comma);
				} 	
				src=unescape(escSrc);
				newSrc = src + ext;
				o.src=newSrc;
			}	//else don't need to do anything		
		}
		else if (sEvent == 'down')
		{
			if ((o.src.indexOf('_over') >0) && (o.src.indexOf('_down') ==-1)) //over image
			{ //must be plain image
				src=o.src.split('_over',1);
				resetImg();
				escSrc= escape(src)
				comma=escSrc.indexOf('%2C');
				if (comma>0) 
				{
					escSrc=escSrc.substring(0,comma);
				} 	
				src=unescape(escSrc);
				newSrc = src + '_down' + ext;
				o.src=newSrc;
			}		
			//else must already be a down image so do nothing
		}
	}
}

function resetImg() {
	var d=document; 
 	if(d.images)
	{
		for(i=0; i<d.images.length; i++) 
		{
			if(d.images[i].src.indexOf('_down') > 0)
			{
				var src=d.images[i].src
				var newSrc=src.replace('_down', '');
				var iName=d.images[i].name;
				var o = getObj(iName);
				o.src=newSrc;
			}
		}
	}
}

function checkSwearing(fld) {
	var words=new Array();
	words[0]="fuck";
	words[1]="cunt";
	words[2]="bastard";
	words[3]="bitch";
	words[4]="wanker";
	words[5]="shit";
	var txt=fld.value;

	for(i=0;i<=words.length;i++) {
		if (txt.indexOf(words[i])!=-1) {
			return false;
		}
	}
	//else return true if no swear words found
	return true;
}