// JavaScript Document
var $j = jQuery.noConflict();

var bucketTextArray = ['Strategize', 'Conceptualize', 'Execute', 'Measure', 'Maintain'];
var bucketColorArray = ['red', 'orange', 'green', 'blue', 'purple'];

//Homepage slideshow variables
var globalSlideshowTimeout = 5000;
var slideShowIndex = 0;

//Homepage email form variables
var fieldstocheck = new Array();
var fieldnames = new Array();

var groupstocheck = new Array();
var groupnames = new Array();

function showNextHomePageHero() {
	nextslide = slideShowIndex + 1;
	if(nextslide > (bucketTextArray.length - 1)) {
		nextslide = 0;
	}	
	showHomePageHero(nextslide);
}

function showHomePageHero(bucketIndex) {
	
	slideShowIndex = bucketIndex;
	
	var bucketName = bucketTextArray[bucketIndex];
	var bucketColor = bucketColorArray[bucketIndex];
	
	// hide all li items whose ids start with 'slide'
	$j('#widget li[id^=slide]').hide();
	// show the slide they've selected
	$j('#slide'+bucketName).show();
	// set the 'off' class for all the picker items
	$j('.homePageHeroPicker ul li a').removeClass('pickeron');
	// set the 'on' class for the one picker that's selected
	$j('.homePageHeroPicker ul li a[id$=' + bucketName + ']').addClass('pickeron');

	changeClass('header', bucketColor);		
	changeClass('footer', bucketColor);	
}

// Assuming every page has one of the 5 class names,
// set the corresponding link to "current"
function highlightNavLink(sLinkId) {	
	
	var ids = [
			'navbucket1',
			'navbucket2',
			'navbucket3',
			'navbucket4',
			'navbucket5'
		];
	
	// Clear any 'current' nav links
	$j('.topNav a').removeAttr('id');

	// If valid ID passed in, just make current
	if (sLinkId != null && sLinkId in convertArrayToObj(ids)) {	
		//$j(this).attr("id", "current");
		$j('#' + sLinkId).children("a").attr("id", "current");		
		return true;
	}
}

// Iterates thru array and
// assigns as new obj properties
function convertArrayToObj(a) {
  var o = {};
  for(var i=0;i<a.length;i++)
  {
    o[a[i]]='';
  }
  return o;
}

function changeClass(elementId, className) {
	$j('#' + elementId).attr("class", className); 
}


/**
 * Validate email address with RegEx
 * 
 * @param {string} email Email address to test
 * @return {Boolean} 
 */
function emailAddressIsValid(email) {
	var emailRegex = "^[\\w-_\.+]*[\\w-_\.]\@([\\w]+\\.)+[\\w]+[\\w]$";
	var regex = new RegExp(emailRegex);
	return regex.test(email);
}

$j(document).ready(function(){

	// Handle footer link hover events
	$j('#footer_links > div').each(function() {
		var targetId = 'img' + ($j(this).index() + 1);
		
		$j('a', $j(this)).hover(
			function() {
				$j('#'+targetId).attr('class', 'visible');
			},
			function() {
				$j('#'+targetId).attr('class', 'invisible');
			}
		);
	});

});



