


function mycarouselCreateObject(carousel, idx) {
	
	if( ArrCarouselObjects[ idx ] == undefined )
	{
		ArrCarouselObjects[ idx ] = carousel;
	}
	
}

function mycarouselSetClicks(carousel) {
	
	
	$('#mycarousel-next').unbind('click');
	
	
	$('#mycarousel-next').bind('click', function() {
		carousel.next();
		return false;
	});

	$('#mycarousel-prev').unbind('click');

	$('#mycarousel-prev').bind('click', function() {
		carousel.prev();
		return false;
	});
	
}

function mycarouselInitCallback(carousel, func) {
	
	var HtmlEl = carousel.list;
	//alert(HtmlEl.index());
	
	var CurrentTab = $(HtmlEl);
	var CurrentTabIndex = $('ul.slide').index(CurrentTab.get(0));
	
	
	//alert('current tab:'+CurrentTabIndex);
	mycarouselCreateObject(carousel, CurrentTabIndex);
	
	mycarouselSetClicks(carousel);
}


function initOneCarouselObject(obj)
{
	var size = $(obj).children().size();
	
	//var init = $(obj).hasClass("show");
	
	//if( init )
	{

		$(obj).jcarousel({
			wrap: 'both',
			size: size,
			scroll: 1,
			initCallback: mycarouselInitCallback/*,
			// This tells jCarousel NOT to autobuild prev/next buttons
			buttonNextHTML: '',
			buttonPrevHTML: ''*/
		});

	}
	//else
	{
		/*
		if( $(obj).parent().hasClass('tabContentOff') )
		{
			$(obj).parent().removeClass('tabContentOff').addClass('tabContentOn');
		}
		
		$(obj).jcarousel({
			wrap: 'both',
			visible: 3,
			initCallback: mycarousel_initLock,
			itemLastInCallback: {onBeforeAnimation: itemLastIn_cb},
			itemLastOutCallback: {onBeforeAnimation: itemLastOut_cb},
			itemVisibleInCallback: {onBeforeAnimation: itemVisibleIn_cb},
			itemVisibleOutCallback: {onBeforeAnimation: itemVisibleOut_cb},
			// This tells jCarousel NOT to autobuild prev/next buttons
			buttonNextHTML: '',
			buttonPrevHTML: ''
		});
		*/
	}
  

}


function prepareCarousels()
{
	$('ul.slide').each(function(idx){
		
		if( !$(this).hasClass("hide") )
		{
			
			//alert('calling init');
			initOneCarouselObject(this);
		}
		
	});
	
	
}


function mycarouselSetButtons(c, idx)
{
	for(var i = 0; i < TotalObjects; i++)
	{
		if( ArrCarouselObjects[i] != undefined )
		{
			if( i != idx )
			{
				ArrCarouselObjects[i].lock();
			}
			else
			{
				ArrCarouselObjects[i].unlock();
			}
		}
	}
	
	/*
	if( ArrCarouselObjects[idx] != undefined )
	{
		mycarouselSetClicks(ArrCarouselObjects[idx]);
	}
	else
	{
		
	}
	*/
	if( c != undefined && ArrCarouselObjects[idx] == undefined )
	{
		initOneCarouselObject(c);
	}
	else if( ArrCarouselObjects[idx] != undefined )
	{
		mycarouselSetClicks(ArrCarouselObjects[idx]);
	}
}

function prepareTabs()
{
	
	
	$('ul.slideTab li').bind('click', function()
    {
		//if( !$(this).hasClass('on') )
		{
			var li = this;
			var list = $(this).parent().children('li');
			
			list.removeClass('on');
			
			var CurrentElementIndex = list.index(this);
			
			$(this).addClass('on');
			
			
			var carouselContainers = $('div.slideContent').children(':not(.slideTab)');
			
			var CurrentElement = null;
			
			carouselContainers.each(function(idx){
				
				if( carouselContainers.index(this) == CurrentElementIndex )
				{
					CurrentElement = this;
					//alert($(this).parent().attr('id'));
					$(this).css({'display':'block'});
					
					
				}
				else
				{
					
					$(this).css({'display':'none'});
				}
			});
			
			//carouselContainers.removeClass('tabContentOff').addClass('tabContentOn');
			
			//$('div.tabContentOff').css('display', 'none');
			//$('div.tabContentOn').css('display', 'block');
			
			mycarouselSetButtons(CurrentElement, CurrentElementIndex);
			//initOneCarouselObject(car, true);
			//$('ul.div3Headertop li').unbind('click');
			

		}
		
    });


}


var ArrCarouselObjects = new Array();
var TotalObjects = 0;
var TabIndex = -1;

jQuery(document).ready(function() 
{
	var CurrentTab = $('.tab.on');
	
	/*var CurrentTab = undefined;
	
	$('.tab').each(function(){
		alert(this);
		if( $(this).hasClass('on') )
		{
			CurrentTab = $(this);
		}
	});*/
	
	
	TabIndex = $('ul.slideTab').children('li').index(CurrentTab.get(0));
	
	TotalObjects = $('ul.slideTab li').size();
	
	$('#dealerSlide').jcarousel({
			wrap: 'both',
			scroll: 1
		});
	
	prepareCarousels();
	
	prepareTabs();
	
});


