/* * title: jquery etalage plugin * author: berend de jong, frique * author uri: http://www.frique.me/ * version: 1.3.4 (20130622.1) */ (function(a){a.fn.etalage=function(b){var c=a.extend({align:"left",thumb_image_width:300,thumb_image_height:400,source_image_width:900,source_image_height:1200,zoom_area_width:600,zoom_area_height:"justify",zoom_area_distance:10,zoom_easing:true,click_to_zoom:false,zoom_element:"auto",show_descriptions:true,description_location:"bottom",description_opacity:0.7,small_thumbs:4,smallthumb_inactive_opacity:0.6,smallthumb_hide_single:true,smallthumb_select_on_hover:false,smallthumbs_position:"bottom",show_begin_end_smallthumb:true,magnifier_opacity:0.5,magnifier_invert:true,show_icon:true,icon_offset:20,hide_cursor:false,show_hint:false,hint_offset:15,speed:600,autoplay:true,autoplay_interval:6000,keyboard:true,right_to_left:false,click_callback:function(){return true },change_callback:function(){return true}},b);a.each(this,function(){var ag=a(this);if(ag.is("ul")&&ag.children("li").length&&ag.find("img.etalage_source_image").length){var ad,ab,q,i,aq,t,f,as,al,aw,ar=ag.attr("id"),az=math.floor(c.speed*0.7),ac=math.round(c.speed/100),ai=false,z=0,e=false,ao=true,a=false,x=0,al=0,ak=0,y=0,x=0,af="hori";if(typeof ar==="undefined"||!ar){ar="[no id]"}if(c.smallthumbs_position==="left"||c.smallthumbs_position==="right"){af="vert"}if(typeof a.browser==="object"&&a.browser.msie){if(a.browser.version<9){ao=false; if(a.browser.version<7){e=true}}}ag.addclass("etalage").show();var w=ag.children("li").addclass("etalage_thumb");w.first().show().addclass("etalage_thumb_active");var q=w.length,aj=c.autoplay;if(q<2){aj=false}if(c.align==="right"){ag.addclass("etalage_right")}a.each(w,function(a1){a1+=1;var a4=a(this),j=a4.find(".etalage_thumb_image").removeattr("alt").show(),a3=a4.find(".etalage_source_image"),a2=a4.find("a");a4.data("id",a1).addclass("thumb_"+a1);if(!j.length&&a3.length){a4.prepend('') }else{if(!j.length&&!a3.length){a4.remove()}}if(a2.length){a4.find(".etalage_thumb_image").data("anchor",a2.attr("href"))}});var av=w.find(".etalage_thumb_image").css({width:c.thumb_image_width,height:c.thumb_image_height}).show();a.each(av,function(){a(this).data("src",this.src)});var ao=a('
  • ').appendto(ag),aa=ao.children("div"),h=aa.children("img");var e=a('
  •  
  • ').appendto(ag);if(c.show_icon){e.show()}var r;if(c.show_hint){r=a('
  •  
  • ').appendto(ag).show() }var k,s=c.zoom_element;if(s!=="auto"&&s&&a(s).length){k=a(s).addclass("etalage_zoom_area").html('
    ')}else{s="auto";k=a('
  • ').appendto(ag)}var w=k.children("div"),an;if(ao){an=a('').css({width:c.source_image_width,height:c.source_image_height,opacity:0.3}).prependto(w).show()}var ab=w.children(".etalage_zoom_img").css({width:c.source_image_width,height:c.source_image_height}); var az;if(c.show_descriptions){az=a('
    ').prependto(k)}var aq,l,av,u,y,aj=c.small_thumbs;if(q>1||!c.smallthumb_hide_single){aq=a('
  • ').appendto(ag);l=aq.children("ul");a.each(av,function(){var i=a(this);q=i.data("src");i=i.parents(".etalage_thumb").data("id");a('
  • ').data("thumb_id",i).appendto(l)});av=l.children("li").css({opacity:c.smallthumb_inactive_opacity}); if(aj<3){aj=3}if(q>aj){if(c.show_begin_end_smallthumb){q=av.eq(q-1).data("src");i=w.eq(q-1).data("id");a('
  • ').data("src",q).data("thumb_id",i).css({opacity:c.smallthumb_inactive_opacity}).prependto(l);q=av.eq(0).data("src");i=w.eq(0).data("id");a('
  • ').data("src",q).data("thumb_id",i).css({opacity:c.smallthumb_inactive_opacity}).appendto(l); av=l.children("li");av.eq(1).addclass("etalage_smallthumb_active").css({opacity:1})}else{av.eq(0).addclass("etalage_smallthumb_first etalage_smallthumb_active").css({opacity:1})}av.eq(aj-1).addclass("etalage_smallthumb_last")}else{av.eq(0).addclass("etalage_smallthumb_active").css({opacity:1})}a.each(av,function(j){a(this).data("id",(j+1))});u=av.children("img");y=av.length;if(af==="vert"){av.addclass("vertical")}}if(c.magnifier_invert){aq=1}else{aq=c.magnifier_opacity}var an=parseint(w.css("borderleftwidth"),10)+parseint(w.css("borderrightwidth"),10)+parseint(av.css("borderleftwidth"),10)+parseint(av.css("borderrightwidth"),10),z=parseint(w.css("marginleft"),10)+parseint(w.css("marginright"),10),b=parseint(w.css("paddingleft"),10)+parseint(w.css("paddingright"),10)+parseint(av.css("marginleft"),10)+parseint(av.css("marginright"),10)+parseint(av.css("paddingleft"),10)+parseint(av.css("paddingright"),10),n=c.thumb_image_width+an+z+b,o=c.thumb_image_height+an+z+b,ae=0,p=0,ax=0,ag=0,ad=0,o=0,ah=0; if(q>1||!c.smallthumb_hide_single){ae=parseint(av.css("borderleftwidth"),10)+parseint(av.css("borderrightwidth"),10)+parseint(u.css("borderleftwidth"),10)+parseint(u.css("borderrightwidth"),10);p=parseint(av.css("margintop"),10);ax=parseint(av.css("paddingleft"),10)+parseint(av.css("paddingright"),10)+parseint(u.css("marginleft"),10)+parseint(u.css("marginright"),10)+parseint(u.css("paddingleft"),10)+parseint(u.css("paddingright"),10);if(af==="vert"){ad=math.round((o-((aj-1)*p))/aj)-(ae+ax);ag=math.round((c.thumb_image_width*ad)/c.thumb_image_height); o=ag+ae+ax;ah=ad+ae+ax}else{ag=math.round((n-((aj-1)*p))/aj)-(ae+ax);ad=math.round((c.thumb_image_height*ag)/c.thumb_image_width);o=ag+ae+ax;ah=ad+ae+ax}}var d=parseint(k.css("bordertopwidth"),10),aa=parseint(c.zoom_area_distance,10),j=parseint(k.css("paddingtop"),10),t,a0;if((c.zoom_area_width-(d*2)-(j*2))>c.source_image_width){t=c.source_image_width}else{t=c.zoom_area_width-(d*2)-(j*2)}if(c.zoom_area_height==="justify"){a0=(o+p+ah)-(d*2)-(j*2)}else{a0=c.zoom_area_height-(d*2)-(j*2)}if(a0>c.source_image_height){a0=c.source_image_height }var ax,at,v,ar;if(c.show_descriptions){ax=parseint(az.css("borderleftwidth"),10)+parseint(az.css("borderrightwidth"),10);at=parseint(az.css("marginleft"),10)+parseint(az.css("marginright"),10);v=parseint(az.css("paddingleft"),10)+parseint(az.css("paddingright"),10);ar=t-ax-at-v}var am;if(e){am=a('').css({position:"absolute",zindex:1}).prependto(k)}var s=parseint(ao.css("bordertopwidth"),10),ak=parseint(w.css("bordertopwidth"),10)+parseint(w.css("margintop"),10)+parseint(w.css("paddingtop"),10)+parseint(av.css("bordertopwidth"),10)+parseint(av.css("margintop"),10)-s,am=av.offset().left-ag.offset().left-s; if(c.smallthumbs_position==="left"){am=am+o+p}else{if(c.smallthumbs_position==="top"){ak=ak+ah+p}}var v=math.round(t*(c.thumb_image_width/c.source_image_width)),r=math.round(a0*(c.thumb_image_height/c.source_image_height)),m=ak+c.thumb_image_height-r,p=am+c.thumb_image_width-v,af=math.round(v/2),ae=math.round(r/2),h,c;if(c.show_hint){h=parseint(c.hint_offset,10)+parseint(r.css("margintop"),10);c=parseint(c.hint_offset,10)+parseint(r.css("marginright"),10);if(c.smallthumbs_position==="right"){c=c-o-p }}if(af==="vert"){as=n+p+o;ag.css({width:as,height:o})}else{as=n;ag.css({width:as,height:o+p+ah})}if(c.show_icon){aw={top:o-e.outerheight(true)-parseint(c.icon_offset,10),left:parseint(c.icon_offset,10)};if(c.smallthumbs_position==="left"){aw.left=o+p+parseint(c.icon_offset,10)}else{if(c.smallthumbs_position==="top"){aw.top+=ah+p}}e.css(aw)}if(c.show_hint){r.css({margin:0,top:-h,right:-c})}h.css({margin:0,padding:0,width:c.thumb_image_width,height:c.thumb_image_height});aa.css({margin:0,padding:0,width:v,height:r}); aw={margin:0,padding:0,left:(p-am)/2,top:(m-ak)/2};if(c.smallthumbs_position==="left"){aw.left="+="+o+p}else{if(c.smallthumbs_position==="top"){aw.top="+="+ah+p}}ao.css(aw).hide();w.css({width:t,height:a0});aw={margin:0,opacity:0};if(c.align==="right"&&s==="auto"){aw.left=-(t+(d*2)+(j*2)+aa)}else{if(s==="auto"){aw.left=as+aa}}k.css(aw).hide();if(c.show_descriptions){aw={width:ar,bottom:j,left:j,opacity:c.description_opacity};if(c.description_location==="top"){aw.top=j;aw.bottom="auto"}az.css(aw).hide() }if(q>1||!c.smallthumb_hide_single){if(af==="vert"){aw={top:0,height:o};if(c.smallthumbs_position==="left"){w.css({left:o+p})}else{aw.marginleft=n+p}aq.css(aw);l.css({height:(ah*y)+(y*p)+100});u.css({width:ag,height:ad}).attr("height",ad);av.css({margin:0,marginbottom:p})}else{aw={width:n};if(c.smallthumbs_position==="top"){w.css({top:ah+p})}else{aw.top=o+p}aq.css(aw);l.css({width:(o*y)+(y*p)+100});u.css({width:ag,height:ad}).attr("width",ag);av.css({margin:0,marginright:p})}if(af==="vert"){al=((ah*aj)+((aj-1)*p))-o }else{al=((o*aj)+((aj-1)*p))-n}if(al>0){for(ad=1;ad<=(y-1);ad=ad+(aj-1)){ab=1;for(ab;ab<=al;ab+=1){if(af==="vert"){av.eq(ad+ab-1).css({marginbottom:(p-1)})}else{av.eq(ad+ab-1).css({marginright:(p-1)})}}}}else{if(al<0){for(ad=1;ad<=(y-1);ad=ad+(aj-1)){ab=1;for(ab;ab<=(-al);ab+=1){if(af==="vert"){av.eq(ad+ab-1).css({marginbottom:(p+1)});l.css({height:parseint(l.css("height"),10)+1})}else{av.eq(ad+ab-1).css({marginright:(p+1)});l.css({width:parseint(l.css("width"),10)+1})}}}}}}if(c.show_icon&&!c.magnifier_invert){ao.css({background:ao.css("background-color")+" "+e.css("background-image")+" center no-repeat"}) }if(c.hide_cursor){ao.add(e).css({cursor:"none"})}if(e){am.css({width:w.css("width"),height:w.css("height")})}var ay=w.first().find(".etalage_thumb_image"),ap=w.first().find(".etalage_source_image");if(c.magnifier_invert){h.attr("src",ay.data("src")).show()}if(ao){an.attr("src",ay.data("src"))}ab.attr("src",ap.attr("src"));if(c.show_descriptions){f=ap.attr("title");if(f){az.html(f).show()}}var d=function(){if(t){clearinterval(t);t=false}};var k=function(){if(t){d()}t=setinterval(function(){au()},c.autoplay_interval) };var u=function(){ao.stop().fadeto(az,aq);e.stop().animate({opacity:0},az);k.stop().show().animate({opacity:1},az);if(c.magnifier_invert){ay.stop().animate({opacity:c.magnifier_opacity},az)}if(aj){d()}};var aw=function(){ao.stop().fadeout(c.speed);e.stop().animate({opacity:1},c.speed);k.stop().animate({opacity:0},c.speed,function(){a(this).hide()});if(c.magnifier_invert){ay.stop().animate({opacity:1},c.speed,function(){if(c.click_to_zoom){a=false}})}cleartimeout(x);if(aj){k()}};var g=function(a3,a1){var j,a2,i=ag.find(".etalage_smallthumb_active").removeclass("etalage_smallthumb_active"); a3.addclass("etalage_smallthumb_active");ao.stop().hide();k.stop().hide();if(!a1){ai=true;i.stop(true,true).animate({opacity:c.smallthumb_inactive_opacity},az);a3.stop(true,true).animate({opacity:1},az,function(){ai=false})}ag.find(".etalage_thumb_active").removeclass("etalage_thumb_active").stop().animate({opacity:0},c.speed,function(){a(this).hide()});j=w.filter(".thumb_"+a3.data("thumb_id")).addclass("etalage_thumb_active").show().stop().css({opacity:0}).animate({opacity:1},c.speed);ay=j.find(".etalage_thumb_image"); ap=j.find(".etalage_source_image");if(c.magnifier_invert){h.attr("src",ay.data("src"))}if(ao){an.attr("src",ay.data("src"))}ab.attr("src",ap.attr("src"));if(c.show_descriptions){f=ap.attr("title");if(f){az.html(f).show()}else{az.hide()}}if(aj){d();k()}a2=a3.data("id");if(q>=aj){a2--}ah(a2)};var g=function(a2,j,i,a1){a.each(av,function(){var a4=a(this),a3={opacity:c.smallthumb_inactive_opacity};if(a4.data("id")===a1.data("id")){a3.opacity=1}if(af==="vert"){a3.top="-="+a2}else{a3.left="-="+a2}a4.animate(a3,az,"swing",function(){if(ai){a1.addclass("etalage_smallthumb_active"); ai=false}})});g(a1,true)};var ay=function(){var a2=y-al,a1=x-ak,j=-a2/ac,i=-a1/ac;al=al-j;ak=ak-i;if(a2<1&&a2>-1){al=y}if(a1<1&&a1>-1){ak=x}ab.css({left:al,top:ak});if(ao){an.css({left:al,top:ak})}if(a2>1||a1>1||a2<1||a1<1){x=settimeout(function(){ay()},25)}};var l=function(){var i;if(c.magnifier_invert){ag.find(".etalage_thumb_active").mouseleave()}if(!c.right_to_left){i=ag.find(".etalage_smallthumb_active").prev();if(!i.length){if(q>aj){f()}else{av.last().trigger("click")}return true}}else{i=ag.find(".etalage_smallthumb_active").next(); if(!i.length){if(q>aj){ac()}else{av.first().trigger("click")}return true}}i.trigger("click")};var au=function(){var i;if(c.magnifier_invert){ag.find(".etalage_thumb_active").mouseleave()}if(!c.right_to_left){i=ag.find(".etalage_smallthumb_active").next();if(!i.length){if(q>aj){ac()}else{av.first().trigger("click")}return true}}else{i=ag.find(".etalage_smallthumb_active").prev();if(!i.length){if(q>aj){f()}else{av.last().trigger("click")}return true}}i.trigger("click")};var n=function(a2){if(q<=aj||!c.show_begin_end_smallthumb){a2=a2-1 }var a6=av.eq(a2);if(a6.length&&!ai){var a5=ag.find(".etalage_smallthumb_active"),a1=a5.data("id")-1,j;if(a1>a2){z=a1-a2;var a3=ag.find(".etalage_smallthumb_first"),a7=a3.data("id");if(a2=i){j=i-a1-1;z=z-j;a4.trigger("click")}else{g(a6,false)}}}}};window[ar+"_previous"]=function(){l()};window[ar+"_next"]=function(){au()};window[ar+"_show"]=function(i){n(i) };var ai=function(i){if(!c.click_callback(i,ar)){return false}if(typeof etalage_click_callback==="function"){etalage_click_callback(i,ar);return false}return true};var ah=function(i){if(c.change_callback(i,ar)){if(typeof etalage_change_callback==="function"){etalage_change_callback(i,ar)}}};w.add(ao).add(e).mouseenter(function(){if(c.show_hint){r.hide()}if(!c.click_to_zoom||a){u()}}).mouseleave(function(){aw()});var au=-(c.source_image_width-t),at=-(c.source_image_height-a0);w.add(ao).add(e).mousemove(function(a5){var j=math.round(a5.pagex-ay.offset().left+am),i=math.round(a5.pagey-ay.offset().top+ak); var a4=(j-af),a3=(i-ae);if(a4p){a4=p}if(a3m){a3=m}ao.css({left:a4,top:a3});if(c.magnifier_invert){var a2=a4-am,a1=a3-ak;h.css({left:-a2,top:-a1})}y=-((a4-am)*(1/(c.thumb_image_width/c.source_image_width)));x=-((a3-ak)*(1/(c.thumb_image_height/c.source_image_height)));if(y1||!c.smallthumb_hide_single){av.click(function(){var a7=a(this),a3,j=0,a5=false,a2,a8,a4,a6,a1;if(!a7.hasclass("etalage_smallthumb_active")&&(!ai||z)){if(a7.hasclass("etalage_smallthumb_first")&&a7.prev().length){ap("left")}else{if(a7.hasclass("etalage_smallthumb_navtoend")){f()}else{if(a7.hasclass("etalage_smallthumb_last")&&a7.next().length){ap("right")}else{if(a7.hasclass("etalage_smallthumb_navtostart")){ac()}else{if(z&&!a(this).next().length){f(); return true}else{if(z&&!a(this).prev().length){ac();return true}}g(a7,false)}}}}}});if(c.smallthumb_select_on_hover){av.mouseenter(function(){a(this).trigger("click")})}}if(c.click_to_zoom){w.click(function(){a=true;u()})}else{ao.click(function(){var i=ay.data("anchor");if(i){if(ai(i)){window.location=i}}})}if(q>1&&c.keyboard){a(document).keydown(function(i){if(i.keycode===39||i.keycode==="39"){if(!c.right_to_left){au()}else{l()}}if(i.keycode===37||i.keycode==="37"){if(!c.right_to_left){l()}else{au() }}})}a(window).bind("load",function(){w.css({"background-image":"none"});k.css({"background-image":"none"});if(ao){ao=false;an.remove()}});if(aj){k()}}});return this}})(jquery);