// JavaScript Document
jQuery.noConflict();
jQuery.fn.reverse = [].reverse;
var autoloopmain  = true;
var mainInterval  = false;
var mainDelay     = 5;
var mainfade      = 1000;
var currMainImage = 1;	 //Starts at 1!!

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

	var agent = navigator.userAgent.toLowerCase(); 

	if ($.browser.msie) {

		$('body').addClass('ie ie'+$.browser.version.substr(0,1));

	} else if (agent.match(/chrome/i)) {

		$('body').addClass('chrome');

	} else if (agent.match(/safari/i)) {

		$('body').addClass('safari');

	}

	if (agent.match(/iphone/i)) {

		$('body').addClass('iphone');

	}

    $('#topMenu li:has(a)').click(function(e) {

		if (e.target.nodeName != 'A') {

			window.location = $(this).children('a').attr('href');
			$(this).parents('#topMenu li').unbind('click');

		}

	});

	$('#topMenu li').hover(function() { $(this).addClass('hover'); }, function() { $(this).removeClass('hover'); });
	$('#topMenu li.hasSubMenu').hover(function() { $(this).children('ul').show(); }, function () { $(this).children('ul').hide(); });

	$('li:has(.selected)').addClass('selected');

	$('ul').each(function() { $(this).children('li').first().addClass('first'); });
	$('ul').each(function() { $(this).children('li').last().addClass('last'); });

	$('#headerintro p').first().addClass('first');
	$('#headerintro p').last().addClass('last');

	$('#footer table td').first().addClass('first');
	$('#footer table td').last().addClass('last');

	$('.biginternallink').first().addClass('first');
	$('.biginternallink').last().addClass('last');

	$('.sidebar-right-item').first().addClass('first');
	$('.sidebar-right-item').last().addClass('last');

	$('.clearOnFocus').focus(function() { if ($(this).val() == $(this).attr('alt')) { $(this).val(''); } $(this).addClass('hasfocus'); $(this).addClass('hascontent'); });
	$('.clearOnFocus').blur(function()  { if ($(this).val() == '') { $(this).val($(this).attr('alt')); $(this).removeClass('hascontent'); } $(this).removeClass('hasfocus'); });

	$('table tbody').each(function() { $(this).children('tr:odd').addClass('even'); $(this).children('tr:even').addClass('odd'); });

	var numMainImages = $('#headerimages img').length;

	$('#header #navbuttons #navPrev').click(function(e) { showMainImage(currMainImage = (currMainImage - 1 < 1 ? numMainImages : currMainImage - 1)); });
	$('#header #navbuttons #navNext').click(function(e) { showMainImage(currMainImage = (currMainImage + 1 > numMainImages ? 1 : currMainImage + 1)); });
	$('#header #navbuttons #navPause').click(function(e) { pauseMainImage(); $(this).addClass('hidden'); $('#header #navbuttons #navPlay').removeClass('hidden'); });
	$('#header #navbuttons #navPlay').click(function(e) { startMainImage(); $(this).addClass('hidden'); $('#header #navbuttons #navPause').removeClass('hidden'); });

	startMainImage();

	//Validate newsletter form (basic validation!)
	if ($('.newsletter_form').length > 0) {

		$('.newsletter_form').submit(function() {

			var returnVal = true;
			var firstOffender = false;

			$(this).find('input:text').each(function() {

				if (firstOffender == false) {

					if ($(this).val() == '' || $(this).val() == $(this).attr('alt')) {
						returnVal = false;
						firstOffender = $(this);
					} else if ($(this).hasClass('email-input')) {
						if ($(this).val().indexOf('@') < 0 || $(this).val().lastIndexOf('.') < $(this).val().indexOf('@')) {
							returnVal = false;
							firstOffender = $(this);
						}
					}

				}

			});

			firstOffender.focus();
			return returnVal;

		});

	}
	//End Validate newsletter form

});

function showMainImage(picToShow) {

	pauseMainImage();

	//Fade
	jQuery("#headerimages img").fadeOut(mainfade);
	jQuery("#headerimages img").eq(currMainImage - 1).fadeIn(mainfade);

	jQuery('#headercaption span').html(jQuery("#headerimages img").eq(currMainImage - 1).attr('alt'));

	startMainImage();

}

function pauseMainImage() {

	//Clear auto-loop timer
	clearInterval(mainInterval);

}

function startMainImage() {

	//Restart timer if auto-loop is on (has not been paused by user)
	autoloopmain == true ? mainInterval = setInterval("jQuery('#header #navbuttons #navNext').click()", mainDelay * 1000) : false;

}
