(function($,window){var defaults={transition:"elastic",speed:300,width:false,initialWidth:"600",innerWidth:false,maxWidth:false,height:false,initialHeight:"450",innerHeight:false,maxHeight:false,scalePhotos:true,scrolling:true,inline:false,html:false,iframe:false,photo:false,href:false,title:false,rel:false,opacity:0.9,preloading:true,current:"image {current} of {total}",previous:"previous",next:"next",close:"close",open:false,loop:true,slideshow:false,slideshowAuto:true,slideshowSpeed:2500,slideshowStart:"start slideshow",slideshowStop:"stop slideshow",onOpen:false,onLoad:false,onComplete:false,onCleanup:false,onClosed:false,overlayClose:true,escKey:true,arrowKey:true},colorbox='colorbox3',prefix='cbox3',event_open=prefix+'_open',event_load=prefix+'_load',event_complete=prefix+'_complete',event_cleanup=prefix+'_cleanup',event_closed=prefix+'_closed',isIE=$.browser.msie&&!$.support.opacity,isIE6=isIE&&$.browser.version<7,event_ie6=prefix+'_IE6',$overlay,$box,$wrap,$content,$topBorder,$leftBorder,$rightBorder,$bottomBorder,$related,$window,$loaded,$loadingBay,$loadingOverlay,$title,$current,$slideshow,$next,$prev,$close,interfaceHeight,interfaceWidth,loadedHeight,loadedWidth,element,bookmark,index,settings,open,active,publicMethod,boxElement=prefix+'Element';function $div(id,css){id=id?' id="'+prefix+id+'"':'';css=css?' style="'+css+'"':'';return $('');} function setSize(size,dimension){dimension=dimension==='x'?$window.width():$window.height();return(typeof size==='string')?Math.round((size.match(/%/)?(dimension/100)*parseInt(size,10):parseInt(size,10))):size;} function isImage(url){url=$.isFunction(url)?url.call(element):url;return settings.photo||url.match(/\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i);} function process(){for(var i in settings){if($.isFunction(settings[i])&&i.substring(0,2)!=='on'){settings[i]=settings[i].call(element);}} settings.rel=settings.rel||element.rel||'nofollow';settings.href=settings.href||$(element).attr('href');settings.title=settings.title||element.title;} function launch(elem){element=elem;settings=$.extend({},$(element).data(colorbox));process();if(settings.rel!=='nofollow'){$related=$('.'+boxElement).filter(function(){var relRelated=$(this).data(colorbox).rel||this.rel;return(relRelated===settings.rel);});index=$related.index(element);if(index===-1){$related=$related.add(element);index=$related.length-1;}}else{$related=$(element);index=0;} if(!open){open=active=true;bookmark=element;try{bookmark.blur();}catch(e){} $.event.trigger(event_open);if(settings.onOpen){settings.onOpen.call(element);} $overlay.css({"opacity":+settings.opacity,"cursor":settings.overlayClose?"pointer":"auto"}).show();settings.w=setSize(settings.initialWidth,'x');settings.h=setSize(settings.initialHeight,'y');publicMethod.position(0);if(isIE6){$window.bind('resize.'+event_ie6+' scroll.'+event_ie6,function(){$overlay.css({width:$window.width(),height:$window.height(),top:$window.scrollTop(),left:$window.scrollLeft()});}).trigger('scroll.'+event_ie6);}} $current.add($prev).add($next).add($slideshow).add($title).hide();$close.html(settings.close).show();publicMethod.slideshow();publicMethod.load();} publicMethod=$.fn[colorbox]=$[colorbox]=function(options,callback){var $this=this;if(!$this[0]&&$this.selector){return $this;} options=options||{};if(callback){options.onComplete=callback;} if(!$this[0]||$this.selector===undefined){$this=$('');options.open=true;} $this.each(function(){$(this).data(colorbox,$.extend({},$(this).data(colorbox)||defaults,options)).addClass(boxElement);});if(options.open){launch($this[0]);} return $this;};publicMethod.init=function(){$window=$(window);$box=$div().attr({id:colorbox,'class':isIE?prefix+'IE':''});$overlay=$div("Overlay",isIE6?'position:absolute':'').hide();$wrap=$div("Wrapper");$content=$div("Content").append($loaded=$div("LoadedContent",'width:0; height:0'),$loadingOverlay=$div("LoadingOverlay").add($div("LoadingGraphic")),$title=$div("Title"),$current=$div("Current"),$next=$div("Next"),$prev=$div("Previous"),$slideshow=$div("Slideshow"),$close=$div("Close"));$wrap.append($div().append($div("TopLeft"),$topBorder=$div("TopCenter"),$div("TopRight")),$div().append($leftBorder=$div("MiddleLeft"),$content,$rightBorder=$div("MiddleRight")),$div().append($div("BottomLeft"),$bottomBorder=$div("BottomCenter"),$div("BottomRight"))).children().children().css({'float':'left'});$loadingBay=$div(false,'position:absolute; width:9999px; visibility:hidden; display:none');$('body').prepend($overlay,$box.append($wrap,$loadingBay));$content.children().hover(function(){$(this).addClass('hover');},function(){$(this).removeClass('hover');}).addClass('hover');interfaceHeight=$topBorder.height()+$bottomBorder.height()+$content.outerHeight(true)-$content.height();interfaceWidth=$leftBorder.width()+$rightBorder.width()+$content.outerWidth(true)-$content.width();loadedHeight=$loaded.outerHeight(true);loadedWidth=$loaded.outerWidth(true);$box.css({"padding-bottom":interfaceHeight,"padding-right":interfaceWidth}).hide();$next.click(publicMethod.next);$prev.click(publicMethod.prev);$close.click(publicMethod.close);$content.children().removeClass('hover');$('.'+boxElement).live('click',function(e){if((e.button!==0&&typeof e.button!=='undefined')||e.ctrlKey||e.shiftKey||e.altKey){return true;}else{launch(this);return false;}});$overlay.click(function(){if(settings.overlayClose){publicMethod.close();}});$(document).bind("keydown",function(e){if(open&&settings.escKey&&e.keyCode===27){e.preventDefault();publicMethod.close();} if(open&&settings.arrowKey&&!active&&$related[1]){if(e.keyCode===37&&(index||settings.loop)){e.preventDefault();$prev.click();}else if(e.keyCode===39&&(index<$related.length-1||settings.loop)){e.preventDefault();$next.click();}}});};publicMethod.remove=function(){$box.add($overlay).remove();$('.'+boxElement).die('click').removeData(colorbox).removeClass(boxElement);};publicMethod.position=function(speed,loadedCallback){var animate_speed,posTop=Math.max($window.height()-settings.h-loadedHeight-interfaceHeight,0)/2+$window.scrollTop(),posLeft=Math.max($window.width()-settings.w-loadedWidth-interfaceWidth,0)/2+$window.scrollLeft();animate_speed=($box.width()===settings.w+loadedWidth&&$box.height()===settings.h+loadedHeight)?0:speed;$wrap[0].style.width=$wrap[0].style.height="9999px";function modalDimensions(that){$topBorder[0].style.width=$bottomBorder[0].style.width=$content[0].style.width=that.style.width;$loadingOverlay[0].style.height=$loadingOverlay[1].style.height=$content[0].style.height=$leftBorder[0].style.height=$rightBorder[0].style.height=that.style.height;} $box.dequeue().animate({width:settings.w+loadedWidth,height:settings.h+loadedHeight,top:posTop,left:posLeft},{duration:animate_speed,complete:function(){modalDimensions(this);active=false;$wrap[0].style.width=(settings.w+loadedWidth+interfaceWidth)+"px";$wrap[0].style.height=(settings.h+loadedHeight+interfaceHeight)+"px";if(loadedCallback){loadedCallback();}},step:function(){modalDimensions(this);}});};publicMethod.resize=function(options){if(open){options=options||{};if(options.width){settings.w=setSize(options.width,'x')-loadedWidth-interfaceWidth;} if(options.innerWidth){settings.w=setSize(options.innerWidth,'x');} $loaded.css({width:settings.w});if(options.height){settings.h=setSize(options.height,'y')-loadedHeight-interfaceHeight;} if(options.innerHeight){settings.h=setSize(options.innerHeight,'y');} if(!options.innerHeight&&!options.height){var $child=$loaded.wrapInner("
").children();settings.h=$child.height();$child.replaceWith($child.children());} $loaded.css({height:settings.h});publicMethod.position(settings.transition==="none"?0:settings.speed);}};publicMethod.prep=function(object){if(!open){return;} var photo,speed=settings.transition==="none"?0:settings.speed;$window.unbind('resize.'+prefix);$loaded.remove();$loaded=$div('LoadedContent').html(object);function getWidth(){settings.w=settings.w||$loaded.width();settings.w=settings.mw&&settings.mw").attr({src:settings.href,name:new Date().getTime()}).appendTo($loaded);} $loaded.show();$title.show().html(settings.title);if(total>1){$current.html(settings.current.replace(/\{current\}/,index+1).replace(/\{total\}/,total)).show();$next[(loop||index')[0].src=nextSrc;} if(isImage(prevSrc)){$('')[0].src=prevSrc;}}} $loadingOverlay.hide();if(settings.transition==='fade'){$box.fadeTo(speed,1,function(){defilter();});}else{defilter();} $window.bind('resize.'+prefix,function(){publicMethod.position(0);});$.event.trigger(event_complete);if(settings.onComplete){settings.onComplete.call(element);}});} if(settings.transition==='fade'){$box.fadeTo(speed,0,function(){setPosition(0);});}else{setPosition(speed);}};publicMethod.load=function(){var href,img,setResize,prep=publicMethod.prep;active=true;element=$related[index];settings=$.extend({},$(element).data(colorbox));process();$.event.trigger(event_load);if(settings.onLoad){settings.onLoad.call(element);} settings.h=settings.height?setSize(settings.height,'y')-loadedHeight-interfaceHeight:settings.innerHeight&&setSize(settings.innerHeight,'y');settings.w=settings.width?setSize(settings.width,'x')-loadedWidth-interfaceWidth:settings.innerWidth&&setSize(settings.innerWidth,'x');settings.mw=settings.w;settings.mh=settings.h;if(settings.maxWidth){settings.mw=setSize(settings.maxWidth,'x')-loadedWidth-interfaceWidth;settings.mw=settings.w&&settings.wsettings.mw){percent=(img.width-settings.mw)/img.width;setResize();} if(settings.mh&&img.height>settings.mh){percent=(img.height-settings.mh)/img.height;setResize();}} if(settings.h){img.style.marginTop=Math.max(settings.h-img.height,0)/2+'px';} setTimeout(function(){prep(img);},1);if($related[1]&&(index<$related.length-1||settings.loop)){$(img).css({cursor:'pointer'}).click(publicMethod.next);} if(isIE){img.style.msInterpolationMode='bicubic';}};img.src=href;}else{$div().appendTo($loadingBay).load(href,function(data,status,xhr){prep(status==='error'?'Request unsuccessful: '+xhr.statusText:this);});}};publicMethod.next=function(){if(!active){index=index<$related.length-1?index+1:0;publicMethod.load();}};publicMethod.prev=function(){if(!active){index=index?index-1:$related.length-1;publicMethod.load();}};publicMethod.slideshow=function(){var stop,timeOut,className=prefix+'Slideshow_';$slideshow.bind(event_closed,function(){$slideshow.unbind();clearTimeout(timeOut);$box.removeClass(className+"off "+className+"on");});function start(){$slideshow.text(settings.slideshowStop).bind(event_complete,function(){timeOut=setTimeout(publicMethod.next,settings.slideshowSpeed);}).bind(event_load,function(){clearTimeout(timeOut);}).one("click",function(){stop();});$box.removeClass(className+"off").addClass(className+"on");} stop=function(){clearTimeout(timeOut);$slideshow.text(settings.slideshowStart).unbind(event_complete+' '+event_load).one("click",function(){start();timeOut=setTimeout(publicMethod.next,settings.slideshowSpeed);});$box.removeClass(className+"on").addClass(className+"off");};if(settings.slideshow&&$related[1]){if(settings.slideshowAuto){start();}else{stop();}}};publicMethod.close=function(){if(open){open=false;$.event.trigger(event_cleanup);if(settings.onCleanup){settings.onCleanup.call(element);} $window.unbind('.'+prefix+' .'+event_ie6);$overlay.fadeTo('fast',0);$box.stop().fadeTo('fast',0,function(){$box.find('iframe').attr('src','about:blank');$loaded.remove();$box.add($overlay).css({'opacity':1,cursor:'auto'}).hide();try{bookmark.focus();}catch(e){} setTimeout(function(){$.event.trigger(event_closed);if(settings.onClosed){settings.onClosed.call(element);}},1);});}};publicMethod.element=function(){return $(element);};publicMethod.settings=defaults;$(publicMethod.init);}(jQuery,this));