/*!
 * jquery.yoxview v1.91
 * jQuery image gallery viewer
 * http://yoxigen.com/yoxview
 *
 * Copyright (c) 2010 Yossi Kolesnicov
 *
 * Licensed under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
 *
 * Date: 22nd May, 2010
 * Version : 1.91
 */ 
var yoxviewApi; (function(s){var x;s.yoxviewUnload=function(){if(yoxviewApi){yoxviewApi.unload();yoxviewApi=null}};s(window).unload(function(){s.yoxviewUnload()});s.fn.extend({yoxview:function(O){if(this.length==0)return this;x||(x=typeof _yoxviewPath!="undefined"?_yoxviewPath:Yox.getPath(/(.*)jquery.yoxview.*/i));this.loadLanguage=function(k,y){var z=this;if(yoxviewLanguages[k])z.loadDataSource(A,y);else{yoxviewLanguages[k]={};s.ajax({url:x+"lang/"+k+".js",async:false,dataType:"json",success:function(v){yoxviewLanguages[k]=v; z.loadDataSource(A,y)}})}};this.loadDataSource=function(k,y){var z=this,v;if(k.dataUrl)for(dataSourceIndex in Yox.dataRegex)if(k.dataUrl.match(Yox.dataRegex[dataSourceIndex])){v=dataSourceIndex;s.extend(k,{dataSource:dataSourceIndex})}k.dataSource&&!yoxviewDataSources[v]?s.ajax({url:k.dataFolder+k.dataSource+".js",async:false,dataType:"script",success:function(P){eval(P);eval("yoxviewDataSources['"+k.dataSource+"'] = new yoxview_"+k.dataSource+"();");y(z)},error:function(P,Q,X){console.log(P,Q,X)}}): y(z)};var A=s.extend({autoPlay:false,backgroundColor:"#000",backgroundOpacity:0.8,buttonsFadeTime:500,cacheImagesInBackground:true,controlsInitialFadeTime:1500,controlsInitialDisplayTime:1E3,dataFolder:x+"data/",displayImageTitleByDefault:true,imagesFolder:x+"images/",infoBackColor:"Black",infoBackOpacity:0.5,isRTL:false,lang:"en",langFolder:x+"lang/",loopPlay:true,playDelay:3E3,popupMargin:20,renderButtons:true,renderMenu:true,showBarsOnOpen:true,showButtonsOnOpen:true,titleAttribute:"title",titleDisplayDuration:2E3, titlePadding:6},O);yoxviewApi?this.loadLanguage(A.lang,function(k){yoxviewApi.AddViews(k,A)}):this.loadLanguage(A.lang,function(k){yoxviewApi=new YoxView(k,A)});return this}})})(jQuery);var yoxviewLanguages=[],yoxviewDataSources=[]; function YoxView(s,x){function O(a){a=d(a).data("yoxview");if(!w||ja!=a.viewIndex){w=a.images;j=w.length;ja=a.viewIndex;var b=false;if(a.options&&!Yox.compare(c,a.options)){c=a.options;b=true}else if(!a.options&&!Yox.compare(c,ka)){c=ka;b=true}else if(J&&j==1||h&&!J&&j>0)b=true;if(b){if(h){h.parent().remove();B=C=R=G=Y=J=h=undefined;K=t=0}la()}}}function A(a){var b=a.children("img:first"),e={thumbnailImg:b,thumbnailSrc:b.attr("src")},f=a.attr("href");if(f.match(Ea))d.extend(e,{media:{src:a.attr("href"), title:b.attr(c.titleAttribute),alt:b.attr("alt")}});else for(videoProvider in va)if(f.match(va[videoProvider])){d.extend(e,{media:{type:"video",provider:videoProvider,url:f}});break}return e}function k(a,b,e){a=d(a);a.data("yoxview",{viewIndex:b});if(!Yox.compare(c,e))a.data("yoxview").options=e;var f=[];(a[0].tagName=="A"?a:a.find("a:has(img)")).each(function(g,m){f.push(A(d(m)))});if(e.images)f=f.concat(e.images);if(e.dataSource)yoxviewDataSources[e.dataSource].getImagesData(e,function(g){f=f.concat(g.images); a.data("yoxview").images=f;var m=g.isGroup?[d.extend(g,{media:{title:g.title+" ("+g.images.length+" images)",alt:g.title}})]:g.images;y(a,m,!g.createGroups?null:function(n){var D=d(n.currentTarget).data("yoxview"),ma=d(n.currentTarget);n=ma.data("yoxthumbs");if(D.imagesAreSet)i.openGallery(D.viewIndex);else{ma.css("cursor","wait");var Z=d.extend({},c);if(Z.dataSourceOptions)d.extend(Z.dataSourceOptions,n);else Z.dataSourceOptions=n;yoxviewDataSources[c.dataSource].getImagesData(Z,function(Fa){D.images= Fa.images;D.imagesAreSet=true;ma.css("cursor","");i.openGallery(D.viewIndex)})}});a.yoxthumbs("thumbnails").each(function(n,D){d(D).data("yoxview",{viewIndex:H.length});H.push(D)});if(!i.firstViewWithImages&&g.images.length>0){i.firstViewWithImages=a;e.cacheImagesInBackground&&i.startCache()}});else{a.data("yoxview").images=f;y(a)}}function y(a,b,e){a.yoxthumbs({images:b,onClick:e||function(f){c.thumbnailsOptions&&c.thumbnailsOptions.onClick?c.thumbnailsOptions.onClick(d(f.currentTarget).data("yoxthumbs").imageIndex, d(f.currentTarget),d(f.liveFired).data("yoxview").viewIndex):i.openGallery(d(f.liveFired||f.currentTarget).data("yoxview").viewIndex,d(f.currentTarget).data("yoxthumbs").imageIndex);return false}})}function z(a){var b=d(H[ja]);S=b[0].tagName=="A"?b:b.yoxthumbs("thumbnails").eq(t);if(S.length==0)S=b.yoxthumbs("thumbnails").eq(0);if(b=S.children("img:first")){a&&G&&G.attr("src",b.attr("src"));na=b.offset();p={width:b.width(),height:b.height(),top:na.top-d(window).scrollTop(),left:na.left}}}function v(a){a.stop().fadeIn(c.buttonsFadeTime, function(){d(this).delay(500).fadeOut(c.buttonsFadeTime)})}function P(a){d(a).stop().animate({opacity:0.5},c.buttonsFadeTime)}function Q(a,b,e){var f=d("<a>",{href:"#",click:function(){return i.clickBtn(i[b],e)}});d("<span>"+a+"</span>").css("opacity","0").appendTo(f);f.append(T.getSprite("icons",b)).hover(function(){d(this).stop().animate({top:"8px"},"fast").find("span").stop().animate({opacity:1},"fast")},function(){d(this).stop().animate({top:"0"},"fast").find("span").stop().animate({opacity:0}, "fast")});return f}function X(a,b,e){var f=new Image;f.src=c.imagesFolder+b+".png";e=d("<a>",{css:{background:"url("+f.src+") no-repeat "+b+" center",opacity:"0",outline:"0"},className:"yoxview_ctlBtn",title:e,href:"#",click:function(){this.blur();return i.clickBtn(a,true)}});e.css(b,"0");return e}function la(){q=yoxviewLanguages[c.lang];h=d("<div>",{id:"yoxview"});h.appendTo(d(parent.document.body));C=d("<div>",{className:"yoxview_imgPanel",css:{"z-index":"2"}});B=d("<div>",{className:"yoxview_imgPanel", css:{"z-index":"1",display:"none"}});G=d("<img />",{className:"yoxview_fadeImg",css:{display:"block",width:"100%",height:"100%"}});R=d("<img />",{className:"yoxview_fadeImg",css:{display:"block",width:"100%",height:"100%"}});C.data("yoxviewPanel",{image:G}).append(G).appendTo(h);B.data("yoxviewPanel",{image:R});B.append(R).appendTo(h);var a=j==1;if(c.renderMenu!==false){$=d("<div>",{id:"yoxview_popupMenuPanel",className:"yoxview_popupBarPanel yoxview_top",css:{opacity:"0"}});c.autoHideMenu===false&& $.css("display","block").data("disabled",true);var b=d("<div>",{id:"yoxview_popupMenu",className:"yoxview_popupBar",css:{opacity:"0.8","background-position":T.getBackgroundPosition("menu","back")}}),e=Q(q.Help,"help",false),f=Q(q.Slideshow,"play",false);b.append(Q(q.Close,"close",true),e,f);if(a){f.css("display","none");e.css("display","none");b.css({width:58})}b.find("a:last-child").attr("class","last");$.append(b).appendTo(h)}if(c.renderButtons!==false&&!a){J=X(i.prev,c.isRTL?"right":"left",q.PrevImage); J.appendTo(h);Y=X(i.next,c.isRTL?"left":"right",q.NextImage);Y.appendTo(h)}L=h.find(".yoxview_ctlBtn");aa=d("<div>",{id:"yoxview_ajaxLoader",className:"yoxview_notification",css:{display:"none"}});aa.append(d("<img>",{src:c.imagesFolder+"popup_ajax_loader.gif",alt:q.Loading,css:{width:32,height:32,"background-image":"url("+c.imagesFolder+"sprites.png)","background-position":T.getBackgroundPosition("notifications","empty")}})).appendTo(h);jQuery.each(["play","pause","first","last"],function(g,m){var n= T.getSprite("notifications",m);n.attr("className","yoxview_notification").css("display","none").appendTo(h);U[m]=n});I=d("<div>",{id:"yoxview_helpPanel",href:"#",title:q.CloseHelp,css:{background:"url("+c.imagesFolder+"help_panel.png) no-repeat center top",direction:q.Direction,opacity:"0"},click:function(){return i.clickBtn(i.help,false)}});a=document.createElement("h1");a.innerHTML=q.Help.toUpperCase();b=document.createElement("p");b.innerHTML=q.HelpText;e=document.createElement("span");e.id="yoxview_closeHelp"; e.innerHTML=q.CloseHelp;I.append(a).append(b).append(e).appendTo(h);o=d("<div>",{id:"yoxview_popupInfo",className:"yoxview_popupBarPanel yoxview_bottom"});c.autoHideInfo===false&&o.css("display","block").data("disabled",true);oa=d("<div>",{className:"yoxview_popupBar yoxview_bottom",css:{background:c.infoBackColor,opacity:c.infoBackOpacity,"z-index":"1",padding:c.titlePadding+"px 0","min-height":pa}});oa.appendTo(o);ba=d("<h1>",{className:"yoxview_popupBar",css:{"z-index":"2",bottom:c.titlePadding, opacity:"1"}});ba.appendTo(o);qa=d("<span>",{css:{opacity:"1"}});qa.appendTo(o);if(c.linkToOriginalContext!==false){V=d("<a>",{className:"yoxviewInfoLink",target:"_blank",title:q.OriginalContext});V.append(T.getSprite("icons","link")).appendTo(o)}h.append(o);a=d("<div>",{id:"yoxview_popupWrap",css:{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",display:"none","z-index":"100"}});h.wrap(a);ra=d("<div>",{css:{position:"fixed",height:"100%",width:"100%",top:"0",left:"0",background:c.backgroundColor, "z-index":"1",opacity:c.backgroundOpacity},click:function(){return i.clickBtn(i.close,true)}}).appendTo(h.parent());c.buttonsFadeTime!=0&&L.hover(function(){i.isOpen&&d(this).stop().animate({opacity:0.5},c.buttonsFadeTime)},function(){d(this).stop().animate({opacity:0},c.buttonsFadeTime)});ca=h.children(".yoxview_popupBarPanel");ca.hover(function(){var g=d(this);g.data("disabled")||g.stop().stopTime().animate({opacity:1},c.buttonsFadeTime)},function(){d(this).data("disabled")||d(this).stop().stopTime().animate({opacity:0}, c.buttonsFadeTime)})}function E(a){if(a==j)a=0;var b=w[a].media;if(b.loaded){b=a+1;if(b==j)b=0;if(w[b].media.loaded){b=a-1;if(b<0)b=j-1;w[b].media.loaded||E(b)}else E(b)}else{K=a;if(!b.type||b.type==="image")wa.src=b.src;else xa(b,function(){E(K+1)})}}function ya(){sa=true;aa.stop().stopTime().oneTime(c.buttonsFadeTime,function(){d(this).stop().css("opacity","0.6").fadeIn(c.buttonsFadeTime)})}function za(a,b,e,f){var g={width:a,height:b};if(a>e){g.height=Math.round(e/a*b);g.width=e}if(g.height>f){g.width= Math.round(f/g.height*g.width);g.height=f}return g}function ta(a,b,e,f,g){h.stop().animate({width:a,height:b,top:e,left:f},"slow",g)}function da(){if(j!=1){r=true;if(t<j-1)h.oneTime(c.playDelay,"play",function(){i.next()});else c.loopPlay?h.oneTime(c.playDelay,"play",function(){i.select(0,null)}):M()}}function M(){h.stopTime("play");r=false}function Aa(){var a=d(parent.window).width(),b=d(parent.window).height();return{height:b,width:a,usableHeight:b-c.popupMargin*2,usableWidth:a-c.popupMargin*2}} function Ba(){var a=ba.outerHeight();if(a<pa)a=pa;oa.animate({height:a},"fast")}function ea(a){var b,e=!a.type||a.type==="image";if(C.css("z-index")==1){l=C;b=G;fa=B}else{l=B;b=R;fa=C}l.data("maxSize",{width:a.width,height:a.height});var f=za(a.width,a.height,u.usableWidth,u.usableHeight);ba.html(a.title);j>1&&qa.html(t+1+"/"+j);if(V)F.link?V.attr("href",F.link).css("display","inline"):V.css("display","none");var g=l.data("yoxviewPanel");if(e){b.attr({src:a.src,title:a.title,alt:a.alt});L.css({height:"100%", width:"50%",top:"0"});if(l.isMedia){g.media.remove();g.media=undefined;g.image.show();l.isMedia=false}c.autoHideInfo!==false?o.data("disabled",false):o.stop().fadeIn(c.buttonsFadeTime)}else{if(g.media)g.media.show();else{g.media=d("<div>",{className:"yoxview_mediaPanel"});g.image.hide();l.append(g.media)}g.media.html(a.html);L.css({width:ga.width,height:ga.height,top:f.height/2-ga.height/2});if(!l.isMedia){g.image.hide();l.isMedia=true}c.autoHideInfo===false?o.fadeOut(c.buttonsFadeTime):o.css("display", "none");o.data("disabled",true)}ha?l.animate({width:f.width,height:f.height},"slow"):l.css({width:f.width+"px",height:f.height+"px"});b=Math.round((u.height-f.height)/2);g=Math.round((u.width-f.width)/2);if(sa){sa=false;aa.stop().stopTime().fadeOut(c.buttonsFadeTime)}N=true;ta(f.width,f.height,b,g,function(){if(ha){i.isOpen=true;ca.css("display","block");if(c.controlsInitialDisplayTime>0){c.showButtonsOnOpen&&L.animate({opacity:0.5},c.controlsInitialFadeTime,function(){c.buttonsFadeTime!=0&&d(this).delay(c.controlsInitialDisplayTime).animate({opacity:0}, c.controlsInitialFadeTime)});$.animate({opacity:1},c.controlsInitialFadeTime,function(){c.autoHideMenu!=="false"&&d(this).delay(c.controlsInitialDisplayTime).animate({opacity:0},c.controlsInitialFadeTime)})}Ba();c.autoPlay&&i.play();c.onOpen&&c.onOpen();if(ia){ia();ia=undefined}ha=false}N=false});l.css("z-index","2");fa.css("z-index","1");l.fadeIn("slow",function(){fa.css("display","none");if(a.title&&a.title!=""){o.css("display","block");Ba();c.displayImageTitleByDefault&&c.autoHideInfo!==false&& o.stop().stopTime().animate({opacity:1},500,function(){d(this).oneTime(c.titleDisplayDuration,function(){d(this).stop().animate({opacity:0},500,function(){e||d(this).css("display","none")})})})}if(j>1){t<j-1&&c.cacheImagesInBackground&&E(t+1);r&&da()}})}function Ga(a,b,e,f,g){jQuery.jsonp({url:Ha[a]||"http://oohembed.com/oohembed/",data:jQuery.extend({url:b,format:"json"},e),dataType:"jsonp",callbackParameter:"callback",success:function(m){var n={title:m.title,width:m.width,height:m.height,type:m.type}; if(m.type==="video")n.html=m.html.replace(/<embed /,'<embed wmode="transparent" ').replace(/<param/,'<param name="wmode" value="transparent"><param').replace(/width=\"[\d]+\"/ig,'width="100%"').replace(/height=\"[\d]+\"/ig,'height="100%"');else m.type==="photo"&&jQuery.extend(n,{src:m.url,alt:m.title,type:"image"});f(n)},error:function(m,n){g&&g(m,n)}})}function Ca(a){if(a.loaded)ea(F.media);else if(!a.type||a.type==="image")Da.src=a.src;else xa(a,function(b){ea(b)},function(b){ua("Error getting data from:<br /><span class='errorUrl'>"+ b.data.url+"</span>")})}function xa(a,b,e){if(!a.type||a.type!=="image")Ga(a.provider,a.url,c.videoSize,function(f){d.extend(a,f,{loaded:true});b&&b(a)},e)}function ua(a){ea({html:"<span class='yoxview_error'>"+a+"</span>",width:500,height:300,type:"error",title:""})}var i=this,ka=x,c=ka,q={},H=[],ja=0,w,j=0,h,t=0,F,S,na,p,ha=true,G,R,C,B,J,Y,aa,I,$,o,ba,pa=28-2*c.titlePadding,oa,V,ca,L,ra,qa,r=false,W=false,U=[],Da=new Image,wa=new Image,K=0,N=this.isOpen=false,sa=false,ia,ga={width:100,height:100}, u,d=jQuery,Ia={40:"DOWN",35:"END",13:"ENTER",36:"HOME",37:"LEFT",39:"RIGHT",32:"SPACE",38:"UP",72:"h",27:"ESCAPE"},Ja={RIGHT:c.isRTL?"prev":"next",DOWN:"next",UP:"prev",LEFT:c.isRTL?"next":"prev",ENTER:"play",HOME:"first",END:"last",SPACE:"next",h:"help",ESCAPE:"close"},T=new Yox.Sprites({notifications:{width:59,height:59,sprites:["empty","playRTL","play","pause","last","first"]},icons:{width:18,height:18,sprites:["close","help","play","link"]},menu:{height:42,sprites:["back"]}},c.imagesFolder+"sprites.png", c.imagesFolder+"empty.gif");this.AddViews=function(a,b){var e=this.firstViewWithImages!=undefined;jQuery.each(a,function(){k(this,H.length,b);H.push(this);if(!i.firstViewWithImages){var f=d(this).data("yoxview").images;if(f&&f.length!=0)i.firstViewWithImages=this}});if(!e&&this.firstViewWithImages){O(this.firstViewWithImages);la();b.cacheImagesInBackground&&j!=0&&E(0);e=true}};this.SetImages=function(a){j=a.length};var Ea=/.*\.(?:jpg|jpeg|gif|png)/i,va={youtube:/.*youtube.com\/watch.*(?:v=[^&]+).*/i, vimeo:/vimeo.com\/\d+/i,hulu:/hulu.com\/watch\//i,viddler:/viddler.com\//i,flickr:/.*flickr.com\/.*/i,myspace:/.*vids.myspace.com\/.*/i,qik:/qik.com/i,revision3:/revision3.com/i};this.openGallery=function(a,b,e){if(typeof a=="function"){e=a;a=b=0}else if(typeof b=="function"){e=b;b=0}b=b||0;O(H[a||0]);!h&&j!=0&&la();c.cacheImagesInBackground&&E(b);this.selectImage(b);h.parent().stop().fadeIn("slow");if(e)ia=e;return false};this.selectImage=function(a){F=w[a];t=a;z(true);S.blur();C.css({"z-index":"1", width:p.width,height:p.height});B.css({display:"none","z-index":"2"});ha=true;h.css({width:p.width,height:p.height,top:p.top,left:p.left});this.select(a)};this.refresh=function(){(W=r)&&M();r||ya();Ca(F.media);W&&da()};this.select=function(a,b){if(typeof b==="number")b=undefined;if(!N){if(a<0)a=j-1;else if(a==j)a=0;if(!r&&b){var e=b;e.css("opacity")==0&&e.stop().animate({opacity:0},c.buttonsFadeTime,P(e))}F=w[a];t=a;r||ya();Ca(F.media);c.onSelect&&c.onSelect(a)}};this.prev=function(){this.select(t- 1,J);return false};this.next=function(){this.select(t+1,Y);return false};this.first=function(){v(U.first);this.select(0);return false};this.last=function(){v(U.last);this.select(j-1);return false};this.play=function(){if(j!=1)if(r){v(U.pause);M()}else{v(U.play);da()}};this.close=function(){this.closeHelp();z(false);ta(p.width,p.height,p.top,p.left);ra.stop().animate({opacity:0},"slow");l.animate({width:p.width,height:p.height,opacity:0},"slow",function(){h.parent().stop().fadeOut("slow",function(){l.css("opacity", 1);ra.css("opacity",c.backgroundOpacity)})});r&&M();ca.css("display","none");c.onClose&&c.onClose();N=this.isOpen=false};this.help=function(){if(this.isOpen)I.css("display")=="none"?I.css("display","block").stop().animate({opacity:0.8},c.buttonsFadeTime):this.closeHelp()};this.closeHelp=function(){I.css("display")!="none"&&I.stop().animate({opacity:0},c.buttonsFadeTime,function(){I.css("display","none")})};this.clickBtn=function(a,b){b&&r&&M();a.call(this);return false};this.AddViews(s,c);d(document).delegate("*", "keydown",function(a){if(i&&i.isOpen){var b=i[Ja[Ia[a.keyCode]]];if(b){a.preventDefault();b.apply(i)}}});d(window).bind("resize.yoxview",function(){u=Aa();i.isOpen&&i.resize()});d(wa).load(function(){d.extend(w[K].media,{width:this.width,height:this.height,loaded:true});K<j-1&&E(K+1)});this.startCache=function(){O(this.firstViewWithImages);E(0)};var l=C,fa=B;u=Aa();this.resize=function(){if(r){W=true;M()}var a=l.data("maxSize");if(a&&a){a=za(a.width,a.height,u.usableWidth,u.usableHeight);l.css({width:"100%", height:"100%"});var b=Math.round((u.height-a.height)/2),e=Math.round((u.width-a.width)/2);N=true;l.isMedia&&L.animate({top:a.height/2-ga.height/2},"slow");ta(a.width,a.height,b,e,function(){var f=h.width(),g=h.height();l.css({width:f+"px",height:g+"px"});N=false;if(W){da();W=false}})}};d(Da).load(function(){this.width==0?ua("Image error"):ea(d.extend({},F.media,{width:this.width,height:this.height}))}).error(function(){ua("Image not found:<br /><span class='errorUrl'>"+this.src+"</span>")});var Ha= {vimeo:"http://vimeo.com/api/oembed.json",myspace:"http://vids.myspace.com/index.cfm?fuseaction=oembed"};this.unload=function(){jQuery.each(H,function(a,b){d(b).undelegate("a","click.yoxview").removeData("yoxview").yoxthumbs("unload","yoxview")});d(window).unbind(".yoxview");if(h){h.parent().remove();h=undefined}}};
