/**
 * Sexy LightBox - for jQuery 1.3.2
 * @name      sexylightbox.v2.3.js
 * @author    Eduardo D. Sada - http://www.coders.me/web-html-js-css/javascript/sexy-lightbox-2
 * @version   2.3.4
 * @date      10-Nov-2009
 * @copyright (c) 2009 Eduardo D. Sada (www.coders.me)
 * @license   MIT - http://es.wikipedia.org/wiki/Licencia_MIT
 * @example   http://www.coders.me/ejemplos/sexy-lightbox-2/
*/

jQuery.bind=function(object,method){var args=Array.prototype.slice.call(arguments,2);return function(){var args2=[this].concat(args,jQuery.makeArray(arguments));return method.apply(object,args2);};};(function($){SexyLightbox={getOptions:function(){return{name:'SLB',zIndex:32000,color:'black',find:'sexylightbox',dir:'sexyimages',emergefrom:'top',background:'bgSexy.png',backgroundIE:'bgSexy.gif',buttons:'buttons.png',displayed:0,showDuration:200,closeDuration:400,moveDuration:1000,moveEffect:'easeInOutBack',resizeDuration:1000,resizeEffect:'easeInOutBack',shake:{distance:10,duration:100,transition:'easeInOutBack',loops:2},BoxStyles:{'width':486,'height':320},Skin:{'white':{'hexcolor':'#FFFFFF','captionColor':'#000000','background-color':'#000000','opacity':0.6},'black':{'hexcolor':'#000000','captionColor':'#FFFFFF','background-color':'#000000','opacity':0.6},'blanco':{'hexcolor':'#FFFFFF','captionColor':'#000000','background-color':'#000000','opacity':0.6},'negro':{'hexcolor':'#000000','captionColor':'#FFFFFF','background-color':'#000000','opacity':0.6}}};},overlay:{create:function(options){this.options=options;this.element=$('<div id="'+new Date().getTime()+'"></div>');this.element.css($.extend({},{'position':'absolute','top':0,'left':0,'opacity':0,'display':'none','z-index':this.options.zIndex},this.options.style));this.element.bind('click',$.bind(this,function(obj,event){if(this.options.hideOnClick){if(this.options.callback){this.options.callback();}else{this.hide();}}
event.preventDefault();}));this.hidden=true;this.inject();},inject:function(){this.target=$(document.body);this.target.append(this.element);if($.browser.msie&&$.browser.version=="6.0")
{var zIndex=parseInt(this.element.css('zIndex'));if(!zIndex)
{zIndex=1;var pos=this.element.css('position');if(pos=='static'||!pos)
{this.element.css({'position':'relative'});}
this.element.css({'zIndex':zIndex});}
zIndex=(!!(this.options.zIndex||this.options.zIndex===0)&&zIndex>this.options.zIndex)?this.options.zIndex:zIndex-1;if(zIndex<0)
{zIndex=1;}
this.shim=$('<iframe id="IF_'+new Date().getTime()+'" scrolling="no" frameborder=0 src=""></div>');this.shim.css({zIndex:zIndex,position:'absolute',top:0,left:0,border:'none',opacity:0});this.shim.insertAfter(this.element);}},resize:function(x,y){this.element.css({'height':0,'width':0});if(this.shim)this.shim.css({'height':0,'width':0});var win={x:$(document).width(),y:$(document).height()};var chromebugfix=$.browser.safari?(win.x-25<document.body.clientWidth?document.body.clientWidth:win.x):win.x;this.element.css({width:x?x:chromebugfix,height:y?y:win.y});if(this.shim)
{this.shim.css({'height':0,'width':0});this.shim.css({width:x?x:chromebugfix,height:y?y:win.y});}
return this;},show:function(){if(!this.hidden)return this;if(this.transition)this.transition.stop();this.target.bind('resize',$.bind(this,this.resize));this.resize();if(this.shim)this.shim.css({'display':'block'});this.hidden=false;this.transition=this.element.fadeIn(this.options.showDuration,$.bind(this,function(){this.element.trigger('show');}));return this;},hide:function(){if(this.hidden)return this;if(this.transition)this.transition.stop();this.target.unbind('resize');if(this.shim)this.shim.css({'display':'none'});this.hidden=true;this.transition=this.element.fadeOut(this.options.closeDuration,$.bind(this,function(){this.element.trigger('hide');this.element.css({'height':0,'width':0});}));return this;}},backwardcompatibility:function(option){this.options.dir=option.imagesdir||option.path||option.folder||option.dir;this.options.OverlayStyles=$.extend(this.options.Skin[this.options.color],this.options.OverlayStyles||{});},preloadimage:function(url){img=new Image();img.src=url;},initialize:function(options){this.options=$.extend(this.getOptions(),options);this.backwardcompatibility(this.options);var strBG=this.options.dir+'/'+this.options.color+'/'+((((window.XMLHttpRequest==undefined)&&(ActiveXObject!=undefined)))?this.options.backgroundIE:this.options.background);var name=this.options.name;this.preloadimage(strBG);this.preloadimage(this.options.dir+'/'+this.options.color+'/'+this.options.buttons);this.overlay.create({style:this.options.Skin[this.options.color],hideOnClick:true,zIndex:this.options.zIndex-1,callback:$.bind(this,this.close),showDuration:this.options.showDuration,showEffect:this.options.showEffect,closeDuration:this.options.closeDuration,closeEffect:this.options.closeEffect});this.lightbox={};$('body').append('<div id="'+name+'-Wrapper"><div id="'+name+'-Background"></div><div id="'+name+'-Contenedor"><div id="'+name+'-Top" style="background-image: url('+strBG+')"><a id="'+name+'-CloseButton" href="#">&nbsp;</a><div id="'+name+'-TopLeft" style="background-image: url('+strBG+')"></div></div><div id="'+name+'-Contenido"></div><div id="'+name+'-Bottom" style="background-image: url('+strBG+')"><div id="'+name+'-BottomRight" style="background-image: url('+strBG+')"><div id="'+name+'-Navegador"><strong id="'+name+'-Caption"></strong></div></div></div></div></div>');this.Wrapper=$('#'+name+'-Wrapper');this.Background=$('#'+name+'-Background');this.Contenedor=$('#'+name+'-Contenedor');this.Top=$('#'+name+'-Top');this.CloseButton=$('#'+name+'-CloseButton');this.Contenido=$('#'+name+'-Contenido');this.bb=$('#'+name+'-Bottom');this.innerbb=$('#'+name+'-BottomRight');this.Nav=$('#'+name+'-Navegador');this.Descripcion=$('#'+name+'-Caption');this.Wrapper.css({'z-index':this.options.zIndex,'display':'none'}).hide();this.Background.css({'z-index':this.options.zIndex+1});this.Contenedor.css({'position':'absolute','width':this.options.BoxStyles['width'],'z-index':this.options.zIndex+2});this.Contenido.css({'height':this.options.BoxStyles['height'],'border-left-color':this.options.Skin[this.options.color].hexcolor,'border-right-color':this.options.Skin[this.options.color].hexcolor});this.CloseButton.css({'background-image':'url('+this.options.dir+'/'+this.options.color+'/'+this.options.buttons+')'});this.Nav.css({'color':this.options.Skin[this.options.color].captionColor});this.Descripcion.css({'color':this.options.Skin[this.options.color].captionColor});this.CloseButton.bind('click',$.bind(this,function(){this.close();return false;}));$(document).bind('keydown',$.bind(this,function(obj,event){if(this.options.displayed==1){if(event.keyCode==27){this.close();}
if(event.keyCode==37){if(this.prev){this.prev.trigger('click',event);}}
if(event.keyCode==39){if(this.next){this.next.trigger('click',event);}}}}));$(window).bind('resize',$.bind(this,function(){if(this.options.displayed==1){this.replaceBox();this.overlay.resize();}}));$(window).bind('scroll',$.bind(this,function(){if(this.options.displayed==1){this.replaceBox();}}));this.refresh();},hook:function(enlace){enlace=$(enlace);enlace.blur();this.show((enlace.attr("title")||enlace.attr("name")||""),enlace.attr("href"),(enlace.attr('rel')||false));},close:function(){this.animate(0);},refresh:function(){var self=this;this.anchors=[];$("a, area").each(function(){if($(this).attr('rel')&&new RegExp("^"+self.options.find).test($(this).attr('rel'))){$(this).click(function(event){event.preventDefault();self.hook(this);});if(!($(this).attr('id')==self.options.name+"-Left"||$(this).attr('id')==self.options.name+"-Right")){self.anchors.push(this);}}});},animate:function(option){if(this.options.displayed==0&&option!=0||option==1)
{this.overlay.show();this.options.displayed=1;this.Wrapper.css({'display':'block'});}
else
{this.Wrapper.css({'display':'none','top':-(this.options.BoxStyles['height']+280)}).hide();this.overlay.hide();this.overlay.element.bind('hide',$.bind(this,function(){if(this.options.displayed){if(this.Image)this.Image.remove();this.options.displayed=0;}}));}},replaceBox:function(data){var size={x:$(window).width(),y:$(window).height()};var scroll={x:$(window).scrollLeft(),y:$(window).scrollTop()};var width=this.options.BoxStyles['width'];var height=this.options.BoxStyles['height'];if(this.options.displayed==0)
{var x=0;var y=0;y=scroll.x+((size.x-width)/2);if(this.options.emergefrom=="bottom")
{x=(scroll.y+size.y+80);}
else
{x=(scroll.y-height)-80;}
this.Wrapper.css({'display':'none','top':x,'left':y});this.Contenedor.css({'width':width});this.Contenido.css({'height':height-80});}
data=$.extend({},{'width':this.lightbox.width,'height':this.lightbox.height,'resize':0},data);if(this.MoveBox)this.MoveBox.stop();this.MoveBox=this.Wrapper.animate({'left':(scroll.x+((size.x-data.width)/2)),'top':(scroll.y+(size.y-(data.height+(this.navigator?80:48)))/2)},{duration:this.options.moveDuration,easing:this.options.moveEffect});if(data.resize){if(this.ResizeBox2)this.ResizeBox2.stop();this.ResizeBox2=this.Contenido.animate({height:data.height},{duration:this.options.resizeDuration,easing:this.options.resizeEffect});if(this.ResizeBox)this.ResizeBox.stop();this.ResizeBox=this.Contenedor.animate({width:data.width},{duration:this.options.resizeDuration,easing:this.options.resizeEffect,complete:function(){$(this).trigger('complete');}});}},getInfo:function(image,id){image=$(image);IEuta=$('<a id="'+this.options.name+'-'+id+'" title="'+image.attr('title')+'" rel="'+image.attr('rel')+'">&nbsp;</a>');IEuta.css({'background-image':'url('+this.options.dir+'/'+this.options.color+'/'+this.options.buttons+')'});IEuta.attr('href',image.attr('href'));return IEuta;},display:function(url,title,force){return this.show(title,url,'',force);},show:function(caption,url,rel,force){this.showLoading();var baseURL=url.match(/(.+)?/)[1]||url;var imageURL=/\.(jpe?g|png|gif|bmp)/gi;var queryString=url.match(/\?(.+)/);if(queryString)queryString=queryString[1];var params=this.parseQuery(queryString);if(this.ResizeBox)this.ResizeBox.unbind('complete');params=$.extend({},{'width':0,'height':0,'modal':0,'background':'','title':caption},params||{});params['width']=parseInt(params['width']);params['height']=parseInt(params['height']);params['modal']=parseInt(params['modal']);this.overlay.options.hideOnClick=!params['modal'];this.lightbox=$.extend({},params,{'width':params['width']+14});this.navigator=this.lightbox.title?true:false;if(force=='image'||baseURL.match(imageURL))
{this.img=new Image();this.img.onload=$.bind(this,function(){this.img.onload=function(){};if(!params['width'])
{var objsize=this.calculate(this.img.width,this.img.height);params['width']=objsize.x;params['height']=objsize.y;this.lightbox.width=params['width']+14;}
this.lightbox.height=params['height']-(this.navigator?21:35);this.replaceBox({'resize':1});this.ResizeBox.bind('complete',$.bind(this,function(){this.showImage(this.img.src,params);}));});this.img.onerror=$.bind(this,function(){this.show('',this.options.imagesdir+'/'+this.options.color+'/404.png',this.options.find);});this.img.src=url;}else{this.lightbox.height=params['height']+($.browser.opera?2:0);this.replaceBox({'resize':1});if(url.indexOf('TB_inline')!=-1)
{this.ResizeBox.bind('complete',$.bind(this,function(){this.showContent($('#'+params['inlineId']).html(),this.lightbox);}));}
else if(url.indexOf('TB_iframe')!=-1)
{var urlNoQuery=url.split('TB_');this.ResizeBox.bind('complete',$.bind(this,function(){this.showIframe(urlNoQuery[0],this.lightbox);}));}
else
{this.ResizeBox.bind('complete',$.bind(this,function(){$.ajax({url:url,type:"GET",cache:false,error:$.bind(this,function(){this.show('',this.options.imagesdir+'/'+this.options.color+'/404html.png',this.options.find)}),success:$.bind(this,this.handlerFunc)});}));}}
this.next=false;this.prev=false;if(rel.length>this.options.find.length)
{this.navigator=true;var foundSelf=false;var exit=false;var self=this;$.each(this.anchors,function(index){if($(this).attr('rel')==rel&&!exit){if($(this).attr('href')==url){foundSelf=true;}else{if(foundSelf){self.next=self.getInfo(this,"Right");exit=true;}else{self.prev=self.getInfo(this,"Left");}}}});}
this.addButtons();this.showNavBar(caption);this.animate(1);},calculate:function(x,y){var maxx=$(window).width()-100;var maxy=$(window).height()-100;if(x>maxx)
{y=y*(maxx/x);x=maxx;if(y>maxy)
{x=x*(maxy/y);y=maxy;}}
else if(y>maxy)
{x=x*(maxy/y);y=maxy;if(x>maxx)
{y=y*(maxx/x);x=maxx;}}
return{x:parseInt(x),y:parseInt(y)};},handlerFunc:function(obj,html){this.showContent(html,this.lightbox);},addButtons:function(){if(this.prev)this.prev.bind('click',$.bind(this,function(obj,event){event.preventDefault();this.hook(this.prev);}));if(this.next)this.next.bind('click',$.bind(this,function(obj,event){event.preventDefault();this.hook(this.next);}));},showNavBar:function(){if(this.navigator)
{this.bb.addClass("SLB-bbnav");this.Nav.empty();this.innerbb.empty();this.innerbb.append(this.Nav);this.Descripcion.html(this.lightbox.title);this.Nav.append(this.prev);this.Nav.append(this.next);this.Nav.append(this.Descripcion);}
else
{this.bb.removeClass("SLB-bbnav");this.innerbb.empty();}},showImage:function(image,size){this.Background.empty().removeAttr('style').css({'width':'auto','height':'auto'}).append('<img id="'+this.options.name+'-Image"/>');this.Image=$('#'+this.options.name+'-Image');this.Image.attr('src',image).css({'width':size['width'],'height':size['height']});this.Contenedor.css({'background':'none'});this.Contenido.empty().css({'background-color':'transparent','padding':'0px','width':'auto'});},showContent:function(html,size){this.Background.empty().css({'width':size['width']-14,'height':size['height']+35,'background-color':size['background']||'#ffffff'});this.Contenido.empty().css({'width':size['width']-14,'background-color':size['background']||'#ffffff'}).append('<div id="'+this.options.name+'-Image"/>');this.Image=$('#'+this.options.name+'-Image');this.Image.css({'width':size['width']-14,'height':size['height'],'overflow':'auto','background':size['height']||'#ffffff'}).append(html);this.Contenedor.css({'background':'none'});},showIframe:function(src,size,bg){this.Background.empty().css({'width':size['width']-14,'height':size['height']+35,'background-color':size['background']||'#ffffff'});var id="if_"+new Date().getTime()+"-Image";this.Contenido.empty().css({'width':size['width']-14,'background-color':size['background']||'#ffffff','padding':'0px'}).append('<iframe id="'+id+'" frameborder="0"></iframe>');this.Image=$('#'+id);this.Image.css({'width':size['width']-14,'height':size['height'],'background':size['background']||'#ffffff'}).attr('src',src);this.Contenedor.css({'background':'none'});},showLoading:function(){this.Background.empty().removeAttr('style').css({'width':'auto','height':'auto'});this.Contenido.empty().css({'background-color':'transparent','padding':'0px','width':'auto'});this.Contenedor.css({'background':'url('+this.options.imagesdir+'/'+this.options.color+'/loading.gif) no-repeat 50% 50%'});this.Contenido.empty().css({'background-color':'transparent','padding':'0px','width':'auto'});this.replaceBox($.extend(this.options.BoxStyles,{'resize':1}));},parseQuery:function(query){if(!query)
return{};var params={};var pairs=query.split(/[;&]/);for(var i=0;i<pairs.length;i++){var pair=pairs[i].split('=');if(!pair||pair.length!=2)
continue;params[unescape(pair[0])]=unescape(pair[1]).replace(/\+/g,' ');}
return params;},shake:function(){var d=this.options.shake.distance;var l=this.Wrapper.position();l=l.left;for(x=0;x<this.options.shake.loops;x++){this.Wrapper.animate({left:l+d},this.options.shake.duration,this.options.shake.transition).animate({left:l-d},this.options.shake.duration,this.options.shake.transition);}
this.Wrapper.animate({"left":l+d},this.options.shake.duration,this.options.shake.transition).animate({"left":l},this.options.shake.duration,this.options.shake.transition);}}})(jQuery);
