// =================================================================================================
//  page_events.js - Scripting for Page Level Events
// -------------------------------------------------------------------------------------------------
	// ---------------------------------------------------------------------------------------------
	// 	Initialize shadowbox object
	// ---------------------------------------------------------------------------------------------
		Shadowbox.init({});
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	// 	Detect Event Listener Mode - IE or compliant
	// ---------------------------------------------------------------------------------------------
		// Test if IE or Compliant
		var eventMode = "";

		if(window.addEventListener) {
			eventMode = "compliant";
		} else {
			eventMode = "ie";
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	//  Preload Images - Preload images
	// ---------------------------------------------------------------------------------------------
		// If index page, preload the 4 box images and rollover states
		if(document.getElementById('index')) {
			var roleImage1 = new Image()
			navImage1.src = '../images/role1.png';
			
			var roleImage3 = new Image()
			roleImage1.src = '../images/role2.png';
			
			var roleImage5 = new Image()
			roleImage1.src = '../images/role3.png';
			
			var roleImage7 = new Image()
			roleImage1.src = '../images/role4.png';
		} else {
			// Page is not index, preload the navigation sprites
			// Navigation Images
			var navImage1 = new Image()
			navImage1.src = '../images/navigation.png';
			
			var navImage2 = new Image()
			navImage2.src = '../images/tools_support_bg.png';
			
			var navImage3 = new Image()
			navImage3.src = '../images/visited_bg.png';
			
			var navImage4 = new Image()
			navImage4.src = '../images/tools_support_bg.png';
			
			var navImage5 = new Image()
			navImage5.src = '../images/whyICA_bg.png';
			
			// IE6 Navigation images
			var navImage6 = new Image()
			navImage6.src = '../images/navigation_ie6.gif';
			
			var navImage7 = new Image()
			navImage7.src = '../images/tools_support_bg_ie6.gif';
			
			var navImage8 = new Image()
			navImage8.src = '../images/visited_bg_ie6.gif';
			
			var navImage9 = new Image()
			navImage9.src = '../images/tools_support_bg_ie6.gif';
			
			var navImage10 = new Image()
			navImage10.src = '../images/whyICA_bg_ie6.gif';
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	// 	buttonDown, buttonUp (this, imagePrefix) - Image rollover functions for home page r3 section
	// ---------------------------------------------------------------------------------------------
		// Preload Rollover Images
		if(document.getElementById('index')) {
			var humanActive = new Image();
			humanActive.src = "humanActive.jpg";
			
			var humanOver = new Image();
			humanOver.src = "humanOver.jpg";
			
			var capitalActive = new Image();
			capitalActive.src = "capitalActive.jpg";
			
			var capitalOver = new Image();
			capitalOver.src = "capitalOver.jpg";
			
			var techActive = new Image();
			techActive.src = "techActive.jpg";
			
			var techOver = new Image();
			techOver.src = "techOver.jpg";
		}
		
		// buttonDown(imageName) - Rollover image to Over State
		function buttonDown(imageName, target) {
			imageName.src = 'images/' + target + 'Over.jpg';
		}
		
		// buttonUp(imageName) - Rollover image to Active State
		function buttonUp(imageName, target) {
			imageName.src = 'images/' + target + 'Active.jpg';
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	//   Background Image Control for IE6 - Set IE6 to Cache background images
	// ---------------------------------------------------------------------------------------------
		function backgroundControl() {
			// Error is expected depending on IE6 build, so we use a try/catch.
			try {
				document.execCommand("BackgroundImageCache",false,true);
			} catch(e) {}
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	//  createEmail(address, linkText) - Obscure email addresses
	// ---------------------------------------------------------------------------------------------
		function createEmail(name) {
			// Split Name by the dot
			var properName = name.split('.');
			// The domain name to email to
			var domain = 'investmentcenters.com';
			
			// Write email link
			document.write('<a href="mailto:' + name + '&#64' + domain + '" title="Click to Email ' + properName[0] + ' ' + properName[1] +  '">' + name + '&#64' + domain + '</a>');
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	//  hasClass(target, newClass) - Checks to see if class (newClass) exists on element (target)	
	// ---------------------------------------------------------------------------------------------
		function hasClass(newClass, target) {
			return target.className.match(new RegExp('(\\s|^)'+newClass+'(\\s|$)'));
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	// 	addClass(target, newClass) - Adds a class name (newClass) to element (target)
	// ---------------------------------------------------------------------------------------------
		function addClass(newClass, target) {
			if (!this.hasClass(newClass, target)) {
				target.className += " "+newClass;
			}
		}
	// ---------------------------------------------------------------------------------------------
	 

	// ---------------------------------------------------------------------------------------------
	// 	removeClass(target, newClass) - Removes a class name (newClass) to element (target)
	// ---------------------------------------------------------------------------------------------
		function removeClass(newClass, target) {
			if (hasClass(newClass, target)) {
				var reg = new RegExp('(\\s|^)'+newClass+'(\\s|$)');
				target.className=target.className.replace(reg,' ');
			}
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	//  Add Event Lister(element, type, expression, bubbling) - Cross Browser Event Listner
	// ---------------------------------------------------------------------------------------------
		function addListener(element, type, expression, bubbling) {
			
			bubbling = bubbling || false;
			
			if(eventMode == "compliant") { 
				// Standard
				element.addEventListener(type, expression, bubbling);
				return true;
			} else if(eventMode == "ie") { 
				// IE
				element.attachEvent('on' + type, expression);
				return true;
			} else {
				return false;
			}
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	// 	moveCloseLink - Move Shadowbox Close Link to top right
	// ---------------------------------------------------------------------------------------------
		function moveCloseLink() { 
			var cb=document.getElementById('sb-nav-close'); 
			var tb=document.getElementById('sb-wrapper'); 
			if(tb) tb.appendChild(cb); 
		} 
	// ---------------------------------------------------------------------------------------------
	
	// ---------------------------------------------------------------------------------------------
	// 	removeShadowNav() - Remove Shadowbox info div. Shadowbox has been modified to a default 
	//  opacity of 0.7
	// ---------------------------------------------------------------------------------------------
		function removeShadowNav() { 
			document.getElementById('sb-info-inner').style.display = 'none';
		} 
	// ---------------------------------------------------------------------------------------------
	
	// ---------------------------------------------------------------------------------------------
	// 	Event Listeners Setup - Setup onLoad objects for one onLoad event
	// ---------------------------------------------------------------------------------------------
		function loadEventListeners() {
			
			// Setup Shadowbox Hook
			Shadowbox.init({ 
				onOpen: moveCloseLink()
			});
			
			// Set up shadowbox for "Request a Call" links with class requestCall
			Shadowbox.setup("a.requestCall", {
				width: 400,
				height: 482,
				modal: true
			});
			
			// set up r3 links on home page AREA elements with class r3
			Shadowbox.setup("area.r3", {
				player: "iframe"
			});
			
			// Execute function
			backgroundControl();
			
			// Test if not home page
			if(!document.getElementById('index')) {
				// Get Elements and store into variables
				var nav1 = document.getElementById('navButton1');
				var nav2 = document.getElementById('navButton2');
				var nav3 = document.getElementById('navButton3');
				var nav4 = document.getElementById('navButton4');
				var nav5 = document.getElementById('navButton5');
				
				// Retrieve Navigation target so there is only one lookup
				var navigation = document.getElementById('navigation').getElementsByTagName("ul");
				navigation = navigation[0];
				
				// Add mouseover event listeners
				addListener(nav1,"mouseover",function(){addClass("option1", navigation);},false);
				addListener(nav1,"mouseout",function(){removeClass("option1", navigation);},false);
				addListener(nav2,"mouseover",function(){addClass("option2", navigation);},false);
				addListener(nav2,"mouseout",function(){removeClass("option2", navigation);},false);
				addListener(nav3,"mouseover",function(){addClass("option3", navigation);},false);
				addListener(nav3,"mouseout",function(){removeClass("option3", navigation);},false);
				addListener(nav4,"mouseover",function(){addClass("option4", navigation);},false);
				addListener(nav4,"mouseout",function(){removeClass("option4", navigation);},false);
				addListener(nav5,"mouseover",function(){addClass("option5", navigation);},false);
				addListener(nav5,"mouseout",function(){removeClass("option5", navigation);},false);
			}
		}
	// ---------------------------------------------------------------------------------------------
	
	
	// ---------------------------------------------------------------------------------------------
	// 	Add Event Listeners on load
	// ---------------------------------------------------------------------------------------------
		if(document.addEventListener) {
			addevent = window.addEventListener("load", loadEventListeners, false);
		} else {
			window.attachEvent("onload", loadEventListeners);
		}
	// ---------------------------------------------------------------------------------------------
// =================================================================================================

