var auto;

function paginate_widget(){
	var $y=$('#widget_nav a.activeSlide');
	var $widget_key=$y.parent().prevAll().length;
	var $widget_length=$('.tab').length;
	$widget_length=$widget_length-1;
	$widget_key=$widget_key+1;
	if($widget_key>$widget_length){
		$widget_key=0;
	}
	$('.tab').removeClass('activeSlide');
	$('.tab:eq('+$widget_key+')').addClass('activeSlide');
	$('.widget').hide();
	$('.widget:eq('+$widget_key+')').show();	
}

$(document).ready(function() {
	  
	  $('.paginate').removeClass('activeSlide');
	  $('.paginate:first').addClass('activeSlide');
	  auto=setInterval( 'paginate_widget()', 45000 );
	  $('#search_by_race').change(function(){
						window.location.href = $(this).val();  
						  });
	  
	  
	  
	  if($('#mycarousel').html()!='' && $('#mycarousel').html()!=null){

	  jQuery('#mycarousel').jcarousel({
        //scroll: 3,
        initCallback: mycarousel_initCallback,

		// This tells jCarousel NOT to autobuild prev/next buttons
        buttonNextHTML: null,
        buttonPrevHTML: null

    });
	  }
	  
	  // Add Scroller Object
  $jScroller.add("#scroller_container","#scroller","left",2,true);

  // Start Autoscroller
  $jScroller.start();
	  
	  
	  

		$('#widget_nav a').removeClass('activeSlide');
		$('#widget_nav a:first').addClass('activeSlide');
		var $widget_links=$('#widget_nav a');
		$('#widget_nav a').click(function(){
			clearInterval(auto);
			var $widget_key=$widget_links.index(this);
			
			$widget_key=$widget_key+2;
			$('.widget').hide();
			$('.widget:nth-child('+$widget_key+')').fadeIn('fast');
			
			$('#widget_nav a').removeClass('activeSlide');
		 	$(this).addClass('activeSlide');
		 });
		 
		 $('.widget').hide();
		 $('.widget:first').show();
         
		 
		 $('.next').click(function(){
		 	$(this).hide();
		 	$('.prev').show();
		 });
		 
		 $('.prev').click(function(){
		 	$(this).hide();
		 	$('.next').show();
		 });
		 
		 
		 $("#more_races_senate").click(function () {
			clearInterval(auto);
		  $("#more_races_table_senate").slideToggle("slow");
		  if($(this).html()=='Click Here for More Races'){
		  	$(this).html('Click Here for Fewer Races');
			$(this).removeClass('more');
			$(this).addClass('less');
		  }else{
		  	$(this).html('Click Here for More Races');
			$(this).addClass('more');
			$(this).removeClass('less');
		  }
		});
		
		
		
		
		$("#more_races_governor").click(function () {
			clearInterval(auto);
		  $("#more_races_table_governor").slideToggle("slow");
		  if($(this).html()=='Click Here for More Races'){
		  	$(this).html('Click Here for Fewer Races');
			$(this).removeClass('more');
			$(this).addClass('less');
		  }else{
		  	$(this).html('Click Here for More Races');
			$(this).addClass('more');
			$(this).removeClass('less');
		  }
		});


      });

function mycarousel_initCallback(carousel) {
	jQuery('.controls a.paginate').bind('click', function() {
		 $('.paginate').removeClass('activeSlide');
		 jQuery(this).addClass('activeSlide');
        carousel.scroll(jQuery.jcarousel.intval(jQuery(this).attr('name')));
        //alert();
		return false;
    });
    jQuery('#mycarousel-next').bind('click', function() {
		var $paginate_links=$('.paginate');
		var $paginate_size=$paginate_links.size();
		var $paginate_key=$paginate_links.index($('.activeSlide'));

		$paginate_key=$paginate_key+2;
		
		if($paginate_key<=$paginate_size){
			$('.paginate').removeClass('activeSlide');
			$('.paginate:nth-child('+$paginate_key+')').addClass('activeSlide');
		}
		carousel.next();
        return false;
    });

    jQuery('#mycarousel-prev').bind('click', function() {
		var $paginate_links=$('.paginate');
		var $paginate_size=$paginate_links.size();
		var $paginate_key=$paginate_links.index($('.activeSlide'));

		if($paginate_key>=0){
			$('.paginate').removeClass('activeSlide');
			$('.paginate:nth-child('+$paginate_key+')').addClass('activeSlide');
		}											  
													  
        carousel.prev();
        return false;
    });
};
