jQuery(document).ready(function(){

	// Checks the browser and adds classes to the body to reflect it.
	// author: Jon Hobbs-Smith   http://www.tvidesign.co.uk/blog/CSS-Browser-detection-using-jQuery-instead-of-hacks.aspx
	var userAgent=navigator.userAgent.toLowerCase();$.browser.chrome=/chrome/.test(navigator.userAgent.toLowerCase());if($.browser.msie){$('body').addClass('msie');$('body').addClass('msie'+$.browser.version.substring(0,1))}if($.browser.chrome){$('body').addClass('chrome');userAgent=userAgent.substring(userAgent.indexOf('chrome/')+7);userAgent=userAgent.substring(0,1);$('body').addClass('chrome'+userAgent);$.browser.safari=false}if($.browser.safari){$('body').addClass('safari');userAgent=userAgent.substring(userAgent.indexOf('version/')+8);userAgent=userAgent.substring(0,1);$('body').addClass('safari'+userAgent)}if($.browser.mozilla){if(navigator.userAgent.toLowerCase().indexOf('firefox')!=-1){$('body').addClass('firefox');userAgent=userAgent.substring(userAgent.indexOf('firefox/')+8);userAgent=userAgent.substring(0,1);$('body').addClass('firefox'+userAgent)}else{$('body').addClass('mozilla')}}if($.browser.opera){$('body').addClass('opera')}

	$("#mainnav-jd-1").attr('href','javascript:void(0)');
	$("#mainnav-jd-4").attr('href','javascript:void(0)');

	$(".cssir").cssir();

	$(".cssiroo").cssir({
	  onOver: true
	});

	$(".cssir_acc1").cssir({
	   onOver: true,
	   spanClassNameFromParent:"h3"
	});


	$("#accordion1").gclaccordion({
		openContentOnLoad : 0
	});


	$("#accordion2").gclaccordion({
		openContentOnLoad : -1
	});


	$("#slideItems").hslide({
		slideLinksID  : 'slideLinks',
		slideItemWidth: 968,
		slideDelay    : 25000,
		slideSpeed    : 1500
	});


	$("#slideItems2").hslide({
		slideLinksID  : 'slideLinks2',
		slideItemWidth: 968,
		slideDelay    : 25000,
		slideSpeed    : 1500
	});

	jQuery("#vSlideItems").vslide({
		slideLinksID  : 'vSlideLinks'
	});

	jQuery(".innermenu-link").gclbutton({ fixedWidth:true });

});


///////////////////////////////////////////////////////////////////////////////
// [JQuery Accordion Plugin] //////////////////////////////////////////////////
(function($) {
$.fn.gclaccordion = function(options) {

	var defaults = {
		slideSpeed        : 400,  // How quickly should the accordion scroll?
		hideActiveLink    : true, // Hide clicked link?
		activeClass       : "active_header", //
		contentClass      : "accordionContent", //Content divs class name
		openContentOnLoad : -1,   //If -1, all tabs will be closed on load, else open content at given pos
		onOverSuffix: "_oo"
	},
    settings = $.extend({}, defaults, options),
	$this = $(this),
	$accordionlinks, $accordioncontents;

	$accordionlinks = $this.find("h3 > a");
	$accordioncontents = $this.find("."+settings.contentClass);

	$accordioncontents.hide();

	if(settings.openContentOnLoad > -1) {
		if(settings.activeClass != null && settings.activeClass != "") {
			$accordionlinks.eq(settings.openContentOnLoad).addClass(settings.activeClass);
		}
		if(settings.hideActiveLink) {
			$accordionlinks.eq(settings.openContentOnLoad).hide();
		}
		$accordioncontents.eq(settings.openContentOnLoad).show();
	}

	$accordionlinks.attr({'href': 'javascript:void(0)'}).click(function(){
		$accordionlinks.show("fast");
		if(settings.hideActiveLink) {
			$(this).animate({opacity: "hide"}, 500);
		}
		if(settings.activeClass != null && settings.activeClass != "") {
			$(this).addClass(settings.activeClass)
		}
		$(this).parent().next("div").slideToggle(settings.slideSpeed).siblings("div:visible").slideUp(settings.slideSpeed);
	});


	// returns the jQuery object to allow for chainability.
    return this;

};
})(jQuery);




///////////////////////////////////////////////////////////////////////////////
// [JQuery CSS Image Replacement Plugin] //////////////////////////////////////
(function($) {
$.fn.cssir = function(options) {

	var defaults = {
		spanClassName:null,
		spanClassNameFromParent:null,
		onOver: false,
		onOverSuffix: "_oo"
	},
    settings = $.extend({}, defaults, options);

	return this.each(function() {
		var $this = $(this),
		$span, className;

		if(settings.spanClassName != null && settings.spanClassName != "") {
			className = settings.spanClassName;
		} else if(settings.spanClassNameFromParent != null && settings.spanClassNameFromParent != "") {
			className = $this.parents(settings.spanClassNameFromParent).attr("id") + "_span";
		} else {
			className = $this.attr("id") + "_span"; //$("#debug").append("<br />" + className);
		}

		$span = $('<span class="'+className+'"> </span>'); //$span = $(document.createElement("span"));
		$this.append($span);
		if(settings.onOver) {
			$this.hover(function () {
				$span.removeClass(className).addClass(className+settings.onOverSuffix);
			},function () {
				$span.removeClass(className+settings.onOverSuffix).addClass(className);
			});
		}

	});
};
})(jQuery);




