/*
	IE6 PNG Fix
*/
if (document.all && /MSIE (5\.5|6)/.test(navigator.userAgent) &&
  document.styleSheets && document.styleSheets[0] && document.styleSheets[0].addRule)
{
  document.styleSheets[0].addRule('img', 'behavior: url(http://www.firmusenergy.co.uk/css/iepngfix.htc)');
  document.styleSheets[0].addRule('div', 'behavior: url(http://www.firmusenergy.co.uk/css/iepngfix.htc)');
 }


/*
	Standards Compliant Rollover Script
	Author : Daniel Nolan
	http://www.dnolan.com/code/js/rollover/
	http://www.bleedingego.co.uk/webdev.php
*/
function initRollovers() {
	if (!document.getElementById) return
	
	var aPreLoad = new Array();
	var sTempSrc;
	var aImages = document.getElementsByTagName('img');

	for (var i = 0; i < aImages.length; i++) {		
		if (aImages[i].className == 'imgover') {
			var src = aImages[i].getAttribute('src');
			var ftype = src.substring(src.lastIndexOf('.'), src.length);
			var hsrc = src.replace(ftype, '_on'+ftype);

			aImages[i].setAttribute('hsrc', hsrc);
			
			aPreLoad[i] = new Image();
			aPreLoad[i].src = hsrc;
			
			aImages[i].onmouseover = function() {
				sTempSrc = this.getAttribute('src');
				this.setAttribute('src', this.getAttribute('hsrc'));
			}	
			
			aImages[i].onmouseout = function() {
				if (!sTempSrc) sTempSrc = this.getAttribute('src').replace('_on'+ftype, ftype);
				this.setAttribute('src', sTempSrc);
			}
		}
	}
}




function display(variab,num)
	 	 
	 {

	 // if ( typeof( h) == "undefined" ) 
	 // {
   // var h=0;
	// } 


	 
	 var lis = document.getElementById("content-tabs").getElementsByTagName("li");
	 
	 for(var i=0; i< lis.length; i++){
		if(lis[i].id == "nav-on"){
			lis[i].id = "";
		}
	}
	
	
	//tgt.parentNode.id = "nav-on";
	try {
		lis[num-1].id="nav-on";
	} catch(err){}
	  
	var tabl= new Array("layer1","layer2","layer3","layer4","layer5","layer6","layer7");
     var Obj;
	 for( var i=0; i< tabl.length; i++)
	 
	 { 
	  
	  
	  if(document.getElementById( tabl[i])){
	  
		 Obj = document.getElementById( tabl[i]); 
		 if( variab==tabl[i])
		 {
		  Obj.style.visibility = "visible";

		 //var tab= i+1;
		//document.getElementById(tab).style.backgroundImage = "url(../../../images/domestic-subpage/tab_leftcorner.gif)";
		   
		 
		
		 }
		 else
		 {
		 Obj.style.visibility = "hidden";
		 //-- Ou autre mthode
		
		 }
 		 
	  }

	 }
	 
     }




 function displayh(variab,num,h)
	 	 
	 {
	 
	 // if ( typeof( h) == "undefined" ) 
	 // {
   // var h=0;
	// } 


	 
	 var lis = document.getElementById("content-tabs").getElementsByTagName("li");
	 
	 for(var i=0; i< lis.length; i++){
		if(lis[i].id == "nav-on"){
			lis[i].id = "";
		}
	}
	
	//tgt.parentNode.id = "nav-on";
	try {
		lis[num-1].id="nav-on";
	} catch(err){}
	  
	var tabl= new Array("layer1","layer2","layer3","layer4","layer5","layer6","layer7");
     var Obj;
	 for( var i=0; i< tabl.length; i++)
	 
	 { 
	  
	  
	  if(document.getElementById( tabl[i])){
	  
		 Obj = document.getElementById( tabl[i]); 
		 if( variab==tabl[i])
		 {
		  Obj.style.visibility = "visible";

		 //var tab= i+1;
		//document.getElementById(tab).style.backgroundImage = "url(../../../images/domestic-subpage/tab_leftcorner.gif)";
		   
		 
		
		 }
		 else
		 {
		 Obj.style.visibility = "hidden";
		 //-- Ou autre mthode
		
		 }
 		 
	  }

	 }
	 h+="px";
	 document.getElementById('content').style.height = h;
     }
	 
	 
	 





