(function($){$.fn.galleryView=function(g){var h=$.extend($.fn.galleryView.defaults,g);var j;var k=0;var l;var m;var n=10;var o;var p;var q=0;var r;var t;var u=false;var v=20;var w=5;var z=2;var A;var B;var C;var D;var E;function showItem(i){$('img.nav-next').unbind('click');$('img.nav-prev').unbind('click');C.unbind('click');if(has_panels){if(h.fade_panels){D.fadeOut(h.transition_speed).eq(i%q).fadeIn(h.transition_speed,function(){if(!has_filmstrip){$('img.nav-prev').click(showPrevItem);$('img.nav-next').click(showNextItem)}})}}if(has_filmstrip){if(r=='strip'){B.stop();var b=getPos(C[i]).left-(getPos(E[0]).left+2);var c=(b>=0?'-=':'+=')+Math.abs(b)+'px';B.animate({'left':c},h.transition_speed,h.easing,function(){if(i>q){i=i%q;k=i;B.css('left','-'+((h.frame_width+n)*i)+'px')}else if(i<=(q-strip_size)){i=(i%q)+q;k=i;B.css('left','-'+((h.frame_width+n)*i)+'px')}if(!h.fade_panels){D.hide().eq(i%q).show()}$('img.nav-prev').click(showPrevItem);$('img.nav-next').click(showNextItem);enableFrameClicking()})}else if(r=='pointer'){E.stop();var d=getPos(C[i]);E.animate({'left':(d.left-2+'px')},h.transition_speed,h.easing,function(){if(!h.fade_panels){D.hide().eq(i%q).show()}$('img.nav-prev').click(showPrevItem);$('img.nav-next').click(showNextItem);enableFrameClicking()})}if($('a',C[i])[0]){E.unbind('click').click(function(){var a=$('a',C[i]).eq(0);if(a.attr('target')=='_blank'){window.open(a.attr('href'))}else{location.href=a.attr('href')}})}}};function showNextItem(){$(document).stopTime("transition");if(++k==C.length){k=0}showItem(k);$(document).everyTime(h.transition_interval,"transition",function(){showNextItem()})};function showPrevItem(){$(document).stopTime("transition");if(--k<0){k=q-1}showItem(k);$(document).everyTime(h.transition_interval,"transition",function(){showNextItem()})};function getPos(a){var b=0,top=0;var c=a.id;if(a.offsetParent){do{b+=a.offsetLeft;top+=a.offsetTop}while(a=a.offsetParent)}if(c==j){return{'left':b,'top':top}}else{var d=getPos(A[0]);var e=d.left;var f=d.top;return{'left':b-e,'top':top-f}}};function enableFrameClicking(){C.each(function(i){if($('a',this).length==0){$(this).click(function(){$(document).stopTime("transition");showItem(i);k=i;$(document).everyTime(h.transition_interval,"transition",function(){showNextItem()})})}})};function buildPanels(){if($('.panel-overlay').length>0){D.append('<div class="overlay"></div>')}if(!has_filmstrip){$('<img />').addClass('nav-next').attr('src',t+h.nav_theme+'/next.png').appendTo(A).css({'position':'absolute','zIndex':'1100','cursor':'pointer','top':((h.panel_height-22)/2)+'px','right':'10px','display':'none'}).click(showNextItem);$('<img />').addClass('nav-prev').attr('src',t+h.nav_theme+'/prev.png').appendTo(A).css({'position':'absolute','zIndex':'1100','cursor':'pointer','top':((h.panel_height-22)/2)+'px','left':'10px','display':'none'}).click(showPrevItem);$('<img />').addClass('nav-overlay').attr('src',t+h.nav_theme+'/panel-nav-next.png').appendTo(A).css({'position':'absolute','zIndex':'1099','top':((h.panel_height-22)/2)-10+'px','right':'0','display':'none'});$('<img />').addClass('nav-overlay').attr('src',t+h.nav_theme+'/panel-nav-prev.png').appendTo(A).css({'position':'absolute','zIndex':'1099','top':((h.panel_height-22)/2)-10+'px','left':'0','display':'none'})}D.css({'width':(h.panel_width-parseInt(D.css('paddingLeft').split('px')[0],10)-parseInt(D.css('paddingRight').split('px')[0],10))+'px','height':(h.panel_height-parseInt(D.css('paddingTop').split('px')[0],10)-parseInt(D.css('paddingBottom').split('px')[0],10))+'px','position':'absolute','top':(h.filmstrip_position=='top'?(h.frame_height+w+(h.show_captions?v:w))+'px':'0px'),'left':'0px','overflow':'hidden','background':'#222','display':'none'});$('.panel-overlay',D).css({'position':'absolute','zIndex':'999','width':(h.panel_width-20)+'px','height':h.overlay_height+'px','top':(h.overlay_position=='top'?'0':h.panel_height-h.overlay_height+'px'),'left':'0','padding':'0 10px','color':h.overlay_text_color,'fontSize':h.overlay_font_size});$('.panel-overlay a',D).css({'color':h.overlay_text_color,'textDecoration':'underline','fontWeight':'bold'});$('.overlay',D).css({'position':'absolute','zIndex':'998','width':h.panel_width+'px','height':h.overlay_height+'px','top':(h.overlay_position=='top'?'0':h.panel_height-h.overlay_height+'px'),'left':'0','background':h.overlay_color,'opacity':h.overlay_opacity});$('.panel iframe',D).css({'width':h.panel_width+'px','height':(h.panel_height-h.overlay_height)+'px','border':'0'})};function buildFilmstrip(){B.wrap('<div class="strip_wrapper"></div>');if(r=='strip'){C.clone().appendTo(B);C.clone().appendTo(B);C=$('li',B)}if(h.show_captions){C.append('<div class="caption"></div>').each(function(i){$(this).find('.caption').html($(this).find('img').attr('title'))})}B.css({'listStyle':'none','margin':'0','padding':'0','width':o+'px','position':'absolute','zIndex':'900','top':'0','left':'0','height':(h.frame_height+10)+'px','background':h.background_color});C.css({'float':'left','position':'relative','height':h.frame_height+'px','zIndex':'901','marginTop':w+'px','marginBottom':'0px','marginRight':n+'px','padding':'0','cursor':'pointer'});$('img',C).css({'border':'none'});$('.strip_wrapper',A).css({'position':'absolute','top':(h.filmstrip_position=='top'?'0px':h.panel_height+'px'),'left':((l-p)/2)+'px','width':p+'px','height':(h.frame_height+w+(h.show_captions?v:w))+'px','overflow':'hidden'});$('.caption',A).css({'position':'absolute','top':h.frame_height+'px','left':'0','margin':'0','width':h.frame_width+'px','padding':'0','color':h.caption_text_color,'textAlign':'center','fontSize':'10px','height':v+'px','lineHeight':v+'px'});var b=$('<div></div>');b.attr('id','pointer').appendTo(A).css({'position':'absolute','zIndex':'1000','cursor':'pointer','top':getPos(C[0]).top-(z/2)+'px','left':getPos(C[0]).left-(z/2)+'px','height':h.frame_height-z+'px','width':h.frame_width-z+'px','border':(has_panels?z+'px solid '+(h.nav_theme=='dark'?'black':'white'):'none')});E=$('#pointer',A);if(has_panels){var c=$('<img />');c.attr('src',t+h.nav_theme+'/pointer'+(h.filmstrip_position=='top'?'-down':'')+'.png').appendTo($('#pointer')).css({'position':'absolute','zIndex':'1001','top':(h.filmstrip_position=='bottom'?'-'+(10+z)+'px':h.frame_height+'px'),'left':((h.frame_width/2)-10)+'px'})}if(r=='strip'){B.css('left','-'+((h.frame_width+n)*q)+'px');k=q}if($('a',C[k])[0]){E.click(function(){var a=$('a',C[k]).eq(0);if(a.attr('target')=='_blank'){window.open(a.attr('href'))}else{location.href=a.attr('href')}})}$('<img />').addClass('nav-next').attr('src',t+h.nav_theme+'/next.png').appendTo(A).css({'position':'absolute','cursor':'pointer','top':(h.filmstrip_position=='top'?0:h.panel_height)+w+((h.frame_height-22)/2)+'px','right':(l/2)-(p/2)-10-22+'px'}).click(showNextItem);$('<img />').addClass('nav-prev').attr('src',t+h.nav_theme+'/prev.png').appendTo(A).css({'position':'absolute','cursor':'pointer','top':(h.filmstrip_position=='top'?0:h.panel_height)+w+((h.frame_height-22)/2)+'px','left':(l/2)-(p/2)-10-22+'px'}).click(showPrevItem)};function mouseIsOverPanels(x,y){var a=getPos(A[0]);var b=a.top;var c=a.left;return x>c&&x<c+h.panel_width&&y>b&&y<b+h.panel_height};return this.each(function(){A=$(this);$('script').each(function(i){var s=$(this);if(s.attr('src')&&s.attr('src').match(/jquery\.galleryview/)){t=s.attr('src').split('jquery.galleryview')[0]+'themes/'}});A.css('visibility','hidden');B=$('.filmstrip',A);C=$('li',B);D=$('.panel',A);j=A.attr('id');has_panels=D.length>0;has_filmstrip=C.length>0;if(!has_panels)h.panel_height=0;q=has_panels?D.length:C.length;strip_size=has_panels?Math.floor((h.panel_width-64)/(h.frame_width+n)):Math.min(q,h.filmstrip_size);if(strip_size>=q){r='pointer';strip_size=q}else{r='strip'}l=has_panels?h.panel_width:(strip_size*(h.frame_width+n))-n+64;m=(has_panels?h.panel_height:0)+(has_filmstrip?h.frame_height+w+(h.show_captions?v:w):0);if(r=='pointer'){o=(h.frame_width*q)+(n*(q))}else{o=(h.frame_width*q*3)+(n*(q*3))}p=((strip_size*h.frame_width)+((strip_size-1)*n));A.css({'position':'relative','margin':'0','background':h.background_color,'border':h.border,'width':l+'px','height':m+'px'});if(has_filmstrip){buildFilmstrip()}if(has_panels){buildPanels()}if(has_filmstrip)enableFrameClicking();$().mousemove(function(e){if(mouseIsOverPanels(e.pageX,e.pageY)){if(h.pause_on_hover){$(document).oneTime(500,"animation_pause",function(){$(document).stopTime("transition");u=true})}if(has_panels&&!has_filmstrip){$('.nav-overlay').fadeIn('fast');$('.nav-next').fadeIn('fast');$('.nav-prev').fadeIn('fast')}}else{if(h.pause_on_hover){$(document).stopTime("animation_pause");if(u){$(document).everyTime(h.transition_interval,"transition",function(){showNextItem()});u=false}}if(has_panels&&!has_filmstrip){$('.nav-overlay').fadeOut('fast');$('.nav-next').fadeOut('fast');$('.nav-prev').fadeOut('fast')}}});D.eq(0).show();if(q>1){$(document).everyTime(h.transition_interval,"transition",function(){showNextItem()})}A.css('visibility','visible')})};$.fn.galleryView.defaults={panel_width:400,panel_height:300,frame_width:80,frame_height:80,filmstrip_size:3,overlay_height:70,overlay_font_size:'1em',transition_speed:400,transition_interval:6000,overlay_opacity:0.6,overlay_color:'black',background_color:'black',overlay_text_color:'white',caption_text_color:'white',border:'1px solid black',nav_theme:'light',easing:'swing',filmstrip_position:'bottom',overlay_position:'bottom',show_captions:false,fade_panels:true,pause_on_hover:false}})(jQuery);