;(function($){$.fn.fixPNG=function(){return this.each(function(){var image=$(this).css('backgroundImage');if(image.match(/^url\(["']?(.*\.png)["']?\)$/i)){image=RegExp.$1;$(this).css({'backgroundImage':'none','filter':"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod="+($(this).css('backgroundRepeat')=='no-repeat'?'crop':'scale')+", src='"+image+"')"}).each(function(){var position=$(this).css('position');if(position!='absolute'&&position!='relative')
$(this).css('position','relative');});}});};var tmp,loading,overlay,wrap,outer,inner,content,close,nav_left,nav_right;var selectedIndex=0,selectedOpts={},selectedArray=[],currentIndex=0,currentOpts={},currentArray=[];var ajaxLoader=null,imagePreloader=new Image,imageRegExp=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,swfRegExp=/[^\.]\.(swf)\s*$/i;var loadingTimer,loadingFrame=1;var start_pos,final_pos,busy=false,shadow=20,fx=$.extend($('<div/>')[0],{prop:0});var IE6=$.browser.msie&&$.browser.version.substr(0,1)==6&&!window.XMLHttpRequest;var titleh=0;$.fn.fancybox=function(opts){$(this).data('fancybox',$.extend({},opts));$(this).unbind('click.fb').bind('click.fb',function(e){e.preventDefault();$(this).blur();fancybox_process(this);return false;});return this;};$.fancybox=function(obj,opts){if($.isArray(obj)){for(var i=0,j=obj.length;i<j;i++){if(typeof obj[i]=='object'){$(obj[i]).data('fancybox',$.extend({},opts,obj[i].opts));}else{obj[i]=$({}).data('fancybox',$.extend({content:obj[i]},opts));}}}else{if(typeof obj=='object'){$(obj).data('fancybox',$.extend({},defaults,opts));}else{obj=$({}).data('fancybox',$.extend({content:obj},opts));}}
fancybox_process(obj);};$.fancybox.formatTitle=function(itemTitle,itemArray,itemIndex,currentOpts){if(itemTitle.length){return currentOpts.titlePosition=='inside'?itemTitle:'<span id="fancybox-title-wrap"><span id="fancybox-title-left"></span><span id="fancybox-title-main">'+itemTitle+'</span><span id="fancybox-title-right"></span></span>';}
return false;};$.fancybox.showActivity=function(){clearInterval(loadingTimer);loading.show();loadingTimer=setInterval(fancybox_animate_loading,66);};$.fancybox.prev=function(){return $.fancybox.pos(currentIndex-1);};$.fancybox.next=function(){return $.fancybox.pos(currentIndex+1);};$.fancybox.pos=function(pos){pos=parseInt(pos);if(pos>-1&&currentArray.length>pos){selectedIndex=pos;fancybox_start();}
if(currentOpts.cyclic&&currentArray.length>1&&pos<0){selectedIndex=currentArray.length-1;fancybox_start();}
if(currentOpts.cyclic&&currentArray.length>1&&pos>=currentArray.length){selectedIndex=0;fancybox_start();}
return false;};$.fancybox.close=function(){if(busy)return;if(!wrap.is(':visible')){return;}
busy=true;if(currentOpts&&$.isFunction(currentOpts.callbackOnClose)){if(currentOpts.callbackOnClose(currentArray,currentIndex,currentOpts)===false){busy=false;return;}};fancybox_abort();$(close.add(nav_left).add(nav_right)).hide();$('#fancybox-title').remove();wrap.unbind();inner.unbind();overlay.unbind();$(document).unbind('keydown.fb');function _cleanup(){overlay.fadeOut('fast');inner.empty();wrap.hide();$.event.trigger('fancybox-cleanup');busy=false;}
inner.css('overflow','hidden');if(currentOpts.zoomSpeedOut>0){start_pos=fancybox_get_zoom_from();var pos=wrap.position();final_pos={top:pos.top,left:pos.left,width:wrap.width(),height:wrap.height()};if(currentOpts.zoomOpacity){final_pos.opacity=1;}
fx.prop=1;$(fx).animate({prop:0},{duration:currentOpts.zoomSpeedOut,easing:currentOpts.easingOut,step:fancybox_draw,complete:_cleanup});}else{wrap.fadeOut($.browser.msie&&overlay.is(':visible')?50:'fast',_cleanup);}};$.fancybox.cancel=function(){if(busy)return;busy=true;fancybox_abort();if(selectedOpts&&$.isFunction(selectedOpts.callbackOnCancel)){selectedOpts.callbackOnCancel(selectedArray,selectedIndex,selectedOpts);};busy=false;};$.fancybox.resize=function(w,h){if(busy||wrap.is(':hidden'))return;busy=true;final_pos.width=w;fancybox_process_title(w);$(inner).css({width:w-(currentOpts.padding*2),height:h-(currentOpts.padding*2)-titleh});var view=fancybox_get_viewport();var margin=currentOpts.margin;var to={width:w,height:h}
to.top=view[3]+((view[1]-(to.height+(shadow*2)))*0.5);to.left=view[2]+((view[0]-(to.width+(shadow*2)))*0.5);to.top=to.top<view[3]+margin?view[3]+margin:to.top;to.left=to.left<view[2]+margin?view[2]+margin:to.left;$(wrap).css(to);$('#fancybox-title').show();busy=false;};function fancybox_process(obj){if(busy)return;selectedArray=[];selectedIndex=0;if(obj.nodeName){var rel=$(obj).attr('rel')||'';if(!rel||rel==''||rel==='nofollow'){selectedArray.push(obj);}else{selectedArray=$("a[rel="+rel+"], area[rel="+rel+"]");selectedIndex=selectedArray.index(obj);}}else if($.isArray(obj)){selectedArray=jQuery.merge(selectedArray,obj);}else{selectedArray.push(obj);}
fancybox_start();};function fancybox_abort(){loading.hide();$(imagePreloader).unbind();if(ajaxLoader)ajaxLoader.abort();tmp.empty();};function fancybox_get_type(){if(selectedOpts.type){return selectedOpts.type;};var obj=selectedArray[selectedIndex];var href=obj.href||$(obj).attr('href')||false;if(!href){return typeof obj=='object'?'obj':'element';}
if(href.match("iframe")||(typeof obj.className!=='undefined'&&obj.className.indexOf("iframe")>=0)){return'iframe';}else if(href.match(imageRegExp)){return'image';}else if(href.match(swfRegExp)){return'swf';}else if(href.match(/#/)){obj=href.substr(href.indexOf("#"));return $(obj).length>0?'element':'ajax';}else{return'ajax';}};function fancybox_start(){fancybox_abort();var obj=selectedArray[selectedIndex];var href=obj.href||$(obj).attr('href')||false;var type;if(typeof $(obj).data('fancybox')=='undefined'){selectedOpts=$.extend({},defaults,selectedOpts);}else{selectedOpts=$.extend({},defaults,$(obj).data('fancybox'));}
if(selectedOpts.content){obj=selectedOpts.content
type='html';selectedOpts.content=null;}else{type=fancybox_get_type();}
if(selectedOpts.autoDimensions&&type!=='iframe'&&type!=='swf'){selectedOpts.frameWidth='auto';selectedOpts.frameHeight='auto';}
if(selectedOpts.modal){selectedOpts.overlayShow=true;selectedOpts.hideOnOverlayClick=false;selectedOpts.hideOnContentClick=false;selectedOpts.enableEscapeButton=false;selectedOpts.showCloseButton=false;}
selectedOpts.type=type;if($.isFunction(selectedOpts.callbackOnStart)){if(selectedOpts.callbackOnStart(selectedArray,selectedIndex,selectedOpts)===false){return;}};tmp.css('padding',(shadow+selectedOpts.padding+selectedOpts.margin));switch(type){case'image':imagePreloader=new Image;imagePreloader.src=href;if(imagePreloader.complete){fancybox_process_image();}else{$.fancybox.showActivity();$(imagePreloader).unbind().one('load',fancybox_process_image);}
break;case'iframe':$.fancybox.showActivity();$('<iframe id="fancybox-frame" name="fancybox-frame'+Math.round(Math.random()*1000)+'" frameborder="0" hspace="0" src="'+href+'"></iframe>').appendTo(tmp).load(function(){$(this).unbind();fancybox_show();});break;case'swf':var str='';var emb='';str+='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+selectedOpts.frameWidth+'" height="'+selectedOpts.frameHeight+'"><param name="movie" value="'+href+'"></param>';$.each(selectedOpts.swf,function(name,val){str+='<param name="'+name+'" value="'+val+'"></param>';emb+=' '+name+'="'+val+'"';});str+='<embed src="'+href+'" type="application/x-shockwave-flash" width="'+selectedOpts.frameWidth+'" height="'+selectedOpts.frameHeight+'"'+emb+'></embed></object>';tmp.html(str);fancybox_process_inline();break;case'obj':case'element':if(type=='element'&&href)obj=href.substr(href.indexOf("#"));$(obj).clone(true).removeAttr("id").css('display','block').appendTo(tmp);fancybox_process_inline();break;case'html':tmp.html(obj);fancybox_process_inline();break;case'ajax':$.fancybox.showActivity();var selector=href.split('#',2);var data=selectedOpts.ajax.data||{};if(selector.length>1){href=selector[0];if(typeof data=="string"){data+='&selector='+selector[1];}else{data['selector']=selector[1];}}
ajaxLoader=$.ajax($.extend(selectedOpts.ajax,{url:href,data:data,success:function(data){tmp.html(data);fancybox_process_inline();}}));break;}};function fancybox_process_image(){busy=true;selectedOpts.frameWidth=imagePreloader.width;selectedOpts.frameHeight=imagePreloader.height;$("<img />").attr('src',imagePreloader.src).attr('id','fancybox-img').appendTo(tmp).get(0).style.msInterpolationMode='bicubic';;fancybox_show();};function fancybox_process_inline(){busy=true;if(selectedOpts.frameWidth=='auto')selectedOpts.frameWidth=tmp.width();if(selectedOpts.frameHeight=='auto')selectedOpts.frameHeight=tmp.height();tmp.children(':first').css({width:'auto',height:'auto'});fancybox_show();};function fancybox_show(){busy=true;loading.hide();currentArray=selectedArray;currentIndex=selectedIndex;currentOpts=selectedOpts;inner[0].scrollTop=0;inner[0].scrollLeft=0;if(currentOpts.overlayShow){if(IE6){$('select:not(#fancybox-tmp select)').filter(function(){return this.style.visibility!=='hidden';}).css({'visibility':'hidden'}).one('fancybox-cleanup',function(){this.style.visibility='inherit';});}
overlay.css({'background-color':currentOpts.overlayColor,'opacity':currentOpts.overlayOpacity}).unbind().show();}
final_pos=fancybox_get_zoom_to();fancybox_process_title(final_pos.width);if(wrap.is(":visible")){$(close.add(nav_left).add(nav_right)).hide();var pos=wrap.position();start_pos={top:pos.top,left:pos.left,width:wrap.width(),height:wrap.height()};var equal=(start_pos.width==final_pos.width&&start_pos.height==final_pos.height);inner.fadeOut(equal?"fast":'normal',function(){inner.css({top:currentOpts.padding,left:currentOpts.padding,width:start_pos.width-(currentOpts.padding*2)>0?start_pos.width-(currentOpts.padding*2):1,height:start_pos.height-(currentOpts.padding*2)>0?start_pos.height-(currentOpts.padding*2):1}).empty();inner.css('overflow','hidden');function finish_resizing(){inner.html(tmp.contents()).fadeIn(equal?"fast":'normal',_finish);}
fx.prop=0;$(fx).animate({prop:1},{duration:equal?0:currentOpts.zoomSpeedChange,easing:currentOpts.easingChange,step:fancybox_draw,complete:finish_resizing});});return;}
wrap.css('opacity',1);if(currentOpts.zoomSpeedIn>0){start_pos=fancybox_get_zoom_from();inner.css({top:currentOpts.padding,left:currentOpts.padding,width:start_pos.width-(currentOpts.padding*2)>0?start_pos.width-(currentOpts.padding*2):1,height:start_pos.height-(currentOpts.padding*2)>0?start_pos.height-(currentOpts.padding*2):1});inner.html(tmp.contents());wrap.css(start_pos).show();if(currentOpts.zoomOpacity){final_pos.opacity=0;}
fx.prop=0;$(fx).animate({prop:1},{duration:currentOpts.zoomSpeedIn,easing:currentOpts.easingIn,step:fancybox_draw,complete:_finish});}else{inner.css({top:currentOpts.padding,left:currentOpts.padding,width:final_pos.width-(currentOpts.padding*2)>0?final_pos.width-(currentOpts.padding*2):1,height:final_pos.height-(currentOpts.padding*2)-titleh>0?final_pos.height-(currentOpts.padding*2)-titleh:1});inner.html(tmp.contents());wrap.css(final_pos).fadeIn($.browser.msie&&overlay.is(':visible')?50:'fast',_finish);}};function fancybox_process_title(width){$('#fancybox-title').remove();titleh=0;if(currentOpts.titleShow==false)return false;var obj=currentArray[currentIndex];var title=$(obj).attr('title')||obj.title||'';title=currentOpts.titleFormat(title,currentArray,currentIndex,currentOpts);if(title==false||title.length<1)return;if(title.length>0){var titlec=currentOpts.titlePosition=='inside'?'fancybox-title-inside':'fancybox-title-outside';$('<div id="fancybox-title" class="'+titlec+'" />').css('width',width).html(title).appendTo('body');titleh=$("#fancybox-title").outerHeight(true)-currentOpts.padding;if(currentOpts.titlePosition=='outside'){$('#fancybox-title').css('bottom',titleh*-1);titleh=0;}else{final_pos.height+=titleh;}
$('#fancybox-title').appendTo(outer).hide();if(IE6){$('#fancybox-title span').fixPNG();}}};function fancybox_draw(pos){var width=Math.round(start_pos.width+(final_pos.width-start_pos.width)*pos);var height=Math.round(start_pos.height+(final_pos.height-start_pos.height)*pos);var top=Math.round(start_pos.top+(final_pos.top-start_pos.top)*pos);var left=Math.round(start_pos.left+(final_pos.left-start_pos.left)*pos);$(wrap).css({'width':width+'px','height':height+'px','top':top+'px','left':left+'px'});width-=currentOpts.padding*2;height-=currentOpts.padding*2+(titleh*pos);if(width>0&&height>0){inner.css({'width':width+'px','height':height+'px'});}
if(typeof final_pos.opacity!=='undefined'){var opacity=pos<0.5?0.5:pos;wrap.css('opacity',opacity);}};function _finish(){if($.browser.msie){inner[0].style.removeAttribute('filter');wrap[0].style.removeAttribute('filter');}
if($(currentArray[currentIndex]).is('img')==false&&selectedOpts.type!=='image'&&selectedOpts.type!=='iframe'){inner.css({'overflow':'auto'});}
$('#fancybox-title').show();currentOpts.hideOnContentClick?inner.one('click',$.fancybox.close):inner.unbind();currentOpts.hideOnOverlayClick?overlay.one('click',$.fancybox.close):overlay.unbind();currentOpts.showCloseButton?close.show():close.hide();fancybox_set_navigation();if($.isFunction(currentOpts.callbackOnShow)){currentOpts.callbackOnShow(currentArray,currentIndex,currentOpts);}
busy=false;fancybox_preload_images();};function fancybox_get_zoom_to(){var view=fancybox_get_viewport();var to={};var margin=currentOpts.margin;var resize=currentOpts.autoScale;var horizontal_space=(shadow+margin)*2;var vertical_space=(shadow+margin)*2;if(currentOpts.frameWidth.toString().indexOf('%')>-1){to.width=((view[0]*parseFloat(currentOpts.frameWidth))/100)-(shadow*2);resize=false;}else{to.width=currentOpts.frameWidth+(currentOpts.padding*2);}
if(currentOpts.frameHeight.toString().indexOf('%')>-1){to.height=((view[1]*parseFloat(currentOpts.frameHeight))/100)-(shadow*2);resize=false;}else{to.height=currentOpts.frameHeight+(currentOpts.padding*2);}
if(resize&&(to.width>(view[0]-horizontal_space)||to.height>(view[1]-vertical_space))){if($(currentArray[currentIndex]).is('img')||selectedOpts.type=='image'||selectedOpts.type=='swf'){var ratio=Math.min(Math.min(view[0]-horizontal_space,to.width)/to.width,Math.min(view[1]-vertical_space,to.height)/to.height);to.width=Math.round(ratio*to.width);to.height=Math.round(ratio*to.height);}else{to.width=Math.min(to.width,(view[0]-horizontal_space));to.height=Math.min(to.height,(view[1]-vertical_space));}}
to.top=view[3]+((view[1]-(to.height+(shadow*2)))*0.5);to.left=view[2]+((view[0]-(to.width+(shadow*2)))*0.5);if(currentOpts.autoScale==false){to.top=to.top<view[3]+margin?view[3]+margin:to.top;to.left=to.left<view[2]+margin?view[2]+margin:to.left;}
return to;};function fancybox_get_zoom_from(){var obj=currentArray[currentIndex];var view=fancybox_get_viewport();var from={width:1,height:1,top:view[3]+view[1]*0.5,left:view[2]+view[0]*0.5};var orig_item=false;if(typeof obj.orig!=='undefined'&&obj.orig.nodeName){orig_item=$(obj.orig);}else{if($(obj).children("img:first").length){orig_item=$(obj).children("img:first");}else if(obj.nodeName){orig_item=$(obj);}}
if(orig_item&&orig_item.length){var pos=fancybox_get_obj_pos(orig_item);from.width=pos.width+(currentOpts.padding*2);from.height=pos.height+(currentOpts.padding*2);from.top=pos.top-currentOpts.padding-shadow;from.left=pos.left-currentOpts.padding-shadow;}
return from;};function fancybox_set_navigation(){$(document).unbind('keydown.fb').bind('keydown.fb',function(e){if(e.keyCode==27&&currentOpts.enableEscapeButton){e.preventDefault();$.fancybox.close();}else if(e.keyCode==37){e.preventDefault();$.fancybox.prev();}else if(e.keyCode==39){e.preventDefault();$.fancybox.next();}});if($.fn.mousewheel){wrap.unbind('mousewheel.fb');if(currentArray.length>1){wrap.bind('mousewheel.fb',function(e,delta){e.preventDefault();if(busy||delta==0)return;delta<0?$.fancybox.prev():$.fancybox.next();});}}
if((currentOpts.cyclic&&currentArray.length>1)||currentIndex!=0){nav_left.show();}
if((currentOpts.cyclic&&currentArray.length>1)||currentIndex!=(currentArray.length-1)){nav_right.show();}};function fancybox_preload_images(){if((currentArray.length-1)>currentIndex){var href=currentArray[currentIndex+1].href;if(typeof href!=='undefined'&&href.match(imageRegExp)){var objNext=new Image();objNext.src=href;}}
if(currentIndex>0){var href=currentArray[currentIndex-1].href;if(typeof href!=='undefined'&&href.match(imageRegExp)){var objNext=new Image();objNext.src=href;}}};function fancybox_animate_loading(){if(!loading.is(':visible')){clearInterval(loadingTimer);return;}
$('div',loading).css('top',(loadingFrame*-40)+'px');loadingFrame=(loadingFrame+1)%12;};function fancybox_get_viewport(){return[$(window).width(),$(window).height(),$(document).scrollLeft(),$(document).scrollTop()];};function fancybox_get_obj_pos(obj){var pos=obj.offset();pos.top+=parseFloat(obj.css('paddingTop'))||0;pos.left+=parseFloat(obj.css('paddingLeft'))||0;pos.top+=parseFloat(obj.css('border-top-width'))||0;pos.left+=parseFloat(obj.css('border-left-width'))||0;pos.width=obj.width();pos.height=obj.height();return pos;};function fancybox_init(){if($("#fancybox-wrap").length)return;tmp=$('<div id="fancybox-tmp"></div>').appendTo("body");loading=$('<div id="fancybox-loading"><div></div></div>').appendTo("body");overlay=$('<div id="fancybox-overlay"></div>').appendTo("body");wrap=$('<div id="fancybox-wrap"></div>').appendTo('body');outer=$('<div id="fancybox-outer"></div>').append('<div class="fancy-bg" id="fancy-bg-n"></div><div class="fancy-bg" id="fancy-bg-ne"></div><div class="fancy-bg" id="fancy-bg-e"></div><div class="fancy-bg" id="fancy-bg-se"></div><div class="fancy-bg" id="fancy-bg-s"></div><div class="fancy-bg" id="fancy-bg-sw"></div><div class="fancy-bg" id="fancy-bg-w"></div><div class="fancy-bg" id="fancy-bg-nw"></div>').appendTo(wrap);inner=$('<div id="fancybox-inner"></div').appendTo(outer);close=$('<a id="fancybox-close"></a>').appendTo(outer);nav_left=$('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>').appendTo(outer);nav_right=$('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>').appendTo(outer);close.click($.fancybox.close);loading.click($.fancybox.cancel);nav_left.bind("click",function(e){e.preventDefault();$.fancybox.prev();});nav_right.bind("click",function(e){e.preventDefault();$.fancybox.next();});if($.browser.msie){outer.find('.fancy-bg').fixPNG();}
if(IE6){$(close.add('.fancy-ico').add('div',loading)).fixPNG();overlay.get(0).style.setExpression('height',"document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px'");loading.get(0).style.setExpression('top',"( -20 + ( document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) ) + 'px'");outer.prepend('<iframe id="fancybox-hide-sel-frame" src="javascript:\'\';" scrolling="no" frameborder="0" ></iframe>');}};var defaults={padding:10,margin:20,type:false,ajax:{},swf:{wmode:'transparent'},modal:false,cyclic:true,autoScale:true,autoDimensions:true,frameWidth:560,frameHeight:340,zoomOpacity:false,zoomSpeedIn:0,zoomSpeedOut:0,zoomSpeedChange:300,easingIn:'swing',easingOut:'swing',easingChange:'swing',overlayShow:false,overlayOpacity:0.3,overlayColor:'#666',titleShow:true,titlePosition:'outside',titleFormat:$.fancybox.formatTitle,enableEscapeButton:true,showCloseButton:true,hideOnOverlayClick:true,hideOnContentClick:false,callbackOnStart:null,callbackOnCancel:null,callbackOnShow:null,callbackOnClose:null};$(document).ready(function(){fancybox_init();});})(jQuery);