/****************************************************
* Handle mousedown on free space, i.e. losing focus	*
* on HTML elements									*
*													*
*****************************************************/

function loseFocus(e){	
	var inputs = document.getElementsByTagName("input");
	for(var i=0;i<inputs.length;i++){
		if(inputs[i].value == "" && inputs[i].getAttribute("busy") == 0){
			switch(inputs[i].getAttribute("orig-name")){
				case "street_name":
					inputs[i].value = "street name";
					break;					
				case "house_number":
					inputs[i].value = "house no.";
					break;					
				case "postcode":
					inputs[i].value = "postcode";
					break;
				case "search":
					try {
						if(inputs[i].parentNode.parentNode.parentNode.id == "search"){
							inputs[i].value = "search";
						}
					} catch(err){}
					break;
				case "userName":
					inputs[i].value = "username";
					break;
				case "userPasswd":					
					try {
						inputs[i].setAttribute("type", "text");
					} catch(err){
					   var new_input = document.createElement('input');
					   new_input.setAttribute('type','text');
					   new_input.setAttribute('name',inputs[i].getAttribute('orig-name'));
					   new_input.setAttribute("orig-name",inputs[i].getAttribute('orig-name'));
					   new_input.setAttribute('id',inputs[i].getAttribute('id'));
					   new_input.setAttribute('busy',inputs[i].getAttribute('busy'));
					   inputs[i].parentNode.replaceChild(new_input,inputs[i]);
					   addEventFunc(new_input, "mousedown", updateInputs, false);
					   addEventFunc(new_input, "focus", updateInputs, false);
					   addEventFunc(new_input, "blur", inputBlur, false);
					}
					inputs[i].value = "password";
					break;
				default:
			}
		}
	}
}





/****************************************************
* Handle input Blur									*
*													*
*****************************************************/

function inputBlur(e){	
	if (!e){ e = window.event; }
	var tgt = e.target || e.srcElement;

	tgt.setAttribute("busy", 0);
	loseFocus();
}





/****************************************************
* Remove Username text from login forms and change	*
* Password field to be of type password				*
*													*
*****************************************************/

function updateInputs(e){	
	if (!e){ e = window.event; }
	var tgt = e.target || e.srcElement;
	
	if(tgt.nodeName.toLowerCase() == "input"){
		
		tgt.setAttribute("fixed", 1);
		tgt.setAttribute("busy",1);
		
		if(tgt.value == "username"){
			tgt.value = "";
		} else if(tgt.value == "street name"){
			tgt.value = "";
		} else if(tgt.value == "house no."){
			tgt.value = "";
		} else if(tgt.value == "postcode"){
			tgt.value = "";
		} else if(tgt.value == "search"){
			try {
				if(tgt.parentNode.parentNode.parentNode.id == "search"){
					tgt.value = "";
				}
			} catch(err){}			
		} else if(tgt.value == "password"){
			tgt.value = "";
			try {
				tgt.setAttribute("type", "password");
			} catch(err){
			   var new_input = document.createElement('input');
			   new_input.setAttribute('type','password');
			   new_input.setAttribute('name',tgt.getAttribute('orig-name'));
			   new_input.setAttribute("orig-name",tgt.getAttribute('orig-name'));
			   new_input.setAttribute('id',tgt.getAttribute('id'));
			   new_input.setAttribute('busy',tgt.getAttribute('busy'));
			   tgt.parentNode.replaceChild(new_input,tgt);
			   addEventFunc(new_input, "mousedown", updateInputs, false);
			   addEventFunc(new_input, "focus", updateInputs, false);
			   addEventFunc(new_input, "blur", inputBlur, false);
			   new_input.select();
			   new_input.focus();			   
			}
		}
	}
}







