/*
 boxplus: a lightweight pop-up window engine shipped with sigplus
 @author  Levente Hunyadi
 @version 1.3.4
 @remarks Copyright (C) 2009-2010 Levente Hunyadi
 @remarks Licensed under GNU/GPLv3, see http://www.gnu.org/licenses/gpl-3.0.html
 @see     http://hunyadi.info.hu/projects/boxplus
*/
if(typeof __jQuery__=="undefined")var __jQuery__=jQuery;
(function(d){function D(a,b){var c=parseInt(a.css(b));return isNaN(c)?a[b]():c}function q(a){return D(a,"width")}function I(a,b){return parseInt(a.css("margin-"+b))||0}function J(a){var b=a.charAt(0).toUpperCase()+a.slice(1),c="client"+b,e=x[c];c=document.documentElement[c];b=window["inner"+b];e=e?e:Infinity;c=c?c:Infinity;b=b?b:Infinity;return Math.min(e,c,b,d(window)[a]())}function Ca(a){var b=a.attr("src"),c=a.attr("longdesc");a=a.attr("data-thumb");return{src:a?a:b&&b!="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=="?
b:/\.(gif|jpe?g|png)$/i.test(c)?c:false}}function g(a,b){return d(".boxplus-"+a,b)}function Z(a){var b=d(a);j=d.extend({},$,b.data("boxplus"));var c=j.theme;c&&d("link[rel=stylesheet][title^=boxplus]").attr("disabled","disabled").filter('[title="boxplus-'+c+'"]').removeAttr("disabled");Q.removeClass("boxplus-hidden");g("m",f).addClass("boxplus-hidden");g("title",f).addClass("boxplus-unavailable");f.removeClass("boxplus-disabled").css({width:R,height:S}).css(aa(R,S)).removeClass("boxplus-hidden");
E(f,true);T.bind("keydown",ba);j.contextmenu||T.bind("contextmenu",ca);n=(c=b.attr("rel"))?d('a[rel="'+c+'"]'):b;y=(da=j.rtl)?"right":"left";i.empty().css({left:"auto",right:"auto"}).css(y,0);n.each(function(e){var h=d("img:first",this);d("<li />").append((h.size()?d("<img />").attr(Ca(h)):d()).click(function(){o();v(e)})).appendTo(i)});z.removeClass("boxplus-disabled").each(function(){var e=d("ul",this);d(this).toggleClass("boxplus-unavailable",e.children().size()<2)});b=j.thumbs=="outside";z.toggleClass("boxplus-disabled",
!b).filter(l.children()).toggleClass("boxplus-disabled",b);K.toggleClass("boxplus-unavailable",n.length<2||!j.slideshow);v(d.inArray(a,n.get()))}function U(){o();T.unbind("keydown",ba).unbind("contextmenu",ca);f.stop(true,true);k=-1;f.addClass("boxplus-disabled").add(F).add(l).add(Q).addClass("boxplus-hidden")}function Da(){o();v(0)}function V(){o();v(k-1)}function W(){o();v(k+1)}function Ea(){o();v(n.length-1)}function v(a){var b=n.length;if(a!=k&&(j.loop||a>=0&&a<b)){k=(a+b)%b;ea(true);fa()}}function o(){if(A){clearTimeout(A);
A=0}L.addClass("boxplus-disabled");K.removeClass("boxplus-disabled")}function Fa(){ga();K.addClass("boxplus-disabled");L.removeClass("boxplus-disabled")}function Ga(){o();ea(!G.hasClass("boxplus-hidden"));fa()}function M(){l.addClass("boxplus-hidden");E(l,false);E(f,true);F.addClass("boxplus-hidden");var a=j.autofit,b={},c={},e={};Ha(a&&G.hasClass("boxplus-hidden"),b,c,e);l.css(b);H.attr("src",n.eq(k).attr("href"));N.toggleClass("boxplus-unavailable",!a||!r||b.width==r.width&&G.hasClass("boxplus-hidden"));
i.each(function(){d(this).children().removeClass("boxplus-active").eq(k).addClass("boxplus-active")});g("m",f).addClass("boxplus-hidden");f.animate(d.extend(e,c),j.duration,j.easing,Ia)}function Ja(){o();window.location.href=j.download(n.eq(k))}function ha(){o();l.children().slice(0,-1).toggleClass("boxplus-hidden")}function ia(a){var b=a.attr("id");b=b?"boxplus-"+b:"boxplus";d("li",a).each(function(){d("a:first",this).attr("rel",b)});return d("a[rel="+b+"]",a)}function fa(){if(A){clearTimeout(A);
A=0}f.stop(true,true);i.stop();F.addClass("boxplus-hidden");E(l,true);w.empty();ja.addClass("boxplus-unavailable");var a=n.eq(k),b=a[0],c=a.attr("href"),e=b.pathname;d.boxplus.onchange(c,k);if(/^#/.test(c)){w.append(d(c).clone().contents());O()}else if(/\.(txt|html?)$/i.test(e))w.load(c,{},O);else if(/\.(gif|jpe?g|png)$/i.test(e))ka(a);else/\.(mov|mpe?g|ogg|swf|webM|wmv)$/i.test(e)||/youtube\.com$/.test(b.hostname)?la(a):d.ajax({url:c,success:function(h,s,t){h=t.getResponseHeader("Content-Type");
if(/^text\/(plain|html)/.test(h))w.load(c,{},O);else if(/^image\/(gif|jpeg|png)/.test(h))ka(a);else/^application\/x-shockwave-flash/.test(h)&&la(a)},type:"head"})}function ka(a){var b=j.metadata(a);if(b)w.append(d.inArray(d.type(b),["boolean","number","string"])>=0?b:b.clone());H.removeClass("boxplus-unavailable");d(r=new Image).load(M).error(O).attr("src",a.attr("href"))}function la(a){for(var b=a.attr("href"),c={},e=a[0].search.replace(/^\?/,"").split("&"),h=0;h<e.length;h++)if(e[h]){var s=e[h].split("=");
c[s[0]]=s[1]}e=parseInt(c.width)||640;c=parseInt(c.height)||480;c={width:e,height:c};a=a[0].pathname;if(/\.(ogg|webM)$/i.test(a))X.attr(d.extend({src:b},c)).removeClass("boxplus-unavailable");else{e="application/x-shockwave-flash";h="D27CDB6E-AE6D-11cf-96B8-444553540000";if(/\.mov$/i.test(a)){e="video/quicktime";h="02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"}Y.empty().append("<object"+ma(d.extend({classid:"clsid:"+h},c))+">"+Ka({movie:b})+"<!--[if lt IE 9]><!--\><object"+ma(d.extend({type:e,data:b},c))+
"></object><!--<![endif]--\></object>").removeClass("boxplus-unavailable")}r=d.extend({},c);M()}function ma(a){var b="",c;for(c in a)b+=" "+c+'="'+a[c]+'"';return b}function Ka(a){var b="",c;for(c in a)b+='<param name="'+c+'" value="'+a[c]+'" />';return b}function O(){r=null;M()}function Ia(){g("m",f).removeClass("boxplus-hidden");var a=B(i.children().eq(k));if(u<0){var b=q(z),c=q(i);i.css(y,-(c<b?B(i.children().eq(0)):Math.min(a,c-b)))}else{u=k;i.css(y,-a)}C();l.removeClass("boxplus-hidden");a=j.loop;
na.toggleClass("boxplus-unavailable",!a&&k==0);oa.toggleClass("boxplus-unavailable",!a&&k>=n.length-1);l.children().removeClass("boxplus-hidden");a=r&&r.src;b=!w.is(":empty");pa.toggleClass("boxplus-unavailable",!j.download(n.eq(k)));qa.toggleClass("boxplus-unavailable",!a||!b);w.addClass("boxplus-hidden");a||!b||ha();E(f,false);ra(f,false);a={width:q(f)+g("sideways",f).trueWidth(),height:D(f,"height")+sa(f)};f.animate(a,j.duration,j.easing,function(){F.removeClass("boxplus-hidden");!j.loop&&k>=n.length-
1&&o();!L.hasClass("boxplus-disabled")&&ga()})}function ga(){A=setTimeout(function(){v(k+1)},j.slideshow)}function B(a){var b=a.position().left;return da?a.offsetParent().width()-a.width()-b:b}function C(){var a=q(i.parent())-q(i),b=B(i);ta.toggleClass("boxplus-hidden",b>=0);ua.toggleClass("boxplus-hidden",a>0||b<=a)}function va(){o();var a={};a[y]=-B(i.children().eq(u));i.animate(a,"fast","linear",C);return false}function La(){if(u>0){u--;va()}}function Ma(){if(u>=0&&u+1<n.size()){u++;va()}}function Na(){if(u<
0){o();var a={};a[y]=0;i.animate(a,-4*B(i),"linear",C)}}function Oa(){if(u<0){o();var a=q(z),b=q(i),c=B(i),e=a-b;if(b+c<a)C();else{a={};a[y]=e;i.animate(a,-4*(e-c),"linear",C)}}}function wa(){i.stop();C()}function ea(a){g("enlarge",N).toggleClass("boxplus-hidden",!a);G.toggleClass("boxplus-hidden",a)}function ra(a,b){var c=n.eq(k),e=j.title(c);c=j.description(c,b);g("title",a).toggleClass("boxplus-unavailable",!e).html(e);g("text",a).toggleClass("boxplus-unavailable",!c||c==e).empty().append(c)}function E(a,
b){var c=g("progress",a).toggleClass("boxplus-hidden",!b);window.clearInterval(c.data("boxplus"));b&&c.data("boxplus",window.setInterval(function(){c.css("background-position",xa=(xa-32)%384)},150))}function sa(a){return g("caption",a).trueHeight()+g("controls",a).trueHeight()}function aa(a,b){var c=J("width")/2,e=J("height")/2,h=Math.max;return{left:h(0,d(window).scrollLeft()+c-a/2),top:h(0,d(window).scrollTop()+e-b/2)}}function Ha(a,b,c,e){d.extend(b,{width:r?r.width:ya,height:r?r.height:za});ra(g("caption",
m.removeClass("boxplus-unavailable")),true);var h=g("thumbs > ul",m);i.eq(0).children().clone().appendTo(h);g("thumbs",m).each(function(P){P=z.eq(P);d(this).toggleClass("boxplus-disabled",P.hasClass("boxplus-disabled")).toggleClass("boxplus-unavailable",P.hasClass("boxplus-unavailable"))});var s=g("sideways",m),t=g("main",m);t=t.trueWidth()-q(t)+s.trueWidth();var Aa=g("viewer",m.css("width",b.width+t)).css(b);if(a){var p=J("width")-I(x,"left")-I(x,"right"),Ba=m.outerWidth(true);if(Ba>p){p=p/Ba;b.width*=
p;b.height*=p;Aa.css(b);m.css("width",b.width+t)}}p=m.outerHeight(true);if(a)for(a=J("height")-I(x,"top")-I(x,"bottom");p>a;){p=a/p;b.width*=p;b.height*=p;Aa.css(b);p=m.css("width",b.width+t).outerHeight(true)}c.width=q(m)-s.trueWidth();c.height=D(m,"height")-sa(m);d.extend(e,aa(m.trueWidth(),p));h.empty();m.addClass("boxplus-unavailable")}function ba(a){if(d.inArray(a.target.tagName.toLowerCase(),["input","textarea"])<0){a=d.inArray(a.which,[27,37,39,36,35]);a<0||[U,V,W,Da,Ea][a]();return false}}
function ca(a){return!d("img",i).add(H).filter(a.target).size()}var $={rtl:false,theme:false,autofit:true,slideshow:0,duration:"slow",easing:"swing",loop:false,contextmenu:true,thumbs:"inside",title:function(a){a=d("img:first",a);return a.size()?a.attr("alt"):""},description:function(a){return a.attr("title")},download:function(){return false},metadata:function(){return""}},j,Q,f,m,R,S,ya,za,l,H,w,X,Y,ja,na,oa,K,L,pa,qa,N,G,z,i,ta,ua,F,T=d(document),x,r,n,k=-1,xa=0,u=-1,A,da,y;d.fn.trueWidth=function(){return this.filter(":visible").size()?
this.outerWidth(true):0};d.fn.trueHeight=function(){return this.filter(":visible").size()?this.outerHeight(true):0};d(function(){function a(s,t){return"<div"+(s?' class="boxplus-'+(d.isArray(s)?s.join(" "):s)+'"':"")+">"+(t?t:"")+"</div>"}x=d("body");var b=a("prev")+a("next"),c=a("caption",a("title")+a("text")),e=a("controls",b+a("start")+a(["stop","boxplus-disabled"])+a("close")+a("download")+a("metadata")),h="<ul />"+a("rewind")+a("forward");b=d('<div id="boxplus">'+a(["background","boxplus-hidden"])+
a(["dialog","boxplus-hidden"],a("title")+a("main",a(["viewer","boxplus-hidden"],a(["content","boxplus-hidden"])+"<img /><video controls />"+a("flash")+b+a("resizer",a("enlarge")+a(["shrink","boxplus-hidden"]))+a("thumbs",h)+a("progress"))+a("bottom",a("thumbs",h)+c+e))+a(["sideways","boxplus-disabled"],a("thumbs",h)+e+c)+a("lt")+a("t")+a("rt")+a("l")+a("m")+a("r")+a("lb")+a("b")+a("rb")+a("progress"))+"</div>").appendTo(x);Q=g("background",b).click(U);f=g("dialog",b);g("caption",f);F=g("bottom",f).add(g("sideways",
f));l=g("viewer",f);w=d("div:first",l);H=d("img:first",l);X=d("video",l);Y=g("flash",l);ja=d([H[0],Y[0]]).add(X);N=g("resizer",l).click(Ga);G=g("shrink",N);ta=g("rewind",f).click(La).hover(Na,wa);ua=g("forward",f).click(Ma).hover(Oa,wa);z=g("thumbs",f);i=d("ul",z);na=g("prev",f).click(V);oa=g("next",f).click(W);K=g("start",f).click(Fa);L=g("stop",f).click(o);g("close",f).click(U);pa=g("download",f).click(Ja);qa=g("metadata",f).click(ha);ya=q(f);za=D(f,"height");l.css({height:0,width:0});R=q(f);S=
D(f,"height");m=f.clone().appendTo(b)});d.fn.boxplus=function(a){return this.boxplusConfigure(a).click(function(b){Z(b.currentTarget);return false})};d.fn.boxplusGallery=function(a){ia(this).boxplus(a);return this};d.fn.boxplusDialog=function(a){Z(this.boxplusConfigure(a)[0])};d.fn.boxplusConfigure=function(a){this.data("boxplus",d.extend({},a));return this};d.fn.boxplusGalleryConfigure=function(a){ia(this).boxplusConfigure(a);return this};d.boxplus={change:v,previous:V,next:W,refresh:M,configure:function(a){return d.extend($,
a)},onchange:d.noop}})(__jQuery__);

