/*
	Smooth Zoom Pan - jQuery Image Viewer
 	Copyright (c) 2011 Ramesh Kumar
	http://codecanyon.net/user/VF
	
	Version: 1.1 
	19 OCT 2011
	
	Built using:
	jQuery 		version:1.6.2	http://jquery.com/
	Modernizr 	version:2.0.6	http://www.modernizr.com/
	MouseWheel	version:3.0.2	http://brandonaaron.net/code/mousewheel/docs
	
*/

(function(a){function b(b,d){var e=a.extend({},{width:"",height:"",initial_ZOOM:"",initial_POSITION:"",animation_SMOOTHNESS:5.5,animation_SPEED:5.5,zoom_MAX:800,zoom_MIN:"",zoom_OUT_TO_FIT:"YES",zoom_BUTTONS_SHOW:"YES",pan_BUTTONS_SHOW:"YES",pan_LIMIT_BOUNDARY:"YES",button_SIZE:18,button_COLOR:"#FFFFFF",button_BG_COLOR:"#000000",button_BG_TRANSPARENCY:55,button_ICON_IMAGE:"zoom_assets/icons.png",button_AUTO_HIDE:"NO",button_AUTO_HIDE_DELAY:1,button_ALIGN:"bottom right",button_MARGIN:10,button_ROUND_CORNERS:"YES",mouse_DRAG:"YES",mouse_WHEEL:"YES",mouse_WHEEL_CURSOR_POS:"YES",mouse_DOUBLE_CLICK:"YES",background_COLOR:"#FFFFFF",border_SIZE:1,border_COLOR:"#000000",border_TRANSPARENCY:10,container:"",max_WIDTH:"",max_HEIGHT:"",full_BROWSER_SIZE:"NO",full_BROWSER_HEIGHT_OFF:0},d),f=e.width,g=e.height,h=e.max_WIDTH,i=e.max_HEIGHT,j=e.initial_ZOOM/100,k=e.initial_POSITION.split(" "),l=e.zoom_MAX/100,m=e.zoom_MIN/100,n=e.zoom_OUT_TO_FIT?e.zoom_OUT_TO_FIT===!0?!0:e.zoom_OUT_TO_FIT.toLowerCase()=="yes"||e.zoom_OUT_TO_FIT.toLowerCase()=="true"?!0:!1:!1,o=1+(e.animation_SPEED+1)/20,p=e.zoom_BUTTONS_SHOW?e.zoom_BUTTONS_SHOW===!0?!0:e.zoom_BUTTONS_SHOW.toLowerCase()=="yes"||e.zoom_BUTTONS_SHOW.toLowerCase()=="true"?!0:!1:!1,q=e.animation_SPEED,r=e.pan_BUTTONS_SHOW?e.pan_BUTTONS_SHOW===!0?!0:e.pan_BUTTONS_SHOW.toLowerCase()=="yes"||e.pan_BUTTONS_SHOW.toLowerCase()=="true"?!0:!1:!1,s=e.pan_LIMIT_BOUNDARY?e.pan_LIMIT_BOUNDARY===!0?!0:e.pan_LIMIT_BOUNDARY.toLowerCase()=="yes"||e.pan_LIMIT_BOUNDARY.toLowerCase()=="true"?!0:!1:!1,t=parseInt(e.button_SIZE/2)*2,u=e.button_COLOR,v=e.button_BG_COLOR,w=e.button_BG_TRANSPARENCY/100,x=e.button_ICON_IMAGE,y=e.button_AUTO_HIDE?e.button_AUTO_HIDE===!0?!0:e.button_AUTO_HIDE.toLowerCase()=="yes"||e.button_AUTO_HIDE.toLowerCase()=="true"?!0:!1:!1,z=e.button_AUTO_HIDE_DELAY*1e3,A=e.button_ALIGN.toLowerCase().split(" "),B=e.button_MARGIN,C=e.button_ROUND_CORNERS?e.button_ROUND_CORNERS===!0?!0:e.button_ROUND_CORNERS.toLowerCase()=="yes"||e.button_ROUND_CORNERS.toLowerCase()=="true"?!0:!1:!1,D=e.mouse_DRAG?e.mouse_DRAG===!0?!0:e.mouse_DRAG.toLowerCase()=="yes"||e.mouse_DRAG.toLowerCase()=="true"?!0:!1:!1,E=e.mouse_WHEEL?e.mouse_WHEEL===!0?!0:e.mouse_WHEEL.toLowerCase()=="yes"||e.mouse_WHEEL.toLowerCase()=="true"?!0:!1:!1,F=e.mouse_WHEEL_CURSOR_POS?e.mouse_WHEEL_CURSOR_POS===!0?!0:e.mouse_WHEEL_CURSOR_POS.toLowerCase()=="yes"||e.mouse_WHEEL_CURSOR_POS.toLowerCase()=="true"?!0:!1:!1,G=e.mouse_DOUBLE_CLICK?e.mouse_DOUBLE_CLICK===!0?!0:e.mouse_DOUBLE_CLICK.toLowerCase()=="yes"||e.mouse_DOUBLE_CLICK.toLowerCase()=="true"?!0:!1:!1,H=Math.max(1.5,e.animation_SMOOTHNESS-1),I=e.background_COLOR,J=e.border_SIZE,K=e.border_COLOR,L=e.border_TRANSPARENCY/100,M=e.full_BROWSER_SIZE?e.full_BROWSER_SIZE===!0?!0:e.full_BROWSER_SIZE.toLowerCase()=="yes"||e.full_BROWSER_SIZE.toLowerCase()=="true"?!0:!1:!1,N=e.full_BROWSER_HEIGHT_OFF,O=1,P=1,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_,ba,bb,bc,bd=0,be=0,bf=0,bg=0,bh=0,bi=0,bj=0,bk=!1,bl=!1,bm=.5,bn=0,bo=0,bp=0,bq=0,br=!1,bs=!1,bt=!1,bu=!1,bv=!1,bw=!1,bx=!1,by="zoomOut",bz={_zi:!1,_zo:!1,_ml:!1,_mr:!1,_mu:!1,_md:!1,_rs:!1,_nd:!1},bA,bB,bC,bD=[],bE,bF=0,bG,bH,bI,bJ,bK,bL,bM,bN,bO=[],bP,bQ,bR=1,bS=b.attr("id"),bT=function(){bM=bV(b),b.attr("galleryimg","no"),bA=e.container==""?b.wrap("<div></div>").parent():a("#"+e.container),bB=a("<div></div>").appendTo(bA).css({position:"absolute","z-index":1,top:"0px",left:"0px",width:"100%",height:"100%"}),M?(a("html").css("height","100%"),a("body").css({height:"100%",margin:"0px"}),f=a("body").innerWidth(),g=a("body").innerHeight()-N,h!==0&&h!==""&&(f=Math.min(h,f)),i!==0&&i!==""&&(g=Math.min(i,g)),a(window).bind("resize.smoothZoom"+bS,ch)):(f===""||f===0?(f=Math.max(bA.parent().width(),100),h!==0&&h!==""&&(f=Math.min(f,h))):!isNaN(f)||String(f).indexOf("px")>-1?(f=parseInt(f),h!==0&&h!==""&&(f=Math.min(f,h))):String(f).indexOf("%")>-1?(f=bA.parent().width()*(f.split("%")[0]/100),h!==0&&h!==""&&(f=Math.min(f,h))):f=100,g===""||g===0?(g=Math.max(bA.parent().height(),100),i!==0&&i!==""&&(g=Math.min(g,i))):!isNaN(g)||String(g).indexOf("px")>-1?(g=parseInt(g),i!==0&&i!==""&&(g=Math.min(g,i))):String(g).indexOf("%")>-1?(g=bA.parent().height()*(g.split("%")[0]/100),i!==0&&i!==""&&(g=Math.min(g,i))):g=100),bA.css({"-moz-user-select":"none","-khtml-user-select":"none","-webkit-user-select":"none","user-select":"none",width:f+"px",height:g+"px",position:"relative",overflow:"hidden","text-align":"left","background-color":e.background_COLOR}).addClass("noSel");if(J>0){var d=[];d[0]=a("<div></div>").appendTo(bA).css({position:"absolute",width:J+"px",height:g+"px",top:"0px",left:"0px","z-index":3,"background-color":K,opacity:L}),d[1]=a("<div></div>").appendTo(bA).css({position:"absolute",width:J+"px",height:g+"px",top:"0px",left:f-J+"px","z-index":4,"background-color":K,opacity:L}),d[2]=a("<div>&nbsp;</div>").appendTo(bA).css({position:"absolute",width:f-J*2+"px",height:J+"px",top:"0px",left:J+"px","z-index":5,"background-color":K,opacity:L,"line-height":"1px"}),d[3]=a("<div>&nbsp;</div>").appendTo(bA).css({position:"absolute",width:f-J*2+"px",height:J+"px",top:g-J+"px",left:J+"px","z-index":6,"background-color":K,opacity:L,"line-height":"1px"})}b.attr("usemap")!=undefined&&(bP=a("map[name='"+b.attr("usemap").split("#").join("")+"']").children("area"),bP.each(function(){a(this).css("cursor","pointer"),bO.push(a(this).attr("coords").split(","))})),bN=new c(bA),bQ=new Image,bQ.src=x,bQ.complete?(br=!0,bs?bU():""):a(bQ).bind("load.smoothZoom onreadystatechange.smoothZoom",function(){br=!0,bs?bU():""}),b.hide(),b.one("load",function(){bs=!0,br?bU():""}).each(function(){this.complete&&a(this).trigger("load")})},bU=function(){bM=bV(b),b.removeAttr("width"),b.removeAttr("height"),Q=b.width(),R=b.height(),bW(),m==0||j!=0?P=bd=j!=""?j:O:P=bd=O=m,bb=bd*Q,bc=bd*R,k==""?(_=S=(f-bb)/2,ba=T=(g-bc)/2):(_=S=f/2-parseInt(k[0])*bd,ba=T=g/2-parseInt(k[1])*bd,U=(S-(f-bb)/2)/(bb/f),V=(T-(g-bc)/2)/(bc/g)),bI=Math.max(1,(f+g)/500)-1+q*q/4+2;if(!s||bw||j!=O)b.css("cursor","move"),bB.css("cursor","move");b.css({position:"relative","z-index":2,left:"0px",top:"0px"}).hide().fadeIn(500,function(){bN.destroy(),bN=null}),bX(),ci()},bV=function(a){return{prop_origin:[prop_origin,prop_origin!==!1&&prop_origin!==undefined?a.css(prop_origin):null],prop_transform:[prop_transform,prop_transform!==!1&&prop_transform!==undefined?a.css(prop_transform):null],position:["position",a.css("position")],"z-index":["z-index",a.css("z-index")],cursor:["cursor",a.css("cursor")],left:["left",a.css("left")],top:["top",a.css("top")],width:["width",a.css("width")],height:["height",a.css("height")]}},bW=function(){Q==f&&R==g?O=1:Q<f&&R<g?(O=f/Q,n?O*R>g&&(O=g/R):(O*R<g&&(O=g/R),f/Q!==g/R&&(bw=!0,b.css("cursor","move"),bB.css("cursor","move")))):(O=f/Q,n?O*R>g&&(O=g/R):(O*R<g&&(O=g/R),f/Q!==g/R&&(bw=!0,b.css("cursor","move"),bB.css("cursor","move"))))},bX=function(){var b=50,c=2,d=3,e=Math.ceil(t/4),h=t<16?50:0;r?(p?bG=parseInt(t+t*.85+(t-c)*3+d*2+e*2):bG=parseInt((t-c)*3+d*2+e*2),bH=parseInt((t-c)*3+d*2+e*2)):p?(bG=parseInt(t+e*2),bH=parseInt(t*2+e*3),bG=parseInt(bG/2)*2,bH=parseInt(bH/2)*2):(bG=0,bH=0);var i=(b-t)/2,j={x:bG-(t-(r?c:0))*2-e-d,y:bH/2-(t-(r?c:0))/2};bC=a("<div></div>").appendTo(bA).css({position:"absolute",width:bG+"px",height:bH+"px","z-index":7}).addClass("noSel"),A[0]=="top"?bC.css("top",B+"px"):A[0]=="center"?bC.css("top",parseInt((g-bH)/2)+"px"):bC.css("bottom",B+"px"),A[1]=="right"?bC.css("right",B+"px"):A[1]=="center"?bC.css("left",parseInt((f-bG)/2)+"px"):bC.css("left",B+"px");var k=a('<div id="controlsBg"></div>').appendTo(bC).css({position:"relative",width:"100%",height:"100%",opacity:w,"z-index":1}).addClass("noSel");use_bordRadius||!use_pngTrans||!C?(k.css({opacity:w,"background-color":v}),use_bordRadius&&C&&k.css({"-moz-border-radius":(h>0?4:5)+"px","-webkit-border-radius":(h>0?4:5)+"px","border-radius":(h>0?4:5)+"px","-khtml-border-radius":(h>0?4:5)+"px"})):cj(k,"cBg",bG,bH,h>0?4:5,375,v,x,1,h?50:0),bD[0]={_var:"_zi",l:e,t:r?(bH-t*2-d*2+2)/2:e,w:t,h:t,bx:-i,by:-i-h},bD[1]={_var:"_zo",l:e,t:r?(bH-t*2-d*2+2)/2+t+d*2-2:bH-t-e,w:t,h:t,bx:-b-i,by:-i-h},bD[2]={_var:"_mr",l:j.x-(t-c)-d,t:j.y,w:t-c,h:t-c,bx:-(c/2)-b*2-i,by:-(c/2)-i-h},bD[3]={_var:"_ml",l:j.x+(t-c)+d,t:j.y,w:t-c,h:t-c,bx:-(c/2)-b*3-i,by:-(c/2)-i-h},bD[4]={_var:"_mu",l:j.x,t:j.y+(t-c)+d,w:t-c,h:t-c,bx:-(c/2)-b*4-i,by:-(c/2)-i-h},bD[5]={_var:"_md",l:j.x,t:j.y-(t-c)-d,w:t-c,h:t-c,bx:-(c/2)-b*5-i,by:-(c/2)-i-h},bD[6]={_var:"_rs",l:j.x,t:j.y,w:t-c,h:t-c,bx:-(c/2)-b*6-i,by:-(c/2)-i-h},bE=bD.length;for(var m=0;m<bE;m++){bD[m].$ob=a("<div></div>").appendTo(a(bC)).css({display:m<2?p?"inherit":"none":r?"inherit":"none",position:"absolute",left:bD[m].l-1+"px",top:bD[m].t-1+"px",width:bD[m].w+2+"px",height:bD[m].h+2+"px",opacity:.7,"z-index":m+1}).addClass("noSel").bind("mouseover.smoothZoom",bY).bind("mouseout.smoothZoom",bZ).bind("mousedown.smoothZoom touchstart.smoothZoom",{id:m},b$).bind("mouseup.smoothZoom",{id:m},b_);var n=a("<div></div>").appendTo(bD[m].$ob).attr("id",bD[m]._var+"norm").css({position:"absolute",left:1,top:1,width:bD[m].w+"px",height:bD[m].h+"px"}),o=a("<div></div>").appendTo(bD[m].$ob).attr("id",bD[m]._var+"over").css({position:"absolute",left:"0px",top:"0px",width:bD[m].w+2+"px",height:bD[m].h+2+"px"}).hide();use_bordRadius||!use_pngTrans||!C?(n.css("background",u),o.css("background",u),use_bordRadius&&C&&(n.css({"-moz-border-radius":"2px","-webkit-border-radius":"2px","border-radius":"2px","-khtml-border-radius":"2px"}),o.css({"-moz-border-radius":"2px","-webkit-border-radius":"2px","border-radius":"2px","-khtml-border-radius":"2px"}))):(cj(n,bD[m]._var+"norm",bD[m].w,bD[m].h,2,425,u,x,m+1,h?50:0),cj(o,bD[m]._var+"over",bD[m].w+2,bD[m].h+2,2,425,u,x,m+1,h?50:0));var q=a('<div id="'+bD[m]._var+'_icon"></div>').appendTo(bD[m].$ob);a(q).css({position:"absolute",left:1,top:1,width:bD[m].w+"px",height:bD[m].h+"px",background:"transparent url("+x+") "+bD[m].bx+"px "+bD[m].by+"px no-repeat"})}a(document).bind("mouseup.smoothZoom"+bS+" touchend.smoothZoom"+bS,cc),D&&(bA.bind("mousedown.smoothZoom touchstart.smoothZoom",ca),bA.bind("touchmove.smoothZoom",cb),bA.bind("touchend.smoothZoom",cc)),G&&bA.bind("dblclick.smoothZoom",function(b){bg=b.pageX-bA.offset().left-f/2,bh=b.pageY-bA.offset().top-g/2,ck(!0,!0),bx=!1,P<l&&bR==-1&&bi!=bg&&bj!=bh&&(bR=1),bi=bg,bj=bh,P>=l&&bR==1&&(bR=-1),P<=O&&bR==-1&&(bR=1),bR>0?(P*=2,P>l?P=l:"",bz._zi=!0,clearTimeout(bK),ci(),bz._zi=!1):(P/=2,P<O?P=O:"",bz._zo=!0,clearTimeout(bK),ci(),bz._zo=!1),b.stopPropagation(),a.browser.msie||b.preventDefault()}),E&&bA.bind("mousewheel.smoothZoom",cd),y&&bA.bind("mouseleave.smoothZoom",ce),bC.bind("mousedown.smoothZoom",function(b){b.stopPropagation(),a.browser.msie||b.preventDefault()}),G&&bC.bind("dblclick.smoothZoom",function(b){b.stopPropagation(),a.browser.msie||b.preventDefault()}),a(".noSel").each(function(){this.onselectstart=function(){return!1}})},bY=function(b){a(this).css("opacity")>.5&&a(this).css({opacity:1})},bZ=function(b){a(this).css("opacity")>.5&&a(this).css({opacity:.7})},b$=function(b){bF=b.data.id,bk=!0,bx=!1,a(this).css("opacity")>.5&&(bA.find("#"+bD[bF]._var+"norm").hide(),bA.find("#"+bD[bF]._var+"over").show(),bF!=6?bz[bD[bF]._var]=!0:(bz._rs=!0,P=O,W=0,X=0),bg=bh=0,ck(!0,!0),bR=1,bt?"":ci()),b.stopPropagation()},b_=function(b){bk||(bF=b.data.id,a(this).css("opacity")>.5&&(bF!=6?bz[bD[bF]._var]=!0:(bz._rs=!0,P=O,W=0,X=0),bg=bh=0,ck(!0,!0),clearTimeout(bK),ci(),bF!=6&&(bz[bD[bF]._var]=!1)))},ca=function(c){c.type=="mousedown"?(bz._nd&&by!="zoomOut"&&(b.css("-moz-transform")&&use_trans2D&&cf(),bn=c.pageX-bA.offset().left-b.position().left,bo=c.pageY-bA.offset().top-b.position().top,bl=!0,a(document).bind("mousemove.smoothZoom"+bS,cb)),c.stopPropagation(),a.browser.msie||c.preventDefault()):(bz._nd&&by!="zoomOut"&&(b.css("-moz-transform")&&cf(),bn=c.originalEvent.changedTouches[0].pageX-bA.offset().left-b.position().left,bo=c.originalEvent.changedTouches[0].pageY-bA.offset().top-b.position().top,bl=!0),c.preventDefault())},cb=function(a){if(a.type=="mousemove")return cg(a.pageX-bA.offset().left-bn,a.pageY-bA.offset().top-bo,bd),by="drag",bu=!0,bt?"":ci(),!1;a.preventDefault(),cg(a.originalEvent.changedTouches[0].pageX-bA.offset().left-bn,a.originalEvent.changedTouches[0].pageY-bA.offset().top-bo,bd),by="drag",bu=!0,bt?"":ci()},cc=function(b){bk?(bA.find("#"+bD[bF]._var+"norm").show(),bA.find("#"+bD[bF]._var+"over").hide(),bF!==6&&(bz[bD[bF]._var]=!1),bk=!1,b.stopPropagation()):bl&&D&&(b.type=="mouseup"?(a(document).unbind("mousemove.smoothZoom"+bS),by="drag",bu=!1,bt?"":ci(),bl=!1):(b.preventDefault(),by="drag",bu=!1,bt?"":ci(),bl=!1))};FF2&&a(document).bind("mousemove.smoothZoom"+bS+".mmff2",function(a){bp=a.pageX,bq=a.pageY});var cd=function(a,b){return F&&(FF2?(bg=bp-bA.offset().left-f/2,bh=bq-bA.offset().top-g/2):(bg=a.pageX-bA.offset().left-f/2,bh=a.pageY-bA.offset().top-g/2),ck(!0,!0)),bx=!0,bu=!1,b>0?P!=l&&(P*=b<1?1+.3*b:1.3,P>l?P=l:"",bz._zi=!0,clearTimeout(bK),ci(),bz._zi=!1):P!=O&&(P/=b>-1?1+.3*-b:1.3,P<O?P=O:"",bz._zo=!0,clearTimeout(bK),ci(),bz._zo=!1),!1},ce=function(a){clearTimeout(bJ),bJ=setTimeout(function(){bC.fadeOut(600)},z),bA.bind("mouseenter.smoothZoom",function(a){clearTimeout(bJ),bC.fadeIn(300)})},cf=function(){var a=b.css("-moz-transform").toString().replace(")","").split(",");be=parseInt(a[4]),bf=parseInt(a[5])},cg=function(a,b,c){a!==""&&(Y=a+be,s?(Y=Y+c*Q<f?f-c*Q:Y,Y=Y>0?0:Y,c*Q<f&&(Y=(f-c*Q)/2)):(Y=Y+c*Q<f/2?f/2-c*Q:Y,Y=Y>f/2?f/2:Y)),b!==""&&(Z=b+bf,s?(Z=Z+c*R<g?g-c*R:Z,Z=Z>0?0:Z,c*R<g&&(Z=(g-c*R)/2)):(Z=Z+c*R<g/2?g/2-c*R:Z,Z=Z>g/2?g/2:Z))},ch=function(){f=a("body").innerWidth(),g=a("body").innerHeight()-N,h!==0&&h!==""&&(f=Math.min(f,h)),i!==0&&i!==""&&(g=Math.min(g,i)),bA.css({width:f+"px",height:g+"px"}),J>0&&(border[0].css({height:g+"px"}),border[1].css({height:g+"px",left:f-J+"px"}),border[2].css({width:f-J*2+"px"}),border[3].css({width:f-J*2+"px",top:g-J+"px"})),bW(),A[1]=="center"&&bC.css("left",parseInt((f-bG)/2)+"px"),A[0]=="center"&&bC.css("top",parseInt((g-bH)/2)+"px"),bI=Math.max(1,(f+g)/500)-1+q*q/4+2,bt?"":ci()},ci=function(){bz._nd=!0,bL=!1,bz._zi&&(bx||(P*=o),P>l?P=l:"",bz._nd=!1,bz._rs=!1,by="zoomIn"),bz._zo&&(bx||(P/=o),P<O?P=O:"",bz._nd=!1,bz._rs=!1,by="zoomOut"),bz._ml&&(U-=bI,bz._nd=!1,bz._rs=!1,by="left"),bz._mr&&(U+=bI,bz._nd=!1,bz._rs=!1,by="right"),bz._mu&&(V-=bI,bz._nd=!1,bz._rs=!1,by="up"),bz._md&&(V+=bI,bz._nd=!1,bz._rs=!1,by="down"),bz._rs&&(U+=(W-U)/8,V+=(X-V)/8,bz._nd=!1,by="reset"),bd+=(P-bd)/H,bb=bd*Q,bc=bd*R,bu&&(S=Y,T=Z,ck(!0,!0)),by=="zoomIn"?bb>P*Q-bm&&(bz._nd?bL=!0:"",bd=P,bb=bd*Q,bc=bd*R):by=="zoomOut"&&bb<P*Q+bm&&(bz._nd?bL=!0:"",bd=P,bb=bd*Q,bc=bd*R),limitX=(bb-f)/(bb/f)/2,limitY=(bc-g)/(bc/g)/2,bu||(s?(U<-limitX-bg?U=-limitX-bg:"",U>limitX-bg?U=limitX-bg:"",bb<f&&(S=(f-bb)/2,ck(!0,!1)),V<-limitY-bh?V=-limitY-bh:"",V>limitY-bh?V=limitY-bh:"",bc<g&&(T=(g-bc)/2,ck(!1,!0))):(U<-limitX-bg-f/(bb/f*2)?U=-limitX-bg-f/(bb/f*2):"",U>limitX-bg+f/(bb/f*2)?U=limitX-bg+f/(bb/f*2):"",V<-limitY-bh-g/(bc/g*2)?V=-limitY-bh-g/(bc/g*2):"",V>limitY-bh+g/(bc/g*2)?V=limitY-bh+g/(bc/g*2):"")),!bu&&by!="drag"&&(S=(f-bb)/2+bg+U*(bb/f),T=(g-bc)/2+bh+V*(bc/g)),by=="zoomIn"||by=="zoomOut"||bz._rs?(_=S,ba=T):(_+=(S-_)/H,ba+=(T-ba)/H),by=="left"?_<S+bm&&(bz._nd?bL=!0:"",by="",_=S):by=="right"?_>S-bm&&(bz._nd?bL=!0:"",by="",_=S):by=="up"?ba<T+bm&&(bz._nd?bL=!0:"",by="",ba=T):by=="down"?ba>T-bm&&(bz._nd?bL=!0:"",by="",ba=T):by=="drag"&&_+bm>=S&&_-bm<=S&&ba+bm>=T&&ba-bm<=T&&(bv&&(bu=!1),bz._nd?bL=!0:"",by="",_=S,ba=T),bz._rs&&bb+bm>=P*Q&&bb-bm<=P*Q&&_==S&&ba==T&&U<bm&&U>-bm&&V<bm&&V>-bm&&(bL=!0,by="",bz._rs=!1,bz._nd=!0,_=S,ba=T,bd=P,bb=bd*Q,bc=bd*R);if(P==O){if(bD[1].$ob.css("opacity")>.5&&P>=O){s&&D&&!bw&&(b.css("cursor","default"),bB.css("cursor","default"));for(var a=1;a<(s&&!bw?bE:2);a++)bD[a].$ob.css({opacity:.4}),bA.find("#"+bD[a]._var+"norm").show(),bA.find("#"+bD[a]._var+"over").hide()}}else if(bD[1].$ob.css("opacity")<.5){D&&(b.css("cursor","move"),bB.css("cursor","move"));for(var a=1;a<bE;a++)bD[a].$ob.css({opacity:.7})}P==l?bD[0].$ob.css("opacity")>.5&&(bD[0].$ob.css({opacity:.4}),bA.find("#"+bD[0]._var+"norm").show(),bA.find("#"+bD[0]._var+"over").hide()):bD[0].$ob.css("opacity")<.5&&bD[0].$ob.css({opacity:.7}),use_trans3D?(b.css(prop_origin,"left top"),b.css(prop_transform,"translate3d("+_+"px,"+ba+"px,0) scale("+bd+")")):use_trans2D?(b.css(prop_origin,"left top"),b.css(prop_transform,"translate("+_+"px,"+ba+"px) scale("+bd+")")):b.css({width:bb,height:bc,left:_+"px",top:ba+"px"}),!use_trans2D&&!use_trans3D&&(bO.length>0?cl():""),bL&&bt&&!bu&&by!="drag"?(bt=!1,by="",clearTimeout(bK)):(bt=!0,bK=setTimeout(ci,28))},cj=function(b,c,d,e,f,g,h,i,j,k){var l=25;a('<div class="bgi'+c+'" style="background-position:'+ -(g-f)+"px "+(-(l-f)-k)+'px"></div>').appendTo(b),a('<div class="bgh'+c+'"></div>').appendTo(b),a('<div class="bgi'+c+'" style="background-position:'+ -g+"px "+(-(l-f)-k)+"px; left:"+(d-f)+'px"></div>').appendTo(b),a('<div class="bgi'+c+'" style="background-position:'+ -(g-f)+"px "+(-l-k)+"px; top:"+(e-f)+'px"></div>').appendTo(b),a('<div class="bgh'+c+'" style = "top:'+(e-f)+"px; left:"+f+'px"></div>').appendTo(b),a('<div class="bgi'+c+'" style="background-position:'+ -g+"px "+(-l-k)+"px; top:"+(e-f)+"px; left:"+(d-f)+'px"></div>').appendTo(b),a('<div class="bgc'+c+'"></div>').appendTo(b),a(".bgi"+c).css({position:"absolute",width:f+"px",height:f+"px","background-image":"url("+i+")","background-repeat":"no-repeat","-ms-filter":"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)",filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)",zoom:1}),a(".bgh"+c).css({position:"absolute",width:d-f*2,height:f+"px","background-color":h,left:f}),a(".bgc"+c).css({position:"absolute",width:d,height:e-f*2,"background-color":h,top:f,left:0})},ck=function(a,b){a?U=(S-(f-bb)/2-bg)/(bb/f):"",b?V=(T-(g-bc)/2-bh)/(bc/g):""},cl=function(){var b=0;bP.each(function(){var c=[];for(var d=0;d<bO[b].length;d++)c[d]=bO[b][d]*bd;c=c.join(","),a(this).attr("coords",c),b++})},cm=function(){clearTimeout(bK),bt=!1,by=""};this.destroy=function(){if(bs&&br){cm();for(prop in bM)bM[prop][0]!==!1&&bM[prop][0]!==undefined&&(bM[prop][0]==="width"||bM[prop][0]==="height"?parseInt(bM[prop][1])!==0&&b.css(bM[prop][0],bM[prop][1]):b.css(bM[prop][0],bM[prop][1]));clearTimeout(bJ),a(document).unbind(".smoothZoom"+bS),a(window).unbind(".smoothZoom"+bS),bC=undefined}else b.show();b.unbind("load"),a(bQ).unbind("load.smoothZoom onreadystatechange.smoothZoom"),b.insertBefore(bA),bA!==undefined?bA.remove():"",b.removeData("smoothZoom"),bA=undefined,Buttons=undefined,e=undefined,b=undefined},this.focusTo=function(a){bs&&br&&(a.zoom===undefined||a.zoom===""||a.zoom==0?a.zoom=P:a.zoom/=100,bv=!0,a.zoom>P&&P!=l?(P=a.zoom,P>l?P=l:""):a.zoom<P&&P!=O&&(P=a.zoom,P<O?P=O:""),cg(a.x===undefined||a.x===""?"":-a.x*P+f/2,a.y===undefined||a.y===""?"":-a.y*P+g/2,P),by="drag",bu=!0,clearTimeout(bK),ci())},this.zoomIn=function(a){bD[0].$ob.trigger("mousedown.smoothZoom",{id:0})},this.zoomOut=function(a){bD[1].$ob.trigger("mousedown.smoothZoom",{id:1})},this.moveRight=function(a){bD[2].$ob.trigger("mousedown.smoothZoom",{id:2})},this.moveLeft=function(a){bD[3].$ob.trigger("mousedown.smoothZoom",{id:3})},this.moveUp=function(a){bD[4].$ob.trigger("mousedown.smoothZoom",{id:4})},this.moveDown=function(a){bD[5].$ob.trigger("mousedown.smoothZoom",{id:5})},this.Reset=function(a){bD[6].$ob.trigger("mousedown.smoothZoom",{id:6})},bT()}function c(b){var c=0,d=24,e="",f=a("<div></div>"),g=a("<div></div>");return f.appendTo(b).css({position:"absolute",width:d+"px",height:d+"px",top:"50%",left:"50%","z-index":1}),g.appendTo(f).css({position:"absolute",width:d+"px",height:d+"px",top:-d/2+"px",left:-d/2+"px",background:"url(zoom_assets/preloader.png)"}),e=setInterval(function(){c-=d,c<0?c=d*14:"",g.css({"background-position":c+"px 0px"})},36),this.destroy=function(){clearInterval(e),f.remove()},this}a.fn.smoothZoom=function(c){var d=arguments;return this.each(function(){var e=a(this),f=e.data("smoothZoom");f?f[c]&&f[c].apply(this,Array.prototype.slice.call(d,1)):(typeof c=="object"||!c)&&e.data("smoothZoom",new b(e,c))})}})(jQuery);

//...................................................................................................................
//Use Modernizr, to check browser capabilities and get browser specific property names

	/* Modernizr 2.0.6 (Custom Build) | MIT & BSD
	 * Contains: borderradius | csstransforms | csstransforms3d | touch | prefixed | teststyles | testprop | testallprops | hasevent | prefixes | domprefixes
	 */
	var Modernizr=function(a,b,c){function C(a,b){var c=a.charAt(0).toUpperCase()+a.substr(1),d=(a+" "+n.join(c+" ")+c).split(" ");return B(d,b)}function B(a,b){for(var d in a)if(j[a[d]]!==c)return b=="pfx"?a[d]:!0;return!1}function A(a,b){return!!~(""+a).indexOf(b)}function z(a,b){return typeof a===b}function y(a,b){return x(m.join(a+";")+(b||""))}function x(a){j.cssText=a}var d="2.0.6",e={},f=b.documentElement,g=b.head||b.getElementsByTagName("head")[0],h="modernizr",i=b.createElement(h),j=i.style,k,l=Object.prototype.toString,m=" -webkit- -moz- -o- -ms- -khtml- ".split(" "),n="Webkit Moz O ms Khtml".split(" "),o={},p={},q={},r=[],s=function(a,c,d,e){var g,i,j,k=b.createElement("div");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),k.appendChild(j);g=["&shy;","<style>",a,"</style>"].join(""),k.id=h,k.innerHTML+=g,f.appendChild(k),i=c(k,a),k.parentNode.removeChild(k);return!!i},t=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=z(e[d],"function"),z(e[d],c)||(e[d]=c),e.removeAttribute(d))),e=null;return f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),u,v={}.hasOwnProperty,w;!z(v,c)&&!z(v.call,c)?w=function(a,b){return v.call(a,b)}:w=function(a,b){return b in a&&z(a.constructor.prototype[b],c)};var D=function(c,d){var f=c.join(""),g=d.length;s(f,function(c,d){var f=b.styleSheets[b.styleSheets.length-1],h=f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"",i=c.childNodes,j={};while(g--)j[i[g].id]=i[g];e.touch="ontouchstart"in a||j.touch.offsetTop===9,e.csstransforms3d=j.csstransforms3d.offsetLeft===9},g,d)}([,["@media (",m.join("touch-enabled),("),h,")","{#touch{top:9px;position:absolute}}"].join(""),["@media (",m.join("transform-3d),("),h,")","{#csstransforms3d{left:9px;position:absolute}}"].join("")],[,"touch","csstransforms3d"]);o.touch=function(){return e.touch},o.borderradius=function(){return C("borderRadius")},o.csstransforms=function(){return!!B(["transformProperty","WebkitTransform","MozTransform","OTransform","msTransform"])},o.csstransforms3d=function(){var a=!!B(["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"]);a&&"webkitPerspective"in f.style&&(a=e.csstransforms3d);return a};for(var E in o)w(o,E)&&(u=E.toLowerCase(),e[u]=o[E](),r.push((e[u]?"":"no-")+u));x(""),i=k=null,e._version=d,e._prefixes=m,e._domPrefixes=n,e.hasEvent=t,e.testProp=function(a){return B([a])},e.testAllProps=C,e.testStyles=s,e.prefixed=function(a){return C(a,"pfx")};return e}(this,this.document);

//Old Browsers need special attention
var FF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9) ? true : false;
var IE6 = $.browser.msie && parseInt($.browser.version, 10) <=6 ? true : false;