(function($){$.fn.vslide=function(options){var defaults={slideLinksID:'vSlideLinks'},settings=$.extend({},defaults,options),$this=$(this),slideCurPos=-1,slideInterval,$slideLinks,$slideItems;$slideLinks=$("#"+settings.slideLinksID+" li a");$slideItems=$this.find("li.vSlideItem");$slideLinks.attr({'href':'javascript:void(0)'}).eq(0).hide();$slideItems.slice(1).hide();$slideLinks.click(function(){if(slideCurPos!=$slideLinks.index(this)){slideCurPos=$slideLinks.index(this);$slideLinks.animate({opacity:"show"},500);$(this).animate({opacity:"hide"},50);$slideItems.hide().eq(slideCurPos).fadeIn("slow")}});return this}})(jQuery);

(function($){$.fn.hslide0=function(options){var defaults={previousLinkID:"slide-previous-link",nextLinkID:"slide-next-link",slideLinksID:'slideLinks',slideItemWidth:867,slideDelay:5000,slideSpeed:1500,slideOnLoad:true},settings=$.extend({},defaults,options),$this=$(this),slideCurPos=0,slideItemCount,slideInterval,$slideLinks,$slideItems;$slideLinks=$("#"+settings.slideLinksID+" li");$slideItems=$this.find("li.slide_item");$("#"+settings.slideLinksID+" a").attr({'href':'javascript:void(0)'});slideItemCount=$slideItems.size();if(settings.slideOnLoad){slideTo();slideInterval=setInterval(slideToNext,settings.slideDelay)}$("#"+settings.previousLinkID).attr({'href':'javascript:void(0)'}).click(function(){slideToPrevious()});$("#"+settings.nextLinkID).attr({'href':'javascript:void(0)'}).click(function(){slideToNext()});$slideLinks.click(function(){if(slideCurPos!=$slideLinks.index(this)){clearInterval(slideInterval);slideCurPos=$slideLinks.index(this);slideTo();if(settings.slideOnLoad){slideInterval=setInterval(slideToNext,settings.slideDelay)}}});function slideToPrevious(){clearInterval(slideInterval);slideCurPos--;if(slideCurPos<0){slideCurPos=slideItemCount-1}slideTo();if(settings.slideOnLoad){slideInterval=setInterval(slideToNext,settings.slideDelay)}}function slideToNext(){clearInterval(slideInterval);slideCurPos++;if(slideCurPos>=slideItemCount){slideCurPos=0}slideTo();if(settings.slideOnLoad){slideInterval=setInterval(slideToNext,settings.slideDelay)}}function slideTo(){$slideLinks.find("a").show();$slideLinks.eq(slideCurPos).find("a").hide();var slideTo=(slideCurPos*settings.slideItemWidth);$this.animate({marginLeft:"-"+slideTo+"px"},settings.slideSpeed)}return this}})(jQuery);