/****************************************************
* Event Handlers									*
*													*
*****************************************************/

function addListeners(){	
	var inputs = document.getElementsByTagName("input");
	for(i=0;i<inputs.length;i++){
		inputs[i].setAttribute("busy",0);
		if((inputs[i].value == "username" || inputs[i].value == "password" || inputs[i].value == "street name" || inputs[i].value == "house no." || inputs[i].value == "postcode" || inputs[i].value == "search") && inputs[i].getAttribute("fixed") != 1){		
			inputs[i].setAttribute("orig-name", inputs[i].getAttribute("name"));
			addEventFunc(inputs[i], "focus", updateInputs, false);
			addEventFunc(inputs[i], "blur", inputBlur, false);
		}
	}
	
	if(browser.isIE){ addEventFunc(document.body, "mousedown", loseFocus, false); }
}





/****************************************************
* Build Search Query								*
*													*
*****************************************************/

function setupSearch(){
	if(document.getElementById("search")){
		var forms = document.getElementById("search").getElementsByTagName("form");
		if(forms.length > 0){
			addEventFunc(forms[0], "submit", buildQuery, false);
		}
	}
}


function buildQuery(e){
	if (!e){ e = window.event; }
	var tgt = e.target || e.srcElement;
	
	var inputs = tgt.getElementsByTagName("input");
	if(inputs.length > 0){
		if(inputs[0].name == "search" || inputs[0].getAttribute("orig-name") == "search"){
			tgt.action = "/cgi-bin/search.cgi?q=" + inputs[0].value;
		}
	}
}


	 
	 
/****************************************************
* Call Handlers										*
*													*
*****************************************************/

function addEventFunc(el, evtType, func, capture){
	var ret = 0;
	
	if (el.addEventFuncListener){
		ret = el.addEventFuncListener(evtType, func, capture);
	} else if (el.attachEvent){
		ret = el.attachEvent('on' + evtType, func);
	} else { el['on' + evtType] = func; }
	
	return ret;
}



/****************************************************
* Browser Detection									*
*													*
*****************************************************/


function Detect() {
	
	agent 	= navigator.userAgent.toLowerCase();
						
	// detect OS
	this.isMac		= (agent.indexOf('mac') != -1);
	this.isWin		= (agent.indexOf('win') != -1);
	this.isWin2k	= (this.isWin && (agent.indexOf('nt 5') != -1));
	this.isWinSP2	= (this.isWin && (agent.indexOf('xp') != -1 || agent.indexOf('sv1') != -1));
	this.isOther	= (agent.indexOf('unix') != -1 || agent.indexOf('sunos') != -1 || agent.indexOf('bsd') != -1 || agent.indexOf('x11') != -1 || agent.indexOf('linux') != -1);
	
	// detect browser
	this.isSafari	= (agent.indexOf('safari') != -1);
	this.isSafari2 = (this.isSafari && (parseFloat(agent.substring(agent.indexOf("applewebkit/")+"applewebkit/".length,agent.length).substring(0,agent.substring(agent.indexOf("applewebkit/")+"applewebkit/".length,agent.length).indexOf(' '))) >=  300));
	this.isOpera	= (agent.indexOf('opera') != -1);
	this.isNN		= (agent.indexOf('netscape') != -1);
	this.isFF3		= (agent.indexOf('firefox/3') != -1);
	this.isIE		= (agent.indexOf('msie') != -1);
	this.isIE6		= (agent.indexOf('msie 6.') != -1);
	this.isIE5		= (agent.indexOf('msie 5.') != -1);
}

var browser = new Detect();




/****************************************************
* On Page Load Functions							*
*													*
*****************************************************/

function init(){
	initRollovers();
	addListeners();
	setupSearch();
}


addEventFunc(window, "load", init, false);
	
	



	
/****************************************************
* check Passed Variable							*
*													*
*****************************************************/




	var store = 1;
	var statement = "";
	var showCalc = false;
	var numOfTabs = 4;				// NUMBER OF TABS
	var i,j;


