var isIE6=$.browser.msie&&6==parseInt($.browser.version);
(function(){function e(a,b){var c=this;this.imgHolder=b?b:$('<img src="'+loadingImg+'"/>');this.image=new Image;this.image.src=a;this.isReady=!1;this.fillTo=this.fitTo=null;this.image.complete?this._onloadHandler.call(this):this.image.onload=function(){c._onloadHandler.call(c)}}var m={preview:{align:"left",imgWidth:"auto",imgHeight:"auto",style:{},type:"Basic",clipType:"Fill",tooltip:{position:"auto",offset:"auto"},imgMarginVertical:10,imgMarginHorizontal:6,scroll:{mode:"normal",amount:1}},viewport:{effect:{type:"Snap",
duration:1E3,oncomplete:function(){}},style:{},clipType:"Fit"},style:{applyTo:"container",width:"auto",height:"auto",fullscreen:!1,loadingImg:"../images/slider/loading.gif",closeBtnImg:"../images/slider/btn_CloseBtn.gif"}},f=window.LcGallery=function(a,b){this.settings=$.extend(!0,{},m,b);this.loadingImg=this.settings.style.loadingImg;this.closeBtnImg=this.settings.style.closeBtnImg;if(!this.settings.images)throw Error("LcGallery: No images");if(970<this.settings.style.width&&!this.settings.style.fullscreen)this.settings.style.width=
970;this.root=$(a).addClass("lcGallery");this.root.html("");this.container=$('<div class="lcg-container"></div>').appendTo(this.root);this.viewport=$('<div class="lcg-viewport"></div>').appendTo(this.container);this.preview=$('<div class="lcg-preview"></div>').appendTo(this.container);var c=this.settings.preview.tooltip;switch(this.settings.preview.align){case "top":this.container.addClass("lcg-top");if("auto"==c.position)c.position="bottom right";if("auto"==c.offset)c.offset=[-7,-1*(3*this.settings.preview.imgHeight/
4)];break;case "right":this.container.addClass("lcg-right");if("auto"==c.position)c.position="bottom left";if("auto"==c.offset)c.offset=[-1*(3*this.settings.preview.imgHeight/4),20];break;case "bottom":this.container.addClass("lcg-bottom");if("auto"==c.position)c.position="top right";if("auto"==c.offset)c.offset=[15,-1*(3*this.settings.preview.imgHeight/4)];break;default:this.settings.preview.align="left";case "left":this.container.addClass("lcg-left");if("auto"==c.position)c.position="bottom right";
if("auto"==c.offset)c.offset=[-1*(3*this.settings.preview.imgHeight/4),-20]}this.root.css(this.settings.style);this.container.css(this.settings.style);this.settings.preview.style&&this.preview.css(this.settings.preview.style);this.autoPreviewWidth();this.pvBuilder=new f.previewBuilder.Basic(this,{images:this.settings.images,imgWidth:this.settings.preview.imgWidth,imgHeight:this.settings.preview.imgHeight,imgMarginVertical:this.settings.preview.imgMarginVertical,imgMarginHorizontal:this.settings.preview.imgMarginHorizontal,
scrollV:"left"==this.settings.preview.align||"right"==this.settings.preview.align,clipType:this.settings.preview.clipType,tooltip:{position:this.settings.preview.tooltip.position,offset:this.settings.preview.tooltip.offset},scroll:this.settings.preview.scroll});this.pvBuilder.init();this.pvBuilder._scrollState(-1,0,10);"viewport"==this.settings.style.applyTo?"top"==this.settings.preview.align||"bottom"==this.settings.preview.align?(this.preview.css("height",this.preview.height()||this.settings.preview.imgHeight),
this.viewport.css("height",this.settings.style.height),this.root.css("height",this.settings.style.height+this.settings.preview.imgHeight+15),this.container.css("height",this.settings.style.height+this.settings.preview.imgHeight+15),"top"==this.settings.preview.align?this.viewport.css("top",this.settings.preview.imgHeight+10):this.preview.css("top",this.settings.style.height),isIE6&&(this.viewport.css("left","0px"),this.viewport.css("top","0px"))):(this.preview.css("width",this.preview||this.settings.preview.imgWidth),
this.viewport.css("width",this.settings.style.width),this.root.css("width",this.settings.style.width+this.settings.preview.imgWidth),this.container.css("width",this.settings.style.width+this.settings.preview.imgWidth+22),"left"==this.settings.preview.align?this.viewport.css("left",this.settings.preview.imgWidth):this.preview.css("left",this.settings.style.width+14),isIE6&&(this.viewport.css("top","0px"),"right"==this.settings.preview.align?(this.viewport.css("width",this.settings.style.width),this.preview.css("left",
this.settings.style.width+10)):this.viewport.css("left",this.settings.preview.imgWidth+this.settings.preview.imgMarginHorizontal+"px"))):"top"==this.settings.preview.align||"bottom"==this.settings.preview.align?(this.preview.css("height",this.preview.height()||this.settings.preview.imgHeight),this.autoViewportSize(!1),this.viewport.css("height",this.settings.style.height-this.preview.height()-(k(this.viewport)+l(this.viewport))),isIE6&&(this.viewport.css("left","0px"),this.viewport.css("top","0px")),
"top"==this.settings.preview.align?this.viewport.css("top",this.preview.height()):this.settings.style.fullscreen&&this.viewport.css("top",-30)):(this.preview.css("width",this.preview||this.settings.preview.imgWidth),this.autoViewportSize(!0),this.settings.style.fullscreen?this.viewport.css("width",this.settings.style.width-this.settings.preview.imgWidth-30):this.viewport.css("width",this.settings.style.width-this.settings.preview.imgWidth-15),isIE6&&(this.container.css("width",this.settings.style.width),
this.viewport.css("top","0px"),"right"==this.settings.preview.align?(this.viewport.css("width",this.settings.style.width-this.settings.preview.imgWidth-22),this.preview.css("left",this.settings.style.width-this.settings.preview.imgWidth-12)):(this.viewport.css("width",this.settings.style.width-this.settings.preview.imgWidth-37),this.viewport.css("left",this.settings.preview.imgWidth+15))));isIE6&&this.viewport.css("overflow","hidden");c={images:this.settings.images,duration:this.settings.viewport.effect.duration,
clipType:this.settings.viewport.clipType,enableFullscreen:this.settings.viewport.enableFullscreen,onclick:this.settings.viewport.onclick,oncomplete:this.settings.viewport.effect.oncomplete};if(this.settings.viewport.style)c.style=this.settings.viewport.style;this.vpEffect=f.effectBuilder[this.settings.viewport.effect.type]?new f.effectBuilder[this.settings.viewport.effect.type](this,c):new f.effectBuilder.Snap(this,c);this.vpEffect.init()};f.prototype.autoPreviewWidth=function(){if("auto"==this.settings.preview.imgWidth&&
("left"==this.settings.preview.align||"right"==this.settings.preview.align)){if(this.settings.preview.imgWidth=this.root.width()?this.root.width()*(1/6):100,"auto"==this.settings.preview.imgHeight)this.settings.preview.imgHeight=this.settings.preview.imgWidth}else if("auto"==this.settings.preview.imgHeight&&("top"==this.settings.preview.align||"bottom"==this.settings.preview.align))if(this.settings.preview.imgHeight=this.root.height()?this.root.height()*(1/6):100,"auto"==this.settings.preview.imgWidth)this.settings.preview.imgWidth=
this.settings.preview.imgHeight};f.prototype.autoViewportSize=function(a){if("auto"==this.settings.style.width)this.settings.style.width=this.container.width();var b=this.settings.style.width;if("auto"==this.settings.style.height&&b)if(this.root.height())this.settings.style.height=this.root.height();else if("auto"==this.settings.style.height)a?(a=b-this.preview.width()-(i(this.viewport)+j(this.viewport)),this.settings.style.height=0.75*a):this.settings.style.height=0.75*b+this.preview.height(),this.root.css("height",
this.settings.style.height),this.container.css("height",this.settings.style.height)};var d=f.effectBuilder={},h=d._base=function(){this.currentImgId=0};h.prototype.next=function(){var a=this.currentImgId+1;a>=this.imgData.length&&(a=0);this.showImg(a)};h.prototype.previous=function(){var a=this.currentImgId-1;0>a&&(a=this.imgData.length-1);this.showImg(a)};h.prototype.showImg=function(a,b){if(0>a||a>=this.imgData.length)throw Error("LcGallery: Out of Range");if(!1!==this._showImg(a,b))this.currentImgId=
a};h.prototype.renderUI=function(){i(this.efContainer);j(this.efContainer);k(this.efContainer);l(this.efContainer);for(var a=0;a<this.imgData.length;a++){this.imgData[a]._img=new e(this.imgData[a].src,$('<img src="'+this.gallery.loadingImg+'"/>'));this.imgData[a]._imgWrapper=$("<div></div>").addClass("lcg-imgBox").append(this.imgData[a]._img.imgHolder).appendTo(this.imgContainer).data("imgIndex",a).data("img",this.imgData[a]._img);if("undefined"!=typeof this.settings.onclick&&"function"==typeof this.settings.onclick){var b=
this,c=this.imgData[a];c._imgWrapper.click(function(){b.settings.onclick($(this).data("imgIndex"),$(this).data("img"))})}else this.settings.enableFullscreen&&(b=this,c=this.imgData[a],c._img.imgHolder.css("cursor","pointer"),c._imgWrapper.click(function(){b.gallerypopup={};b.gallery.root.css("visibility","hidden");var a=$(this).data("imgIndex"),c=$("<div></div>").attr("id","lcg-popup-lightbox-bg").css("display","none").css("opacity",0.9).css("filter","alpha(opacity=90)").css("background","#000");
c.css("width","100%").css("height",document.body.scrollHeight).css("position","absolute").css("top",0).css("left",0);isIE6&&(c.css("width",document.documentElement.clientWidth),c.css("height",document.documentElement.clientHeight));var d=$("<div></div>").attr("id","lcg-popup-lightbox").css("display","none");d.css("position","absolute").css("top",0).css("overflow","hidden").css("background","transparent");var e=$("<div></div>").attr("id","lcg-popup-lightbox-title").css("width","100%").css("text-align",
"right").css("paddingTop","5px").css("paddingBottom","5px"),f=$("<div></div>").attr("id","lcg-popup-lightbox-close-btn"),h=$("<img></img>").attr("src",b.gallery.closeBtnImg).css("cursor","pointer").appendTo(f);f.appendTo(e);h.click(function(){$("#lcg-popup-lightbox").fadeOut(500,function(){b.gallery.root.css("visibility","visible");$("#lcg-popup-lightbox-bg").fadeOut(500,function(){$("#lcg-popup-lightbox-bg").remove();$("#lcg-popup-lightbox").remove()})})});f=$("<div></div>").attr("id","lcg-popup-lightbox-target").css("margin",
"0 auto");e.appendTo(d);f.appendTo(d);isIE6?d.css("width","100%"):d.css("width","98%");d.css("height","100%");$("body").append(c);$("body").append(d);var g=b.gallery.settings;g.style.width=window.innerWidth-80;g.style.height=window.innerHeight-80;if(isIE6)g.style.width=document.documentElement.clientWidth-60,g.style.height=document.documentElement.clientHeight-60;g.style.applyTo="container";g.style.fullscreen=!0;g.viewport.style.background="transparent";g.preview.style.background="transparent";g.style.background=
"transparent";g.viewport.clipType="Fit";g.viewport.onclick=function(){};g.viewport.effect.oncomplete=function(a){de(a+" complete")};c.fadeIn(500,function(){d.fadeIn(50,function(){b.gallerypopup=new LcGallery(document.getElementById("lcg-popup-lightbox-target"),g);b.gallerypopup.pvBuilder._switchImg(a);b.gallerypopup.viewport.css("margin-top",15);"function"==typeof b.gallery.settings.onfullscreen&&b.gallery.settings.onfullscreen.call(b)})})}));this.imgBoxCss&&this.imgData[a]._imgWrapper.css(this.imgBoxCss);
if(this.imgData[a]._img["set"+this.settings.clipType+"To"])this.imgData[a]._img["set"+this.settings.clipType+"To"](this.efContainer.width(),this.efContainer.height());else this.imgData[a]._img.setfitTo(this.efContainer.width(),this.efContainer.height())}};h.prototype.init=function(){this.renderUI()};d.Snap=function(a,b){this.gallery=a;this.settings=b;this.efContainer=a.viewport;this.imgData=b.images;this.imgContainer=$('<div class="lcg-lineContainer"></div>').appendTo(this.efContainer).css("height",
this.efContainer.height());isIE6&&(this.efContainer.css("position","relative"),this.imgContainer.css("position","absolute").css("left","0px").css("top","0px"),"top"==this.gallery.settings.preview.align&&this.efContainer.css("top",this.gallery.settings.preview.imgHeight+this.gallery.settings.preview.imgMarginVertical+"px"));this.imgBoxCss={width:this.efContainer.width(),height:this.efContainer.height()};this.imgContainer.css("width",(this.imgBoxCss.width+1)*this.efContainer.width());this.settings.style&&
this.efContainer.css(this.settings.style)};d.Snap.prototype=new f.effectBuilder._base;d.Snap.prototype._showImg=function(a,b){var c=this.imgContainer.children();if(c[a])isIE6?($(".lcg-viewport").scrollLeft(),c=c[a].offsetLeft,this.imgContainer.stop().animate({left:-1*c},this.settings.duration,function(){"function"==typeof b&&b(a)})):this.efContainer.stop().animate({scrollTop:c[a].offsetTop,scrollLeft:c[a].offsetLeft},this.settings.duration,function(){"function"==typeof b&&b(a)})};d=f.previewBuilder=
{};d._base=function(){};d._base.prototype._scroll=function(){var a=this;if("snap"==this.settings.scroll.mode)this.settings.scrollV?this.scrollPx(this._scrollDir*(this.settings.imgHeight+this.settings.imgMarginVertical)):this.scrollPx(this._scrollDir*(this.settings.imgWidth+this.settings.imgMarginHorizontal));else{var b=50*this._scrollDir;this.settings.scrollV?(this.scrollable[0].scrollTop+=b,this._scrollState(this.scrollable[0].scrollTop,0,this.scrollable[0].scrollHeight-this.scrollable[0].offsetHeight)):
(this.scrollable[0].scrollLeft+=b,this._scrollState(this.scrollable[0].scrollLeft,0,this.scrollable[0].scrollWidth-this.scrollable[0].offsetWidth));a._scrollDir&&setTimeout(function(){a._scroll.apply(a)},50)}};d._base.prototype.scrollPx=function(a){this.settings.scrollV?(this.scrollable.stop().animate({scrollTop:"+="+a},500),this._scrollState(this.scrollable[0].scrollTop+a,0,this.scrollable[0].scrollHeight-this.scrollable[0].offsetHeight)):(this.scrollable.stop().animate({scrollLeft:"+="+a},500),
this._scrollState(this.scrollable[0].scrollLeft+a,0,this.scrollable[0].scrollWidth-this.scrollable[0].offsetWidth))};d._base.prototype._scrollState=function(a,b,c){de("_scrollState:currVal="+a+",minVal="+b+",maxVal="+c);a>=c?(this.downBttn.addClass("lcg-scOff"),isIE6&&(this.settings.scrollV?this.downBttn.css("background-position-y","top"):this.downBttn.css("background-position-x","left"))):a<=b?this.upBttn.addClass("lcg-scOff"):(this.downBttn.removeClass("lcg-scOff"),this.upBttn.removeClass("lcg-scOff"))};
d._base.prototype.hideScroll=function(){this.upBttn.hide();this.downBttn.hide()};d._base.prototype.autoHideScroll=function(){this.settings.scrollV?this.scrollable[0].scrollHeight<=this.scrollable[0].offsetHeight&&(this.hideScroll(),this.scrollable.animate({top:"-=20px",height:"+=36px"},500)):this.scrollable[0].scrollWidth<=this.scrollable[0].offsetWidth&&(this.hideScroll(),this.scrollable.animate({left:"-=18px",width:"+=36px"},500))};d._base.prototype._switchImg=function(a,b){var c=this;setTimeout(function(){c.gallery.vpEffect.showImg(a,
b)},250)};d._base.prototype._cycleImg=function(){};d._base.prototype.renderUI=function(){this.scrollable=$('<div class="lcg-scrollable"></div>').appendTo(this.pvContainer);this.imgContainer=$('<div class="lcg-pvContainer"></div>').appendTo(this.scrollable);this.gallery.settings.style.fullscreen&&this.imgContainer.css("margin","0 auto");this.upBttn=$('<div class="lcg-scUp"></div>').appendTo(this.pvContainer);this.downBttn=$('<div class="lcg-scDown"></div>').appendTo(this.pvContainer);if(isIE6){if("left"==
this.gallery.settings.preview.align||"right"==this.gallery.settings.preview.align)this.upBttn.width(this.settings.imgWidth+this.settings.imgMarginHorizontal+6),this.downBttn.width(this.settings.imgWidth+this.settings.imgMarginHorizontal+6);if("top"==this.gallery.settings.preview.align||"bottom"==this.gallery.settings.preview.align)this.upBttn.height(this.settings.imgHeight+this.settings.imgMarginVertical),this.downBttn.height(this.settings.imgHeight+this.settings.imgMarginVertical)}var a=this;this.upBttn.mousedown(function(b){a._scrollDir=
-1;a._scroll();b.preventDefault()}).mouseup(function(){a._scrollDir=0});this.downBttn.mousedown(function(b){a._scrollDir=1;a._scroll();b.preventDefault()}).mouseup(function(){a._scrollDir=0});this.imgBoxCss={width:this.settings.imgWidth,height:this.settings.imgHeight};for(var b=0;b<this.imgData.length;b++)if(this.imgData[b]._img=new e(this.imgData[b].thumb||this.imgData[b].src,$('<img src="'+this.gallery.loadingImg+'"/>')),this.imgData[b]._imgWrapper=$("<div></div>").attr("title",this.imgData[b].desc||
null).addClass("lcg-pvImgBox").data("imgIndex",b).width(this.settings.imgWidth+6).height(this.settings.imgHeight+6).append(this.imgData[b]._img.imgHolder).appendTo(this.imgContainer).click(function(){var b=a.lastClickIndex||0,d=$(this).data("imgIndex"),e=1;d<b&&(e=-1);d==b&&(e=1);a.lastClickIndex=d;a.settings.scrollV?a.scrollPx.call(a,(a.settings.imgHeight+a.settings.imgMarginVertical)*e):a.scrollPx.call(a,(a.settings.imgWidth+a.settings.imgMarginHorizontal)*e)}),isIE6&&(this.imgData[b]._imgWrapper.css("border",
"").css("padding","3px").css("margin","3px"),this.imgData[b]._imgWrapper.hover(function(){$(this).css("border","3px #333333 solid").css("padding","0px")},function(){$(this).css("border","").css("padding","3px").css("margin","3px")})),this.imgData[b]._imgWrapper.click(function(){a._switchImg.call(a,$(this).data("imgIndex"),a.gallery.settings.viewport.effect.oncomplete)}),this.imgBoxCss&&this.imgData[b]._imgWrapper.css(this.imgBoxCss),this.imgData[b]._img["set"+this.settings.clipType+"To"])this.imgData[b]._img["set"+
this.settings.clipType+"To"](this.settings.imgWidth,this.settings.imgHeight);else this.imgData[b]._img.setfillTo(this.settings.imgWidth,this.settings.imgHeight);this.imgContainer.find("div[title]").tooltip({position:this.settings.tooltip.position,tipClass:"lcg-pvTooltip",offset:this.settings.tooltip.offset});!this.settings.scrollV&&this.imgData.length&&this.imgContainer.css("width",(this.imgData[0]._imgWrapper.width()+(i(this.imgData[0]._imgWrapper)+j(this.imgData[0]._imgWrapper)))*this.imgData.length)};
d.Basic=function(a,b){this.pvContainer=a.preview;this.gallery=a;this.settings=b;this.imgData=b.images};d.Basic.prototype=new d._base;d.Basic.prototype.init=function(){this.renderUI();var a=this;setTimeout(function(){a.autoHideScroll.apply(a)},500)};e.prototype._onloadHandler=function(){this.isReady=!0;var a=this;this.imgHolder.attr("src","");this.imgHolder.attr("src",this.image.src);this.imgHolder.css("opacity",0.01);this.imgHolder.animate({opacity:1},500);this.imgHolder[0].complete?this._init.call(this):
this.imgHolder[0].onload=function(){a._init.call(a)}};e.prototype._init=function(){if(this.imgHolder[0].complete)this._onShowHandler();else{var a=this;this.imgHolder[0].onload=function(){a._onShowHandler.apply(a)}}};e.prototype._onShowHandler=function(){this.fitTo?this._fitTo(this.fitTo.width,this.fitTo.height):this.fillTo&&this._fillTo(this.fillTo.width,this.fillTo.height);this.setToCenter()};e.prototype.setToCenter=function(){if(!this.imgHolder.width()||!this.imgHolder.height()){var a=this;setTimeout(function(){a.setToCenter.call(a)},
100)}else this.imgHolder.css("marginLeft",this.imgHolder.width()/-2).css("marginTop",this.imgHolder.height()/-2)};e.prototype.setfitTo=function(a,b){this.fitTo={width:a,height:b};this.fillTo=null;this.isReady&&this._fitTo(a,b)};e.prototype._fitTo=function(a,b){b||(b=a);this.scale(Math.max(this.image.width/a,this.image.height/b),!0)};e.prototype.setfillTo=function(a,b){this.fillTo={width:a,height:b};this.fitTo=null;this.isReady&&this._fillTo(a,b)};e.prototype._fillTo=function(a,b){b||(b=a);this.scale(Math.min(this.image.width/
a,this.image.height/b),!0)};e.prototype.scale=function(a,b){b&&1>=a||this.imgHolder.css({width:this.image.width/a,height:this.image.height/a})};var i=function(a){return(parseInt(a.css("padding-left"),10)||0)+(parseInt(a.css("margin-left"),10)||0)+(parseInt(a.css("borderLeftWidth"),10)||0)},j=function(a){return(parseInt(a.css("padding-right"),10)||0)+(parseInt(a.css("margin-right"),10)||0)+(parseInt(a.css("borderRightWidth"),10)||0)},l=function(a){return(parseInt(a.css("paddingBottom"),10)||0)+(parseInt(a.css("marginBottom"),
10)||0)+(parseInt(a.css("borderBottomWidth"),10)||0)},k=function(a){return(parseInt(a.css("paddingTop"),10)||0)+(parseInt(a.css("marginTop"),10)||0)+(parseInt(a.css("borderTopWidth"),10)||0)}})();function de(e){"undefined"!=typeof console&&console.info(e)};

