// JavaScript Document
// kutils.js

function format20(s){return s.replace(/ /g, "%20");}
function formatPlus(s){return s.replace(/ /g, "+");}

function googleSearch(s){
	su="http://www.google.co.uk/search?hl=en&q=";
	su+=format20(s);
	su+="&btnG=Google+Search&meta=";
	window.open(su, "_blank");
}


function googleSiteSearch(s, s2){
	su = "http://www.google.co.uk/search?hl=en&as_q=";
	su += formatPlus(s);
	su += "&as_epq=&as_oq=&as_eq=&num=10&lr=&as_filetype=&ft=i&as_sitesearch="
	su += s2;
	su += "&as_qdr=all&as_rights=&as_occt=any&cr=&as_nlo=&as_nhi=&safe=images";
	window.open(su, "_blank");
}

function menu2Over(s_title, s_table_detail)
{
	document.getElementById(s_title).className='menu2b';
	document.getElementById(s_table_detail).className='menu2f';
}

function menu2Out(s_title, s_table_detail)
{
	document.getElementById(s_title).className='menu2a';
	document.getElementById(s_table_detail).className='menu2e';
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

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;
  } }
}

function getParamValue(sParamName, paramList)
{
	var s;
	var spn;
	var spns;
	
	for(i=0; i < paramList.length; i++){
		s = paramList[i];
		spns = s.split("=");
		spn = spns[0];
		if(spn == sParamName){
			return spns[1];
		}
	}
	return null;
}

function spanXML(span_id, xml_id, xsl_id)
{
	xmlObj=loadXMLDoc(xml_id);
	xslObj=loadXMLDoc(xsl_id);
	
	// code for IE
	if (window.ActiveXObject){
	  document.getElementById(span_id).innerHTML=xmlObj.transformNode(xslObj);
	}
	// code for Mozilla, Firefox, Opera, etc.
	else if (document.implementation && document.implementation.createDocument){
	  xsltProcessor=new XSLTProcessor();
	  xsltProcessor.importStylesheet(xslObj);
	  resultDocument = xsltProcessor.transformToFragment(xmlObj,document);
	  document.getElementById(span_id).appendChild(resultDocument);
	}
}

//-------------------------------------------------------------------------------------
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_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
//-------------------------------------------------------------------------------------
function loadXMLDoc(dname) 
{
	//Internet Explorer
	try {
	  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
	}
	catch(e){
		//Firefox, Mozilla, Opera, etc.		
		try{
    		xmlDoc=document.implementation.createDocument("","",null);
    	}
  		catch(e){
			alert(e.message);
		}
  	}
	
	try{
  		xmlDoc.async=false;
  		xmlDoc.load(dname);
  		return(xmlDoc);
  	}
	catch(e){
		alert(e.message);
	}
	return(null);
}
//-------------------------------------------------------------------------------------