var prop_transform = Modernizr.prefixed('transform');
var prop_origin = Modernizr.prefixed('transformOrigin');
var use_trans2D = Modernizr.csstransforms && prop_transform !== false && prop_origin !== false && !$.browser.mozilla ? true : false;
var use_trans3D = Modernizr.csstransforms3d && prop_transform !== false && prop_origin !== false ? true : false;
var use_bordRadius = $.browser.mozilla && FF2 ? false : Modernizr.borderradius;
var use_pngTrans = IE6 ? false : true;

//For mouse wheel support
	
	/* Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net)
	 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
	 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
	 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
	 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
	 *
	 * Version: 3.0.2
	 * 
	 * Requires: 1.2.2+
	 */
(function(c){var a=["DOMMouseScroll","mousewheel"];c.event.special.mousewheel={setup:function(){if(this.addEventListener){for(var d=a.length;d;){this.addEventListener(a[--d],b,false)}}else{this.onmousewheel=b}},teardown:function(){if(this.removeEventListener){for(var d=a.length;d;){this.removeEventListener(a[--d],b,false)}}else{this.onmousewheel=null}}};c.fn.extend({mousewheel:function(d){return d?this.bind("mousewheel",d):this.trigger("mousewheel")},unmousewheel:function(d){return this.unbind("mousewheel",d)}});function b(f){var d=[].slice.call(arguments,1),g=0,e=true;f=c.event.fix(f||window.event);f.type="mousewheel";if(f.wheelDelta){g=f.wheelDelta/120}if(f.detail){g=-f.detail/3}d.unshift(f,g);return c.event.handle.apply(this,d)}})(jQuery);
//...................................................................................................................