function checkPassedVariablesafety()
{
var layer;
		var url = window.location.href;
		var i = 0; var j = 0;
		var layerNum = 1;
		var layerNumHolder = "";
		
		 if (url.indexOf("?") > -1)
		 {
		 	var command = url.substr(url.indexOf("?"));
			for(i=0; i<command.length; i++)
			{
				if(command.charAt(i) == '=')
					{
					i++;
					for(j=i; j<command.length; j++)
					{
						layerNumHolder += command.charAt(j);
						i = j;
					}
					
					layerNum = layerNumHolder;
					layer="layer"+layerNum+"_id";
					displayhv(layer,layerNum,540);
					}
			}
			
		}
}	
	



function checkPassedVariable()
{
var layer;
		var url = window.location.href;
		var i = 0; var j = 0;
		var layerNum = 1;
		var layerNumHolder = "";
		
		 if (url.indexOf("?") > -1)
		 {
		 	var command = url.substr(url.indexOf("?"));
			for(i=0; i<command.length; i++)
			{
				if(command.charAt(i) == '=')
					{
					i++;
					for(j=i; j<command.length; j++)
					{
						layerNumHolder += command.charAt(j);
						i = j;
					}
					
					layerNum = layerNumHolder;
					layer="layer"+layerNum+"_id";
					displayv(layer,layerNum);
					}
			}
			
		}
}	




function displayv(variab,num)
	 	 
	 {

	 // if ( typeof( h) == "undefined" ) 
	 // {
   // var h=0;
	// } 


	 
	 var lis = document.getElementById("content-tabs").getElementsByTagName("li");
	 
	 for(var i=0; i< lis.length; i++){
		if(lis[i].id == "nav-on"){
			lis[i].id = "";
		}
	}
	
	
	//tgt.parentNode.id = "nav-on";
	try {
		lis[num-1].id="nav-on";
	} catch(err){}
	  
	var tabl= new Array("layer1_id","layer2_id","layer3_id","layer4_id","layer5_id","layer6_id","layer7_id");
     var Obj;
	 for( var i=0; i< tabl.length; i++)
	 
	 { 
	  
	  
	  if(document.getElementById( tabl[i])){
	  
		 Obj = document.getElementById( tabl[i]); 
		 if( variab==tabl[i])
		 {
		  Obj.style.visibility = "visible";

		 //var tab= i+1;
		//document.getElementById(tab).style.backgroundImage = "url(../../../images/domestic-subpage/tab_leftcorner.gif)";
		   
		 
		
		 }
		 else
		 {
		 Obj.style.visibility = "hidden";
		 //-- Ou autre mthode
		
		 }
 		 
	  }

	 }
	 
     }




 function displayhv(variab,num,h)
	 	 
	 {
	 
	 // if ( typeof( h) == "undefined" ) 
	 // {
   // var h=0;
	// } 


	 
	 var lis = document.getElementById("content-tabs").getElementsByTagName("li");
	 
	 for(var i=0; i< lis.length; i++){
		if(lis[i].id == "nav-on"){
			lis[i].id = "";
		}
	}
	
	//tgt.parentNode.id = "nav-on";
	try {
		lis[num-1].id="nav-on";
	} catch(err){}
	  
	var tabl= new Array("layer1_id","layer2_id","layer3_id","layer4_id","layer5_id","layer6_id","layer7_id");
     var Obj;
	 for( var i=0; i< tabl.length; i++)
	 
	 { 
	  
	  
	  if(document.getElementById( tabl[i])){
	  
		 Obj = document.getElementById( tabl[i]); 
		 if( variab==tabl[i])
		 {
		  Obj.style.visibility = "visible";

		 //var tab= i+1;
		//document.getElementById(tab).style.backgroundImage = "url(../../../images/domestic-subpage/tab_leftcorner.gif)";
		   
		 
		
		 }
		 else
		 {
		 Obj.style.visibility = "hidden";
		 //-- Ou autre mthode
		
		 }
 		 
	  }

	 }
	 h+="px";
	 document.getElementById('content').style.height = h;
     }
	 