(function($){$.fn.viewbox=function(g){g=$.extend({Speed:400,heightWindow:450,widthWindow:650,arrayEl:[],arrayActEl:0,IMG:1,visibleIMG:1,preloaderIMG:1,frame:0,inline:0,inlineBg:"#fff",inlinePadding:5,inlineScroll:1,ajax:0,ajaxType:0,ajaxData:0,ajaxSuccess:0,titleThumb:1,navigation:1,keyboard:1,keyClose:"c",keyPrev:"p",keyNext:"n",numberEl:1},g);var h=$(this);var j;function _clickEl(){_viewbox(this,h);return false}function _viewbox(a,b){g.arrayEl.length=0;g.arrayActEl=0;if(b.length==1){g.arrayEl.push(new Array(a.getAttribute("href"),a.getAttribute("title"),$(a).children("img").attr("alt")))}else{for(var i=0;i<b.length;i++){g.arrayEl.push(new Array(b[i].getAttribute("href"),b[i].getAttribute("title"),$(b[i]).children("img").attr("alt")))}}while(g.arrayEl[g.arrayActEl][0]!=a.getAttribute("href")){g.arrayActEl++}createView()}function createView(){$("body").append("<div id='viewbox'></div><div class='vb_wrap'><div class='content'><div class='close'><a href='#'>close</a></div><div class='next'><a href='#'> Next</a></div><div class='prev'><a href='#'>Previous</a></div></div>");$("#viewbox, .vb_wrap, .vb_wrap .content, .vb_wrap .content .next, .vb_wrap .content .prev").hide();if(g.navigation){NextAndPrev()}$(".vb_wrap .prev").unbind().bind("click",function(){Prev();return false});$(".vb_wrap .next").unbind().bind("click",function(){Next();return false});keyboardNav();$("#viewbox").css("opacity",0.7).fadeIn(g.Speed/1.6,function(){arraySizeBrowser=sizeBrowser();if($(document).scrollTop()==0){if(g.heightWindow>arraySizeBrowser[0]*1.3){j=arraySizeBrowser[0]/9}else{j=arraySizeBrowser[0]/2.2}}else{j=$(document).scrollTop()+arraySizeBrowser[0]/2.3}$(".vb_wrap").css({top:j+(g.heightWindow/2),left:arraySizeBrowser[1]});$(".vb_wrap").fadeIn(g.Speed/1.2,function(){$(this).animate({height:g.heightWindow,width:g.widthWindow,top:j,left:arraySizeBrowser[1]-g.widthWindow/2},g.Speed/1.2,function(){setElement();$(".vb_wrap .content").delay(290).fadeIn(g.Speed/1.5)})})});$("#viewbox, .vb_wrap .content .close a").click(function(){closeWindow();return false})}function setElement(){if(nImg(g.arrayEl[g.arrayActEl][0])){Img(g.arrayEl[g.arrayActEl][0])}if(nYT(g.arrayEl[g.arrayActEl][0])){Film(g.arrayEl[g.arrayActEl][0])}if(nV(g.arrayEl[g.arrayActEl][0])){Vimeo(g.arrayEl[g.arrayActEl][0])}if(nPlayer(g.arrayEl[g.arrayActEl][0])){Player(g.arrayEl[g.arrayActEl][0])}if(nMaps(g.arrayEl[g.arrayActEl][0])){GoogleMaps(g.arrayEl[g.arrayActEl][0])}if(nFrame(g.arrayEl[g.arrayActEl][0])){FrameObj(g.arrayEl[g.arrayActEl][0])}if(nInline(g.arrayEl[g.arrayActEl][0])){Inline(g.arrayEl[g.arrayActEl][0])}if(nAjax(g.arrayEl[g.arrayActEl][0])){Ajax(g.arrayEl[g.arrayActEl][0])}}function nImg(a){return(a.indexOf("jpg",".")>0||a.indexOf("png",".")>0||a.indexOf("gif",".")>0)&&a.indexOf("mp3",".")<0}function nYT(a){return a.indexOf("youtube",".")>0}function nV(a){return a.indexOf("vimeo",".")>0}function nPlayer(a){return a.indexOf("mp3",".")>0||a.indexOf("vmw",".")>0||a.indexOf("avi",".")>0}function nMaps(a){return a.indexOf("map","/")>0&&a.indexOf("google",".")>0}function nFrame(a){return g.frame!=0||a.indexOf("html",".")>0}function nInline(a){return g.inline!=0||a.indexOf("#")>=0}function nAjax(a){return g.ajax!=0||a.indexOf("txt",".")>0||a.indexOf("js",".")>0}function Img(b){$(".vb_wrap .content").append("<div class='image'><img  /></div>");$(".vb_wrap .image").hide();if(g.preloaderIMG){$(".vb_wrap").append("<div class='preloader'></div>")}var c=new Image();c.onload=function(){$(".vb_wrap .image img").attr("src",c.src);arraySizeBrowser=sizeBrowser();var a,Width;if(arraySizeBrowser[0]*1.4>c.height||arraySizeBrowser[1]*1.4>c.width){g.heightWindow=a=c.height;g.widthWindow=Width=c.width}else{if(!g.visibleIMG){var d=c.width-(arraySizeBrowser[1]*1.6)-65;g.heightWindow=a=(c.height-d);g.widthWindow=Width=(c.width-d)}else{if(c.height<c.width){var d=c.width-(arraySizeBrowser[1]*1.6)-65;if(c.height>arraySizeBrowser[0]){var d=c.height-(arraySizeBrowser[0]*1.6)-65;g.heightWindow=a=(c.height-d);g.widthWindow=Width=(c.width/(c.height/(c.height-d)))}else{g.heightWindow=a=(c.height/(c.width/(c.width-d)));g.widthWindow=Width=(c.width-d)}}if(c.height>c.width){var d=c.height-(arraySizeBrowser[0]*1.6)-65;g.heightWindow=a=(c.height-d);g.widthWindow=Width=(c.width/(c.height/(c.height-d)))}}}resizeWindow(a,Width);$(".vb_wrap .preloader").remove();c.onload=function(){}};c.src=b;var e=g.arrayEl[g.arrayActEl][2];var f=g.arrayEl[g.arrayActEl][1];Description(f,e)}function Description(a,b){if(a){$(".vb_wrap .content .image").append("<div class='text'><h1>"+a+"</h1></div>");$(".vb_wrap .content .text").hide();$(".vb_wrap .content .text").stop(true,true).slideDown(200)}if(b){$(".vb_wrap .content .text").append("<div class='description'>"+b+"</div>")}return false}function Film(a){$(".vb_wrap .content").append("<div class='object'></div>");hrefY="http://www.youtube.com/v/"+a.substring(31,42)+"&autoplay=1&loop=1&feature=related&showsearch=0";$(".vb_wrap .object").append("<object width='"+g.widthWindow+"' height='"+g.heightWindow+"'><param name='movie' value='"+hrefY+"'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='"+hrefY+"' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='"+g.widthWindow+"' height='"+g.heightWindow+"'></embed></object>")}function Vimeo(a){$(".vb_wrap .content").append("<div class='object'></div>");hrefV=a.substring(21,29);$(".vb_wrap .object").append("<object width='"+g.widthWindow+"' height='"+g.heightWindow+"'><param name='allowfullscreen' value='true' /><param name='allowscriptaccess' value='always' /><param name='movie' value='http://vimeo.com/moogaloop.swf?clip_id="+hrefV+"&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' /><embed src='http://vimeo.com/moogaloop.swf?clip_id="+hrefV+"&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' width='"+g.widthWindow+"' height='"+g.heightWindow+"'></embed></object>")}function Player(a){$(".vb_wrap .content").append("<div class='object'></div>");$('.vb_wrap .object').append("<object id='player' classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' name='player' width='"+g.widthWindow+"' height='"+g.heightWindow+"'> <param name='movie' value='player/player.swf' /><param name='allowfullscreen' value='true' /> <param name='flashvars' value='file="+a+"&amp;skin=player/modieus.zip' /> <object type='application/x-shockwave-flash' data='player/player.swf' width='"+g.widthWindow+"' height='"+g.heightWindow+"'> <param name='movie' value='player/player.swf' /> <param name='allowfullscreen' value='true' /> <param name='flashvars' value='file="+a+"&amp;skin=player/modieus.zip' /></object>")}function GoogleMaps(a){$(".vb_wrap .content").append("<iframe width="+g.widthWindow+" height="+g.heightWindow+" frameborder='0' scrolling='no' marginheight='0' marginwidth='0' src='"+a+"&amp;output=embed'></iframe><br /><small><a href='"+a+"&amp;output=embed' style='color:#0000FF;text-align:left' ></small>")}function FrameObj(a){$(".vb_wrap .content").append("<div class='content'></div>");$(".vb_wrap .content .content").css("background",g.inlineBg).hide();$(".vb_wrap .content .content").append("<iframe hspace='0' src='"+a+"' scrolling='auto' frameborder='0' height='"+g.heightWindow+"' width='"+g.widthWindow+"' ></iframe>")}function NextAndPrev(){if(g.arrayActEl!=0){$(".vb_wrap .prev").css("top",g.heightWindow/2).show()}else{$(".vb_wrap .prev").hide()}if(g.arrayActEl!=g.arrayEl.length-1){$(".vb_wrap .next").css("top",g.heightWindow/2).show()}else{$(".vb_wrap .next").hide()}NumberElement()}function Inline(a){ChangeStyle();$(".vb_wrap .content .content").append($(a).html())}function Ajax(b){ChangeStyle();$.ajax({type:(!g.ajaxType)?"GET":g.ajaxType,url:b,data:g.ajaxData,success:(!g.ajaxSuccess)?(function(a){$("vb_wrap .content .content").html(a)}):g.ajaxSuccess})}function ChangeStyle(){$(".vb_wrap").css("background-color","transparent");$(".vb_wrap .content .number").hide();var a=(g.inlineScroll)?"auto":"hidden";$(".vb_wrap .content").append("<div class='content'></div>");$(".vb_wrap .content .content").css({background:g.inlineBg,padding:g.inlinePadding,overflow:a});$(".vb_wrap .content .content").height(g.heightWindow-10)}function keyboardNav(){if(g.keyboard){$(document.documentElement).unbind().bind("keyup",function(a){if($.browser.msie){codeAscii=a.keyCode}else{codeAscii=a.keyCode}KeyCode=String.fromCharCode(codeAscii).toLowerCase();if(a.keyCode==37||KeyCode==g.keyPrev){Prev()}if(a.keyCode==39||KeyCode==g.keyNext){Next()}if(a.keyCode==27||KeyCode==g.keyClose){closeWindow()}})}}function Prev(){if(g.arrayActEl!=0){$(".vb_wrap .content").fadeOut(g.Speed/1.4,function(){$(".vb_wrap .content .image, .content .object").remove();g.arrayActEl=g.arrayActEl-1;NumberElement();setElement();$(this).fadeIn(g.Speed/1.2);NextAndPrev()})}}function Next(){if(g.arrayActEl!=g.arrayEl.length-1){$(".vb_wrap .content").fadeOut(g.Speed/1.4,function(){$(".vb_wrap .content .image, .vb_wrap .content .object").remove();g.arrayActEl=g.arrayActEl+1;NumberElement();setElement();$(this).fadeIn(g.Speed/1.2);NextAndPrev()})}}function NumberElement(){if(g.numberEl){$(".vb_wrap .content .number").remove();if(g.arrayEl.length!=0){function Words(){if(nImg(g.arrayEl[g.arrayActEl][0])){return"Image "}if(nYT(g.arrayEl[g.arrayActEl][0])||nV(g.arrayEl[g.arrayActEl][0])){return"Film "}if(nPlayer(g.arrayEl[g.arrayActEl][0])){return"Item "}if(nMaps(g.arrayEl[g.arrayActEl][0])){return"Map "}if(nFrame(g.arrayEl[g.arrayActEl][0])){return"Page "}}$(".vb_wrap .content").append("<div class='number'>"+Words()+(g.arrayActEl+1)+" / "+g.arrayEl.length+"</div>")}}}function resizeWindow(a,b,c){var d=$(".vb_wrap").height();var e=$(".vb_wrap").width();$(".vb_wrap").animate({left:document.documentElement.clientWidth/2-b/2,top:topToresize(a,b),width:b,height:a},g.Speed/1.5);$(".vb_wrap img").attr({height:a,width:b});$(".vb_wrap .image").hide().delay(g.Speed/1.1).fadeIn(300);$(".vb_wrap .next, .vb_wrap .prev").css("top",a/2)}function topToresize(a,b){if(a+arraySizeBrowser[0]/2.3>arraySizeBrowser[0]*2){return $(document).scrollTop()+(arraySizeBrowser[0]/9)}else{return $(document).scrollTop()+(arraySizeBrowser[0]/2)}}function closeWindow(){var a=sizeBrowser();g.arrayEl.length=0;g.arrayActEl=0;$(".vb_wrap .content").fadeOut(g.Speed/1.6,function(){$(".vb_wrap").animate({left:a[1],top:a[0]/2+j,height:50,width:50},g.Speed/1.3,function(){$(this).fadeOut(g.Speed/1.2,function(){$(this).remove();$("#viewbox").fadeOut(g.Speed/1.5,function(){$("#viewbox").remove()})})})})}function sizeBrowser(){var a=new Array;a[0]=document.documentElement.clientHeight/2;a[1]=document.documentElement.clientWidth/2;return a}if(g.titleThumb){jQuery.each(h,function(){var a=$(this).attr("title");if(a!=""){$(this).children("img").parent("a").wrap("<div class='thumbdiv'></div>");$(this).parent(".thumbdiv").append("<div class='title'>"+a+"</div>");$(this).parent(".thumbdiv").children(".title").hide()}});$(".thumbdiv").hover(function(){$(this).children(".title").stop(true,true).delay(150).slideDown(200)},function(){$(this).children(".title").stop(true,true).delay(150).slideUp(200)})}return this.unbind('click').click(_clickEl)}})(jQuery);
