/* ------------------------------------------------------------------------
	Class: prettyPhoto
	Use: Lightbox clone for jQuery
	Author: Stephane Caron (http://www.no-margin-for-errors.com)
	Version: 2.2.7
------------------------------------------------------------------------- */
var $pp_pic_holder;
var $ppt;
(function(A){A.fn.prettyPhoto=function(P){var D=true;
var L=[];
var C=0;
var R;
var J=F();
A(window).scroll(function(){B();
J=F();
});
A(window).resize(function(){B();
N();
});
A(document).keyup(function(U){switch(U.keyCode){case 37:if(C==1){return ;
}K("previous");
break;
case 39:if(C==setCount){return ;
}K("next");
break;
case 27:I();
break;
}});
P=jQuery.extend({animationSpeed:"normal",padding:40,opacity:0.35,show:true,allowresize:true,counter_separator_label:"/",theme:"light_rounded"},P);
A(this).each(function(){var W=false;
var V=false;
var X=0;
var U=0;
L[L.length]=this;
A(this).bind("click",function(){G(this);
return false;
});
});
function G(U){R=A(U);
theRel=R.attr("rel");
galleryRegExp=/\[(?:.*)\]/;
theGallery=galleryRegExp.exec(theRel);
isSet=false;
setCount=0;
for(i=0;
i<L.length;
i++){if(A(L[i]).attr("rel").indexOf(theGallery)!=-1){setCount++;
if(setCount>1){isSet=true;
}if(A(L[i]).attr("href")==R.attr("href")){C=setCount;
arrayPosition=i;
}}}Q();
$pp_pic_holder.find("p.currentTextHolder").text(C+P.counter_separator_label+setCount);
B();
A("#pp_full_res").hide();
$pp_pic_holder.find(".pp_loaderIcon").show();
}showimage=function(X,U,a,Z,Y,V,W){A(".pp_loaderIcon").hide();
if(A.browser.opera){windowHeight=window.innerHeight;
windowWidth=window.innerWidth;
}else{windowHeight=A(window).height();
windowWidth=A(window).width();
}$pp_pic_holder.find(".pp_content").animate({height:Y,width:a},P.animationSpeed);
projectedTop=J.scrollTop+((windowHeight/2)-(Z/2));
if(projectedTop<0){projectedTop=0+A("div.ppt").height();
}$pp_pic_holder.animate({top:projectedTop,left:((windowWidth/2)-(a/2)),width:a},P.animationSpeed,function(){$pp_pic_holder.width(a);
$pp_pic_holder.find(".pp_hoverContainer,#fullResImage").height(U).width(X);
$pp_pic_holder.find("#pp_full_res").fadeIn(P.animationSpeed);
E($pp_pic_holder,$ppt);
if(W){A("a.pp_expand,a.pp_contract").fadeIn(P.animationSpeed);
}});
};
function K(U){if(U=="previous"){arrayPosition--;
C--;
}else{arrayPosition++;
C++;
}if(!D){D=true;
}$pp_pic_holder.find(".pp_hoverContainer,.pp_details").fadeOut(P.animationSpeed);
$pp_pic_holder.find("#pp_full_res").fadeOut(P.animationSpeed,function(){A(".pp_loaderIcon").show();
S();
});
T();
A("a.pp_expand,a.pp_contract").fadeOut(P.animationSpeed,function(){A(this).removeClass("pp_contract").addClass("pp_expand");
});
}function I(){A("div.pp_pic_holder,div.ppt").fadeOut(P.animationSpeed,function(){A("div.pp_overlay").fadeOut(P.animationSpeed,function(){A("div.pp_overlay,div.pp_pic_holder,div.ppt").remove();
if(A.browser.msie&&A.browser.version==6){A("select").css("visibility","visible");
}});
});
D=true;
}function H(){if(C==setCount){$pp_pic_holder.find("a.pp_next").css("visibility","hidden");
$pp_pic_holder.find("a.pp_arrow_next").addClass("disabled").unbind("click");
}else{$pp_pic_holder.find("a.pp_next").css("visibility","visible");
$pp_pic_holder.find("a.pp_arrow_next.disabled").removeClass("disabled").bind("click",function(){K("next");
return false;
});
}if(C==1){$pp_pic_holder.find("a.pp_previous").css("visibility","hidden");
$pp_pic_holder.find("a.pp_arrow_previous").addClass("disabled").unbind("click");
}else{$pp_pic_holder.find("a.pp_previous").css("visibility","visible");
$pp_pic_holder.find("a.pp_arrow_previous.disabled").removeClass("disabled").bind("click",function(){K("previous");
return false;
});
}$pp_pic_holder.find("p.currentTextHolder").text(C+P.counter_separator_label+setCount);
R=(isSet)?A(L[arrayPosition]):R;
if(R.attr("")){$pp_pic_holder.find(".pp_description").show().html(unescape(R.attr("")));
}else{$pp_pic_holder.find(".pp_description").hide().text("");
}if(R.find("img").attr("alt")&&P.show){has=true;
$ppt.find(".ppt_content").html(unescape(R.find("img").attr("alt")));
}else{has=false;
}}function M(V,U){hasBeenResized=false;
A("div.pp_pic_holder .pp_details").width(V);
A("div.pp_pic_holder .pp_details p.pp_description").width(V-parseFloat(A("div.pp_pic_holder a.pp_close").css("width")));
contentHeight=U+parseFloat(A("div.pp_pic_holder .pp_details").height())+parseFloat(A("div.pp_pic_holder .pp_details").css("margin-top"))+parseFloat(A("div.pp_pic_holder .pp_details").css("margin-bottom"));
contentWidth=V;
containerHeight=U+parseFloat(A("div.ppt").height())+parseFloat(A("div.pp_pic_holder .pp_top").height())+parseFloat(A("div.pp_pic_holder .pp_bottom").height());
containerWidth=V+P.padding;
imageWidth=V;
imageHeight=U;
windowHeight=A(window).height();
windowWidth=A(window).width();
if(((containerWidth>windowWidth)||(containerHeight>windowHeight))&&D&&P.allowresize){hasBeenResized=true;
notFitting=true;
while(notFitting){if((containerWidth>windowWidth)){imageWidth=(windowWidth-200);
imageHeight=(U/V)*imageWidth;
}else{if((containerHeight>windowHeight)){imageHeight=(windowHeight-200);
imageWidth=(V/U)*imageHeight;
}else{notFitting=false;
}}containerHeight=imageHeight;
containerWidth=imageWidth;
}contentHeight=imageHeight+parseFloat(A("div.pp_pic_holder .pp_details").height())+parseFloat(A("div.pp_pic_holder .pp_details").css("margin-top"))+parseFloat(A("div.pp_pic_holder .pp_details").css("margin-bottom"));
contentWidth=imageWidth;
containerHeight=imageHeight+parseFloat(A("div.ppt").height())+parseFloat(A("div.pp_pic_holder .pp_top").height())+parseFloat(A("div.pp_pic_holder .pp_bottom").height());
containerWidth=imageWidth+P.padding;
A("div.pp_pic_holder .pp_details").width(contentWidth);
A("div.pp_pic_holder .pp_details p.pp_description").width(contentWidth-parseFloat(A("div.pp_pic_holder a.pp_close").css("width")));
}return{width:imageWidth,height:imageHeight,containerHeight:containerHeight,containerWidth:containerWidth,contentHeight:contentHeight,contentWidth:contentWidth,resized:hasBeenResized};
}function B(){if($pp_pic_holder){if($pp_pic_holder.size()==0){return ;
}}else{return ;}if(A.browser.opera){windowHeight=window.innerHeight;windowWidth=window.innerWidth;}else{windowHeight=A(window).height();windowWidth=A(window).width();}if(D){$pHeight=$pp_pic_holder.height();$pWidth=$pp_pic_holder.width();$tHeight=$ppt.height();$offset=$pp_pic_holder.offset();projectedTop=(windowHeight/2)+J.scrollTop-($pHeight/2);if(projectedTop<0){projectedTop=0+$tHeight;}$pp_pic_holder.css({top:projectedTop,left:(windowWidth/2)+J.scrollLeft-($pWidth/2)});$ppt.css({top:$offset.top-$tHeight,left:$offset.left+(P.padding/2)});}}function E(){if(isSet){$pp_pic_holder.find(".pp_hoverContainer").fadeIn(P.animationSpeed);}$pp_pic_holder.find(".pp_details").fadeIn(P.animationSpeed);O($pp_pic_holder,$ppt);}function O(){if(P.show&&has){$ppt.css({top:$pp_pic_holder.offset().top-22,left:$pp_pic_holder.offset().left+(P.padding/2),display:"none"});$ppt.find("div.ppt_content").css("width","auto");if($ppt.width()>$pp_pic_holder.width()){$ppt.find("div.ppt_content").css("width",$pp_pic_holder.width()-(P.padding*2));}else{$ppt.find("div.ppt_content").css("width","");}$ppt.fadeIn(P.animationSpeed);}}function T(){$ppt.fadeOut(P.animationSpeed);}function S(){H();imgPreloader=new Image();nextImage=new Image();if(isSet&&C>setCount){nextImage.src=A(L[arrayPosition+1]).attr("href");}prevImage=new Image();if(isSet&&L[arrayPosition-1]){prevImage.src=A(L[arrayPosition-1]).attr("href");}$pp_pic_holder.find(".pp_content").css("overflow","hidden");$pp_pic_holder.find("#fullResImage").attr("src",R.attr("href"));imgPreloader.onload=function(){var U=M(imgPreloader.width,imgPreloader.height);imgPreloader.width=U.width;imgPreloader.height=U.height;showimage(imgPreloader.width,imgPreloader.height,U.containerWidth,U.containerHeight,U.contentHeight,U.contentWidth,U.resized);};imgPreloader.src=R.attr("href");}function F(){scrollTop=window.pageYOffset||document.documentElement.scrollTop||0;scrollLeft=window.pageXOffset||document.documentElement.scrollLeft||0;return{scrollTop:scrollTop,scrollLeft:scrollLeft};}function N(){A("div.pp_overlay").css({height:A(document).height(),width:A(window).width()});}function Q(){toInject="";toInject+="<div class='pp_overlay'></div>";toInject+='<div class="pp_pic_holder"><div class="pp_top"><div class="pp_left"></div><div class="pp_middle"></div><div class="pp_right"></div></div><div class="pp_content"><a href="#" class="pp_expand" ="Expand the image">Expand</a><div class="pp_loaderIcon"></div><div class="pp_hoverContainer"><a class="pp_next" href="#">next</a><a class="pp_previous" href="#">previous</a></div><div id="pp_full_res"><img id="fullResImage" src="" /></div><div class="pp_details clearfix"><a class="pp_close" href="#">Close</a><p class="pp_description"></p><div class="pp_nav"><a href="#" class="pp_arrow_previous">Previous</a><p class="currentTextHolder">0'+P.counter_separator_label+'0</p><a href="#" class="pp_arrow_next">Next</a></div></div></div><div class="pp_bottom"><div class="pp_left"></div><div class="pp_middle"></div><div class="pp_right"></div></div></div>';toInject+='<div class="ppt"><div class="ppt_left"></div><div class="ppt_content"></div><div class="ppt_right"></div></div>';A("body").append(toInject);$pp_pic_holder=A(".pp_pic_holder");$ppt=A(".ppt");A("div.pp_overlay").css("height",A(document).height()).bind("click",function(){I();});$pp_pic_holder.css({opacity:0}).addClass(P.theme);A("a.pp_close").bind("click",function(){I();return false;});A("a.pp_expand").bind("click",function(){$this=A(this);if($this.hasClass("pp_expand")){$this.removeClass("pp_expand").addClass("pp_contract");D=false;}else{$this.removeClass("pp_contract").addClass("pp_expand");D=true;}T();$pp_pic_holder.find(".pp_hoverContainer, #pp_full_res, .pp_details").fadeOut(P.animationSpeed,function(){S();});return false;});$pp_pic_holder.find(".pp_previous, .pp_arrow_previous").bind("click",function(){K("previous");return false;});$pp_pic_holder.find(".pp_next, .pp_arrow_next").bind("click",function(){K("next");return false;});$pp_pic_holder.find(".pp_hoverContainer").css({"margin-left":P.padding/2});if(!isSet){$pp_pic_holder.find(".pp_hoverContainer,.pp_nav").hide();}if(A.browser.msie&&A.browser.version==6){A("body").addClass("ie6");A("select").css("visibility","hidden");}A("div.pp_overlay").css("opacity",0).fadeTo(P.animationSpeed,P.opacity,function(){$pp_pic_holder.css("opacity",0).fadeIn(P.animationSpeed,function(){$pp_pic_holder.attr("style","left:"+$pp_pic_holder.css("left")+";top:"+$pp_pic_holder.css("top")+";");S();});});}};})(jQuery);
