// JavaScript Document
MM_preloadImages('../images/nav/home-over.gif','../images/nav/about-over.gif','../images/nav/services-over.gif','../images/nav/about-over.gif','images/services/nav-off.gif','images/services/nav-over.gif','images/services/nav-on.gif');

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}

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 MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_nbGroup(event, grpName) { //v6.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
    if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
      img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
      if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
      nbArr[nbArr.length] = img;
      for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
        if (!img.MM_up) img.MM_up = img.src;
        img.src = img.MM_dn = args[i+1];
        nbArr[nbArr.length] = img;
    } }
  } else if (event == "over") {
    document.MM_nbOver = nbArr = new Array();
    for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up);
      nbArr[nbArr.length] = img;
    }
  } else if (event == "out" ) {
    for (i=0; i < document.MM_nbOver.length; i++) {
      img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
    nbArr = document[grpName];
    if (nbArr)
      for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
    document[grpName] = nbArr = new Array();
    for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
      if (!img.MM_up) img.MM_up = img.src;
      img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up;
      nbArr[nbArr.length] = img;
  } }
}


//// INSERT FLASH ELEMENT OR ALTERATIVE IF USER HASN'T THE CORRECT PLAYER////
function setCookie(name, value, expires, path, domain, secure) {
	var curCookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "");
	//alert (curCookie);
	document.cookie = curCookie;
}

// name - name of the desired cookie
// * return string containing value of specified cookie or null if cookie does not exist
function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

// name - name of the cookie
// [path] - path of the cookie (must be same as path used to create cookie)
// [domain] - domain of the cookie (must be same as domain used to create cookie)
// * path and domain default if assigned null or omitted if no explicit argument proceeds
function deleteCookie(name, path, domain) {
  if (getCookie(name)) {
    document.cookie = name + "=" + 
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function PassFlash(img){
    window.document.movie.SetVariable("image",img);
}
function displayFlashPortfolio(movieName,width, height, altImage){
	str = '<object type="application/x-shockwave-flash" data="' + movieName + '" width="' + width + '" height="' + height + '" name="movie" swliveconnect="true" id="movie">';
	str += '<param name="movie" value="' + movieName + '" />';
	str += '<param name="wmode" value="transparent" />';
	str += '<img src="' + altImage + '" alt="" />';
	str += '</object>';	
    document.write(str);
}

function displayFlashContent(swf,width,height,alttxt,urllink,params) {
//alert (swf+"  "+width+"  "+height+"  "+params+"  "+altimage+"  "+urllink+" );
	params.version = parseInt(params.version.substring(params.version.indexOf(".")-1));
	// does user have minimum player to view swf 
	if(myFlashPlayer<params.version){
			document.write(alttxt);
	}else{
		if(!params) params = new Object();
		if(!params.version) params.version = 6;
		// parse parameters
		var objectParams = "";
		var embedParams = "";
		for (var i in params) {
			objectParams += "<param name="+i+" value=\""+params[i]+"\">\n";
			embedParams += i+"="+params[i];
		}
		// write the object
		str = '<object type="application/x-shockwave-flash" data="' + swf + '" width="' + width + '" height="' + height + '">';
		str += '<param name="movie" value="' + swf + '" />';
		str += '<param name="wmode" value="transparent" />';
		str += '</object>';
		document.write(str);
	}
}

function insertJS(URL) {
	document.write("<script src=\""+URL+"\" language=\"javascript\" type=\"text/javascript\"></script>");
}

function showNoScript() {
	document.write("This browser is not suitable to view this website.");
}	
function GoGetFlash(){
//alert ("delete");
	deleteCookie("myFlashPlayer");
	window.open("http://www.macromedia.com/go/getflashplayer");
}



//// CHECK COOKIE FOR FLASH PLAYER ////

function Check4FlashCookie(){
	myFlashPlayer = getCookie('myFlashPlayer');
	if (myFlashPlayer == null){
		Sniff4FlashPlayer();
		setCookie('myFlashPlayer', myFlashPlayer);
		//alert("set Cookie");
	}
	//alert("Player="+myFlashPlayer);
}

function Sniff4FlashPlayer(){
	// INTIALISE VARIABLES //
	maxFlashPlayer="20";//10,0,0,0
	myFlashPlayer=0;
	//// Find Flash Player Version! ////
	if(!supportedBrowser){myFlashPlayer=0;}
	if(NNpass || macIEpass){Flash_checkForPlugIn();}
	if(winIEpass){myFlashPlayer = (Flash_checkForActiveX());}
}

////  BROWSER DETECTION  ////

// Is this a Mac running Microsoft Internet Explorer V5+ or Opera
macIEpass = ((navigator.appVersion.indexOf("MSIE") != -1) && (navigator.appVersion.indexOf("Mac") != -1)) && (parseFloat(navigator.appVersion) >= 4) ? true : false; 
 
// Is this a PC running Microsoft Internet Explorer V4+
winIEpass = ((navigator.appName.indexOf("Microsoft") != -1) && (navigator.appVersion.indexOf("Windows") != -1)) && (parseFloat(navigator.appVersion) >= 4) ? true : false;
  
// Is this a Mac or PC running Netscape V4+ or a Mac running Safari
NNpass = ((navigator.appName == "Netscape") && (navigator.userAgent.indexOf("Mozilla") != -1) && (parseFloat(navigator.appVersion) >= 4)) ? true : false;
//  (navigator.javaEnabled())) ? true : false; Doesn't work with Mac Nav7+

supportedBrowser = (winIEpass || NNpass || macIEpass) ? true : false;
//alert ("Browser: Windows="+winIEpass+"  Nestcape="+NNpass+"  Mac IE="+macIEpass); -- for testing purposes
	
////  END BROWSER DETECTION  ////


//// FLASH DETECTION ////

function Flash_checkForPlugIn() {
  var plugin = (navigator.mimeTypes &&
  navigator.mimeTypes["application/x-shockwave-flash"]) ?
  navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
  if (plugin) {
    myFlashPlayer = parseInt(plugin.description.substring(plugin.description.indexOf(".")-1)) 
  }
}

// vbscript check for Flash ActiveX control in windows IE
if(supportedBrowser && winIEpass) {
  document.write('<scr' + 'ipt language="VBScript"\> \n');
  document.write('Function Flash_checkForActiveX()' + '\n');
  document.write('Dim hasPlayer, playerversion' + '\n' );
  document.write('hasPlayer = false' + '\n' );
  document.write('playerversion = 10' + '\n' );
  document.write('Do While playerversion >= 1' + '\n' );
  document.write('On Error Resume Next' + '\n');
  document.write('hasPlayer = (IsObject(CreateObject(\"ShockwaveFlash.ShockwaveFlash.\" & playerversion & \"\")))' + '\n' );
  document.write('If hasPlayer = true Then Exit Do' + '\n' );
  document.write('playerversion = playerversion - 1' + '\n');
  document.write('Loop' + '\n');
  document.write('Flash_checkForActiveX = playerversion' + '\n');
  document.write('End Function' + '\n');
  document.write('</scr' + 'ipt\> \n');
}

//// END FLASH DETECTION ////