/* Alpha release of the static pager, developed and released by Jay Michael Del Greco, December 14, 2010.
Feel free to use and re-use it at will. Just give credit where it's due. Thanks. */
$.fn.jayCarouselS=function(settings){
	settings = $.extend({}, $.fn.jayCarouselS.defaults, settings);
	randomStart = settings.randomStart;
	autoRotate = settings.autoRotate;
	size = settings.size;
	carWidth = settings.carWidth;
	carHeight = settings.carHeight;
	sectionWidth = settings.sectionWidth;
	timer = settings.timer;
	var theClock;
	var masterContainer = $(this).attr('id');
	//If we are set to full sceen we need to grab the window dimensions. If not, we're just going to use the passed ones or defaults
	if (size == 'full'){
		var uagent = navigator.userAgent.toLowerCase();
		if (uagent.indexOf('msie') != -1) {
			//If we're IE we'll need to grab the browser dimentions this way
			var yourWidth = document.documentElement.clientWidth;
			var yourHeight = document.documentElement.clientHeight;
		} else {
			//Everybody else works with this
			var yourWidth = window.innerWidth;
			var yourHeight = window.innerHeight;
		}
	} else {
		var yourWidth = carWidth;
		var yourHeight = carHeight;
		$('#'+masterContainer).css('width',carWidth+'px');
	}
	//Now for the stuff that we need to do regardless
	var sectionWidth = sectionWidth;//Set block width
	var sectionCount = $('#'+masterContainer+' .section').length;//Count our blocks
	
	if (randomStart == 'yeah'){
		//Take a random starting number between 1 and the total.
		var startingPoint=Math.floor(Math.random()*sectionCount);
		if (startingPoint==0) {
			startingPoint=1;
		}
		startNumber = startingPoint * 1;
	} else {
		startNumber=1;
	}
	//Apply necessary IDs to tabs
	for (var i=1; i<=sectionCount; i++){
		if (i==1){
			$('#'+masterContainer+' .nav').children('li:first').children('.tab').addClass('tab'+i).attr('href','#tab'+i);
		} else {
			$('#'+masterContainer+' .nav').children('li:eq('+(i-1)+')').children('.tab').addClass('tab'+i).attr('href','#tab'+i);
		}
	}
	$('#'+masterContainer+' .section').wrapAll('<div class="slider"></div>');
	$('#'+masterContainer+' .slider').wrap('<div class="slideWrapper"></div>');
	$('#'+masterContainer+' .slideWrapper').css('width',carWidth+'px').css('height',yourHeight+'px');
	$('#'+masterContainer+' .slideWrapper').prepend('<div class="sliderBg"></div>');
	$('#'+masterContainer+' .sliderBg').css('width',carWidth+'px').css('height',yourHeight+'px');
	var bgPhotos = new Array();
	//Apply potentially necessary/useful IDs to blocks
	for (var i=1; i<=sectionCount; i++){
		if (i==1){
			$('#'+masterContainer+' .slider').children('.section:first').attr('id','section'+i);
			if($('#'+masterContainer+' .slider .section:first .photoStyle').text() == 'cut-out'){
				$('#'+masterContainer+' .slider .section:first img').attr('class','slideImageNb').attr('id','slideImage'+i);
				if ($('#'+masterContainer+' .slider .section:first .bgPhoto').text() != '0'){
					//$('#'+masterContainer+' .sliderBg').css('background','url(/image.aspx?id='+$('#'+masterContainer+' .slider .section:first .bgPhoto').text()+') center top no-repeat').fadeIn(500);
					//console.log("First: "+$('#'+masterContainer+' .slider .section:first .bgPhoto').text());
				}
			} else {
				$('#'+masterContainer+' .slider .section:first img').attr('class','slideImage').attr('id','slideImage'+i);
			}
			bgPhotos[i] = $('#'+masterContainer+' .slider .section:first .bgPhoto').text();
		} else {
			$('#'+masterContainer+' .slider').children('.section:eq('+(i-1)+')').attr('id','section'+i);
			if($('#'+masterContainer+' .slider .section:eq('+(i-1)+') .photoStyle').text() == 'cut-out'){
				$('#'+masterContainer+' .slider .section:eq('+(i-1)+') img').attr('class','slideImageNb').attr('id','slideImage'+i);
				if ($('#'+masterContainer+' .slider .section:eq('+(i-1)+') .bgPhoto').text() != '0'){
					//$('#'+masterContainer+' .sliderBg').css('background','url(/image.aspx?id='+$('#'+masterContainer+' .slider .section:eq('+(i-1)+') .bgPhoto').text()+') center top no-repeat').fadeIn(500);
					//console.log("Er'y body else: "+$('#'+masterContainer+' .slider .section:eq('+(i-1)+') .bgPhoto').text());
				}
			} else{
				$('#'+masterContainer+' .slider .section:eq('+(i-1)+') img').attr('class','slideImage').attr('id','slideImage'+i);
			}
			bgPhotos[i] = $('#'+masterContainer+' .slider .section:eq('+(i-1)+') .bgPhoto').text();
		}
		//console.log(bgPhotos[i]);
	}
	$('#'+masterContainer+', .slider, .block').css('height',yourHeight+'px');//Force all heights to the browser window height
	$('#'+masterContainer+' .section').css('width',sectionWidth+'px').css('position','absolute').css('left','0px').css('top',yourHeight+'px');//Apply block widths to individual blocks
	$('#'+masterContainer+' .slider').css('width',carWidth+'px').css('position','absolute').css('left','0px').css('top',yourHeight+'px');//Apply newly caluculated slider width
	$('#'+masterContainer+' .section .sectionLiner').css('display','none');
	$('#'+masterContainer+' .section .slideViddy').css('display','none');
	$('#'+masterContainer+' .slider').animate({
		top: '0px'
	}, 750, function() {
		//slider is pulled up into place. next lets fade in the bg if there is one, and pull up the first slide
		if(bgPhotos[startNumber] != ''){
			//console.log(bgPhotos[startNumber]);
			$('#'+masterContainer+' .sliderBg').css('background','url(/image.aspx?id='+bgPhotos[startNumber]+') center top no-repeat').fadeIn(750);
		}
		$('#section'+startNumber).animate({
			top: '0px'
		}, 750, 'easeInQuad', function() {
			//the first slide has risen into place. next lets fade in the text.
			$('#section'+startNumber+' .sectionLiner').fadeIn();
			$('#section'+startNumber+' .slideViddy').fadeIn();
			$('#section'+startNumber).addClass('up');
		});
	});
	if (startNumber == 1){
		$('#'+masterContainer+' .nav li:first').addClass('selected');
	} else {
		$('#'+masterContainer+' .nav li:eq('+(startNumber-1)+')').addClass('selected');
	}
	nextNumber = startNumber + 1;
	//In case we're already on the last one, go to the first one.
	if (nextNumber > sectionCount) {
		nextNumber =1;
	}
	if (autoRotate == 'yeah'){
		var reminder = masterContainer;
		theClock = setTimeout('slideAdvance("'+reminder+'",'+nextNumber+','+yourHeight+',"no");', timer);//Initiate the auto-rotation.
	}
	$('#'+masterContainer+' .nav li:has(div)').toolTippin();
	//Click function for tabs
	$('#'+masterContainer+' .nav .tab').live('click', function(){
		if($(this).parent().parent().parent().data("IsEnabled")==true){
			$('#'+masterContainer).data("aR",false);
			$('#'+masterContainer).data("IsEnabled",false);
			var clickedId = $(this).attr('href');
			var tabNumber = clickedId.replace('#tab','');
			var clickedNumber = parseInt(tabNumber);
			if (theClock){
				clearTimeout(theClock);//Stop the existing timer
			}
			//slideAdvance(masterContainer,clickedNumber,yourHeight,"yeah");
			$('#'+masterContainer+' .sliderBg').fadeOut(500).css('background','none');
			$('#'+masterContainer+' .slider .up').fadeOut(
				750, function() {
				//Animation complete
				$('#'+masterContainer+' .tab').parent('li').removeClass('selected');
				$('#'+masterContainer+' .tab'+clickedNumber).parent('li').addClass('selected');
				$('#'+masterContainer+' .slider .up').css('top',yourHeight+'px').css('display','block');
				$('#'+masterContainer+' .slider .up .sectionLiner').css('display','none');
				$('#'+masterContainer+' .slider .up .slideViddy').css('display','none');
				$('#'+masterContainer+' .slider .section').removeClass('up');
				$('#'+masterContainer+' .slider #section'+clickedNumber).animate({
					top: '0px'
				}, 750, 'easeInQuad', function() {
					//Animation complete
					if(bgPhotos[clickedNumber] != ''){
						$('#'+masterContainer+' .sliderBg').css('background','url(/image.aspx?id='+bgPhotos[clickedNumber]+') center top no-repeat').fadeIn(750);
					}
					$('#'+masterContainer+' .slider #section'+clickedNumber).addClass('up');
					$('#'+masterContainer+' .slider #section'+clickedNumber+' .sectionLiner').fadeIn();
					$('#'+masterContainer+' .slider #section'+clickedNumber+' .slideViddy').fadeIn();
					$('#'+masterContainer).data("IsEnabled",true);
				});
			});
		}
		return false;
	}).parent().parent().parent().data("IsEnabled",true).data("aR",true);
};
function slideAdvance (idReminder,newSlide,heightReminder,stopIt){
	if($('#'+idReminder).data("aR")==true){
		var bgPhotos2 = new Array();
		for (var i=1; i<=$('#'+idReminder+' .section').length; i++){
			if (i==1){
				bgPhotos2[i] = $('#'+idReminder+' .slider .section:first .bgPhoto').text();
			} else {
				bgPhotos2[i] = $('#'+idReminder+' .slider .section:eq('+(i-1)+') .bgPhoto').text();
			}
		}
		$('#'+idReminder+' .sliderBg').fadeOut(500).css('background','none');
		$('#'+idReminder+' .slider .up').fadeOut(
			 750, function() {
			//Animation complete
			$('#'+idReminder+' .tab').parent('li').removeClass('selected');
			$('#'+idReminder+' .tab'+newSlide).parent('li').addClass('selected');
			$('#'+idReminder+' .slider .up').css('top',heightReminder+'px').css('display','block');
			$('#'+idReminder+' .slider .up .sectionLiner').css('display','none');
			$('#'+idReminder+' .slider .up .slideViddy').css('display','none');
			$('#'+idReminder+' .slider .section').removeClass('up');
			$('#'+idReminder+' .slider #section'+newSlide).animate({
				top: '0px'
			}, 750, 'easeInQuad', function() {
				//Animation complete
				if(bgPhotos2[newSlide] != ''){
					$('#'+idReminder+' .sliderBg').css('background','url(/image.aspx?id='+bgPhotos2[newSlide]+') center top no-repeat').fadeIn(750);
				}
				$('#'+idReminder+' .slider #section'+newSlide).addClass('up');
				$('#'+idReminder+' .slider #section'+newSlide+' .sectionLiner').fadeIn();
				$('#'+idReminder+' .slider #section'+newSlide+' .slideViddy').fadeIn();
			});
			var sectionCountReminder = $('#'+idReminder+' .section').length;//Count our blocks again
			var newNextNumber = newSlide+1;
			if (newNextNumber > sectionCountReminder){
				newNextNumber = 1;
			}
			if (autoRotate == 'yeah' && stopIt == 'no'){
				theClock = setTimeout('slideAdvance("'+idReminder+'",'+newNextNumber+','+heightReminder+',"no");', timer);
			}
		});
	}
}
function changeMe(starter,stopper){
	$('#'+starter).data("IsEnabled",true);
	$('#'+stopper).data("IsEnabled",false);
	var slideCount = $('#'+starter+' .section').length;
	var currentSlide = $('#'+starter+' .nav .selected a').attr('href').replace('#tab','');
	var currentSlideNum = parseInt(currentSlide);
	var nextSlide = currentSlideNum+1;
	if(nextSlide > slideCount){
		nextSlide = 1;
	}
	$('#'+starter+' .nav li .tab'+nextSlide).trigger("click");
	//alert(currentSlide);
}
$.fn.toolTippin=function(){
	return this
	.hoverIntent(
		function () {if ($(this).children('div')) {$(this).children('div').css('display','block');}},
		function () {$(this).children('div').css('display','none')});
};
//Default values for the parameters in the extend.
$.fn.jayCarouselS.defaults = {
	randomStart			:	'yeah',
	autoRotate			:	'yeah',
	size				:	'full',
	carWidth			:	800,
	carHeight			:	600,
	sectionWidth		:	800,
	timer				:	8000
};

