(function($){$(document).ready(function(){$('body').prepend('<div id="jaqueline-loader"></div>').prepend('<div id="jaqueline"></div>')});$.jaqueline=function(options){var settings={slideshow:1,autoplay:1,start_slide:1,random:0,slide_interval:5000,transition:1,transition_speed:750,new_window:1,pause_hover:0,keyboard_nav:1,performance:1,image_protect:1,image_path:'img/',min_width:0,min_height:0,vertical_center:0,horizontal_center:0,fit_portrait:1,fit_landscape:0,navigation:1,thumbnail_navigation:0,slide_counter:1,slide_captions:1};var element=$('#jaqueline');var pauseplay='#pauseplay';if(options){var options=$.extend(settings,options)}else{var options=$.extend(settings)}var inAnimation=false;var isPaused=false;var image_path=options.image_path;if(options.start_slide){var currentSlide=options.start_slide-1}else{var currentSlide=Math.floor(Math.random()*options.slides.length)}var linkTarget=options.new_window?' target="_blank"':'';if(options.performance==3){element.addClass('speed')}else if((options.performance==1)||(options.performance==2)){element.addClass('quality')}if(options.random){arr=options.slides;for(var j,x,i=arr.length;i;j=parseInt(Math.random()*i),x=arr[--i],arr[i]=arr[j],arr[j]=x);options.slides=arr}if(options.slides.length>1){currentSlide-1<0?loadPrev=options.slides.length-1:loadPrev=currentSlide-1;var imageLink=(options.slides[loadPrev].url)?"href='"+options.slides[loadPrev].url+"'":"";$("<img/>").attr("src",options.slides[loadPrev].image).appendTo(element).wrap('<a '+imageLink+linkTarget+'></a>')}imageLink=(options.slides[currentSlide].url)?"href='"+options.slides[currentSlide].url+"'":"";$("<img/>").attr("src",options.slides[currentSlide].image).appendTo(element).wrap('<a class="activeslide" '+imageLink+linkTarget+'></a>');if(options.slides.length>1){currentSlide==options.slides.length-1?loadNext=0:loadNext=currentSlide+1;imageLink=(options.slides[loadNext].url)?"href='"+options.slides[loadNext].url+"'":"";$("<img/>").attr("src",options.slides[loadNext].image).appendTo(element).wrap('<a '+imageLink+linkTarget+'></a>')}element.hide();$('#controls-wrapper').hide();$(document).ready(function(){resizenow()});$(window).load(function(){$('#jaqueline-loader').hide();element.fadeIn('fast');$('#controls-wrapper').show();if(options.thumbnail_navigation){currentSlide-1<0?prevThumb=options.slides.length-1:prevThumb=currentSlide-1;$('#prevthumb').show().html($("<img/>").attr("src",options.slides[prevThumb].image));currentSlide==options.slides.length-1?nextThumb=0:nextThumb=currentSlide+1;$('#nextthumb').show().html($("<img/>").attr("src",options.slides[nextThumb].image))}resizenow();if(options.slide_captions)$('#slidecaption').html(options.slides[currentSlide].title);if(!(options.navigation))$('#navigation').hide();if(options.slideshow&&options.slides.length>1){if(options.slide_counter){$('#slidecounter .slidenumber').html(currentSlide+1);$('#slidecounter .totalslides').html(options.slides.length)}slideshow_interval=setInterval(nextslide,options.slide_interval);if(!(options.autoplay)){clearInterval(slideshow_interval);isPaused=true;if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"play.png")}if(options.thumbnail_navigation){$('#nextthumb').click(function(){if(inAnimation)return false;clearInterval(slideshow_interval);nextslide(element,options);if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false});$('#prevthumb').click(function(){if(inAnimation)return false;clearInterval(slideshow_interval);prevslide(element,options);if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false})}if(options.navigation){$('#navigation a').click(function(){$(this).blur();return false});$('#nextslide').click(function(){if(inAnimation)return false;clearInterval(slideshow_interval);nextslide();if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false});if($('#nextslide').attr('src')){$('#nextslide').mousedown(function(){$(this).attr("src",image_path+"forward.png")});$('#nextslide').mouseup(function(){$(this).attr("src",image_path+"forward.png")});$('#nextslide').mouseout(function(){$(this).attr("src",image_path+"forward.png")})}$('#prevslide').click(function(){if(inAnimation)return false;clearInterval(slideshow_interval);prevslide();if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false});if($('#prevslide').attr('src')){$('#prevslide').mousedown(function(){$(this).attr("src",image_path+"back.png")});$('#prevslide').mouseup(function(){$(this).attr("src",image_path+"back.png")});$('#prevslide').mouseout(function(){$(this).attr("src",image_path+"back.png")})}$(pauseplay).click(function(){if(inAnimation)return false;if(isPaused){if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"pause.png");isPaused=false;slideshow_interval=setInterval(nextslide,options.slide_interval)}else{if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"play.png");clearInterval(slideshow_interval);isPaused=true}return false})}}});if(options.keyboard_nav){$(document.documentElement).keydown(function(event){if((event.keyCode==37)||(event.keyCode==40)){if($('#prevslide').attr('src'))$('#prevslide').attr("src",image_path+"back.png")}else if((event.keyCode==39)||(event.keyCode==38)){if($('#nextslide').attr('src'))$('#nextslide').attr("src",image_path+"forward.png")}});$(document.documentElement).keyup(function(event){clearInterval(slideshow_interval);if((event.keyCode==37)||(event.keyCode==40)){if($('#prevslide').attr('src'))$('#prevslide').attr("src",image_path+"back.png");if(inAnimation)return false;clearInterval(slideshow_interval);prevslide();if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false}else if((event.keyCode==39)||(event.keyCode==38)){if($('#nextslide').attr('src'))$('#nextslide').attr("src",image_path+"forward.png");if(inAnimation)return false;clearInterval(slideshow_interval);nextslide();if(!(isPaused))slideshow_interval=setInterval(nextslide,options.slide_interval);return false}else if(event.keyCode==32){if(inAnimation)return false;if(isPaused){if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"pause.png");isPaused=false;slideshow_interval=setInterval(nextslide,options.slide_interval)}else{if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"play.png");isPaused=true}return false}})}if(options.slideshow&&options.pause_hover){$(element).hover(function(){if(inAnimation)return false;if(!(isPaused)&&options.navigation){if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"pause.png");clearInterval(slideshow_interval)}},function(){if(!(isPaused)&&options.navigation){if($(pauseplay).attr('src'))$(pauseplay).attr("src",image_path+"pause.png");slideshow_interval=setInterval(nextslide,options.slide_interval)}})}$(window).resize(function(){resizenow()});function resizenow(){return element.each(function(){var t=$('img',element);$(t).each(function(){var ratio=($(this).height()/$(this).width()).toFixed(2);thisSlide=$(this);var browserwidth=$(window).width();var browserheight=0.9*($(window).height());var offset;if((browserheight<=options.min_height)&&(browserwidth<=options.min_width)){if((browserheight/browserwidth)>ratio){options.fit_landscape&&ratio<=1?resizeWidth(true):resizeHeight(true)}else{options.fit_portrait&&ratio>1?resizeHeight(true):resizeWidth(true)}}else if(browserwidth<=options.min_width){if((browserheight/browserwidth)>ratio){options.fit_landscape&&ratio<=1?resizeWidth(true):resizeHeight()}else{options.fit_portrait&&ratio>1?resizeHeight():resizeWidth(true)}}else if(browserheight<=options.min_height){if((browserheight/browserwidth)>ratio){options.fit_landscape&&ratio<=1?resizeWidth():resizeHeight(true)}else{options.fit_portrait&&ratio>1?resizeHeight(true):resizeWidth()}}else{if((browserheight/browserwidth)>ratio){options.fit_landscape&&ratio<=1?resizeWidth():resizeHeight()}else{options.fit_portrait&&ratio>1?resizeHeight():resizeWidth()}}function resizeWidth(minimum){if(minimum){if(thisSlide.width()<browserwidth||thisSlide.width()<options.min_width){if(thisSlide.width()*ratio>=options.min_height){thisSlide.width(options.min_width);thisSlide.height(thisSlide.width()*ratio)}else{resizeHeight()}}}else{if(options.min_height>=browserheight&&!options.fit_landscape){if(browserwidth*ratio>=options.min_height||(browserwidth*ratio>=options.min_height&&ratio<=1)){thisSlide.width(browserwidth);thisSlide.height(browserwidth*ratio)}else if(ratio>1){thisSlide.height(options.min_height);thisSlide.width(thisSlide.height()/ratio)}else if(thisSlide.width()<browserwidth){thisSlide.width(browserwidth);thisSlide.height(thisSlide.width()*ratio)}}else{thisSlide.width(browserwidth);thisSlide.height(browserwidth*ratio)}}};function resizeHeight(minimum){if(minimum){if(thisSlide.height()<browserheight){if(thisSlide.height()/ratio>=options.min_width){thisSlide.height(options.min_height);thisSlide.width(thisSlide.height()/ratio)}else{resizeWidth(true)}}}else{if(options.min_width>=browserwidth){if(browserheight/ratio>=options.min_width||ratio>1){thisSlide.height(browserheight);thisSlide.width(browserheight/ratio)}else if(ratio<=1){thisSlide.width(options.min_width);thisSlide.height(thisSlide.width()*ratio)}}else{thisSlide.height(browserheight);thisSlide.width(browserheight/ratio)}}};if(options.horizontal_center){$(this).css('left',(browserwidth-$(this).width())/2)}if(options.vertical_center){$(this).css('top',(browserheight-$(this).height())/2)}});if(options.image_protect){$('img',element).bind("contextmenu",function(){return false});$('img',element).bind("mousedown",function(){return false})}return false})};function nextslide(){if(inAnimation)return false;else inAnimation=true;var slides=options.slides;var currentslide=element.find('.activeslide');currentslide.removeClass('activeslide');if(currentslide.length==0)currentslide=element.find('a:last');var nextslide=currentslide.next().length?currentslide.next():element.find('a:first');var prevslide=nextslide.prev().length?nextslide.prev():element.find('a:last');$('.prevslide').removeClass('prevslide');prevslide.addClass('prevslide');currentSlide+1==slides.length?currentSlide=0:currentSlide++;if(options.performance==1)element.removeClass('quality').addClass('speed');loadSlide=false;currentSlide==slides.length-1?loadSlide=0:loadSlide=currentSlide+1;imageLink=(options.slides[loadSlide].url)?"href='"+options.slides[loadSlide].url+"'":"";$("<img/>").attr("src",options.slides[loadSlide].image).appendTo(element).wrap("<a "+imageLink+linkTarget+"></a>");if(options.thumbnail_navigation==1){currentSlide-1<0?prevThumb=slides.length-1:prevThumb=currentSlide-1;$('#prevthumb').html($("<img/>").attr("src",options.slides[prevThumb].image));nextThumb=loadSlide;$('#nextthumb').html($("<img/>").attr("src",options.slides[nextThumb].image))}currentslide.prev().remove();if(options.slide_counter){$('#slidecounter .slidenumber').html(currentSlide+1)}if(options.slide_captions){(options.slides[currentSlide].title)?$('#slidecaption').html(options.slides[currentSlide].title):$('#slidecaption').html('')}nextslide.hide().addClass('activeslide');switch(options.transition){case 0:nextslide.show();inAnimation=false;break;case 1:nextslide.fadeTo(options.transition_speed,1,function(){afterAnimation()});break;case 2:nextslide.animate({top:-$(window).height()},0).show().animate({top:0},options.transition_speed,function(){afterAnimation()});break;case 3:nextslide.animate({left:$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});break;case 4:nextslide.animate({top:$(window).height()},0).show().animate({top:0},options.transition_speed,function(){afterAnimation()});break;case 5:nextslide.animate({left:-$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});break;case 6:nextslide.animate({left:$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});currentslide.animate({left:-$(window).width()},options.transition_speed);break;case 7:nextslide.animate({left:-$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});currentslide.animate({left:$(window).width()},options.transition_speed);break}}function prevslide(){if(inAnimation)return false;else inAnimation=true;var slides=options.slides;var currentslide=element.find('.activeslide');currentslide.removeClass('activeslide');if(currentslide.length==0)currentslide=$(element).find('a:first');var nextslide=currentslide.prev().length?currentslide.prev():$(element).find('a:last');var prevslide=nextslide.next().length?nextslide.next():$(element).find('a:first');$('.prevslide').removeClass('prevslide');prevslide.addClass('prevslide');currentSlide==0?currentSlide=slides.length-1:currentSlide--;if(options.performance==1)element.removeClass('quality').addClass('speed');loadSlide=false;currentSlide-1<0?loadSlide=slides.length-1:loadSlide=currentSlide-1;imageLink=(options.slides[loadSlide].url)?"href='"+options.slides[loadSlide].url+"'":"";$("<img/>").attr("src",options.slides[loadSlide].image).prependTo(element).wrap("<a "+imageLink+linkTarget+"></a>");if(options.thumbnail_navigation==1){prevThumb=loadSlide;$('#prevthumb').html($("<img/>").attr("src",options.slides[prevThumb].image));currentSlide==slides.length-1?nextThumb=0:nextThumb=currentSlide+1;$('#nextthumb').html($("<img/>").attr("src",options.slides[nextThumb].image))}currentslide.next().remove();if(options.slide_counter){$('#slidecounter .slidenumber').html(currentSlide+1)}if(options.slide_captions){(options.slides[currentSlide].title)?$('#slidecaption').html(options.slides[currentSlide].title):$('#slidecaption').html('')}nextslide.hide().addClass('activeslide');switch(options.transition){case 0:nextslide.show();inAnimation=false;break;case 1:nextslide.fadeTo(options.transition_speed,1,function(){afterAnimation()});break;case 2:nextslide.animate({top:$(window).height()},0).show().animate({top:0},options.transition_speed,function(){afterAnimation()});break;case 3:nextslide.animate({left:-$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});break;case 4:nextslide.animate({top:-$(window).height()},0).show().animate({top:0},options.transition_speed,function(){afterAnimation()});break;case 5:nextslide.animate({left:$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});break;case 6:nextslide.animate({left:-$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});currentslide.animate({left:$(window).width()},options.transition_speed);break;case 7:nextslide.animate({left:$(window).width()},0).show().animate({left:0},options.transition_speed,function(){afterAnimation()});currentslide.animate({left:-$(window).width()},options.transition_speed);break}}function afterAnimation(){inAnimation=false;if(options.performance==1){element.removeClass('speed').addClass('quality')}resizenow()}}})(jQuery);
