(function(d){var e={name:"pbox",initialWidth:"120px",initialHeight:"90px",title:false,href:false,iframe:false,image:false,index:0,width:"auto",height:"auto",maxWidth:"auto",maxHeight:"auto",minWidth:"auto",minHeight:"auto",closeText:"",ajaxFailText:"Request unsuccessful",duration:400,draggable:false,ret:false,onLoad:false,onComplete:false,onCleanup:false,onClosed:false,onResized:false};var c=999;var g=true;var a=new Array();d.fn.pboxDefaults=function(i){d.extend(e,i)};function h(i){return i.match(/\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i)}function f(D,t,A,i,p){var k="#"+D;var r=d(k);var v=r.data("dimension");var z=(r.css("display")=="none");var j=d(k+" .pbox_layout");var o=d(k+" .pbox_content");if(z){r.css("visibility","hidden").show();j.css("visibility","hidden").show()}if(typeof(t)=="undefined"){t=o.width();A=o.height()}else{t=parseInt(t);A=parseInt(A)}var C=v.ww;var q=v.wh;var m=v.cw;var u=v.ch;var B=v.bw;var l=v.bh;var n=parseInt((r.width()-(t+C+m+B))/2);var s=parseInt((r.height()-(A+q+u+l))/2);if(z){j.hide().css("visibility","");r.hide().css("visibility","")}if(typeof(i)=="undefined"){d(k+" .pbox_wrapper").css("left",n+"px").css("top",s+"px").css("width",(t+m+B)+"px").css("height",(A+u+l)+"px");d(k+" .pbox_content").css("width",t+"px").css("height",A+"px")}else{d(k+" .pbox_wrapper").dequeue().animate({left:n+"px",top:s+"px",width:(t+m+B)+"px",height:(A+u+l)+"px"},i);d(k+" .pbox_content").dequeue().animate({height:A+"px",width:t+"px"},{duration:i,complete:function(){if(typeof(p)!="undefined"){p()}}})}}d.fn.pboxClose=function(k){var i;if(!(len=a.length)){return}if(!k){k=a[len-1]}i="#"+k;var l=d(i);if(l.data("status")!="opened"){return}if(l.data("onCleanup")!=false){if(!l.data("onCleanup")()){return}}l.data("status","closing");l.data("onCleanup",false);clearTimeout(l.data("timeout"));var j=d(i+" .pbox_content");if(l.data("inline")){j.children().appendTo(l.data("inline"));l.data("inline","")}else{var j=d(i+" .pbox_content");j.empty()}d(i+" .pbox_close_w").fadeOut(200);d(i+" .pbox_prev_w").fadeOut(200);d(i+" .pbox_next_w").fadeOut(200);d(i+" .pbox_title_w").fadeOut(200);d(i+" .pbox_layout").fadeOut(200,function(){l.fadeOut(200,function(){l.data("status","closed");c--;if(l.data("onClosed")!=false){l.data("onClosed")()}if((idx=d.inArray(k,a))>=0){a.splice(idx,1)}})})};d.fn.pboxGetLoad=function(s,r){var p=d(this);if(!p.length){return this}var m=p.data("pbox");var l="#"+m.name;var k=d(l);var q=d(l+" .pbox_loading_bay");var i=d(l+" .pbox_content");var o=d(l+" .pbox_wrapper");var n=d(l+" .pbox_m");q.css("width",m.width).css("height",m.height);if(m.width=="auto"){if(m.maxWidth!="auto"&&q.width()>parseInt(m.maxWidth)){q.css("width",m.maxWidth)}else{if(m.minWidth!="auto"&&q.width()<parseInt(m.minWidth)){q.css("width",m.minWidth)}}}if(m.height=="auto"){if(m.maxHeight!="auto"&&q.height()>parseInt(m.maxHeight)){q.css("height",m.maxHeight)}else{if(m.minHeight!="auto"&&q.height()<parseInt(m.minHeight)){q.css("height",m.minHeight)}}}var j=q.width();var t=q.height();f(m.name,j,t,m.duration,function(){if(s!=q.data("key")){return}i.empty();q.children().appendTo(i);i.css("visibility","");n.removeClass("pbox_loading");if(m.iframe!==false){var u;if(d.isArray(m.href)){u=m.href[m.index]}else{u=m.href}d(l+" .pbox_content iframe").attr("src",u)}if(r){if(k.data("onResized")!=false){k.data("onResized")()}}else{if(k.data("onComplete")!=false){k.data("onComplete")()}}})};d.fn.pboxResize=function(){var n=d(this);if(!n.length){return this}var m=n.data("pbox");var i="#"+m.name;var l=d(i+" .pbox_loading_bay");var j=d(i+" .pbox_content");var k=d(i+" .pbox_m");k.addClass("pbox_loading");j.css("visibility","hidden");j.children().appendTo(l);key=l.data("key")+1;l.data("key",key);n.pboxGetLoad(key,true);return this};d.fn.pboxLoad=function(k){var q=d(this);if(!q.length){return this}q.blur();var o=q.data("pbox");var l=o.name;var n="#"+l;var m=d(n);var r=d(n+" .pbox_title");var t=d(n+" .pbox_close");var j=d(n+" .pbox_content");var p=d(n+" .pbox_m");if(o.onLoad!=false){if(!o.onLoad()){return}}if(m.data("onCleanup")!=false){if(!m.data("onCleanup")()){return}}m.data("status","unloading");if((idx=d.inArray(l,a))>=0){a.splice(idx,1)}a.push(l);clearTimeout(m.data("timeout"));if(m.data("inline")){j.children().appendTo(m.data("inline"));m.data("inline","")}m.data("status","loading");if(m.css("display")=="none"){o.index=q.data("pbox_idx")}if(d.isArray(o.href)){r.html(o.href[o.index].title)}else{if(o.title!==false){r.html(o.title)}else{if(q.attr("title")){r.html(q.attr("title"))}else{r.html("&nbsp;")}}}t.text(o.closeText);m.data("onCleanup",o.onCleanup);m.data("onResized",o.onResized);m.data("onClosed",o.onClosed);m.data("onComplete",o.onComplete);m.data("this",q);j.css("visibility","hidden");p.addClass("pbox_loading");c++;m.css("z-index",c);if(d.isArray(o.href)){x=function(){q.pboxPrev()};y=function(){q.pboxNext()};d(n+" .pbox_prev").css("visibility","").unbind("click").bind("click",x);d(n+" .pbox_next").css("visibility","").unbind("click").bind("click",y)}else{d(n+" .pbox_prev").css("visibility","hidden");d(n+" .pbox_next").css("visibility","hidden")}if(m.css("display")=="none"){m.data("status","opening");f(o.name,o.initialWidth,o.initialHeight);m.fadeIn(200,function(){d(n+" .pbox_wrapper > *").fadeIn(200,function(){d(n+" .pbox_wrapper").focus();m.data("status","opened")})})}else{m.data("status","opened")}var s=d(n+" .pbox_loading_bay");var i;if(d.isArray(o.href)){i=o.href[o.index].src}else{i=o.href}if(i==false){i=q.attr("href")}if(s.data("key")){key=s.data("key")+1}else{key=1}if(i.charAt(0)=="@"){s.empty().data("key",key);d("<div />").html(i.substr(1)).appendTo(s);q.pboxGetLoad(key)}else{if(i.charAt(0)=="#"){s.empty().data("key",key);d(i).children().appendTo(s);m.data("inline",i);q.pboxGetLoad(key)}else{if(o.image||h(i)){s.empty().data("key",key);$img=d("<img />").appendTo(s);$img.load(function(){q.pboxGetLoad(key)});$img.attr("src",i)}else{if(o.iframe){s.empty().data("key",key);d('<iframe frameborder="0" marginheight="0px" marginwidth="0px" />').attr("width","100%").attr("height",(parseInt(o.height)-10)+"px").appendTo(s);q.pboxGetLoad(key)}else{s.empty().data("key",key);d("<div />").appendTo(s).load(i,function(u,v){if(v==="success"){q.pboxGetLoad(key)}else{if(o.ajaxFailText!=""){s.empty();d("<div />").append(o.ajaxFailText).appendTo(s);q.pboxGetLoad(key)}}})}}}}return o.ret};d.fn.pboxNext=function(){var i=d(this);if(!i.length){return this}data=i.data("pbox");if(!d.isArray(data.href)){return}href=data.href;index=data.index;index++;if(index>=href.length){index=0}data.index=index;i.pboxLoad();return this};d.fn.pboxPrev=function(){var i=d(this);if(!i.length){return this}data=i.data("pbox");if(!d.isArray(data.href)){return}href=data.href;index=data.index;index--;if(index<0){index=href.length-1}data.index=index;i.pboxLoad();return this};function b(j){var i="#"+j;var k;if(d(i).length){d(i).remove()}k=d("<div />").attr("id",j).addClass("pbox").css("visibility","hidden");if(d.browser.msie){k.addClass("pboxIE")}k.prepend('<div class="pbox_loading_bay"></div><div class="pbox_overlay"></div><div class="pbox_wrapper"><table class="pbox_layout" cellpadding="0" cellspacing="0"><tr><td class="pbox_tl_w"><div class="pbox_tl"></div></td><td class="pbox_t"></td><td class="pbox_tr_w"><div class="pbox_tr"></div></td></tr><tr><td class="pbox_ml"></td><td class="pbox_m"><div class="pbox_content">Dummy Content</div></td><td class="pbox_mr"></td></tr><tr><td class="pbox_bl_w"><div class="pbox_bl"></div></td><td class="pbox_b"></td><td class="pbox_br_w"><div class="pbox_br"></div></td></tr></table><div class="pbox_title_w"><div class="pbox_title">Title</div></div><div class="pbox_close_w"><div class="pbox_close"></div></div><div class="pbox_prev_w"><div class="pbox_prev"></div></div><div class="pbox_next_w"><div class="pbox_next"></div></div></div>');d("body").prepend(k);d(i+" .pbox_close, "+i+" .pbox_prev, "+i+" .pbox_next").hover(function(){d(this).addClass("hover")},function(){d(this).removeClass("hover")});k=d(i);var l={cw:d(i+" .pbox_m").outerWidth()-d(i+" .pbox_content").width(),ch:d(i+" .pbox_m").outerHeight()-d(i+" .pbox_content").height(),bw:d(i+" .pbox_ml").outerWidth()+d(i+" .pbox_mr").outerWidth(),bh:d(i+" .pbox_t").outerHeight()+d(i+" .pbox_b").outerHeight(),ww:d(i+" .pbox_wrapper").outerWidth()-d(i+" .pbox_wrapper").width(),wh:d(i+" .pbox_wrapper").outerHeight()-d(i+" .pbox_wrapper").height()};k.data("dimension",l);k.data("onComplete",false);k.data("onCleanup",false);k.data("onResized",false);k.data("onClosed",false);k.data("status","closed");k.hide().css("visibility","");d(i+" .pbox_wrapper > *").hide();d(i+" .pbox_overlay").click(function(){d.fn.pboxClose()});d(i+" .pbox_close").click(function(){d.fn.pboxClose()});d(window).resize(function(){if(k.css("display")!="none"){f(j)}});if(g){d(document).bind("keydown.pbox",function(m){if(len=a.length){j=a[len-1];k=d("#"+j);switch(m.keyCode){case 27:d.fn.pboxClose(j);break;case 37:$this=k.data("this");$this.pboxPrev();break;case 39:$this=k.data("this");$this.pboxNext();break}}});g=false}}d.fn.pbox=function(l,o){if(typeof(o)=="undefined"){o=false}var n=d(this);if(!n.length){return this}var m=d.extend({},e,l);var j="#"+m.name;if(!d(j).length){b(m.name)}if(o){var k=new Array();n.each(function(){k.push({title:d(this).attr("title"),src:d(this).attr("href")})});m.href=k}var i=0;n.each(function(){d(this).data("pbox",m).data("pbox_idx",i).addClass("pbox_element");d(this).bind("click.pbox",d(this).pboxLoad);i++});return this}})(jQuery);
