
/*********************************************************
 *
 * Javascript called on page load
 *
**********************************************************/

/* global vars */

var carousel_pos_next;
var carousel_pos_prev;
var carousel_current_item;
var carousel_animating = false;
var carousel_item_display = 2;


$(document).ready(function(){


	/*********************************************************
	 *
	 * Features caoursel
	 *
	**********************************************************/
	
	var carousel = $('#carousel-features');
	var carousel_unit = $('ul li:first-child', carousel);
	var carousel_margin = parseInt($('ul li', carousel).css('margin-right'));
	var carousel_total = $('li', carousel).length;
	
	carousel_current_item = carousel_total;
	
	if(carousel_total > 2) {

		// attach controls
		$(carousel).after('<div id="carousel-controls-features" class="clearfix"><ul><li><p class="link-prev"><a href="#">Previous</a></p></li><li class="last-child"><p class="link-next"><a href="#">Next</a></p></li></ul></div>');
		
	}

	var carousel_next = $('#carousel-controls-features p.link-next a');
	var carousel_prev = $('#carousel-controls-features p.link-prev a');
	
	$(carousel_next).css({opacity : 0.4, cursor : 'default'});

	// calculate widths
	carousel_width = ( parseInt($(carousel_unit).width()) + parseInt($(carousel_unit).css('padding-left')) + parseInt($(carousel_unit).css('padding-right')) + carousel_margin );
	
	$('ul', carousel).css('left', -(carousel_width*(carousel_total-2)))
	
	carousel_pos = parseInt($('ul', carousel).css('left'));
	carousel_pos_next = (carousel_pos - carousel_width);
	carousel_pos_prev = (carousel_pos + carousel_width);
	
	// set width of episode holder
	$('ul', carousel).width(($('ul li', carousel).length * carousel_width) + 'px');
	
	
	match_highest($('ul li div.content', carousel), $('ul li div.content', carousel));
    match_highest($('ul li', carousel), $(carousel));
	
	// next prev clicks
	$(carousel_next).click(function() {
			
		// check if animating
		if(carousel_animating) {
				
			return false;

		}
		
		// check if is last item
		if(carousel_current_item == carousel_total) {
					
			return false;
			
		}
		
		// set button states
		if ((carousel_current_item + 1) == (carousel_total)) {
	
			$(carousel_next).css({opacity : 0.4, cursor : 'default', 'text-decoration' : 'none'});
			
		} else {
		
			$(carousel_next).css({opacity : 1, cursor : 'pointer', 'text-decoration' : 'underline'});
			$(carousel_prev).css({'text-decoration' : 'underline'});
			
		}
		
		
		$(carousel_prev).css({opacity : 1, cursor : 'pointer'});
		
								
		carousel_pos_next = (parseInt($('ul', carousel).css('left')) - carousel_width);
		carousel_pos_prev = (parseInt($('ul', carousel).css('left')) + carousel_width);
		
		carousel_animating = true;
		
		$('ul', carousel).animate({left: carousel_pos_next }, 1000, function() {
		
			carousel_animating = false;
		
		});
	
		carousel_current_item ++;
		
		return false;
		
	});
	
	$(carousel_prev).click(function() {
	
		
		// check if animating
		if(carousel_animating) {
				
			return false;

		}
		
		// check if is first item
		if(carousel_current_item == 2) {
				
			return false;
			
		}
		
		
		// set button states
		$(carousel_next).css({opacity : 1, cursor : 'pointer'});
		
		if (carousel_current_item == carousel_total) {
	
			$(carousel_prev).css({opacity : 0.4, cursor : 'default', 'text-decoration' : 'none'});
			
		} else {
		
			$(carousel_prev).css({opacity : 1, cursor : 'pointer', 'text-decoration' : 'underline'});
			$(carousel_next).css({'text-decoration' : 'underline'});
		
		}
			
		carousel_pos_next = (parseInt($('ul', carousel).css('left')) - carousel_width);
		carousel_pos_prev = (parseInt($('ul', carousel).css('left')) + carousel_width);
		
		carousel_animating = true;
		
		$('ul', carousel).animate({left: carousel_pos_prev }, 1000, function() {
			
			carousel_animating = false;
			
		});
		
		carousel_current_item --;
		

		return false;
		
	});


});
