(function(a){a.fn.piroBox=function(b){function c(){var c='<tr><td colspan="3" class="pirobox_up"></td></tr><tr><td class="t_l"></td><td class="t_c"></td><td class="t_r"></td></tr><tr><td class="c_l"></td><td class="c_c"><span><span></span></span><div></div></td><td class="c_r"></td></tr><tr><td class="b_l"></td><td class="b_c"></td><td class="b_r"></td></tr><tr><td colspan="3" class="pirobox_down"></td></tr>',d=a(window).height(),e=a(jQuery('<div class="piro_overlay"></div>').hide().css({opacity:+b.bg_alpha,height:d+"px"})),f=a(jQuery('<table class="pirobox_content" cellpadding="0" cellspacing="0"></table>')),g=a(jQuery('<div class="caption"></div>').css({opacity:"0.8","-moz-border-radius":b.radius+"px","-khtml-border-radius":b.radius+"px","-webkit-border-radius":b.radius+"px","border-radius":b.radius+"px"})),h=a(jQuery('<div class="piro_nav"></div>')),i=a(jQuery('<div class="piro_close"></div>')),j=a(jQuery('<a href="#play" class="play"></a>')),k=a(jQuery('<a href="#stop" class="stop"></a>')),l=a(jQuery('<a href="#prev" class="'+b.pirobox_prev+'"></a>')),m=a(jQuery('<a href="#next" class="'+b.pirobox_next+'"></a>'));a("body").append(e).append(f),f.append(c),a(".pirobox_up").append(i),a(".pirobox_down").append(h),a(".c_c").append(j),j.hide(),h.append(l).append(m).append(g),l.is(".piro_prev_out")||m.is(".piro_next_out")?(a("body").append(l).append(m),l.add(m).hide()):h.append(l).append(m);var n=l.width();f.hide();var o=a("a[class^='pirobox_gall']"),p=new Object;for(var q=0;q<o.length;q++){var r=a(o[q]);p["a."+r.attr("class")]=0}var s=[];for(var t in p)s.push(t),a(t).length!==1;for(var q=0;q<s.length;q++){a(s[q]).each(function(b){this.rel=b+1+"&nbsp;sur&nbsp;"+a(s[q]).length});var u=a(s[q]+":first").addClass("first"),v=a(s[q]+":last").addClass("last")}a(o).each(function(a){this.rev=a+0});var w=a(o),x=a("a.pirobox");a.fn.fixPNG=function(){return this.each(function(){var b=a(this).css("backgroundImage");b.match(/^url\(["']?(.*\.png)["']?\)$/i)&&(b=RegExp.$1,a(this).css({backgroundImage:"none",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod="+(a(this).css("backgroundRepeat")=="no-repeat"?"crop":"scale")+", src='"+b+"')"}).each(function(){var b=a(this).css("position");b!="absolute"&&b!="relative"&&a(this).css("position","relative")}))})},a(window).resize(function(){var b=a(window).height();e.css({visibility:"visible",height:+b+"px"})}),l.add(m).bind("click",function(b){b.preventDefault();var c=parseInt(a(w).filter(".item").attr("rev")),d=a(this).is(".piro_prev_out,.piro_prev")?a(w).eq(c-1):a(w).eq(c+1);d.click(),i.add(g).add(m).add(l).css("visibility","hidden")}),x.each(function(b){var c=a(this);c.bind("click",function(b){b.preventDefault(),y(c.attr("href"));var d=c.attr("href"),e=c.attr("title");e==""?g.html("<p>"+d+"<a href="+d+' class="link_to" target="_blank" title="Open Image in a new window"></a></p>'):g.html("<p>"+e+"<a href="+d+' class="link_to" target="_blank" title="Open Image in a new window"></a></p>'),a(".c_c").addClass("unique"),m.add(l).add(i).add(g).hide(),a(".play").remove()})}),a(w).each(function(b){var c=a(this);c.bind("click",function(b){b.preventDefault(),y(c.attr("href"));var d=c.attr("href"),e=c.attr("title"),f=c.attr("rel");e==""?g.html("<p>"+d+'<em class="number">'+f+"</em><a href="+d+' class="link_to" target="_blank" title="Open Image in a new window"></a></p>'):g.html("<p>"+e+'<em class="number">'+f+"</em><a href="+d+' class="link_to" target="_blank" title="Open Image in a new window"></a></p>'),c.is(".last")?a(".number").css("text-decoration","underline"):a(".number").css("text-decoration","none"),c.is(".first")?(l.hide(),m.show()):m.add(l).show(),c.is(".last")&&(l.show(),m.hide()),c.is(".last")&&c.is(".first")&&(l.add(m).hide(),a(".number").hide(),j.remove()),a(w).filter(".item").removeClass("item"),c.addClass("item"),a(".c_c").removeClass("unique")})});var y=function(b){j.add(k).hide(),i.add(g).add(m).add(l).css("visibility","hidden"),f.is(":visible")?a(".c_c div").children().fadeOut(300,function(){a(".c_c div").children().remove(),z(b)}):(a(".c_c div").children().remove(),f.show(),e.fadeIn(300,function(){z(b)}))},z=function(c){function s(){a(f).is(":visible")&&(window.onscroll=function(){var b=a(f).height();f.css({marginTop:parseInt(a(this).scrollTop())-b/1.9-10});var c=a(window).height(),d=a(".piro_prev_out").height();a(".piro_prev_out").add(".piro_next_out").css({marginTop:parseInt(a(document).scrollTop())+(c/d-125)})})}function p(){clearTimeout(q),a(w).filter(".item").is(".last")?(a(w).children().removeAttr("class"),m.add(l).css("width",n+"px"),a(".stop").remove(),a(".c_c").append(j),j.hide()):a(w).children().is("."+b.slideShow)&&m.click()}if(!f.is(".loading")){f.addClass("loading");var d=new Image;d.onerror=function(){var c=a(f).height();f.css({marginTop:parseInt(a(document).scrollTop())-c/1.9}),a(".c_c div").append('<p class="err_mess">There seems to be an Error:&nbsp;<a href="#close" class="close_pirobox">Close Pirobox</a></p>'),a(".close_pirobox").bind("click",function(){a(".err_mess").remove(),f.add(e).fadeOut(b.close_speed),f.removeClass("loading"),a(".c_c").append(j);return!1})},d.onload=function(){var c=d.height,e=d.width,h=a(f).height(),n=a(window).height(),o=a(window).width();if(c+100>n||e+100>o){var p=e,q=c,r=(e+250)/o,s=(c+250)/n;s>r?(p=Math.round(e*(1/s)),q=Math.round(c*(1/s))):(p=Math.round(e*(1/r)),q=Math.round(c*(1/r))),c+=q,e+=p,a(d).height(q).width(p).hide(),a(".c_c div").animate({height:q+"px",width:p+"px"},b.my_speed),f.animate({height:q+20+"px",width:p+20+"px",marginLeft:"-"+(p/2+10)+"px",marginTop:parseInt(a(document).scrollTop())-q/1.9-20},b.my_speed,function(){a(".piro_nav,.caption").css({width:p+"px"}),a(".piro_nav").css("margin-left","-"+(p+5)/2+"px");var c=g.height();g.css({bottom:"-"+(c+5)+"px"}),a(".c_c div").append(d),i.css("display","block"),m.add(l).add(i).css("visibility","visible"),g.css({visibility:"visible",display:"block"}),a(d).show().fadeIn(300),f.removeClass("loading"),b.slideShow=="slideshow"?j.add(k).show():j.add(k).hide()})}else a(d).height(c).width(e).hide(),a(".c_c div").animate({height:c+"px",width:e+"px"},b.my_speed),f.animate({height:c+20+"px",width:e+20+"px",marginLeft:"-"+(e/2+10)+"px",marginTop:parseInt(a(document).scrollTop())-c/1.9-20},b.my_speed,function(){a(".piro_nav,.caption").css({width:e+"px"}),a(".piro_nav").css("margin-left","-"+(e+5)/2+"px");var c=g.height();g.css({bottom:"-"+(c+5)+"px"}),a(".c_c div").append(d),i.css("display","block"),m.add(l).add(i).css("visibility","visible"),g.css({visibility:"visible",display:"block"}),a(d).fadeIn(300),f.removeClass("loading"),b.slideShow=="slideshow"?j.add(k).show():j.add(k).hide()})},d.src=c;var h=a(window).height(),o=a(".piro_prev_out").height();a(".piro_prev_out").add(".piro_next_out").css({marginTop:parseInt(a(document).scrollTop())+(h/o-125)}),a(".caption p").css({"-moz-border-radius":b.radius+"px","-khtml-border-radius":b.radius+"px","-webkit-border-radius":b.radius+"px","border-radius":b.radius+"px"}),k.bind("click",function(b){b.preventDefault(),clearTimeout(q),a(w).children().removeAttr("class"),a(".stop").remove(),a(".c_c").append(j),m.add(l).css("width",n+"px")}),j.bind("click",function(c){c.preventDefault(),clearTimeout(q),a(d).is(":visible")&&(a(w).children().addClass(b.slideShow),a(".play").remove(),a(".c_c").append(k)),m.add(l).css({width:"0px"});return p()}),a(b.close_all).bind("click",function(c){clearTimeout(q),a(d).is(":visible")&&(c.preventDefault(),i.add(e).add(f).add(g).add(m).add(l).fadeOut(b.close_speed),f.removeClass("loading"),a(w).children().removeAttr("class"),m.add(l).css("width",n+"px").hide(),a(".stop").remove(),a(".c_c").append(j),j.hide())});var q=setInterval(p,b.slideSpeed*1e3);a().bind("keydown",function(c){if(c.keyCode===27){c.preventDefault();if(a(d).is(":visible")||a(".c_c>div>p>a").is(".close_pirobox"))i.add(e).add(f).add(g).add(m).add(l).fadeOut(b.close_speed),f.removeClass("loading"),clearTimeout(q),a(w).children().removeAttr("class"),a(".stop").remove(),a(".c_c").append(j),m.add(l).css("width",n+"px"),a(w).add(x).children().fadeTo(100,1)}}).bind("keydown",function(b){!a(".c_c").is(".unique")&&!a(".item").is(".first")&&a(".c_c").is(".c_c")&&b.keyCode===37&&(b.preventDefault(),a(d).is(":visible")&&(clearTimeout(q),a(w).children().removeAttr("class"),a(".stop").remove(),a(".c_c").append(j),m.add(l).css("width",n+"px"),l.click())),!a(".c_c").is(".unique")&&!a(".item").is(".last")&&a(".c_c").is(".c_c")&&b.keyCode===39&&(b.preventDefault(),a(d).is(":visible")&&(clearTimeout(q),a(w).children().removeAttr("class"),a(".stop").remove(),a(".c_c").append(j),m.add(l).css("width",n+"px"),m.click()))}),a.browser.msie6=a.browser.msie&&/MSIE 6\.0/i.test(window.navigator.userAgent);if(a.browser.msie6&&!/MSIE 8\.0/i.test(window.navigator.userAgent)){a(".t_l,.t_c,.t_r,.c_l,.c_r,.b_l,.b_c,.b_r,a.piro_next, a.piro_prev,a.piro_prev_out,a.piro_next_out,.c_c,.piro_close,a.play,a.stop").fixPNG();var r=a(document).height();e.css("height",r+"px")}a.browser.msie&&(b.close_speed=0);if(b.scrollImage==!0)return s()}}}b=jQuery.extend({my_speed:null,close_speed:300,bg_alpha:.5,scrollImage:null,pirobox_next:"piro_next_out",pirobox_prev:"piro_prev_out",radius:4,close_all:".piro_close,.piro_overlay",slideShow:null,slideSpeed:null},b),c()}})(jQuery)
