var lastTransition = new Date().getTime();

/**
 * controls changes depending on tab selected
 **/

function doTransition(tabName)
{
		  var jTab = $('#' + tabName + '_tab');
		  jTab.click(function() {
                                    if(jTab.hasClass('selected')) {
                                                      return;
                                    }
				    lastTransition = new Date().getTime();
				    $('.solution_tab').removeClass('selected');
				    
				    var fadeoutGroup = jTab.add('.solution_tab_info_wrapper:visible');
				    var fadeoutGroup = jTab.add('#solution_wrapper');
				    var completionCountdown = fadeoutGroup.size();
				    fadeoutGroup.fadeOut(500,function() {
							 completionCountdown--;
							 if(completionCountdown == 0)
							 {
									   $('#solution_wrapper').css("background-image", "url(_images/splash_image_" + tabName + ".png)");
									   $('#solution_wrapper').fadeIn(500);
									   jTab.addClass('selected');
									   jTab.fadeIn(500);
									   $('.solution_tab_info_wrapper').removeClass('active');
									   $('#'+ tabName + '_info_wrapper').addClass('active').fadeIn(500);
							 }
				    });
				 });
}

function preload(arrayOfImages) {
    $(arrayOfImages).each(function(){
        $('<img/>')[0].src = this;
    });
}

$(document).ready(function()
{
		  /**
		  * preload images
		  **/
		 
		 preload([
			'_images/splash_image_executive.png',
			'_images/splash_image_insurance.png',
			'_images/splash_image_medical.png',
			'_images/splash_image_RED.png',
			'_images/splash_image_transport.png'
		 ]);
		 
		 /**
		  * client carousel controls
		  **/
		  
	    $('#client_imgs_wrapper ul').carouFredSel({
		  width: 910,
		  height: 75,
		  scroll: 2000,
		  next: '#right_nav',
		  prev: '#left_nav',
		  auto: false
	  });
	    
	    /**
	     * transition between tabs
	     **/
	    
	    doTransition('transport');
	    doTransition('medical');
	    doTransition('insurance');
	    doTransition('executive');
	    doTransition('red');
	    
	    var pause = false;
	    
	    /**
	     * play/pause control for tab animation
	     **/
	    
	    $('#play_pause').css('cursor', 'pointer').click(function() {
		  if($(this).hasClass('pause')){
			  $(this).removeClass('pause');
			  pause = true;
		  } else {
			  $(this).addClass('pause');
			  pause = false;
		  }
	  })
	    
		  $('#solution_wrapper').everyTime(15000, 'slideChange', function() {
			if(pause==false){
				    if(new Date().getTime() - lastTransition < 6000)
				    {
							 return;
				    }
				    var nextSelected = $('.solution_tab.selected').next();
				    if(nextSelected.size() != 1)
				    {
							$('#transport_tab').trigger('click');
				    } else
				    {
							 nextSelected.trigger('click');
				    }
			}
		  }, 100000000);
		  
		  /**
		   * scroll solution bars automatically and w/ click
		   **/
		  
	    $("#solution_anim_wrapper").carouFredSel({
		  items: {visible:3, minimum:3},
		  height	    : 678,
		  direction   : "down",
            auto: {pauseDuration:20000},
		  scroll: {items: 1, duration:2000},
		  prev    : ".solution_bar_wrapper"
		  });
	    
		  $("#solution_anim_wrapper_option").change(function() {
		  var val = $(this).val();
		  $("#solution_anim_wrapper").trigger("configuration", ["scroll.fx", val]).trigger("next");
		  });
});

