var buttonSelected = "";
var imageOn = "";
var layerVisibility, timerId, isNav4, isIE4;
var firstTime = false;
var timeExpired = true;
var lastMouseOver = "";

//Check browser type i.e Netscape or Ie
if (navigator.appName == "Netscape") 
{
   isNav4 = true;
   layerOff = "hide";
   layerOn = "show";
   object = "document.layers";
   style = "";
   imageDom = "document";
} 
else 
{
   isIE4 = true;
   layerOff = "hidden";
   layerOn = "visible";
   object = "document.all";
   style = ".style";
   imageDom = "document.all";
}

var layerNames   = new Array("Training", "Communication", "Installation");
var layerDetails = new Array();
var categories   = new Array("Homepage","Ourservices","AboutSCN","ContactUs","EmailUs","Training","Communication","Installation","Resourcing","Resettlement","Consultancy","Career","Brochure","Satellite");
var image_on     = new Array();
var image_off    = new Array();
var imagesLoaded = false;

function LayerObject()
{
   this.clicked = new Boolean(false);
   this.timerID = null;
}


for(i=0; i < layerNames.length; i++)
{
  layerDetails[layerNames[i]] = new LayerObject();
}


//Function which preLoads all the mouseOver images into an array
function imagePreLoaderHome()
{
        //Load the central image
        mainImage = eval(imageDom + '["mainPic"]');
        mainImage.src = "/Images/r4_c4.jpg";

	//PreLoad all downstate images to avoid delay.
	for(i=0; i < categories.length; i++)
	{
  	  type = categories[i];
  	  image_on[type]  = new Image()
  	  image_on[type].src  = '/Images/' + type + '_on.gif';
  	  image_off[type] = new Image()
  	  image_off[type].src = '/Images/' + type + '_off.gif';
	}
 
        imagesLoaded = true;
}

//Function which preLoads all the mouseOver images into an array
function imagePreLoaderOther()
{
	//PreLoad all downstate images to avoid delay.
	for(i=0; i < categories.length; i++)
	{
  	  type = categories[i];
  	  image_on[type]  = new Image()
  	  image_on[type].src  = '/Images/' + type + '_on.gif';
  	  image_off[type] = new Image()
  	  image_off[type].src = '/Images/' + type + '_off.gif';
	}

        imagesLoaded = true;
}

//function call to process mouseOut event.
function mouseout(imagename)
{
   //Only set the timeOut and as a result change the pbn to off
   //and set the layer to hidden if the user has not clicked the 
   //training pushbutton otherwise do nothing
   pushButton = eval(imageDom + '[imagename]');

   
   if (layerDetails[imagename])
   {
      //Set the timer.
      setCountdown(imagename);
   }
   else
   { 
         pushButton.src = '/Images/' + imagename + '_off.gif';
   }
}

//function to process countdown
function setCountdown(imagename)
{
   strangeVar = imagename;
   layerDetails[imagename].timerID = setTimeout('setTimer(strangeVar)', 2000);
}


//function call to process mouseOver event.
function mouseover(imagename)
{
   //Firstly hide all layers before displaying the correct one
   //and put the buttons to off.
   if(layerDetails[lastMouseOver])
   {
      if(layerDetails[lastMouseOver].timerID != null)
      {
         layerVisibility = eval(object + '[lastMouseOver+"SubMenu"]' + style);
         layerVisibility.visibility = layerOff;
         pushButton = eval(imageDom + '[lastMouseOver]');
         pushButton.src = '/Images/' + lastMouseOver + '_off.gif';
         clearTimeout(layerDetails[lastMouseOver].timerID);
         layerDetails[lastMouseOver].timerID = null;
      }
   }

   //Change the src of the button to be in the on state.
   pushButton = eval(imageDom + '[imagename]');
   pushButton.src = '/Images/' + imagename + '_on.gif';


   if(layerDetails[imagename])
   {   
      layerVisibility = eval(object + '[imagename+"SubMenu"]' + style);
      layerVisibility.visibility = layerOn;
   }

   lastMouseOver = imagename;
}

function clearTimer(name)
{
   //User has moused over before the layer has disappeared from the mouseout
   //so clear the timeout. 
   clearTimeout(layerDetails[name].timerID)
}


function setTimer(name)
{
   parameter = name;
   layerVisibility = eval(object + '[parameter+"SubMenu"]' + style);
   layerVisibility.visibility = layerOff;
   layerDetails[parameter].timerID = null;
   pushButton = eval(imageDom + '[parameter]');
   pushButton.src = image_off[parameter].src;  
}


function buttonClicked(layerName)
{
  //Set variable to indicate button has been pressed
  layerDetails[layerName].clicked = (layerDetails[layerName].clicked ? false : true);
}

