/*

	Supersized - Fullscreen Slideshow jQuery Plugin
	Version : 3.2.5
	Theme 	: Shutter 1.1
	
	Site	: www.buildinternet.com/project/supersized
	Author	: Sam Dunn
	Company : One Mighty Roar (www.onemightyroar.com)
	License : MIT License / GPL License

*/



(function($){
	
	theme = {
	 	
	 	
	 	/* Initial Placement
		----------------------------*/
	 	_init : function(){
	 		
			
	 		// Center Slide Links
	 		if (api.options.slide_links) $(vars.slide_list).css('margin-left', -$(vars.slide_list).width()/2);
	 		
			// Start progressbar if autoplay enabled
    		if (api.options.autoplay){
    			if (api.options.progress_bar) theme.progressBar();
			}else{
				if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "play.png");	// If pause play button is image, swap src
				if (api.options.progress_bar) $(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 );	//  Place progress bar
			}
			
			/*$("h1").click(function (){
				alert("imagen");
			});*/
			
			//NAVIGATION MOVED TO ITS OWN SCRIPT navitation.js
			
			
			/* White Column - Production thumbnails 
			----------------------------*/
			// Hide tray off screen
			//$(vars.white_thumbs).animate({top : -$(vars.white_thumbs).height()}, 0 );
			
			$(vars.tray_arrow1).attr("src", vars.image_path + "white_bar_opened.gif");
			
			// Thumbnail Tray Toggle
			$(vars.white_column).toggle(function(){
				$(vars.white_thumbs).stop().animate({right : -$(vars.white_thumbs).width(), avoidTransforms : true}, 300 );
				if ($(vars.tray_arrow1).attr('src')) $(vars.tray_arrow1).attr("src", vars.image_path + "white_bar_closed.gif");
				return false;
			}, function() {
				$(vars.white_thumbs).stop().animate({right : 0, avoidTransforms : true}, 300 );
				if ($(vars.tray_arrow1).attr('src')) $(vars.tray_arrow1).attr("src", vars.image_path + "white_bar_opened.gif");
				return false;
			});
			
			
			/* Black Column - Production thumbnails 
			----------------------------*/
			// Hide tray off screen
			
			var posFinal = $(vars.white_column).position().left + $(vars.white_column).width();
			
			
			if ($(vars.tray_arrow2).attr('src')) $(vars.tray_arrow2).attr("src", vars.image_path + "black_bar_opened.gif");
			
			// Thumbnail Tray Toggle
			
			$(vars.black_column).toggle(function(){
				
				if ( $(vars.tray_arrow2).attr("src") != vars.image_path + "black_bar_closed.gif"){
					$(vars.info_column).stop().delay(500).animate({right : -$(vars.info_column).width(), avoidTransforms : true}, 300 );
					//api.cambiaContenido();
					if ($(vars.tray_arrow2).attr('src')) $(vars.tray_arrow2).attr("src", vars.image_path + "black_bar_closed.gif");				
				} else {
					$(vars.info_column).stop().delay(500).animate({ right: $(vars.white_column).width()-10, avoidTransforms : true}, 300 ); //-10 por la sombra
					if ($(vars.tray_arrow2).attr('src')) $(vars.tray_arrow2).attr("src", vars.image_path + "black_bar_opened.gif");
				}
				
				return false;
			}, function() {
				
				if ( $(vars.tray_arrow2).attr("src") == vars.image_path + "black_bar_closed.gif"){
					$(vars.info_column).stop().delay(500).animate({ right: $(vars.white_column).width()-10, avoidTransforms : true}, 300 ); //-10 por la sombra
					if ($(vars.tray_arrow2).attr('src')) $(vars.tray_arrow2).attr("src", vars.image_path + "black_bar_opened.gif");
				} else {
					$(vars.info_column).stop().delay(500).animate({right : -$(vars.info_column).width(), avoidTransforms : true}, 300 );
					//api.cambiaContenido();
					if ($(vars.tray_arrow2).attr('src')) $(vars.tray_arrow2).attr("src", vars.image_path + "black_bar_closed.gif");				
				}
				
				return false;
				
				
			});
			
			/* Black List UL interaction 
				Interacción de los botones de contenido
			*/

			$("#info_navigator a").click(function (){
				$("#info_navigator li").removeClass("selected");
				$(this).parent().addClass("selected");
				$("#info_navigator li a").first().css('border', '0');
				
				/* desplazar seccion inferior */
				var posicionEnlace = $(this).parent().index();
			//	$("#information").animate({left : -221*posicionEnlace}, 500 );
			// VERSION ALPHA
				$("#information").animate({opacity: '0', 'left' :  -226*posicionEnlace},0);
				$("#information").fadeTo('slow', 1);
			
			});
			
			
			/* Sección DVD - Blu-Ray - Online */
			$("#format_navigation a").click(function (){
				$("#format_navigation li").removeClass("selected");
				$(this).parent().addClass("selected");
				$("#format_navigation li a").first().css('border', '0');
				
				var posicionEnlace = $(this).parent().index();
				//$("#formats_content").animate({left : -200*posicionEnlace}, 500 );
				$("#formats_content").animate({opacity: '0', 'left' :  -226*posicionEnlace},0);
				$("#formats_content").fadeTo('slow', 1);
				
			});

			/* BARRA BLANCA */
			$("#productions_navigation a").click(function (){
				$("#productions_navigation li").removeClass("selected");
				$(this).parent().addClass("selected");
				$("#productions_navigation li a").first().css('border', '0');
			});

			
			/* BOTONES DESPLAZAMIENTO THUMBS */			
			var offsetListado = 60;

			$('#thumb-up').click(function (e){
				 e.preventDefault();
				mueveListado(1);
			});
			
			$('#thumb-down').click(function (e){
				e.preventDefault();
				mueveListado(-1);
			});	
			
			function mueveListado(dir){
				var alturaMax = -$('#enlacesProducciones').height();
				var altura = eval($('#thumb-list').css('margin-top').replace("px", ""));
				var alturaClip = $('#thumb-list').height();
				var desplaza = offsetListado * dir;
				var desplazaTemp = altura + desplaza;
				
				$('#thumb-list').animate({'marginTop': desplazaTemp} ,300);
			
				if ( desplazaTemp >= 0){
					$('#thumb-list').stop().animate( {'marginTop': '0' },300);
				} else if ( desplazaTemp < eval(alturaClip+alturaMax)*-1 ){
					$('#thumb-list').stop().animate( {'marginTop': eval(alturaClip+alturaMax)*-1},300);
				}
			}
			
			
			
			// Make thumb tray proper size
			//$(vars.thumb_list).width($('> li', vars.thumb_list).length * $('> li', vars.thumb_list).outerWidth(true));	//Adjust to true width of thumb markers
			
			// Display total slides
			if ($(vars.slide_total).length){
				$(vars.slide_total).html(api.options.slides.length);
			}
		
			/* Navigation Items
			----------------------------*/
		    $(vars.next_slide).click(function() {
		    	api.nextSlide();
		    });
		    
		    $(vars.prev_slide).click(function() {
		    	api.prevSlide();
		    });
		    
			
			if (api.options.thumbnail_navigation){
				// Next thumbnail clicked
				$(vars.next_thumb).click(function() {
			    	api.nextSlide();
			    });
			    // Previous thumbnail clicked
			    $(vars.prev_thumb).click(function() {
			    	api.prevSlide();
			    });
			}
			
		    $(vars.play_button).click(function() {
				api.playToggle();						    
		    });
			
			
			/* Thumbnail Mouse Scrub
			----------------------------*/
    		if (api.options.mouse_scrub){
				$(vars.white_thumbs).mousemove(function(e) {
					var containerWidth = $(vars.white_thumbs).width(),
						listWidth = $(vars.thumb_list).width();
					if (listWidth > containerWidth){
						var mousePos = 1,
							diff = e.pageX - mousePos;
						if (diff > 10 || diff < -10) { 
						    mousePos = e.pageX; 
						    newX = (containerWidth - listWidth) * (e.pageX/containerWidth);
						    diff = parseInt(Math.abs(parseInt($(vars.thumb_list).css('left'))-newX )).toFixed(0);
						    $(vars.thumb_list).stop().animate({'left':newX}, {duration:diff*3, easing:'easeOutExpo'});
						}
					}
				});
			}
			
			
			/* Window Resize
			----------------------------*/
			$(window).resize(function(){
				
				// Delay progress bar on resize
				if (api.options.progress_bar && !vars.in_animation){
					if (vars.slideshow_interval) clearInterval(vars.slideshow_interval);
					if (api.options.slides.length - 1 > 0) clearInterval(vars.slideshow_interval);
					
					$(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 );
					
					if (!vars.progressDelay && api.options.slideshow){
						// Delay slideshow from resuming so Chrome can refocus images
						vars.progressDelay = setTimeout(function() {
								if (!vars.is_paused){
									theme.progressBar();
									vars.slideshow_interval = setInterval(api.nextSlide, api.options.slide_interval);
								}
								vars.progressDelay = false;
						}, 1000);
					}
				}
			});	
			
								
	 	},
	 	
	 	
	 	/* Go To Slide
		----------------------------*/
	 	goTo : function(){
	 		if (api.options.progress_bar && !vars.is_paused){
				$(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 );
				theme.progressBar();
			}
		},
	 	
	 	/* Play & Pause Toggle
		----------------------------*/
	 	playToggle : function(state){
	 		
	 		if (state =='play'){
	 			// If image, swap to pause
	 			if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "pause.png");
				if (api.options.progress_bar && !vars.is_paused) theme.progressBar();
	 		}else if (state == 'pause'){
	 			// If image, swap to play
	 			if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "play.png");
        		if (api.options.progress_bar && vars.is_paused)$(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 );
	 		}
	 		
	 	},
	 	
	 	
	 	/* Before Slide Transition
		----------------------------*/
	 	beforeAnimation : function(direction){
		    if (api.options.progress_bar && !vars.is_paused) $(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 );
		  	
		  	/* Update Fields
		  	----------------------------*/
		  	// Update slide caption
		   	if ($(vars.slide_caption).length){
		   		(api.getField('title')) ? $(vars.slide_caption).html(api.getField('title')) : $(vars.slide_caption).html('');
		   	}
		    // Update slide number
			if (vars.slide_current.length){
			    $(vars.slide_current).html(vars.current_slide + 1);
			}
		    
		    
		    // Highlight current thumbnail and adjust row position
		    if (api.options.thumb_links){
		    
				//cambio de estilos inicial
				$('.current-thumb').removeClass('current-thumb');
				$('li', vars.thumb_list).eq(vars.current_slide).addClass('current-thumb');
				
				
			
				
				// If thumb out of view
				if ($(vars.thumb_list).height() > $(vars.white_thumbs).height()){
					// If next slide direction
					if (direction == 'next'){
						if (vars.current_slide == 0){
							vars.thumb_page = 0;
							$(vars.thumb_list).stop().animate({'up': vars.thumb_page}, {duration:500, easing:'easeOutExpo'});
						} else if ($('.current-thumb').offset().height - $(vars.white_thumbs).offset().height >= vars.thumb_interval){
	        				vars.thumb_page = vars.thumb_page - vars.thumb_interval;
	        				$(vars.thumb_list).stop().animate({'up': vars.thumb_page}, {duration:500, easing:'easeOutExpo'});
						}
					// If previous slide direction
					}else if(direction == 'prev'){
						if (vars.current_slide == api.options.slides.length - 1){
							vars.thumb_page = Math.floor($(vars.thumb_list).height() / vars.thumb_interval) * -vars.thumb_interval;
							if ($(vars.thumb_list).height() <= -vars.thumb_page) vars.thumb_page = vars.thumb_page + vars.thumb_interval;
							$(vars.thumb_list).stop().animate({'up': vars.thumb_page}, {duration:500, easing:'easeOutExpo'});
						} else if ($('.current-thumb').offset().height - $(vars.white_thumbs).offset().height < 0){
							if (vars.thumb_page + vars.thumb_interval > 0) return false;
	        				vars.thumb_page = vars.thumb_page + vars.thumb_interval;
	        				$(vars.thumb_list).stop().animate({'up': vars.thumb_page}, {duration:500, easing:'easeOutExpo'});
						}
					}
				}
				
				
			}
		    
	 	},
	 	
	 	
	 	/* After Slide Transition
		----------------------------*/
	 	afterAnimation : function(){
	 		if (api.options.progress_bar && !vars.is_paused) theme.progressBar();	//  Start progress bar
	 	},
	 	
	 	
	 	/* Progress Bar
		----------------------------*/
		progressBar : function(){
    		$(vars.progress_bar).stop().animate({left : -$(window).width()}, 0 ).animate({ left:0 }, api.options.slide_interval);
    	}
	 	
	 
	 };
	 
	 
	 /* Theme Specific Variables
	 ----------------------------*/
	 $.supersized.themeVars = {
	 	
	 	// Internal Variables
		progress_delay		:	false,				// Delay after resize before resuming slideshow
		thumb_page 			: 	false,				// Thumbnail page
		thumb_interval 		: 	false,				// Thumbnail interval
		image_path			:	'interface/',		// Default image path
													
		// General Elements							
		play_button			:	'#pauseplay',		// Play/Pause button
		next_slide			:	'#nextslide',		// Next slide button
		prev_slide			:	'#prevslide',		// Prev slide button
		next_thumb			:	'#nextthumb',		// Next slide thumb button
		prev_thumb			:	'#prevthumb',		// Prev slide thumb button
		
		slide_caption		:	'#slidecaption',	// Slide caption
		slide_current		:	'.slidenumber',		// Current slide number
		slide_total			:	'.totalslides',		// Total Slides
		slide_list			:	'#slide-list',		// Slide jump list							
		
		white_thumbs		:	'#thumb-tray',		// Thumbnail tray
		info_column			:	'#info-tray',		// Info tray
		thumb_list			:	'#thumb-list',		// Thumbnail list
		thumb_down			:	'#thumb-down',	// Cycles forward through thumbnail list
		thumb_up			:	'#thumb-up',		// Cycles backwards through thumbnail list
		tray_arrow1			:	'#tray-arrow1',		// Thumbnail tray button arrow
		tray_arrow2			:	'#tray-arrow2',		// Thumbnail tray button arrow 2
		white_column		:	'#thumbs-column',		// Thumbnail tray button
		black_column		:	'#info-column',		// Thumbnail tray button
		
		
		progress_bar		:	'#progress-bar'		// Progress bar
	 												
	 };												
	
	 /* Theme Specific Options
	 ----------------------------*/												
	 $.supersized.themeOptions = {					
	 						   
		progress_bar		:	1,		// Timer for each slide											
		mouse_scrub			:	0		// Thumbnails move with mouse
		
	 };
	 
})(jQuery);
