

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Codewise Lite - JavaScript Library for Vividus FX

Copyright (c) 2004-2009 Codewise Systems Inc. & Twisted Lime Media Inc. 
All rights reserved.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Global vars */

var FlashFile = 'vividus_fx_04.swf';

var e_menuLinks;
var e_sectionAnchors;

var flashinstalled = 0;
var flashversion = 0;
var FlashPlayerVersionRequired = 8;
var FlashPlayerPluginObject = '';
var FlashMSDetect = "false";

var QuickTimePlayerInstalled = 0;
var QuickTimePlayerVersion = 0;
var QuickTimePlayerVersionRequired = 1;
var QuickTimePlayerPluginObject = '';
var QuickTimePlayerMSDetect = "false";

var sectionToDisplay = 'section1Container';

if ((fDPO == 'undefined') || (fDPO == null)) {
	var fDPO = ''; // folderDepthPathOffset
};
if ((mFPO == 'undefined') || (mFPO == null)) {
	var mFPO = ''; // mediaFolderPathOffset
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Browser sniff */

var agent = '';
if (navigator.userAgent) { 
	agent = navigator.userAgent.toLowerCase();
} else { 
	agent = navigator.appVersion.toLowerCase();
};

var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);

var is_ie = (agent.indexOf('msie') != -1);
var is_ie5 = (is_ie && (is_major == 4) && (agent.indexOf('msie 5.') != -1));
var is_ie6 = (is_ie && (is_major == 4) && (agent.indexOf('msie 6.') != -1));
var is_ie7 = (is_ie && (is_major == 4) && (agent.indexOf('msie 7') != -1));
var is_ie8 = (is_ie && (agent.indexOf('msie 8') != -1));
var is_ie7up = (is_ie && (is_ie7 || is_ie8));

var is_safari = (agent.indexOf('safari') != -1);

var is_mozilla = ((agent.indexOf('mozilla') != -1) && (agent.indexOf('netscape') == -1) && !is_ie);
	if (is_mozilla) {
		is_nav = false;
		is_nav6up = false;
	}
	if (is_safari) {
		is_mozilla = false;
	};

var is_firefox = (is_mozilla && (agent.indexOf('firefox') != -1));
var is_firefox1r0 = (is_firefox && (agent.indexOf('firefox\/1.0') != -1));
var is_firefox1r5 = (is_firefox && (agent.indexOf('firefox\/1.5') != -1));
var is_firefox2r0 = (is_firefox && (agent.indexOf('firefox\/2.') != -1));
var is_firefox2up = (is_firefox && !is_firefox1r0 && !is_firefox1r5);
var is_firefox3r0 = (is_firefox && (agent.indexOf('firefox\/3.') != -1));
var is_firefox3up = (is_firefox && !is_firefox1r0 && !is_firefox1r5 && !is_firefox2r0);

var is_mac = (agent.indexOf('mac') != -1);

var is_iphone = (agent.indexOf('iphone') != -1);
var is_ipod = (agent.indexOf('ipod') != -1);
if (is_ipod) { is_iphone = 0; };


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Image preloading */

var logo_replacement_image = new Image(); logo_replacement_image.src = 'media\/images\/logos\/vividus_vfx_logo_01.png';

var section1_bg_image = new Image(); section1_bg_image.src = 'media\/images\/_section1_bg_gradient.jpg';
var section2_bg_image = new Image(); section2_bg_image.src = 'media\/images\/_section2_bg_gradient.jpg';
var section3_bg_image = new Image(); section3_bg_image.src = 'media\/images\/_section3_bg_gradient.jpg';
var section4_bg_image = new Image(); section4_bg_image.src = 'media\/images\/_section4_bg_gradient.jpg';

var contact_bg_image = new Image(); contact_bg_image.src = 'media\/images\/_contact_bg.png';

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DOM methods */

document.getElementsByClassName = function(className) {
	var allElementsByClassName = new Array();

	var allElements = document.getElementsByTagName('*');

	for (loop00 = 0; loop00 < allElements.length; loop00++) {
		if (allElements[loop00].className.indexOf(className) != -1) {
			allElementsByClassName[allElementsByClassName.length] = allElements[loop00];
		};
	};

	return allElementsByClassName;
};

