var Map=new Class({Implements:[Events,Options],options:{css:null,zoom:0,scale:0,overview:0,hold:true,drag:true,click:true,flow:false,wheel:true,scaleLevel:null,contains:false,settings:{digi:16,add:10,plus:7,cha:36,center:{lat:34.957995,lng:107.050781,isDef:true}},imgPath:"http://i1.dpfile.com/s/img/gmap/",draggerIcon:"dragger",draggerText:"拖动此图标在地图上标注位置"},initialize:function(B,D,A){B=$(B);if(!B){return }this.setOptions(A);this.ele=B;if($type(D)!="array"){D=[D]}if(this.options.css){B.setStyles(this.options.css)}var C=this.getMap(B,this.options.hold);if(!C){return }if(this.options.zoom){C.addControl(this.options.zoom==1?new GLargeMapControl3D():this.options.zoom==2?new GSmallMapControl():new GSmallZoomControl3D())}if(this.options.scale){C.addControl(new GScaleControl(),(this.options.logo!=undefined&&!this.options.logo)?new GControlPosition(G_ANCHOR_BOTTOM_LEFT,new GSize(5,5)):null)}if(this.options.overview){C.addControl(new GOverviewMapControl())}if(!this.options.drag){C.disableDragging()}if(this.options.click){C.enableDoubleClickZoom()}if(this.options.flow){C.enableContinuousZoom()}if(this.options.wheel){C.enableScrollWheelZoom()}this.init(B,D,C)},init:function(C,D,B){if(!C){return }D=this.checkPOI(D,this.options.settings.center);var A=D[0];this.options.scaleLevel=A.isDef?4:(this.options.scaleLevel!=null?this.options.scaleLevel:15);B.setCenter(new GLatLng(A.lat,A.lng),this.options.scaleLevel);if(A.isCenter||A.isDef){D.shift()}if(D.length>0){this.initPoint=this.addPoint(C,D)}},checkPOI:function(G,E){if(!G){G=new Array(E)}if($type(G)!="array"){G=new Array(G)}var D=G.length;for(var C=0;C<D;C++){var F=G[C]||"";if(F.poi){var A=this.decode(F.poi);F.lat=A.lat;F.lng=A.lng;delete F.poi}if(!F.lat||!F.lng){if(E){for(var B in E){F[B]=E[B]}}else{G.splice(C,1);D--}}}if(E&&G.length<1){G=new Array(E)}return G},decode:function(C){var I=-1;var H=0;var B="";var J=C.length;var G=C.charCodeAt(J-1);C=C.substring(0,J-1);J--;for(var E=0;E<J;E++){var D=parseInt(C.charAt(E),this.options.settings.cha)-this.options.settings.add;if(D>=this.options.settings.add){D=D-this.options.settings.plus}B+=(D).toString(this.options.settings.cha);if(D>H){I=E;H=D}}var A=parseInt(B.substring(0,I),this.options.settings.digi);var F=parseInt(B.substring(I+1),this.options.settings.digi);var L=(A+F-parseInt(G))/2;var K=(F-L)/100000;L/=100000;return{lat:K,lng:L}},getMap:function(C,B){var A=C.retrieve("map");if(!A||!B){if(GBrowserIsCompatible==undefined||!GBrowserIsCompatible()){return }A=new GMap2(C);C.store("map",A)}return A},addPoint:function(H,F,C){var B=this.getMap(H,true);var A=null;if(this.options.contains){A=new GLatLngBounds()}var L=[];if(!B||F.length<1){return }if($type(F)!="array"){F=new Array(F)}for(var I=0;I<F.length;I++){var E=F[I],D=null,J;E=this.checkPOI(E,((J=($type(E.dFn)=="function"))?{lat:(B.getCenter().lat()),lng:(B.getCenter().lng())}:null))[0];if(J){D=this.options.imgPath+this.options.draggerIcon+".png"}if(E.ico){D=this.options.imgPath+E.ico+".png"}var K=E.GIcon?E.GIcon:new GIcon(G_DEFAULT_ICON,D);var M=new GLatLng(E.lat,E.lng);var G=new GMarker(M,{icon:K,draggable:J});B.addOverlay(G);if(this.options.contains){A.extend(M)}if(E.msg||J){(J)?E.msg={html:E.msg||this.options.draggerText,open:1}:E.msg={html:E.msg||"",open:E.open};G.bindInfoWindowHtml(E.msg.html);if(E.msg.open){G.openInfoWindowHtml(E.msg.html,C||{})}if(J){GEvent.addListener(G,"dragstart",function(){E.dsFn&&E.dsFn.call(this);G.closeInfoWindow()});GEvent.addListener(G,"dragend",E.dFn)}if(typeof E.overFn=="function"&&E.id){GEvent.addListener(G,"mouseover",E.overFn.bind(this,[B,G,E.msg.html,E.id]))}if(typeof E.outFn=="function"&&E.id){GEvent.addListener(G,"mouseout",E.outFn.bind(this,[B,G,E.msg.html,E.id]))}if(typeof E.poiCallback=="function"&&E.id){E.poiCallback(B,G,E.msg.html,E.id)}}L.push(G)}if(this.options.contains){B.setCenter(A.getCenter(),B.getBoundsZoomLevel(A))}return(L.length>1)?L:L[0]}});var SearchMap=new Class({Extends:Map,initialize:function(B,C,A){this.wraper=$("searchBody");this.mapResult=$("map_result");this.mapLock=$("map_lock").getElement("input");this.mapLoading=$("map_loading");this.mapBody=$("map_body");this.mapCanvas=$("map_canvas");this.sKeyword=$("s_keyword");this.sChannel=$("s_channel");this.sDistance=$("s_distance");this.sButton=$("s_button");this.imgPath="/s/img/gmap/";this.defaultKeyWord="请输入地标or路名";this.mapLockStatus=false;this.ajaxQueue=null;this.iconArray=["a","b","c","d","e","f","g","h","i","j"];this.cityName=page.data.cEnName;this.resize();this.buildUI();this.parent(B,C,A);this.bindEvents();this.dragSearch(1,1)},buildUI:function(){this.sKeyword.value=this.defaultKeyWord;this.mapLock.setProperty("checked","");this.toggleDis(false)},toggleDis:function(A){this.sDistance.setStyle("display",A?"":"none")},toggleLock:function(A){this.mapLock.setProperty("checked",A?"checked":"");this.mapLockStatus=A?true:false;this.toggleDis(A);if(!A){this.dragSearch(1,1)}},checkKeyWord:function(){var A=this.sKeyword.value.trim();if(A==""||A==this.defaultKeyWord){return false}else{return true}},resize:function(){var B=this.wraper,C=this.mapCanvas,A=this;var D=function(){var E=window.getSize(),F=A.mapResult.getElement(".dl");E.x<960?B.setStyle("width","960px"):B.setStyle("width","auto");E.y<600?C.setStyle("height","480px"):C.setStyle("height",E.y-120);if(F){E.y<600?F.setStyle("height","380px"):F.setStyle("height",E.y-220)}};window.addEvent("resize",D);D()},rendHTML:function(F){var E=F.sc,C=F.st,A=[],B=[],D=[];if(F&&E){D.push('<p class="map_count">当前有<strong>'+E+"</strong>个搜索结果</p>");if($type(F.sl)=="array"){A.push('<p class="dt">排序:<a href="#" class="'+(C==1?"on":"")+'" id="order_1">人气</a>'+(F.poi?'<a href="#" class="'+(C==2?"on":"")+'" id="order_2">距离</a>':"")+'<a href="#" class="'+(C==3?"on":"")+'" id="order_3">总体评价</a></p>');A.push('<div class="dl">');F.sl.each(function(H,G){A.push('<div id="Map_I_'+H.id+'"><ul class="s_item"><li class="s_item_title"><img class="mapMark" src="'+this.imgPath+(G+1)+'.gif" oSrc="'+this.imgPath+(G+1)+'.gif" /><a  class="BL" href="#">'+H.nm+'</a></li><li><span class="msstar'+H.pw+'"></span></li><li class="addr"><span>地址:&nbsp;</span><p>'+H.ad+"</p></li><li>"+(H.ds?'<span class="Right">'+H.ds+"米</span>":"")+"标签:&nbsp;"+H.tg+"</li></ul></div>")},this);A.push("</div>")}D.push(A.join(""));B.push('<div class="map_pager"><ul class="box"><li><a href="#" title="'+(F.pg>1?F.pg-1:1)+'" class="pageMovePre">上一页</a></li><li><strong>'+F.pg+"</strong>/<span>"+F.pc+'</span></li><li><a href="#" title="'+(F.pg<F.pc?F.pg+1:F.pc)+'" class="pageMoveNext">下一页</a></li></ul></div>');D.push(B.join(""));return D.join("")}else{return'<p class="map_count">当前没有搜索结果</p>'}},bindEvents:function(){var A=this,E=this.getMap(this.ele,this.options.hold);var F=function(G){var H=A.checkKeyWord();if(H){A.toggleLock(true);A.keywordSearch(G?G:1,1)}else{alert(A.defaultKeyWord)}};var B=function(){$clear(A.ajaxQueue);A.ajaxQueue=setTimeout(function(){if(!A.mapLockStatus){A.dragSearch(1,1)}},1000)};var C=function(){if(A.checkKeyWord()){A.toggleLock(true);A.keywordSearch(1,1)}else{A.toggleLock(false)}};var D=function(){F(2)};this.sKeyword.addEvent("focus",function(){if(this.value.trim()==A.defaultKeyWord){this.value=""}});this.sButton.addEvent("click",F);this.sChannel.addEvent("change",C);this.sDistance.addEvent("change",D);GEvent.addListener(E,"dragend",B);GEvent.addListener(E,"dblclick",B);this.mapLock.addEvent("click",function(){if($(this).getProperty("checked")){A.toggleLock(true)}else{A.toggleLock(false)}})},keywordSearch:function(J,H){var I=this.sKeyword.value,G=this.sChannel.value,D=this.sDistance.value,F=0,E=0,B=0,A=0,J=J,H=H,C={"do":"gsl",kw:I,gid:G,ds:D,st:J,pg:H,bx1:F,bx2:E,by1:B,by2:A};this.getSearchData(C);pageTracker._trackPageview("dp_searchmap_"+this.cityName+"_"+G+"_"+I)},dragSearch:function(K,I){var E=this.getMap(this.ele,this.options.hold).getBounds();var J="",H=this.sChannel.value,D="",G=E.getSouthWest().lng(),F=E.getNorthEast().lng(),B=E.getSouthWest().lat(),A=E.getNorthEast().lat(),K=K,I=I,C={"do":"gsl",kw:J,gid:H,ds:D,st:K,pg:I,bx1:G,bx2:F,by1:B,by2:A};this.getSearchData(C)},getSearchData:function(A){var B=this.getMap(this.ele,this.options.hold);new AjaxReq({url:"/map.v",data:A,method:"post",onRequest:function(){this.mapLoading.setStyle("visibility","visible")}.bind(this),onSuccess:function(H){this.mapLoading.setStyle("visibility","hidden");if(H&&H.code==200){var C,F,G,E,L=Browser.Engine.gecko;G=this.imgPath+"over.png";E=this.imgPath+"over.gif";F=new GIcon(G_DEFAULT_ICON);F.image=this.imgPath+"poi.png";F.iconSize=new GSize(35,35);F.iconAnchor=new GPoint(17,17);this.mapLockStatus?C=[{poi:H.poi,msg:A.kw,GIcon:F}]:C=[];var I=function(R,O,S,T){var N=$("Map_I_"+T);var Q=function(){var U=$(this);U.addClass("on");U.getElement(".s_item_title a").addEvent("click",function(){O.openInfoWindowHtml(S)});var V=U.getElement(".mapMark");V.setProperty("src",E);O.setImage(G)};var P=function(){var U=$(this);U.removeClass("on");U.getElement(".s_item_title a").removeEvents("click");var V=U.getElement(".mapMark");V.setProperty("src",V.getProperty("oSrc"));O.setImage(O.getIcon().image)};N.addEvent(L?"mouseover":"mouseenter",Q);N.addEvent(L?"mouseout":"mouseleave",P)};var D=function(O,N,P,Q){if(!N||!Q){return }N.setImage(G);$("Map_I_"+Q).fireEvent(L?"mouseover":"mouseenter")};var M=function(O,N,P,Q){if(!N||!Q){return }N.setImage(N.getIcon().image);$("Map_I_"+Q).fireEvent(L?"mouseout":"mouseleave")};if(H.sl){H.sl.each(function(O,N){C.push({poiCallback:I,overFn:D,outFn:M,id:O.id,poi:O.poi,ico:N+1,msg:'<div class="map_item"><h1><a href="/shop/'+O.id+'" class="BL">'+O.nm+'</a></h1><div class="map_item_cont"><a href="/upload/shop/'+O.id+'"><img src="'+O.pi+'" /></a><span class="msstar'+O.pw+'"></span><div class="addr"><span>地址:</span><div>'+O.ad+"</div></div>"+(O.ph?"<p>电话:"+O.ph+"</p>":"")+"<p>"+(O.rc=="0"?"":'<a class="BL" href="/shop/'+O.id+'#ur">'+O.rc+"封点评</a>")+(O.pc=="0"?"":'<a style="margin-left:15px" class="BL" href="/shop/'+O.id+'/photos">'+O.pc+"张图片</a>")+"</p></div></div>"})},this)}this.mapResult.empty().set("html",this.rendHTML(H));var J=this.mapResult.getElement(".dl"),K=window.getSize();if(J){K.y<600?J.setStyle("height","380px"):J.setStyle("height",K.y-220)}this.mapResult.getElements(".dt a").each(function(O){var N=this;O.addEvent("click",function(){N[N.mapLockStatus?"keywordSearch":"dragSearch"]($(this).getProperty("id").split("_")[1].toInt(),1)})},this);this.mapResult.getElements(".map_pager a").each(function(O){var N=this;O.addEvent("click",function(){N[N.mapLockStatus?"keywordSearch":"dragSearch"](H.st,$(this).getProperty("title").toInt())})},this);B.clearOverlays();this.mapLockStatus?this.init(this.ele,C,B):this.addPoint(this.ele,C)}}.bind(this),onError:function(){this.mapLoading.setStyle("visibility","hidden");alert("数据获取超时,请重试")}.bind(this)}).send()}});var LocMap=new Class({Implements:[Events,Options],options:{selectWrapEle:"locMapSel",setLocBtn:"locMapSet",mapWrapEle:"locMapCanvas",setOkBtn:"locMapOk",citySwitchEle:"locCitySwitch",icoPath:"/s/css/img/g.comm.png",onCallback:$empty},initialize:function(A){this.setOptions(A);this.status=0;this.liveList=[];this.livePoi="";this.liveCity=[];this.workList=[];this.workPoi="";this.workCity=[];this.headCity=[];this.selCity=null;this.getDefLoc()},getDefLoc:function(){new AjaxReq({url:"/location.v",method:"post",callType:"json",data:{"do":"getDefLoc"},onSuccess:function(A){if(A.code==200){this.status=1;this.setDefData(A.msg)}else{if(A.code==100){DP.authBox(A.msg)}else{alert("数据加载失败，请重试!")}}}.bind(this)}).send()},getRegion:function(A,C){var B;new AjaxReq({url:"/location.v",method:"post",callType:"json",async:false,data:{"do":"getRegion",a:A,b:C},onSuccess:function(D){if(D.code==200){B=D.msg.data}else{if(D.code==100){DP.authBox(D.msg)}else{alert("数据加载失败，请重试!")}}}.bind(this)}).send();return B},setLoc:function(C,A,D,B){new AjaxReq({url:"/location.v",method:"post",callType:"json",data:{"do":"setLoc",a:C,b:A,c:D,d:B},onSuccess:function(E){if(E.code==200){this.setDefData(E.msg,C);this.fireEvent("callback")}else{if(E.code==100){DP.authBox(E.msg)}else{alert("数据设置失败，请重试!")}}}.bind(this)}).send()},setDefData:function(B,A){if(B){switch(A){case 1:this.liveList=B.live_list||[];this.livePoi=B.live_poi||"";this.liveCity=B.live_city||[];break;case 2:this.workList=B.work_list||[];this.workPoi=B.work_poi||"";this.workCity=B.work_city||[];break;default:this.liveList=B.live_list||[];this.livePoi=B.live_poi||"";this.liveCity=B.live_city||[];this.workList=B.work_list||[];this.workPoi=B.work_poi||"";this.workCity=B.work_city||[];this.headCity=B.head_city||[]}}},getData:function(A){var B=[];switch(A){case 1:B.push(this.liveList);B.push(this.livePoi);B.push(this.liveCity);break;case 2:B.push(this.workList);B.push(this.workPoi);B.push(this.workCity);break}return B},getSelPoi:function(C){if(C&&C.length){var B=C[C.length-1],A;B.list.each(function(D){if(D.id==B.sid){A=D.poi}});return A}else{return""}},rendSelect:function(B){var A=[];if(B){B.each(function(E,C){var D=[];D.push('<select id="loc_'+C+'" style="margin-left:12px">');E.list.each(function(F){D.push('<option value="'+F.id+'" p="'+F.poi+'" '+(E.sid==F.id?"selected=selected":"")+">"+F.name+"</option>")});D.push("</select>");A.push(D.join(""))})}return A},rendMap:function(A,B){if(A){return new Map(A,[B],{zoom:1})}},moveMap:function(E){var D=this.mapCanvas,C=D.checkPOI({poi:E}),A=D.getMap(this.mapEle,true),B=new DPLatLng(C[0].lat,C[0].lng);A.DP_setCenter(B,D.options.scaleLevel)},bindSelEvent:function(D){var A=this,E=this.options;for(var C=0,B;C<D;C++){if((B=$("loc_"+C))&&C!=D-1){B.addEvent("change",function(){var I=$(this.options[this.selectedIndex]),F=I.value,J,H,G;J=A.getRegion(F,A.selCity[0]);H=A.rendSelect(J);A.selectCount=G=H.length;if($(E.selectWrapEle)){$(E.selectWrapEle).empty().set("html",H.join(""))}A.bindSelEvent(G);A.moveMap(A.getSelPoi(J))})}else{B.addEvent("change",function(){var G=$(this.options[this.selectedIndex]),F=G.value;A.moveMap(G.getProperty("p"))})}}},open:function(H){if(this.status){var O=this,B=this.options,E=[],C=this.getData(H),L=this.rendSelect(C[0]),J=L.length,N,M,A,D,P,F,K=[],G,I;this.selectCount=J;this.selCity=C[2];E.push('<div class="DialogTitle">选择经常活动的区域</div>');if(this.selCity[0]!==this.headCity[0]){E.push('<div id="'+B.citySwitchEle+'" style="line-height:25px;padding:5px 12px;margin:20px 20px 0;background:#ffffcb;color:#d37724;border:1px solid #d0cfbd;"><span class="Warning"></span>提醒： 您当前是在大众点评网'+this.headCity[1]+"站，是否需要切换到"+this.headCity[1]+'地图&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#" class="B" data="1">切换</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="#" class="B" data="0">不切换</a></div>')}E.push('<div class="DialogContent" style="line-height:21px;font-size:12px;padding:0 10px">');E.push('<div style="padding-top:10px"><span style="color:#FF0000;margin-right:5px">*</span>选择商区:<span id="'+B.selectWrapEle+'">'+L.join("")+"</span></div>");E.push('<p style="padding:10px 0 0 10px">精确位置:&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#CC0000">标注精确位置，能使匹配给您的内容更加准确。</span></p>');E.push('<p style="padding-left:73px" class="box"><span style="float:left;color:#999999;padding-right:10px">在地图上找到精确位置后，点击“标注位置”按钮标注</span><span id="'+B.setLocBtn+'" style="cursor:pointer;float:left;width:89px;height:21px;background:url('+B.icoPath+') 0 -1940px no-repeat"></span></p>');E.push("</div>");E.push('<div id="'+B.mapWrapEle+'" style="width:800px;height:400px;"></div>');E.push('<div class="DialogButtons">');E.push('<button type="button" id="'+B.setOkBtn+'">确定</button><button type="button" onclick="Mbox.close()">取消</button>');E.push("</div>");Mbox.open({type:"string",size:{x:800,y:(this.selCity[0]!==this.headCity[0]?640:590)},url:E.join("")});if(P=$(B.citySwitchEle)){P.getElements("a").addEvent("click",function(){var Q=$(this).getProperty("data").toInt();if(Q){O.selCity=O.headCity;if(O.selectCount){$("loc_0").fireEvent("change")}}if(Mbox){Mbox.win.setStyle("height","590px")}P.dispose()})}this.mapEle=M=$(B.mapWrapEle);if(C[1]){F={poi:C[1]}}else{F={poi:this.getSelPoi(C[0]),isCenter:true}}this.mapCanvas=N=this.rendMap(M,F);this.bindSelEvent(J);A=$(B.setLocBtn);A&&A.addEvent("click",function(){var S=N.getMap(M,true);var Q=function(){var T=this,U=T.DP_getLatLng();G=U.y;I=U.x};var R=function(V,T){var U;if(T){U=T.DP_getLatLng();G=U.y;I=U.x}};S.DP_clearOverlays(true);if(this.$markerEdit){this.$markerEdit.DP_closeInfoWindow()}this.$markerEdit=N.addPoint(M,{id:$random(1,1000),dFn:Q,poiCallback:R})});if(D=$(B.setOkBtn)){D.addEvent("click",function(){K.push(this.selCity[0]);for(var R=0,Q;R<this.selectCount;R++){if(Q=$("loc_"+R)){K.push(Q.value)}}this.setLoc(H,K.join(","),G,I)}.bind(this))}}else{alert("正在加载数据,请稍后")}}});var $Favorite=function(D,B,C){if($type(D)!="number"){return }var A="do=a&i="+D+"&t="+B;if(B!=1){$FavoriteOther(D,B,C);return }new AjaxReq({url:"/favorite.v",method:"get",data:A,onRequest:function(){Mbox.openLite('<p class="Doing">正在处理，请稍候....</p>',200,30)},onSuccess:function(M){Mbox.close();if(M&&M.code==100){var E=new Element("div").setStyles({margin:"10px 10px 30px 15px"});var F=M.msg.n,R=M.msg.t||[],O=M.msg.thirdConnectType,Q=M.msg.tt||[],T=[],G="dp_favTags",I="dp_favList";var N="<p>　　商户: "+F+"</p>";N+='<p>收藏标签: <input id="'+G+'" type="text" maxlength="100" style="width:280px" value="'+(M.msg.m?M.msg.m:"")+'" /></p>';N+='<div id="'+I+'"></div>';E.appendHTML(N);var L=new Element("div").setStyles({margin:"10px",textAlign:"center"});var H=new Element("button").setStyles({margin:"0 5px"}).set("html","提交").addEvent("click",function(){var U=$(G).get("value")||"";Mbox.close();$Favorite.submit(D,B,U,O)});L.adopt(H);if(M.msg.e){var S=new Element("button").setStyles({margin:"0 5px"}).set("html","删除").addEvent("click",function(){Mbox.close();$Favorite.del(D,B,C)});L.adopt(S)}var P=new Element("button").setStyles({margin:"0 5px"}).set("html","取消").addEvent("click",function(){Mbox.close()});L.adopt(P);E.adopt(L);if(O==1){var J=new Element("div").setStyles({margin:"20px 0 0 0",textAlign:"center"});var K='<input id="cbThirdFeed" type="checkbox" checked="checked" /><span>将此内容同步到人人网好友新鲜事</span>';J.appendHTML(K);E.adopt(J)}if(R&&$type(R)=="array"){T.push({name:"热门标签",tags:R})}if(Q&&$type(Q)=="array"){T.push({name:"我的标签",tags:Q})}Mbox.open({url:$dialog((M.msg.e?"修改":"添加")+"收藏",[E]),size:{x:400,y:"auto"},closable:true});if($type(TagSelector)=="class"){new TagSelector(G,I,{data:T})}H.focus()}else{if(M.code==401){DP.authBox(M.msg,"","shoucang")}else{Mbox.openLite('<p class="Doing">'+M.msg||"发生未知错误，请稍候再试！</p>",280,"auto");setTimeout(function(){Mbox.close()},1500)}}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};var $FavoriteOther=function(D,B,C){if($type(D)!="number"){return }var A="do=a&i="+D+"&t="+B;new AjaxReq({url:"/favorite.v",method:"get",data:A,onSuccess:function(J){Mbox.close();if(J&&J.code==100){var L=J.msg.n,G=J.msg.type,F=[],H=[];F.push('<div class="favoriteBox">');F.push("<p>　"+G+": "+L+"</p>");F.push("</div>");if(J.msg.e){var K=new Element("button").set("html","删除").addEvent("click",function(){Mbox.close();$Favorite.del(D,B,C)});H.push(K)}else{var E=new Element("button").set("html","提交").addEvent("click",function(){Mbox.close();$Favorite.submit(D,B,"",0)});H.push(E)}var I=new Element("button").set("html","取消").addEvent("click",function(){Mbox.close()});H.push(I);Mbox.openLite($dialog((J.msg.e?"删除":"添加")+"收藏",F.join(""),H),300,"auto",{closable:true})}else{if(J.code==401){DP.authBox(J.msg,"","shoucang")}else{Mbox.openLite('<p class="Doing">'+J.msg||"发生未知错误，请稍候再试！</p>",280,"auto");setTimeout(function(){Mbox.close()},1500)}}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Favorite.submit=function(D,A,C,B){Mbox.openLite('<p class="Doing">正在收藏，请稍候......</p>',280,30);new AjaxReq({url:"/favorite.v",data:{"do":"aa",i:D,t:A,g:C,tct:B},method:"post",onSuccess:function(E){Mbox.openLite('<p class="Doing">'+(E&&E.code==200?E.msg:"发生未知错误，请稍候再试！")+"</p>",280,30);setTimeout(function(){Mbox.close()},1500)},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Favorite.del=function(C,A,B){new Prompt().confirm(["删除收藏","确定要删除此收藏记录吗？"],{onReturn:function(D){if(D){Mbox.openLite('<p class="Doing">正在删除，请稍候......</p>',280,30);new AjaxReq({url:"/favorite.v?do=d&i="+C+"&t="+A,onSuccess:function(E){Mbox.openLite('<p class="Doing">'+(E&&E.code==200?E.msg:"发生未知错误，请稍候再试！")+"</p>",280,30);if(B){window.setTimeout("location.reload();",1000)}else{setTimeout(function(){Mbox.close()},1500)}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()}}})};(function(C){var B=null,A,F=new Class({Implements:Options,options:{wrapId:B,btnCls:["normal","active","diabled"],event:"click"},initialize:function(G){var D=this,G;D.setOptions(G);G=D.options},zan:function(D,G){this.preSubmit(D,G)},preSubmit:function(H,J){var G=this,I=H,D=I.get("data-zaned");G._clickedData=D;if(D==0){G.add(I,J)}else{if(D==1){G.del(I,J)}else{if(D==2){G.openLite("不能给自己赞！")}}}},getClickedData:function(){return this._clickedData},submit:function(I,K,H,J,D){var G=this;new AjaxReq({method:"post",url:"/ajax/json/pic/flower",noCache:true,data:{i:K,"do":H},onRequest:function(){},onError:function(){F.openLite("很抱歉，您的赞提交失败！")},onSuccess:function(L){var L=L||false,M=L.code||false,O=L.msg||false;if(L&&M==100){var O=L.msg||false}else{if(M==403||M==302){F.openLite(L.msg,true,true,true)}else{if(M==401){var N=function(){G.submit(I,K,H,F.refresh)};C.authBox(L.msg,N)}else{F.openLite(L.msg||"发生未知错误，请稍候再试！")}}}O&&(function(){J&&J()||G.update(O.c,I,O.z||undefined)})()}}).send()},add:add=function(D,H,G){this.submit(D,H,"aa",G)},del:function(D,H,G){this.submit(D,H,"dd",G,{title:"赞一个",content:"你还没有赞过，赞一个？"})},update:function(J,K,D){var L,G=this;if(J!==undefined&&K&&D!==undefined){var H=G.getClickedData(),I=document.id(K.get("data-refer"))||false;if(I){[I,K].forEach(function(M){G.updateView(J,M,D,L)})}else{G.updateView(J,K,D,L)}}},updateView:function(I,K,G,L){var D=D||"Hide",J=J||K.getNext(".digg-count"),H=this;K.set("data-zaned",G);K.className=H.options.btnCls[G];J.hasClass(D)&&J.removeClass(D);J.getElement("strong").set("html",I)}});C.mix(F,{refresh:function(){location.reload()},openLite:function(K,D,J,H){var D=D||true,J=J||true,H=H||false,G=null,I=I||C.mbox;I.openLite('<div style="visibility: visible;" class="ele-wrap wrap pop-msg-item"><div class="dialog-cont">'+K+(J?' <a href="#" class="close-txt" id="closeBtn">[关闭]</a> </div></div>':""),289,58);$("closeBtn").addEvent("click",function(){if(H){F.refresh()}else{F.close()}clearTimeout(G);return false});D&&H&&setTimeout(F.refresh,1500)||(G=setTimeout(F.close,1500))},close:function(){C.mbox.close()}});var E=new F({btnCls:["digg-btn","digg-btn on","digg-btn diabled"]});window["$Zan"]=function(D,G){E.zan(D,G)}})(DP);function $PicReport(D,C,B){if($PicReport.hasDper()){$PicReport.dialog(D,C,B)}else{var A=function(){DP.mbox.close();$PicReport.dialog(D,C,B);$PicReport.needRefresh=true};DP.authBox("未登录",A)}}$PicReport.hasDper=function(){return !!Cookie.read("dper")};(function(B){var A=DP.mbox;B.mix($PicReport,{netError:function(){$PicReport.openLite("网络错误，请重试")},refresh:function(){location.reload()},openLite:function(H,C,G,E){var C=C||true,G=G||true,E=E||false,D=null,F=F||B.mbox;F.openLite('<div style="visibility: visible;" class="ele-wrap wrap pop-msg-item"><div class="dialog-cont">'+H+(G?' <a href="#" class="close-txt" id="closeBtn">[关闭]</a> </div></div>':""),295,58);$("closeBtn").addEvent("click",function(){if(E){$PicReport.refresh()}else{$PicReport.close()}clearTimeout(D);return false});C&&E&&setTimeout($PicReport.refresh,1500)||(D=setTimeout($PicReport.close,1500))},close:function(){B.mbox.close()},dialog:function(C,H,I){var J="图片举报",D=A.dialog(J,""),E=D.getElement(".dialog-cont"),M,F,G=null,K=null,L=null;hideCls="Hide",bind_event=function(O,N){O=B.isString(O)?E.getElement(O):O;O&&O.addEvent("click",N)},showError=function(N){if(M){M.set("text",N).removeClass(hideCls)}else{(M=new Element("div",{"class":"pop-msg-box pmb-error",text:N})).inject(E,"top")}},hideError=function(){M&&M.addClass(hideCls)},reportDetail=function(){var N;return function(O,P,Q){if(N){N.removeClass(hideCls)}else{P.getParent().grab(N=O,"bottom");new B.Form.PlaceHolder(O.getElement(Q))}}},hideDetail=function(N){N.addClass(hideCls)},repeatReport=function(N){var O=reportDetail();bind_event(N,function(){O(new Element("div",{"class":"form-block",html:'<input type="text" placeholder="请附上重复上传图片的链接" rows="" cols="" class="form-txt" maxlength="300">'}),N,"input");G=N})},customReport=function(N){var O=reportDetail();bind_event(N,function(){O(new Element("div",{"class":"form-block",html:'<textarea placeholder="请在输入框内填写或重新选择原因" class="form-textarea" rows="" cols=""></textarea>'}),N,"textarea");G=N})},selectReport=function(){(F=$$(".chk-list")).getElements("input[type=radio]").forEach(function(N){N.addEvent("click",function(O){var P=O.target;if(G&&P.get("type")=="radio"&&P!=G){hideDetail(G.getParent().getLast());G=null}hideError()})})},checkReport=function(){K=F[0].getElement("input:checked");if(K){var Q=K.getNext("div.form-block");if(Q&&Q.getStyle("display")!="none"){var P=Q.getChildren()[0],N,O=P.get("value"),R=P.get("placeholder");L=O;if(O!=R&&(N=O.length)>0){if(N>300){showError("举报不能超过300个字");return false}else{return true}}else{showError(R);return false}}else{L=K.getNext("label").get("text");return true}}else{showError("请选择举报原因!");return false}},bindMboxClose=function(N){$$(".close-txt").addEvent("click",function(){N&&N()||A.close();return false})},resultPopUp=function(){return{success:function(){var N=$PicReport.needRefresh;$PicReport.openLite("提交成功！感谢您对大众点评网的支持。",true,true,N)},fail:function(N){$PicReport.openLite(N||"很抱歉，您的报错申请提交失败！")}}},sendReport=function(T,P,O,S){var Q=B.data("reportSetting"),N=K&&K.value,R=Q.feedPrefix+"["+K.getNext("label").get("text")+"]-"+O+Q.feedSuffix;new AjaxReq({url:"/newfeedbackforpoi",method:"post",noCache:true,data:{referID:T,causeType:G&&G.value||K&&K.value,feedComments:L,feedType:Q.feedType,feedTitle:R,referShopID:Q.referShopID,cityID:Q.cityID,referUserID:P},onRequest:function(){},onSuccess:function(V){if(V.code==200){resultPopUp().success();G=null;K=null;L=null}else{if(V.code==401){var U=function(){sendReport(T,P,O);$PicReport.needRefresh=true};A.close();B.authBox("未登录",U)}else{resultPopUp().fail(V.msg||undefined)}}S&&S()},onError:function(){resultPopUp().fail()}}).send()};E.set("html",['<div class="pop-win-inner">','<p class="form-intro">请选择一项举报原因再提交：</p>',"<fieldset>",'<ul class="chk-list">',"<li>",'<input type="radio" class="chk-item" id="r-a" name="report-radio" value="100">','<label for="r-a">无关图片</label>',"</li>","<li>",'<input type="radio" class="chk-item" id="r-b" name="report-radio" value="101">','<label for="r-b">重复上传</label>',"</li>","<li>",'<input type="radio" class="chk-item" id="r-c" name="report-radio" value="102">','<label for="r-c">盗图</label>',"</li>","<li>",'<input type="radio" class="chk-item" id="r-d" name="report-radio" value="103">','<label for="r-d">色情违规</label>',"</li>","<li>",'<input type="radio" class="chk-item" id="r-e" name="report-radio" value="104">','<label for="r-e">撰写自己的原因</label>',"</li>","</ul>","</fieldset>",'<div class="pop-btn-wrapper"> <span class="btn-type-a btn-fn-a"><a href="#" class="form-btn" id="pr_submit">提交</a></span> <span class="btn-type-a btn-fn-b"><a href="#" class="form-btn" id="pr_cancel">取消</a></span> </div>',"</div>"].join(""));bind_event("#pr_cancel",function(){var N=$PicReport;N.needRefresh?N.refresh():A.close();return false});bind_event("#pr_submit",function(N){N.stop();if(checkReport()){hideError();sendReport(C,H,I)}});A.open({url:D,size:{x:300}});selectReport();repeatReport($("r-b"));customReport($("r-e"))}})})(DP);function getAjaxAddr(B){var A;if(B==2){A="/ajax/json/pic/flower"}else{if(B==1){if(DP.data("ajaxSwitch")&&DP.data("ajaxSwitch")==1){A="/ajax/json/shop/reviewflower"}else{A="/rate.v"}}else{A="/rate.v"}}return A}var $Praise=function(D,E,C,B){if($type(E)!="number"){return }var A="do=a&i="+E+"&t="+C;new Request.JSON({method:"get",url:getAjaxAddr(C),data:A,noCache:true,onRequest:function(){Mbox.openLite('<p class="Doing">正在处理，请稍候....</p>',200,30)},onSuccess:function(H){Mbox.close();if(H&&H.code==100){var G=H.msg.r||[],F=new Element("ul").addClass("rateBox");G.each(function(J,I){new Element("li").set("html",'<a href="javascript:void(0)" class="send" style="background-image: url('+J.m+')">'+J.t+"</a>").addEvent("click",function(){$Praise.submit(D,E,C,J.i,B)}).inject(F)});Mbox.openLite($dialog("选一朵鲜花吧",[F],[]),430,120,{closable:true})}else{if(H.code==302){new Prompt().confirm(["删除鲜花","您已送过鲜花。是否要删除？"],{onReturn:function(I){if(I){$Praise.del(D,E,C,B)}}})}else{if(H.code==401){DP.authBox("鲜花支持","","xianhua")}else{Mbox.openLite('<p class="Doing">'+H.msg||"发生未知错误，请稍候再试！</p>",280,"auto");setTimeout(function(){Mbox.close()},1500)}}}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Praise.submit=function(C,E,B,D,A){Mbox.openLite('<p class="Doing">正在送花，请稍候......</p>',280,30);new Request.JSON({method:"get",url:getAjaxAddr(B)+"?do=aa&i="+E+"&t="+B+"&s="+D,noCache:true,onSuccess:function(F){Mbox.close();if(F&&F.code==900){$Praise.update(F.msg,C,A)}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Praise.del=function(C,D,B,A){Mbox.openLite('<p class="Doing">正在删除，请稍候......</p>',280,30);new Request.JSON({method:"get",url:getAjaxAddr(B)+"?do=dd&i="+D+"&t="+B,noCache:true,onSuccess:function(E){Mbox.close();if(E&&E.code==900){$Praise.update(E.msg,C,A)}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Praise.update=function(C,D,A){var D=$(D);if(!C||(!C.c&&C.c!=0)||!C.u||!C.n){alert("获取鲜花总数错误，请稍候再试！");return }if(D){var B=D.get("tag");switch(B){case"span":D.innerHTML="("+(C.c||"0")+")";break;default:D.innerHTML=(C.c||"0")+"鲜花";break}}if(A){A.call(null,C.c,C.u,C.n,C.t)}};var $Report=function(C,B){if($type(C)!="number"){return }if(B==7){pageTracker._trackPageview("dp_report")}var A=new Element("div").addClass("report-panel");new AjaxReq({url:"/feedback.v",method:"post",data:{"do":"getreportcausetype",d:B},onRequest:function(){Mbox.openLite('<p class="Doing">正在处理，请稍候....</p>',200,30)},onSuccess:function(E){Mbox.close();if(E&&E.code==100){DP.authBox("提交不当内容")}else{if(E.code==200&&E.msg){var K=new Element("div").addClass("box");var J=new Element("select").addEvent("change",function(){I.set("html","");if(this.value=="0"){Mbox.openLite($dialog("提交不当内容",[A],[D,H]),305,170,{closable:true});F.setStyle("display","");F.set("value","");F.setStyle("color","#000")}else{if(this.value=="3"){Mbox.openLite($dialog("提交不当内容",[A],[D,H]),305,170,{closable:true});F.setStyle("display","");$Report.setPlaceHoler(F,"请插入抄袭雷同点评链接","#999")}else{Mbox.openLite($dialog("提交不当内容",[A],[D,H]),305,170,{closable:true});F.setStyle("display","none")}}});new Element("option").set({html:"-选择不当原因-",value:"00"}).inject(J);E.msg.msg.each(function(L){if(L.v==0){L.c="--"+L.c+"--"}new Element("option").set({html:L.c,value:L.v}).inject(J)},this);var G=new Element("a").set({href:"/help/0102",target:"_blank"}).addClass("report-help");K.adopt([J,G]);var F=new Element("input").setStyle("display","none");var I=new Element("p").addClass("report-err");A.adopt([K,new Element("div").grab(F),I]);var D=new Element("button",{html:"提交",type:"button"}).addEvent("click",function(){var M=J.selectedIndex;var L=J.options[M].value;var N=(L=="0"||L=="3"?F.get("value").trim():J.options[M].get("text"));if(L=="3"&&N==""){N=J.options[M].get("text")}if(L=="00"){I.set("html","请先选择原因")}else{if(L=="0"&&(N==""||N=="请插入抄袭雷同点评链接")){I.set("html","请在输入框填写或通过下拉选择原因")}else{I.set("html","");$Report.submit(C,B,N,L)}}});var H=new Element("button",{html:"取消",type:"button"}).addEvent("click",function(){Mbox.close()});Mbox.openLite($dialog("提交不当内容",[A],[D,H]),305,170,{closable:true})}}},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Report.submit=function(D,E,F,B){var A=new Element("div").addClass("report-panel").setStyle("padding","0");var C=new Element("button",{html:"关闭",type:"button"}).addEvent("click",function(){Mbox.close()});new AjaxReq({url:"/feedback.v",method:"post",data:{"do":"submitreport",i:D,d:E,c:F,v:B},onRequest:function(){},onSuccess:function(G){if(G&&G.code==200){A.set("html",'<div style="margin:18px 0 18px;"><p class="report-succ">提交成功！</p><p class="report-succ">感谢您对大众点评的支持。</p></div>')}else{if(G.code==500){A.set("html",'<div style="margin:18px 0 18px;"><p class="report-succ">提交失败！</p><p class="report-succ">请重新提交。</p></div>')}}Mbox.openLite($dialog("提交不当内容",[A],[C]),305,170,{closable:true});setTimeout(function(){if(Mbox.isOpen){Mbox.close()}},3000)},onError:function(){Mbox.openLite('<p class="Doing">操作失败，请<a href="#" onclick="Mbox.close()">返回</a></p>',200,30)}}).send()};$Report.setPlaceHoler=function(C,D,B){var A=C.get("value");C.set("value",D);C.setStyle("color",B);C.addEvents({focus:function(){if(C.get("value")===D){C.set("value","");C.setStyle("color","#000")}},blur:function(){if(C.get("value")===""){C.set("value",D);C.setStyle("color",B)}}})};var loginAgreement_login='<input type="checkbox" id="agreeprovision_login" checked="checked"/><label for="agreeprovision_login">我已看过并同意<a href="http://www.dianping.com/aboutus/useragreement" target="_blank">《大众点评网用户注册协议》</a></label>';var loginAgreement_reg='<input type="checkbox" id="agreeprovision_reg" checked="checked"/><label for="agreeprovision_reg">我已看过并同意<a href="http://www.dianping.com/aboutus/useragreement" target="_blank">《大众点评网用户注册协议》</a></label>';var RegLoginDialog=new Class({Implements:[Options,Events],options:{isLogin:false,singleton:$empty},dialogHTML:'<div class="DialogTitle"><div class="TitleText">注册/登录</div></div><div class="DialogContent regLoginContent"><div class="rlTip">大众点评网会员请登录        不是会员? 20秒快速完成注册</div><div class="tabs"><ul class="tabNavigation"><li><a class="nosel selected" href="javascript:void(0)" data="0">登录</a></li><li><a class="nosel" href="javascript:void(0)" data="1">注册</a></li></ul><div id="login"><br/><br/><table class="tbLogin"><tr><td class="tbt">用户名：</td><td><input type="text" value="" maxlength="40" tabindex="1" size="30" id="loginaccount"/></td></tr><tr class="vali"><td class="tbt"></td><td><span class="regvaliinfo" id="loginaccountvalidator"></span></td></tr><tr><td class="tbt">密码：</td><td><input type="password" maxlength="40" tabindex="1" size="30" id="loginpwd"/></td></tr><tr class="vali"><td class="tbt"></td><td><span class="regvaliinfo" id="loginpwdvalidator"></span></td></tr><tr><td class="tbt vcenter">验证码：</td><td><div class="inpwp"><input type="text" tabindex="5" size="10" id="logincaptchacode"/></div><div class="inpimgwp"><img alt="看不清楚?请点击!" style="cursor: pointer;" onclick="this.src=\'/JValidateCode.jpg?xx=\' + Math.floor(Math.random()*1001) ;" src="/JValidateCode.jpg?xx=515" id="loginimg"/><br/><a onclick="document.getElementById(\'loginimg\').src=\'/JValidateCode.jpg?xx=\' + Math.floor(Math.random()*1001) ;return false;" href="#" class="BL">看不清？换一张</a></div></td></tr><tr class="vali"><td class="tbt"></td><td><span class="regvaliinfo" id="loginccvalidator"></span></td></tr><tr><td class="tbt"><td>'+loginAgreement_login+'</td></tr><tr><td class="tbt"></td><td><input type="submit" tabindex="6" value="登录" class="btn" id="loginsubmit"/></td></tr></table></div><div id="reg" style="display:none;"><br/><table class="tbReg"><tr><td class="tbt">Email：</td><td><input type="text" value="" maxlength="40" tabindex="1" size="30" id="regmail"/></td></tr><tr><td class="tbt"></td><td><span class="valiinfo" id="regmailvalidator"></span></td></tr><tr><td class="tbt">昵称：</td><td><input type="text" maxlength="40" tabindex="1" size="30" id="regnickname"/></td></tr><tr class="vali"><td class="tbt"></td><td><span class="valiinfo" id="regnicknamevalidator"></span></td></tr><tr><td class="tbt">密码：</td><td><input type="password" maxlength="40" tabindex="1" size="30" id="regpwd"/></td></tr><tr class="vali"><td class="tbt"></td><td><span class="valiinfo" id="regpwdvalidator"></span></td></tr><tr><td class="tbt vcenter">验证码：</td><td><div class="inpwp"><input type="text" tabindex="5" size="10" id="regcaptchacode"/></div><div class="inpimgwp"><img alt="看不清楚?请点击!" style="cursor: pointer;" onclick="this.src=\'/JValidateCode.jpg?xx=\' + Math.floor(Math.random()*1001) ;" src="/JValidateCode.jpg" id="regimg"/><br/><a onclick="document.getElementById(\'regimg\').src=\'/JValidateCode.jpg?xx=\' + Math.floor(Math.random()*1001) ;return false;" href="#" class="BL">看不清？换一张</a></div></td></tr><tr class="vali"><td class="tbt"></td><td><span id="regccvalidator"/></span></td></tr><tr><td class="tbt"><td>'+loginAgreement_reg+'</td></tr><tr><td class="tbt"></td><td><input type="submit" value="提交注册" tabindex="6" class="btn" id="regsubmit"/></td></tr></table></div><div id="rlLoading" class="loadingmsg" style="display: none;">正在发送请求,请稍候...</div></div></div>',initialize:function(A){if(!A){A=1}this.openDialog=this.openDialog.bind(this)},openDialog:function(B,A){if(B!=null){this.successMethod=B}this.options.singleton=A||$empty;if(this.options.isLogin){this.successMethod.bind(this.options.singleton)()}else{Mbox.open({type:"string",url:this.dialogHTML,closable:1,overlay:true,size:{x:480,y:550}});this.enableTab();this.initEvent();this.agreeLogin();this.agreeReg()}},successMethod:function(){Mbox.hide();Mbox.open({type:"string",url:'<div style="line-height:30px;text-align:center;" class="Color4">验证成功,请稍候...</div>',closable:0,overlay:1});setTimeout("window.location.reload(true);",1000)},enableTab:function(){var A=$$("div.tabs > div");A.setStyle("display","none");A[0].setStyle("display","block");$$("div.tabs ul.tabNavigation li a").addEvent("mouseover",function(){A.setStyle("display","none");A[$(this).get("data")].setStyle("display","block");if($(this).get("data")==0&&!$(this).hasClass("selected")){$("regimg").set("src","/JValidateCode.jpg?xx="+Math.floor(Math.random()*1001))}if($(this).get("data")==1&&!$(this).hasClass("selected")){$("loginimg").set("src","/JValidateCode.jpg?xx="+Math.floor(Math.random()*1001))}$$("div.tabs ul.tabNavigation li a").removeClass("selected");$(this).addClass("selected");return false});$$("div.tabs ul.tabNavigation li a")[0].addClass("selected")},reloadRegImg:function(){$("regimg").set("src","/JValidateCode.jpg?xx="+Math.floor(Math.random()*1001))},reloadLoginImg:function(){$("loginimg").set("src","/JValidateCode.jpg?xx="+Math.floor(Math.random()*1001))},loginValidCollection:$empty,regValidCollection:$empty,initEvent:function(){var F=new Fvalid.Base({vid:"loginaccount",criterias:['$isMatch("loginaccount",$isMatch.MORE, 0, 1)'],errMsg:["*请输入登录帐号！"],msgHolder:"loginaccountvalidator"});var B=new Fvalid.Base({vid:"loginpwd",criterias:['$isMatch("loginpwd",$isMatch.MORE, 0, 1)'],errMsg:["*请输入登录密码！"],msgHolder:"loginpwdvalidator"});var A=new Fvalid.Base({vid:"logincaptchacode",criterias:['$isRegex("logincaptchacode","^.+$")'],errMsg:["*请输入验证码！"],msgHolder:"loginccvalidator"});this.loginValidCollection=new Fvalidator().add({u:F,p:B,v:A});var D=new Fvalid.Base({vid:"regmail",criterias:['$isRegex("regmail",$isRegex.EMAIL)|$isRegex("regmail",$isRegex.MOBILE)'],errMsg:["*请输入有效的Email!"],msgHolder:"regmailvalidator"});var E=new Fvalid.Base({vid:"regnickname",criterias:['$isMatch("regnickname",$isMatch.MORE, 0, 1)','$isRegex("regnickname","^[0-9a-zA-Z_\u4E00-\u9FA5\uF900-\uFA2D]{1,12}$")','RegLoginDialog.noPureNumber("regnickname")'],errMsg:["*请输入您的昵称，昵称必须小于12位!","*只能使用12个以内的字母、数字、中文、下划线!","*昵称不能全为数字"],msgHolder:"regnicknamevalidator"});var B=new Fvalid.Base({vid:"regpwd",criterias:['$isRegex("regpwd","^.{6,12}$")'],errMsg:["*密码必须大于6位小于12位!"],msgHolder:"regpwdvalidator"});var C=new Fvalid.Base({vid:"regcaptchacode",criterias:['$isRegex("regcaptchacode","^.+$")'],errMsg:["*请输入验证码！"],msgHolder:"regccvalidator"});this.regValidCollection=new Fvalidator().add({e:D,n:E,p:B,v:C});$("loginsubmit").addEvent("click",this.submitLogin.bind(this));$("regsubmit").addEvent("click",this.submitReg.bind(this));this.reloadLoginImg()},agree:function(B,A){B.addEvent("click",function(){A.set("disabled",!B.get("checked"))})},agreeLogin:function(){this.agree($("agreeprovision_login"),$("loginsubmit"))},agreeReg:function(){this.agree($("agreeprovision_reg"),$("regsubmit"))},submitLogin:function(){if(this.loginValidCollection&&this.loginValidCollection.checkAll()){$$("div.tabs").setStyle("display","none");$("rlLoading").setStyle("display","block");new AjaxReq({url:"/ajax/json/account/login",method:"post",callType:"json",data:{ua:$("loginaccount").get("value").trim(),pwd:$("loginpwd").get("value").trim(),mc:$("logincaptchacode").get("value").trim()},onSuccess:function(A){if(A.code==200){Mbox.hide();this.options.isLogin=true;this.successMethod.bind(this.options.singleton)()}else{if(A.code==100){switch(A.msg){case"nameerror":$("loginaccountvalidator").set("html","*填写正确的帐号名 ").set("style","display:block").set("class","fv-err");break;case"passworderror":$("loginpwdvalidator").set("html","*填写正确的密码 ").set("style","display:block").set("class","fv-err");break;case"matchcodeerror":$("loginccvalidator").set("html","*填写正确的验证码 ").set("style","display:block").set("class","fv-err");break;case"nomanapower":$("rlLoading").set("html","*您没有足够的贡献值进行登录").set("style","display:block").set("class","fv-err");break;case"blacklist":$("loginaccountvalidator").set("html","*对不起，您没有权限登录").set("style","display:block").set("class","fv-err");break;case"Unknow exception happend!":$("rlLoading").set("html","*发生未知错误，请稍候再试").set("style","display:block").set("class","fv-err");break}$("logincaptchacode").value="";if(A.msg!="nomanapower"&&A.msg!="Unknow exception happend!"){$$("div.tabs").setStyle("display","block");$("rlLoading").setStyle("display","none");this.reloadLoginImg()}}}}.bind(this)}).send()}},submitReg:function(){if(this.regValidCollection&&this.regValidCollection.checkAll()){$$("div.tabs").setStyle("display","none");$("rlLoading").setStyle("display","block");new AjaxReq({url:"/ajax/json/account/reg",method:"post",callType:"json",data:{email:$("regmail").get("value").trim(),una:$("regnickname").get("value").trim(),upwd:$("regpwd").get("value").trim(),cmcode:$("regcaptchacode").get("value").trim()},onSuccess:function(A){if(A.code==200){Mbox.hide();this.options.isLogin=true;this.successMethod.bind(this.options.singleton)()}else{if(A.code==100){switch(A.msg){case"accounterror":$("regmailvalidator").set("html","*填写正确格式的Email").set("style","display:block").set("class","fv-err");break;case"userpassworderror":$("regpwdvalidator").set("html","*填写6-12位长度的密码").set("style","display:block").set("class","fv-err");break;case"usernicknameerror":$("regnicknamevalidator").set("html","*请使用12个以内的字母、数字、中文、下划线").set("style","display:block").set("class","fv-err");break;case"dangerwordsinusernickname":$("regnicknamevalidator").set("html","*用户名中含有系统禁止字符！请重新填写").set("style","display:block").set("class","fv-err");break;case"badwordsinusernickname":$("regnicknamevalidator").set("html","*用户名中含有系统禁止字符！请重新填写").set("style","display:block").set("class","fv-err");break;case"namenopurenumber":$("regnicknamevalidator").set("html","*昵称不能全为数字").set("style","display:block").set("class","fv-err");break;case"captchacodeerror":$("regccvalidator").set("html","*填写正确的验证码").set("style","display:block").set("class","fv-err");break;case"duplicateusername":$("regnicknamevalidator").set("html","*取一个独一无二的昵称").set("style","display:block").set("class","fv-err");break;case"duplicateemail":$("regmailvalidator").set("html","*该Email已经存在，请重新填写").set("style","display:block").set("class","fv-err");break;case"unknownexception":$("rlLoading").set("html","*出现未知错误，请稍候再试").set("style","display:block").set("class","fv-err");break}$("regcaptchacode").value="";if(A.msg!="nomanapower"&&A.msg!="Unknow exception happend!"){$$("div.tabs").setStyle("display","block");$("rlLoading").setStyle("display","none");this.reloadRegImg()}}}}.bind(this)}).send()}}});RegLoginDialog.noPureNumber=function(A){var A=$(A);return !/^\d+$/.test(A.get("value"))};
