/**
* Name: PiroBox Extended v.1.0
* Date: Gen 2011
* Autor: Diego Valobra (http://www.pirolab.it),(http://www.diegovalobra.com)
* Version: 1.0
* Licence: CC-BY-SA http://creativecommons.org/licenses/by-sa/3/it/
**/
(function(a){a.fn.piroBox_ext=function(b){b=jQuery.extend({piro_speed:700,bg_alpha:0.9,piro_scroll:true},b);a.fn.piroFadeIn=function(i,x){a(this).fadeIn(i,function(){if(jQuery.browser.msie){a(this).get(0).style.removeAttribute("filter")}if(x!=undefined){x()}})};a.fn.piroFadeOut=function(i,x){a(this).fadeOut(i,function(){if(jQuery.browser.msie){a(this).get(0).style.removeAttribute("filter")}if(x!=undefined){x()}})};var z=a('a[class*="pirobox"]');var C=new Object();for(var w=0;w<z.length;w++){var f=a(z[w]);C["a."+f.attr("class").match(/^pirobox_gall\w*/)]=0}var n=new Array();for(var D in C){n.push(D)}for(var w=0;w<n.length;w++){a(n[w]+":first").addClass("first");a(n[w]+":last").addClass("last")}var k=a(z);a('a[class*="pirobox_gall"]').each(function(i){this.rev=i+0});var t=('<div class="piro_overlay"></div><table class="piro_html"  cellpadding="0" cellspacing="0"><tr><td class="h_t_l"></td><td class="h_t_c" title="drag me!!"></td><td class="h_t_r"></td></tr><tr><td class="h_c_l"></td><td class="h_c_c"><div class="piro_loader" title="close"><span></span></div><div class="resize"><div class="nav_container"><a href="#prev" class="piro_prev" title="previous"></a><a href="#next" class="piro_next" title="next"></a><div class="piro_prev_fake">prev</div><div class="piro_next_fake">next</div><div class="piro_close" title="close"></div></div><div class="caption"></div><div class="div_reg"></div></div></td><td class="h_c_r"></td></tr><tr><td class="h_b_l"></td><td class="h_b_c"></td><td class="h_b_r"></td></tr></table>');a("body").append(t);var g=a(".piro_html"),v=a(".caption"),d=a(".piro_overlay"),j=a(".piro_next"),h=a(".piro_prev"),s=a(".piro_next_fake"),q=a(".piro_prev_fake"),u=a(".piro_close"),c=a(".div_reg"),p=a(".piro_loader"),A=a(".resize"),B=a(".btn_info");var m=0.95;if(a.browser.msie){g.draggable({handle:".h_t_c,.h_b_c,.div_reg img"})}else{g.draggable({handle:".h_t_c,.h_b_c,.div_reg img",opacity:0.8})}var l=a(window).height();var o=a(window).width();a(".nav_container").hide();g.css({left:((o/2)-(250))+"px",top:parseInt(a(document).scrollTop())+(100)});a(g).add(v).add(d).hide();d.css({opacity:b.bg_alpha});a(h).add(j).bind("click",function(y){a(".nav_container").hide();y.preventDefault();j.add(h).hide();var i=parseInt(a('a[class*="pirobox_gall"]').filter(".item").attr("rev"));var x=a(this).is(".piro_prev")?a('a[class*="pirobox_gall"]').eq(i-1):a('a[class*="pirobox_gall"]').eq(i+1);x.click()});a("html").bind("keyup",function(i){if(i.keyCode==27){i.preventDefault();if(a(u).is(":visible")){r()}}});a("html").bind("keyup",function(i){if(a(".item").is(".first")){}else{if(i.keyCode==37){i.preventDefault();if(a(u).is(":visible")){h.click()}}}});a("html").bind("keyup",function(i){if(a(".item").is(".last")){}else{if(i.keyCode==39){i.preventDefault();if(a(u).is(":visible")){j.click()}}}});a(window).resize(function(){var i=a(window).height();var x=a(window).width();var E=g.height();var y=g.width();g.css({left:((x/2)-(y/2))+"px",top:parseInt(a(document).scrollTop())+(i-E)/2})});function e(){a(window).scroll(function(){var i=a(window).height();var x=a(window).width();var E=g.height();var y=g.width();g.css({left:((x/2)-(y/2))+"px",top:parseInt(a(document).scrollTop())+(i-E)/2})})}if(b.piro_scroll==true){e()}a(k).each(function(){var y=a(this).attr("title");var E=a(this).attr("rel").split("-");var i=a(this).attr("href");a(this).unbind();a(this).bind("click",function(F){d.css({opacity:b.bg_alpha});F.preventDefault();j.add(h).hide().css("visibility","hidden");a(k).filter(".item").removeClass("item");a(this).addClass("item");x();if(a(this).is(".first")){h.hide();j.show();q.show().css({opacity:0.5,visibility:"hidden"})}else{j.add(h).show();s.add(q).hide()}if(a(this).is(".last")){h.show();s.show().css({opacity:0.5,visibility:"hidden"});j.hide()}if(a(this).is(".pirobox")){j.add(h).hide()}});function x(){g.add(d).add(c).add(p).show();function F(){if(E[1]=="full"&&E[2]=="full"){E[2]=a(window).height()-70;E[1]=a(window).width()-55}var I=a(window).height();var H=a(window).width();u.hide();c.add(A).animate({height:+(E[2])+"px",width:+(E[1])+"px"},b.piro_speed).css("visibility","visible");g.animate({height:+(E[2])+20+"px",width:+(E[1])+20+"px",left:((H/2)-((E[1])/2+10))+"px",top:parseInt(a(document).scrollTop())+(I-E[2])/2-10},b.piro_speed,function(){j.add(h).css({height:"20px",width:"20px"});j.add(h).add(q).add(s).css("visibility","visible");a(".nav_container").show();u.show()})}function G(){var H=new Image();H.onerror=function(){v.html("");H.src="http://www.pirolab.it/pirobox/js/error.jpg"};H.onload=function(){v.add(B).hide();var N=a(window).height();var I=a(window).width();var M=H.height;var L=H.width;if(M+20>N||L+20>I){var K=(L+20)/I;var J=(M+20)/N;if(J>K){L=Math.round(H.width*(m/J));M=Math.round(H.height*(m/J))}else{L=Math.round(H.width*(m/K));M=Math.round(H.height*(m/K))}}else{M=H.height;L=H.width}var N=a(window).height();var I=a(window).width();a(H).height(M).width(L).hide();a(H).fadeOut(300,function(){});a(".div_reg img").remove();a(".div_reg").html("");c.append(H).show();a(H).addClass("immagine");c.add(A).animate({height:M+"px",width:L+"px"},b.piro_speed);g.animate({height:(M+20)+"px",width:(L+20)+"px",left:((I/2)-((L+20)/2))+"px",top:parseInt(a(document).scrollTop())+(N-M)/2-20},b.piro_speed,function(){var O=A.width();v.css({width:O+"px"});p.hide();a(H).fadeIn(300,function(){u.add(B).show();v.slideDown(200);j.add(h).css({height:"20px",width:"20px"});j.add(h).add(q).add(s).css("visibility","visible");a(".nav_container").show();A.resize(function(){NimgW=H.width;NimgH=H.heigh;v.css({width:(NimgW)+"px"})})})})};H.src=i;p.click(function(){H.src="about:blank"})}switch(E[0]){case"iframe":c.html("").css("overflow","hidden");A.css("overflow","hidden");u.add(B).add(v).hide();F();c.piroFadeIn(300,function(){c.append('<iframe id="my_frame" class="my_frame" src="'+i+'" frameborder="0" allowtransparency="true" scrolling="auto" align="top"></iframe>');a(".my_frame").css({height:+(E[2])+"px",width:+(E[1])+"px"});p.hide()});break;case"content":c.html("").css("overflow","auto");A.css("overflow","auto");a(".my_frame").remove();u.add(B).add(v).hide();F();c.piroFadeIn(300,function(){c.load(i);p.hide()});break;case"inline":c.html("").css("overflow","auto");A.css("overflow","auto");a(".my_frame").remove();u.add(B).add(v).hide();F();c.piroFadeIn(300,function(){a(i).clone(true).appendTo(c).piroFadeIn(300);p.hide()});break;case"gallery":c.css("overflow","hidden");A.css("overflow","hidden");a(".my_frame").remove();u.add(B).add(v).hide();if(y==""){v.html("")}else{v.html("<p>"+y+"</p>")}G();break;case"single":u.add(B).add(v).hide();c.html("").css("overflow","hidden");A.css("overflow","hidden");a(".my_frame").remove();if(y==""){v.html("")}else{v.html("<p>"+y+"</p>")}G();break}}});a(".immagine").live("click",function(){v.slideToggle(200)});function r(){if(a(".piro_close").is(":visible")){a(".my_frame").remove();g.add(c).add(A).stop();var i=g;if(a.browser.msie){i=c.add(d);a(".div_reg img").remove()}else{i=g.add(d)}i.piroFadeOut(200,function(){c.html("");p.add(v).add(B).hide();a(".nav_container").hide();d.add(g).hide().css("visibility","visible")})}}u.add(p).add(d).bind("click",function(i){i.preventDefault();r()})}})(jQuery);