///////////////////////////////////////////////////////////////////////////////
// [JQuery Horizontal Slide Plugin] ///////////////////////////////////////////
(function($) {
$.fn.hslide = function(options) {

	var defaults = {
		previousLinkID: "slide-previous-link",
		nextLinkID    : "slide-next-link",
		slideLinksID  : 'slideLinks',
		slideItemWidth: 968,
		slideDelay    : 25000,  // How long a rest between transitions?
		slideSpeed    : 1500,  // How quickly should the items scroll?
		slideOnLoad   : true,
		redirectOnDoubleClick: true  //redirect to page if slideLink is doubleclicked
	},
    settings = jQuery.extend({}, defaults, options),
	$this = jQuery(this),
	slideCurPos = 0, slideItemCount, slideInterval, $slideLinks, $slideItems;

	$slideLinks = jQuery("#"+settings.slideLinksID+" li");
	$slideItems = $this.find("li");

   jQuery.each($slideLinks, function() {
	  jQuery(this).data("href", jQuery(this).find("a").attr("href"));
	  jQuery(this).find("a").attr({ 'href': 'javascript:void(0)' });
   });
   //jQuery("#"+settings.slideLinksID+" a").attr({ 'href': 'javascript:void(0)' });

	slideItemCount = $slideItems.size();

	if(settings.slideOnLoad) {
		slideTo();
		slideInterval = setInterval(slideToNext, settings.slideDelay);
	} else {
		slideTo();
	}

	jQuery("#"+settings.previousLinkID).attr({ 'href': 'javascript:void(0)' }).click(function() { slideToPrevious(); });
	jQuery("#"+settings.nextLinkID).attr({ 'href': 'javascript:void(0)' }).click(function() { slideToNext(); });

	$slideLinks.click(function() {
        if (slideCurPos != $slideLinks.index(this)){
          clearInterval(slideInterval);
          slideCurPos = $slideLinks.index(this);
          slideTo();
		  if(settings.slideOnLoad) { slideInterval = setInterval(slideToNext, settings.slideDelay); }
        }  else if (settings.redirectOnDoubleClick){
			window.location = jQuery(this).data("href");
		}
	});

	function slideToPrevious() {
	  clearInterval(slideInterval);
	  slideCurPos--;
	  if (slideCurPos < 0) { slideCurPos = slideItemCount - 1; }
	  slideTo();
	  if(settings.slideOnLoad) { slideInterval = setInterval(slideToNext, settings.slideDelay); }
	}

	function slideToNext() {
	  clearInterval(slideInterval);
	  slideCurPos++;
	  if (slideCurPos >= slideItemCount) { slideCurPos = 0; }
	  slideTo();
	  if(settings.slideOnLoad) { slideInterval = setInterval(slideToNext, settings.slideDelay); }
	}

	function slideTo() {
	  $slideLinks.find("a").show();
	  $slideLinks.eq(slideCurPos).find("a").hide();
	  $this.stop();
	  $slideItems.animate({opacity: "hide"}, 500);
	  $slideItems.eq(slideCurPos).animate({opacity: "show"}, 800);
	  //$slideItems.hide("slow");
	  //$slideItems.eq(slideCurPos).show("slow");
	  //var slideTo = (slideCurPos * settings.slideItemWidth);
	  //$this.animate({ marginLeft: "-" + slideTo + "px" }, settings.slideSpeed);
	}

	// returns the jQuery object to allow for chainability.
    return this;
};
})(jQuery);

var tabCurPos = 0;
var $gclTabLinks;
var $gclTabLinkCells;
var $gclTabPanels;
var $gclTabNext;
var myFile;
var myAnchor;
var tempTabCurPos = 0;

$(document).ready(function() {
	$("#tab_menu a").addClass("tab_link");
	$gclTabLinks     = $(".tab_link");
	$gclTabLinkCells = $("#tab_menu li");
	$gclTabPanels    = $(".tab_panel");
    $gclTabNext      = $(".tab_next");

	$gclTabPanels.hide();

	function toggleTab() {
		$gclTabLinkCells.removeClass("tab_selected");
		$gclTabLinkCells.eq(tabCurPos).addClass("tab_selected");
		$gclTabPanels.hide("fast");
		$gclTabPanels.eq(tabCurPos).show(500);
	}


	myFile = document.location.toString();
	if (myFile.match('#')) {
	  myAnchor = myFile.split("#")[1];
	  tempTabCurPos = 0;
	  $gclTabLinks.each(function() {
		if ( $(this).attr('href') == '#'+myAnchor ) { tabCurPos = tempTabCurPos; toggleTab(); }
		tempTabCurPos++;
	  });
	} else {
		// by default, first tab is selected
		tabCurPos = 0;
		toggleTab();
	}
	$gclTabLinks.click(function () {
      if(tabCurPos != $gclTabLinks.index(this)) {
      	tabCurPos = $gclTabLinks.index(this);
		toggleTab();
		}
	});


    $gclTabNext.click(function () {
		myFile = $(this).attr("href");
		if (myFile.match('#')) {
		  myAnchor = myFile.split("#")[1];
		  tempTabCurPos = 0;
		  $gclTabLinks.each(function() {
			if ( $(this).attr('href') == '#'+myAnchor ) { tabCurPos = tempTabCurPos; toggleTab(); }
			tempTabCurPos++;
		  });
		}
	});

});




///////////////////////////////////////////////////////////////////////////////
// [JQuery BUTTON Plugin] /////////////////////////////////////////////////////
(function($) {
$.fn.gclbutton = function(options) {
	var defaults = {
		fixedWidth   : false
		,baseClasses : "ui-button ui-widget ui-state-default ui-corner-all"
		,hoverClass  : "ui-state-hover"
		,focusClass  : "ui-state-focus"
	},
	maxWidth=0, thisWidth=0,
	settings = $.extend({}, defaults, options);

	this.each(function() {
		var $this = jQuery(this);
		$this.addClass( settings.baseClasses );
		jQuery( '<span class="ui-button-text">'+$this.text()+'</span>' ).appendTo( $this.empty() );
		$this.mouseenter(function(){
		   $this.addClass( settings.hoverClass );
		}).mouseleave(function(){
		   $this.removeClass( settings.hoverClass );
		});

		if(settings.fixedWidth) {
		   thisWidth = $this .width();
		   if(maxWidth < thisWidth) { maxWidth = thisWidth; }
		}
	});

	maxWidth +=15;

	if(settings.fixedWidth) {
	   this.each(function() {
	      jQuery(this).width(maxWidth);
	   });
	}

	return this;
};
})(jQuery);
