var SubMenuTopOffset = 0;
var SubMenuLeftOffset = -200;
var BaseAnimationDelay = 75;

var SubMenuAnimationDelay;
var SubjectDiv;
var SubMenuTimer = 0;
var PreviousMainMenuButton = "";
var CurrentMainMenuGraphic = "";

var SubMenuTop = SubMenuTopOffset;
var SubMenuLeft = SubMenuLeftOffset;

var currentsubmenu = "sub0";
var menutest = "";
var menulocation = "";
var possibleerror = "";

var submenulocation = new String(top.location);

window.onscroll = ScrollDetect;
window.onresize = ScrollDetect;
window.onerror = ErrorTrap;

submenulocation = submenulocation.split('com/')[1];
submenulocation = submenulocation.split('.')[0];

menutest = "home location missionstatement requestsandmessages contactus careers";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "home"; 
}

menutest = "controlsystems systemarchitecture plc hmi designandcad simulation documentation";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "controlsystems"; 
}

menutest = "informationsystems systemdesign databasedesign software reports dataacquisition batchcontrol";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "informationsystems"; 
}

menutest = "industrialcontrolpanels";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "industrialcontrolpanels"; 
}

menutest = "industryexperience affiliations processskills technologyskills customercomments";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "industryexperience"; 
}

menutest = "projectsuccess customerservice projecttracking fastturnaround structuredapproach";
if (menutest.indexOf(submenulocation) != -1) {
	menulocation = "projectsuccess"; 
}

menutest = "home controlsystems informationsystems industrialcontrolpanels industryexperience projectsuccess";
if (menutest.indexOf(submenulocation) != -1) {
	submenulocation = submenulocation + 'overview';
	//submenulocation = "0";  
}

var pre;
var post;

if (document.layers){
   //Netscape 4 specific code
   pre = 'document.';
   post = '';
}
if (document.getElementById){
   //Netscape 6 specific code
   pre = 'document.getElementById("';
   post = '").style';
}
if (document.all){
   //IE4+ specific code
   pre = 'document.all.';
   post = '.style';
}

function initialize() {
	possibleerror = "initialize";

	SetCurrentMenu();
	ScrollDetect();

	preloadimages();
	
	//top.sectionmenu.SetAllowSubMenus();
	if (top.sectionmenu.ActiveMenu) {
		if (top.sectionmenu.ActiveMenu != "") SubMenuOn(top.sectionmenu.ActiveMenu);
	}
}

function preloadimages() {
	possibleerror = "preloadimages";

	preloadimage('../buttons/homeoverview2.gif');
	preloadimage('../buttons/location2.gif');
	preloadimage('../buttons/missionstatement2.gif');
	preloadimage('../buttons/requestsandmessages2.gif');
	preloadimage('../buttons/contactus2.gif');
	preloadimage('../buttons/careers2.gif');
			
	preloadimage('../buttons/controlsystemsoverview2.gif');
	preloadimage('../buttons/systemarchitecture2.gif');
	preloadimage('../buttons/designandcad2.gif');
	preloadimage('../buttons/plc2.gif');
	preloadimage('../buttons/hmi2.gif');
	preloadimage('../buttons/simulation2.gif');
	preloadimage('../buttons/documentation2.gif');
		
	preloadimage('../buttons/informationsystemsoverview2.gif');	
	preloadimage('../buttons/batchcontrol2.gif');
	preloadimage('../buttons/databasedesign2.gif');
	preloadimage('../buttons/dataacquisition2.gif');
	preloadimage('../buttons/software2.gif');
	preloadimage('../buttons/systemdesign2.gif');
	preloadimage('../buttons/reports2.gif');
		
	preloadimage('../buttons/industryexperienceoverview2.gif');	
	preloadimage('../buttons/affiliations2.gif');
	preloadimage('../buttons/processskills2.gif');
	preloadimage('../buttons/technologyskills2.gif');
	preloadimage('../buttons/customercomments2.gif');
	
	preloadimage('../buttons/projectsuccessoverview2.gif');
	preloadimage('../buttons/customerservice2.gif');
	preloadimage('../buttons/projecttracking2.gif');
	preloadimage('../buttons/fastturnaround2.gif');
	preloadimage('../buttons/structuredapproach2.gif');
	
}

function preloadimage(a) { 
	possibleerror = "preloadimage";

		if(!document.imagearray) document.imagearray=new Array();
		var j=document.imagearray.length
	
		document.imagearray[j]=new Image; 
		document.imagearray[j].src=a;
		
}

function ScrollDetect() {
	possibleerror = "ScrollDetect";

	SubMenuTop = document.body.scrollTop + SubMenuTopOffset;
	SubMenuLeft = document.body.scrollLeft + SubMenuLeftOffset;
	
	SetMenuPositions()
	
	HideSubMenus();
}