document.getElementsByTagNameAndClassName = function(tagNameReference, classNameReference) {
	var allElementsByTagNameAndClassName = new Array();

	var allElements = document.getElementsByTagName('*');

	for (loop00 = 0; loop00 < allElements.length; loop00++) {
		if ((allElements[loop00].tagName.toLowerCase() == tagNameReference.toLowerCase()) && ((allElements[loop00].className == classNameReference)) || ((allElements[loop00].className.indexOf(classNameReference + ' ') != -1) || (allElements[loop00].className.indexOf(' ' + classNameReference) != -1))) {
			allElementsByTagNameAndClassName[allElementsByTagNameAndClassName.length] = allElements[loop00];
		};
	};

	return allElementsByTagNameAndClassName;
};

function insertAfter(newNode, referenceNode) {
	referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
};

function hasClass(cE, cN) { // currentElement, className
	if (cE) {
		var classNameRegExp = new RegExp('(\\s|^)' + cN + '(\\s|$)');
		return cE.className.match(classNameRegExp);
	};
};

function addClass(cE, cN) { // currentElement, className
	if (cE) {
		if (!this.hasClass(cE, cN)) {
			cE.className += ' ' + cN;
		};
	};
};

function removeClass(cE, cN) { // currentElement, className
	if (cE) {
		if (hasClass(cE, cN)) {
			var classNameRegExp = new RegExp('(\\s|^)' + cN + '(\\s|$)');
			cE.className = cE.className.replace(classNameRegExp, ' ');
		};
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Hiding/displaying layers */

function cEV(cE, cS) { // changeElementVisibility(currentElement, changeState)
	var cEOH = document.getElementById(cE);

	if (cEOH) {
		visibilityState = cEOH.style.visibility;
		visibilityState += '';

		if ((cS == 'toggle') && ((visibilityState == '') || (visibilityState == 'inherit') || (visibilityState == 'undefined'))) {
			cEOH.style.visibility = 'hidden';
		} else if ((cS == 'toggle') && ((visibilityState != '') || (visibilityState != 'inherit') || (visibilityState != 'undefined'))) {
			if ((visibilityState == 'visible') || (visibilityState == 'show')) {
				cEOH.style.visibility = 'hidden';
			} else if ((visibilityState == 'hidden') || (visibilityState == 'hide')) {
				cEOH.style.visibility = 'visible';
			};
		};

		if ((cS == 'show') || (cS == 'visible')) {
			cEOH.style.visibility = 'visible';
		} else if ((cS == 'hide') || (cS == 'hidden')) {
			cEOH.style.visibility = 'hidden';
		};
	};
};

function cED(cE, cS, dT) { // changeElementDisplay(currentElement, changeState, displayType)
	var cEOH = document.getElementById(cE); // currentElementObjectHandler

	if (cEOH) {
		displayState = cEOH.style.display;
		displayState += '';

		if (dT) {
			if ((cS == 'toggle') && ((displayState == '') || (displayState == 'inherit') || ((displayState + '') == 'undefined'))) {
				if (dT == 'block') {
					cEOH.style.display = 'block';
				} else if (dT == 'inline') {
					cEOH.style.display = 'inline';
				} else if (dT == 'list-item') {
					cEOH.style.display = 'list-item';
				};
			} else if ((cS == 'toggle') && (!((displayState == '') || (displayState == 'inherit') || ((displayState + '') == 'undefined')))) {
				if (displayState == 'none') {
					if (dT == 'block') {
						cEOH.style.display = 'block';
					} else if (dT == 'inline') {
						cEOH.style.display = 'inline';
					} else if (dT == 'list-item') {
						cEOH.style.display = 'list-item';
					};
				} else {
					cEOH.style.display = 'none';
				};
			};
		} else {
			if (cS == 'block') {
				cEOH.style.display = 'block';
			} else if (cS == 'inline') {
				cEOH.style.display = 'inline';
			} else if (cS == 'list-item') {
				cEOH.style.display = 'list-item';
			} else if (cS == 'none') {
				cEOH.style.display = 'none';
			};
		};
	};
};

function cES(cE, sA, sV) { // changeElementStyle(currentElement, styleAttribute, styleValue)
	var cEOH = document.getElementById(cE);

	if (cEOH && sA && sV) {
		cEOH.style.sA = sV;
	};
};

function hAC(tN, cN) { // hideAllClasses(tagName, className)
	var hACLoopCount = 0;

	if (document.getElementsByTagName && tN && cN) {
		selectedTagArray = new Array;
		selectedTagArray = document.getElementsByTagName(tN);

		for (loop01 = 0; loop01 < selectedTagArray.length; loop01++) {
			if (selectedTagArray[loop01].className == cN) {
				selectedTagArray[loop01].style.display = 'none';
				hACLoopCount++;
			};
		};
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Flash Player detection */

if ((navigator.plugins) && (navigator.plugins.length > 0)) {
	FlashPlayerPluginObject = navigator.plugins['Shockwave Flash'];
	if (FlashPlayerPluginObject) {
		flashinstalled = 2;
		if (FlashPlayerPluginObject.description) {
			var pluginDescription = FlashPlayerPluginObject.description;
			// flashversion = pluginDescription.charAt(pluginDescription.indexOf('.') - 1);
			flashversion = pluginDescription.split('.')[0].split('Shockwave Flash')[1];
		};
	} else {
		flashinstalled = 1;
		if (navigator.plugins['Shockwave Flash 2.0']) {
			flashinstalled = 2;
			flashversion = 2;
		};
	};

	for (loop00 = 0; loop00 < navigator.plugins.length; loop00++) {
		if (navigator.plugins[loop00].name.indexOf('QuickTime') != -1) { 
			QuickTimePlayerInstalled = 1;
			QuickTimePlayerVersion = parseFloat(navigator.plugins[loop00].name.substring(18));
		};
	};

} else if ((navigator.mimeTypes) && (navigator.mimeTypes.length)) {
	FlashPlayerPluginObject = navigator.mimeTypes['application/FlashPlayerPluginObject-shockwave-flash'];
	if ((FlashPlayerPluginObject) && (FlashPlayerPluginObject.enabledPlugin)) {
		flashinstalled = 2;
	} else {
		flashinstalled = 1;
	};

} else {
	FlashMSDetect = "true";
	QuickTimePlayerMSDetect = "true";
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Flash and QuickTime object embedding */

var eFM_ObjectTagHTML = ''; // embeddedFlashMovie_ObjectTagHML
var eFM_EmbedTagHTML = ''; // embeddedFlashMovie_EmbedTagHTML

function embedFlashMovie(eFM_Filename, eFM_Container, eFM_PlayerVersion, eFM_Width, eFM_Height, eFM_OptionalParameters) {
	eFM_ObjectTagHTML = '';
	eFM_EmbedTagHTML = '';

	if (document.getElementById(eFM_Container)) {
		var e_FlashContainer = document.getElementById(eFM_Container); // FlashContainerElement

		var eFM_IdAttribute01HTML = '';
		var eFM_IdAttribute02HTML = '';

		if (eFM_OptionalParameters) {
			var eFM_Temp01 = eFM_OptionalParameters.split(',');

			for (loop00 = 0; loop00 < eFM_Temp01.length; loop00++) {
				eFM_Temp02 = eFM_Temp01[loop00].split('=');

				if (eFM_Temp02[0] == 'id') {
					eFM_IdAttribute01HTML += 'id="' + eFM_Temp02[1] + '" ';
					eFM_IdAttribute02HTML += 'name="' + eFM_Temp02[1] + '" ';
				};
			};
		};

		// if (eFM_Filename.indexOf('http:\/\/') == -1) {
		if (eFM_Filename.indexOf('\/') == -1) {
			eFM_Filename = fDPO + mFPO + 'media\/flash\/' + eFM_Filename;
		};

		eFM_ObjectTagHTML += '<object ' + eFM_IdAttribute01HTML + 'classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http:\/\/download.macromedia.com\/pub\/shockwave\/cabs\/flash\/swflash.cab#version=' + eFM_PlayerVersion + ',0,0,0" width="' + eFM_Width + '" height="' + eFM_Height + '">';
		eFM_ObjectTagHTML += '<param name="movie" value="' + eFM_Filename + '" \/>';

		eFM_EmbedTagHTML += '<embed ' + eFM_IdAttribute02HTML + 'pluginspage="http:\/\/www.macromedia.com\/go\/getflashplayer" type="application\/x-shockwave-flash" src="' + eFM_Filename + '" width="' + eFM_Width + '" height="' + eFM_Height + '"';

		if (eFM_OptionalParameters) {
			for (loop00 = 0; loop00 < eFM_Temp01.length; loop00++) {
				eFM_Temp02 = eFM_Temp01[loop00].split('=');

				if (eFM_Temp02[0] != 'id') {
					eFM_ObjectTagHTML += '<param name="' + eFM_Temp02[0] + '" value="' + eFM_Temp02[1] + '" \/>';

					eFM_EmbedTagHTML += ' ' + eFM_Temp02[0] + '="' + eFM_Temp02[1] + '"';
				};
			};
		};

		eFM_EmbedTagHTML += '><\/embed>';
		eFM_ObjectTagHTML += eFM_EmbedTagHTML + '<\/object>';

		if ((flashinstalled == 2) && (flashversion >= eFM_PlayerVersion)) {
			e_FlashContainer.innerHTML = eFM_ObjectTagHTML;
		};
	} else {
		// alert('The necessary container element does NOT exist...');
	};
};

var eQTM_ObjectTagHTML = ''; // embeddedQuickTimeMovie_ObjectTagHML
var eQTM_EmbedTagHTML = ''; // embeddedQuickTimeMovie_EmbedTagHTML

function embedQuickTimeMovie(eQTM_Filename, eQTM_Container, eQTM_PlayerVersion, eQTM_Width, eQTM_Height, eQTM_OptionalParameters) {
	eQTM_ObjectTagHTML = '';
	eQTM_EmbedTagHTML = '';

	if (document.getElementById(eQTM_Container)) {
		var e_QuickTimeContainer = document.getElementById(eQTM_Container); // QuickTimeContainerElement

		var eQTM_IdAttribute01HTML = '';
		var eQTM_IdAttribute02HTML = '';

		if (eQTM_OptionalParameters) {
			var eQTM_Temp01 = eQTM_OptionalParameters.split(',');

			for (loop00 = 0; loop00 < eQTM_Temp01.length; loop00++) {
				eQTM_Temp02 = eQTM_Temp01[loop00].split('=');

				if (eQTM_Temp02[0] == 'id') {
					eQTM_IdAttribute01HTML += 'id="' + eQTM_Temp02[1] + '" ';
					eQTM_IdAttribute02HTML += 'name="' + eQTM_Temp02[1] + '" ';
				} else if ((eQTM_Temp02[0] == 'controller') && (eQTM_Temp02[1] == 'true')) {
					eQTM_Height += 16;
				};
			};
		};

		// if (eQTM_Filename.indexOf('http:\/\/') == -1) {
		if (eQTM_Filename.indexOf('\/') == -1) {
			eQTM_Filename = fDPO + mFPO + 'media\/quicktime\/' + eQTM_Filename;
		};

		eQTM_ObjectTagHTML += '<object ' + eQTM_IdAttribute01HTML + 'classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http:\/\/www.apple.com\/qtactivex\/qtplugin.cab" width="' + eQTM_Width + '" height="' + eQTM_Height + '">';
		eQTM_ObjectTagHTML += '<param name="type" value="video\/quicktime" \/>';
		eQTM_ObjectTagHTML += '<param name="src" value="' + eQTM_Filename + '" \/>';

		eQTM_EmbedTagHTML += '<embed ' + eQTM_IdAttribute02HTML + 'pluginspage="http:\/\/www.apple.com\/quicktime\/download\/" type="video\/quicktime" src="' + eQTM_Filename + '" width="' + eQTM_Width + '" height="' + eQTM_Height + '"';

		if (eQTM_OptionalParameters) {
			for (loop00 = 0; loop00 < eQTM_Temp01.length; loop00++) {
				eQTM_Temp02 = eQTM_Temp01[loop00].split('=');

				if (eQTM_Temp02[0] != 'id') {
					eQTM_ObjectTagHTML += '<param name="' + eQTM_Temp02[0] + '" value="' + eQTM_Temp02[1] + '" \/>';

					eQTM_EmbedTagHTML += ' ' + eQTM_Temp02[0] + '="' + eQTM_Temp02[1] + '"';
				};
			};
		};

		eQTM_EmbedTagHTML += '><\/embed>';
		eQTM_ObjectTagHTML += eQTM_EmbedTagHTML + '<\/object>';

		if (QuickTimePlayerInstalled && (QuickTimePlayerVersion >= eQTM_PlayerVersion)) {
			e_QuickTimeContainer.innerHTML = eQTM_ObjectTagHTML;
		};
	} else {
		// alert('The necessary container element does NOT exist...');
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Parse URL string to determine which section to display */

if (location.hash) {
	var hC = location.hash.substring(1,location.hash.length); // hashContent

	if ((hC == 'section1')|| (hC == 'section2') || (hC == 'section3') || (hC == 'section4')) {
		sectionToDisplay = hC + 'Container';
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dynamically embed CSS */

iSSHTML = ''; // internalStyleSheetHTML

iSSHTML += ' body { visibility: hidden; min-height: 600px; }';  // Hide the body initially so that the Flash doesn't... uh, flash
iSSHTML += ' h1 { font-size: 18px; }';
iSSHTML += ' hr.header, hr.footer, #copyright, #JavaScriptWarning, #FlashWarning { display: none; }';

iSSHTML += ' #logoContainer { max-width: 1174px; } #logo { float: right; margin: 218px 10px 4px 0px; }';

iSSHTML += ' #primaryNav { position: absolute; bottom: 40px; left: 20px; list-style: none; margin: 0px; padding: 0px; }';
	iSSHTML += ' #primaryNav li { float: left; min-width: 60px; text-align: center; text-shadow: #48c1ed 0px 0px 5px; }';
		iSSHTML += ' #primaryNav li a, #primaryNav li a:link, #primaryNav li a:active, #primaryNav li a:hover, #primaryNav li a:visited { font-family: Helvetica, Arial, sans-serif; font-size: 17px; font-weight: normal; text-transform: uppercase; text-decoration: none; outline: 0px dotted #48c1ed; }';
		iSSHTML += ' #primaryNav li a:active, #primaryNav li a:hover, #primaryNav li a.active { position: relative; font-weight: bold; text-shadow: #48c1ed 0px 0px 5px; }';
		iSSHTML += ' a:active#aboutLink, a:hover#aboutLink { letter-spacing: -1px; }';

iSSHTML += ' #content { min-height: 700px; background: no-repeat 982px 300px fixed; background-image: url(media\/images\/_blue_streak_bg.png); }';

iSSHTML += ' div.section { display: none; clear: both; width: 500px; height: 300px; overflow: auto; padding: 0px 10px 0px 470px; background: no-repeat top right; border: 2px solid #222222; border-left: 0px solid #222222; }'; // By default, hide all "sections"
	if (sectionToDisplay != '') {
		iSSHTML += ' #' + sectionToDisplay + ' { display: block; }';
	};

iSSHTML += ' #section1Container { background-image: url(' + section1_bg_image.src + '); }';
iSSHTML += ' #section2Container { background-image: url(' + section2_bg_image.src + '); }';
iSSHTML += ' #section3Container { background-image: url(' + section3_bg_image.src + '); }';
iSSHTML += ' #section4Container { background-image: url(' + section4_bg_image.src + '); }';

iSSHTML += ' #contact { width: 140px; height: 300px; overflow: hidden; margin: 0px 0px 0px 320px; padding: 0px 20px; background-image: url(' + contact_bg_image.src + '); }';

if (is_ie) {
	iSSHTML += ' #primaryNav { filter:glow(color=3691b3, strength=1); }';

	iSSHTML += ' div.section { background-position: 0px 302px; background-attachment: fixed !important; scrollbar-face-color: #333333; scrollbar-track-color: #181818; scrollbar-shadow-color: #181818; scrollbar-3dlight-color: #222222; scrollbar-arrow-color: #8ae0ff; scrollbar-darkshadow-color: #222222; scrollbar-highlight-color: #484848; }'; // 
};

if (is_firefox && !is_firefox3up) {
	// iSSHTML += ' #content { -moz-opacity: 1; }';
	// iSSHTML += ' #socialBookmarkingLinks ul li a img.socialBookmarkingIcon { -moz-opacity: 0.5; } #socialBookmarkingLinks ul li a:hover img.socialBookmarkingIcon { -moz-opacity: 1; }';

	if (is_mac) {
		// iSSHTML += ' #FlashMovieContainer { overflow: visible; } #FlashMovieContainer img#closeButton { position: static; margin: 0px; }';
	};
};

if (is_safari) {
	iSSHTML += ' a:active#aboutLink, a:hover#aboutLink { letter-spacing: 0px; }';
	// iSSHTML += ' #primaryNav li a:active, #primaryNav li a:hover { padding: 0px 5px; }';
};

if (document.write) {
	iSSHTML = '<st' + 'yle type="te' + 'xt\/css" me' + 'dia="scr' + 'een"><!-' + '-' + iSSHTML + '-' + '-><\/sty' + 'le>';
	document.write(iSSHTML);
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Page initialization */

window.onload = function() {
	// window.scrollTo(0,0);
	pI(); // pageInitialization
	aPI(); // additionalPageInitialization
};

function pI() {
	if (document.getElementById && document.getElementsByTagName) {
		e_body = document.getElementsByTagName('body')[0];
			e_body.id = 'VFX';

		e_logo = document.getElementById('logo');
		e_content = document.getElementById('content');

		// Replace the logo
		VFX_pI_rL();

		// Rewrite menu links
		VFX_pI_rML();

		// Style menu links
		VFX_pI_sML();

		// Remove section anchors
		VFX_pI_rSA();

		// Uncloak email address
		VFX_pI_uCEA();

		// Restyle the Flash
		VFX_pI_eFM();

		// Show the body
		VFX_pI_sB();
	};
};

function aPI() {
	// doNothing();
};

// Replace the logo
function VFX_pI_rL() {
	e_logo.src = logo_replacement_image.src;
};

// Rewrite menu links
function VFX_pI_rML() { 
	e_menuLinks = document.getElementsByTagNameAndClassName('a', 'menu');

	if (e_menuLinks.length != 0) {
		for (loop00 = 0; loop00 < e_menuLinks.length; loop00++) {
			e_menuLinks[loop00].className = 'menu';

			e_menuLinks[loop00].onclick = function() {
				VFX_pI_rML(); // re-call this function to rewrite the menu links

				sectionToDisplayTemp = this.href.split('#');
				sectionToDisplay = sectionToDisplayTemp[1] + 'Container';

				hAC('div', 'section');
				cED(sectionToDisplay, 'block');
				// VFX_pI_eFM(0); // Shut the Flash movie off, if necessary

				this.className = 'menu active';
			};
		};
	};
};

// Style menu links
function VFX_pI_sML() { 
	if (e_menuLinks.length != 0) {
		for (loop00 = 0; loop00 < e_menuLinks.length; loop00++) {
			if (e_menuLinks[loop00].childNodes[0].nodeValue == 'About Us') {
				e_menuLinks[loop00].parentNode.style.width = '94px';
			};

			if (e_menuLinks[loop00].childNodes[0].nodeValue == 'Contact') {
				e_menuLinks[loop00].parentNode.style.width = '84px';
			};

			if ((e_menuLinks[loop00].href.split('#')[1] + 'Container') == sectionToDisplay) {
				e_menuLinks[loop00].className += ' active';
			} else {
				// e_menuLinks[loop00].className = 'menu';
			};
		};
	};
};

// Style section anchors
function VFX_pI_rSA() { 
	e_sectionAnchors = document.getElementsByTagNameAndClassName('a', 'sectionAnchor');

	if (e_sectionAnchors.length != 0) {
		for (loop00 = 0; loop00 < e_sectionAnchors.length; loop00++) {
			e_sectionAnchors[loop00].parentNode.removeChild(e_sectionAnchors[loop00]);
		};
	};
};

// Uncloak email address
function VFX_pI_uCEA() {
	e_CEA = document.getElementsByTagNameAndClassName('span', 'cloakedEmail'); // cloakedEmailAddresses

	e_CEA_Replacement_Links = new Array;

	for (loop00 = 0; loop00 < e_CEA.length; loop00++) {
		e_CEA_Replacement_Links[loop00] = document.createElement('a');
			emailAddressTemp = e_CEA[loop00].childNodes[0].nodeValue;
			emailAddressTemp.replace('%28-at-%29','(-at-)');
			if (emailAddressTemp.indexOf('(-at-)') != -1) {
				emailAddressTemp2 = emailAddressTemp.split('(-at-)');
				emailAddress = emailAddressTemp2[0] + '@' + emailAddressTemp2[1];
			};
			e_CEA_Replacement_Links[loop00].href = 'mailto:' + emailAddress;

		e_CEA_Replacement_Links[loop00].appendChild(document.createTextNode(emailAddress))
		
		e_CEA[loop00].parentNode.replaceChild(e_CEA_Replacement_Links[loop00], e_CEA[loop00]);
	};
};

// Embed Flash movie
function VFX_pI_eFM() {
	// alert(FlashFile)

	FlashFileWidth = '100%';
	FlashFileHeight = '100%';
		if (is_firefox) {
			FlashFileHeight = window.innerHeight;
		};

	embedFlashMovie(FlashFile, e_body.id, FlashPlayerVersionRequired, FlashFileWidth, FlashFileHeight, 'menu=false,quality=best,wmode=transparent,align=middle,id=fullscreen,name=fullscreen,allowfullscreen=true,allowscriptaccess=samedomain,movie=vividusFX');

	// e_body.style.backgroundImage = 'none';
};

// Show the body
function VFX_pI_sB() {
	if (e_body) {
		e_body.style.visibility = 'visible';
	};
};

