/**
 * jQuery.superslide
 * Copyright (c) 2010-2011 Yves PIQUEL | http://www.havokinspiration.fr
 * @author Yves PIQUEL
 * @version 1.0
**/

(function($){$.fn.superSlide=function(opt){var defaults={picClass:'picture',arrows:true,state:true,statePosition:'in',stateType:'point',stateAutoCenter:false,picDir:"big",thumbDir:"thumb",divToReplaceThumb:"thumbnail",picLoad:'all',scrollto:false,auto:false,interval:5};opt=$.extend(defaults,opt);if(opt.stateType==='thumb'){var nbSlideSelector='.slider-state div'}else{var nbSlideSelector='img.'+opt.picClass}params={selectorSlide:$(this).selector,selectorDivPics:$(this).find('#pics').selector,selectorPics:$(this).find('img.'+opt.picClass).selector,nbSlide:$(nbSlideSelector).length,widthSlide:$(this).width()};params=$.extend(opt,params);function initEl(){if(params.state&&params.stateType==='point'){var strState='';var inState='';var thumbUrl='';for(i=0;i<params.nbSlide;i++){divClass=(i===0)?'active':'inactive';strState+='<div class="'+divClass+'">';strState+='</div>'}if(params.statePosition==='in'){$(params.selectorSlide).prepend('<div id="slider-avt"><div class="slider-state">'+strState+'</div></div>')}else if(params.statePosition==='before'){$(params.selectorSlide).before('<div id="slider-avt"><div class="slider-state">'+strState+'</div></div>')}else if(params.statePosition==='after'){$(params.selectorSlide).after('<div id="slider-avt"><div class="slider-state">'+strState+'</div></div>')}if(params.stateAutoCenter){stateWidth=parseInt(params.nbSlide,10)*(parseInt($(' .slider-state div').width(),10)+parseInt($(' .slider-state div').css('margin-right'),10));$('#slider-avt').css({'width':stateWidth,'margin-left':(params.widthSlide-stateWidth)/2})}}if(params.arrows){$(params.selectorSlide).prepend('<div id="slider-previous" class="arrow previous"></div><div id="slider-next" class="arrow next"></div>');arrows={previous:$(params.selectorSlide).find('div#slider-previous'),next:$(params.selectorSlide).find('div#slider-next')}}$(params.selectorPics).addClass('inactive');$('.slider-state div').each(function(i){htmlThumb=$(this).children().html();$('.slider-state div').eq(i).find('a').replaceWith(htmlThumb)});if(params.picLoad===false){$(params.selectorPics).eq(0).removeClass('inactive').addClass('active')}else{$(params.selectorSlide).prepend('<div id="loader"><div id="layout"></div><div id="load"><img src="/img/default/design/slider/ajax-loader.gif" /><br /><span id="loadertext">CHARGEMENT</span></div></div>');$('#loader #layout').css('height',$(params.selectorSlide).height());$('#load').css({'padding-top':($(params.selectorSlide).height()-$('#loader').height())/2,'width':$(params.selectorSlide).width(),'height':$(params.selectorSlide).height()});$('#loader').fadeIn()}if(params.picLoad==='all'){var loaded=0;isLoaded=0;$(params.selectorPics).each(function(i){$(this).one("load",function(){isLoaded=isLoaded+parseInt(1,10);$(params.selectorSlide+' #loader #loadertext').empty().html('CHARGEMENT');if(isLoaded===params.nbSlide){$(params.selectorPics).eq(0).css("display","none").removeClass('inactive').addClass('active').fadeIn();$('#loader').fadeOut();if(params.auto){$(document).oneTime(params.interval*1000,'superslide',function(){changePic('next')})}}}).each(function(){if(this.complete)$(this).trigger("load")})})}else if(params.picLoad==='click'){$(params.selectorPics).eq(0).one("load",function(){$(params.selectorPics).eq(0).fadeIn().removeClass('inactive').addClass('active');$('#loader').fadeOut()}).each(function(){if(this.complete)$(this).trigger("load")})}}function changePic(direction,nextPic){if(params.picLoad==='all'){var activePicIndex=$(params.selectorDivPics+' .active').index();if(nextPic!==undefined){nextPicIndex=nextPic}else{nextPicIndex=false}if(direction==='next'){if(nextPicIndex===false){if(activePicIndex===(params.nbSlide-1)){nextPicIndex=0}else{nextPicIndex=parseInt(activePicIndex,10)+parseInt(1,10)}}}else if(direction==='previous'){if(nextPicIndex===false){if(activePicIndex===0){nextPicIndex=params.nbSlide-1}else{nextPicIndex=parseInt(activePicIndex,10)-parseInt(1,10)}}}if(nextPicIndex>activePicIndex){$(params.selectorPics).eq(nextPicIndex).fadeIn("normal",function(){$(params.selectorDivPics+' .active').removeClass('active').addClass('inactive');$(params.selectorPics).removeAttr("style");$(this).removeClass('inactive').addClass('active')})}else{$(params.selectorPics).eq(nextPicIndex).removeClass('inactive').addClass('active');$(params.selectorPics).eq(activePicIndex).fadeOut("normal",function(){$(params.selectorPics).removeAttr("style");$(this).removeClass('active').addClass('inactive')})}}else if(params.picLoad==='click'){var activePicIndex=$('.slider-state div.active').index();if(nextPic!==undefined){nextPicIndex=nextPic}else{nextPicIndex=false}if(direction==='next'){if(nextPicIndex===false){if(activePicIndex===(params.nbSlide-1)){nextPicIndex=0}else{nextPicIndex=parseInt(activePicIndex,10)+parseInt(1,10)}}}else if(direction==='previous'){if(nextPicIndex===false){if(activePicIndex===0){nextPicIndex=params.nbSlide-1}else{nextPicIndex=parseInt(activePicIndex,10)-parseInt(1,10)}}}var urlNewPic=$('.slider-state div').eq(nextPicIndex).children().attr("src").replace(params.thumbDir,params.picDir);$(params.selectorDivPics).append('<img class="picture inactive" src='+urlNewPic+' />');$('#loader, #loader #layout').fadeIn();$(params.selectorDivPics+' .inactive').load(function(){$(this).fadeIn("normal",function(){$(params.selectorDivPics+' .active').remove();$(this).removeClass('inactive').addClass('active').removeAttr('style')});$('#loader').fadeOut()})}$('.slider-state div').eq(activePicIndex).removeClass('active').addClass('inactive');$('.slider-state div').eq(nextPicIndex).removeClass('inactive').addClass('active');if(params.auto){$(document).stopTime('superslide');$(document).oneTime(params.interval*1000,'superslide',function(){changePic('next')})}if(params.scrollto){$.scrollTo($("div#photos-slider"),800,{onAfter:function(){$.scrollTo($("div#photos-slider"),100)}})}}if($(params.selectorSlide).length>0||params.nbSlide>1){initEl();$('.arrow').live("click",function(){arrow=$(this).attr('class').split(" ");changePic(arrow[1])});$('.slider-state div').live("click",function(){if($(this).attr('class')!=='active'){var activePicIndex=$(params.selectorDivPics+' .active').index();var clickedIndex=$(this).index();var nextPic=clickedIndex;if(clickedIndex>activePicIndex){changePic('next',nextPic)}else{changePic('previous',nextPic)}}})}return this}})(jQuery);