function SetCurrentMenu() { 
	possibleerror = "SetCurrentMenu";

	if (submenulocation != "0") swapimage(submenulocation + "button","../buttons/" + submenulocation + "3.gif");
}

function SetMenuPositions() { 
	possibleerror = "SetMenuPositions";
	
	SubjectDiv = eval(pre + 'subhome' + post);
	SubjectDiv.top = SubMenuTop;
	SubjectDiv.left = SubMenuLeft;

	SubjectDiv = eval(pre + 'subcontrolsystems' + post);
	SubjectDiv.top = SubMenuTop + 25;
	SubjectDiv.left = SubMenuLeft;

	SubjectDiv = eval(pre + 'subinformationsystems' + post);
	SubjectDiv.top = SubMenuTop + 50;
	SubjectDiv.left = SubMenuLeft;

	SubjectDiv = eval(pre + 'subindustryexperience' + post);
	SubjectDiv.top = SubMenuTop + 75;
	SubjectDiv.left = SubMenuLeft;

	SubjectDiv = eval(pre + 'subprojectsuccess' + post);
	SubjectDiv.top = SubMenuTop + 100;
	SubjectDiv.left = SubMenuLeft;
	
	SubjectDiv = eval(pre + 'subindustrialcontrolpanels' + post);
	SubjectDiv.top = SubMenuTop + 125;
	SubjectDiv.left = SubMenuLeft;
	
}

function swapimage(n,p) { 
	possibleerror = "swapimage";

	p = '../buttons/' + p;
	
  if ((p.substring(p.length-5,p.length-4) == "1") && ((n.substring(0,menulocation.length) == menulocation) || (n.substring(0,submenulocation.length) == submenulocation))) {
		if ((n.indexOf("overview") != -1) && (submenulocation.indexOf("overview") == -1)) {
			document[n].src = p;
		} else {
			document[n].src = p.substring(0,p.length-5) + "3.gif";
		}
  } else {
		if (n.substring(0,submenulocation.length) != submenulocation) {
			document[n].src = p;
		} else {
			document[n].src = p.substring(0,p.length-5) + "3.gif";
		}
  }
}

function swapmainmenuimage(n,p) { 
	possibleerror = "swapmainmenuimage";
	
  PreviousMainMenuButton = n;
  CurrentMainMenuGraphic = p;
  
	p = 'buttons/' + p;

  top.sectionmenu.swapimage(n,p);
}

function SubMenuOn(id) {
	HideSubMenus();
	ShowSubMenu(id);
}

function SubMenuOffWithDelay(factor) {
	possibleerror = "SubMenuOffWithDelay";

	if (factor) {
		SetSubMenuAnimationDelay(factor);
	} else {
		SetSubMenuAnimationDelay(1);
	}
	
	StopSubMenuTimer();
	SubMenuTimer = setTimeout(HideSubMenus, SubMenuAnimationDelay);
}

function SetSubMenuAnimationDelay(factor) {
	possibleerror = "SetSubMenuAnimationDelay";

	SubMenuAnimationDelay = BaseAnimationDelay * factor;
}

function ShowSubMenu(id) {
	possibleerror = "ShowSubMenu";

	SubjectDiv = eval(pre + id + post);
	SubjectDiv.left = SubMenuLeft - SubMenuLeftOffset;
}

function HideSubMenus() {
	possibleerror = "HideSubMenus";

	if (SubMenuTimer != 0) {
		StopSubMenuTimer();

		SubjectDiv = eval(pre + 'subhome' + post);
		SubjectDiv.left = SubMenuLeft;

		SubjectDiv = eval(pre + 'subcontrolsystems' + post);
		SubjectDiv.left = SubMenuLeft;

		SubjectDiv = eval(pre + 'subinformationsystems' + post);
		SubjectDiv.left = SubMenuLeft;

		SubjectDiv = eval(pre + 'subindustrialcontrolpanels' + post);
		SubjectDiv.left = SubMenuLeft;

		SubjectDiv = eval(pre + 'subindustryexperience' + post);
		SubjectDiv.left = SubMenuLeft;

		SubjectDiv = eval(pre + 'subprojectsuccess' + post);
		SubjectDiv.left = SubMenuLeft;

		if (CurrentMainMenuGraphic != '') {
			CurrentMainMenuGraphic = CurrentMainMenuGraphic.substring(0,CurrentMainMenuGraphic.length-5) + '1.gif';
			swapmainmenuimage(PreviousMainMenuButton,CurrentMainMenuGraphic);
			CurrentMainMenuGraphic = '';
		}
	}
}

function StopSubMenuTimer() {
	possibleerror = "StopSubMenuTimer";

	clearTimeout(SubMenuTimer);
	SubMenuTimer = 0;
}

function ErrorTrap(msg, url, line) {
  //alert(msg + '\n' + 'In file: ' + url + '\n' + 'At line: ' + line + '\n' + 'Possible Error: ' + possibleerror);
  return true;
}
