var GroupCommonClient=Mtime.Page.GroupCommonClient;GroupCommonClient=Class.create();Object.extend(GroupCommonClient.prototype,{name:"GroupCommonClient",initialize:function(){this.initializeDOM();this.initializeEvent();this.LoadPageSubArea("divGroupRightAd");this.render()},initializeDOM:function(){this.p_createArea=$("p_createArea");this.p_groupHead=$("p_groupHead");this.p_groupIndex=$("p_groupIndex");this.p_groupHeadView=$("p_groupHeadView")},destroyDOM:function(){this.p_createArea=null;this.p_groupHead=null;this.p_groupIndex=null;this.p_groupHeadView=null},initializeEvent:function(){if(this.p_createArea){this.onClickCreateAreaHandler=this.onClickCreateArea.bindAsEventListener(this);this.p_createArea.observe("click",this.onClickCreateAreaHandler)}if(this.p_groupHead){this.onClickGroupCommandHandler=this.onClickGroupCommand.bindAsEventListener(this);this.p_groupHead.observe("click",this.onClickGroupCommandHandler)}if(this.p_groupIndex){this.onClickGroupCommandHandler=this.onClickGroupCommand.bindAsEventListener(this);this.p_groupIndex.observe("click",this.onClickGroupCommandHandler)}if(this.p_groupHeadView){this.onClickGroupHeadViewHandler=this.onClickGroupHeadView.bindAsEventListener(this);this.p_groupHeadView.observe("click",this.onClickGroupHeadViewHandler)}Event.observe(window,"unload",this.close.bind(this))},destroyEvent:function(){if(this.p_createArea){this.p_createArea.stopObserving("click",this.onClickCreateAreaHandler)}if(this.p_groupHead){this.p_groupHead.stopObserving("click",this.onClickGroupCommandHandler)}if(this.p_groupIndex){this.p_groupIndex.stopObserving("click",this.onClickGroupCommandHandler)}if(this.p_groupHeadView){this.p_groupHeadView.stopObserving("click",this.onClickGroupHeadViewHandler)}},onClickCreateArea:function(A){var D=Event.element(A);var E=D.readAttribute("method");if(!E){if(D.tagName=="A"){if(D.href.indexOf("#")!=D.href.length-1){$redirect(D.href)}return false}}switch(E){case"createtopic":var B=D.readAttribute("groupid");var C=D.readAttribute("groupurl");$redirect(C+"discussion/create.html");return false;break;case"createimgtopic":var C=D.readAttribute("groupurl");$redirect(C+"imagetopic/create/");break;case"createactivity":var C=D.readAttribute("groupurl");$redirect(C+"event/create.html");break}},onClickGroupCommand:function(A){var B=Event.element(A);var C=B.readAttribute("method");if(!C){if(B.tagName=="A"){if(B.href.indexOf("#")!=B.href.length-1){$redirect(B.href)}return false}}switch(C){case"manage":$redirect("/group/"+B.readAttribute("groupid")+"/admin/basic.html");break;case"inviteM":case"invite":$redirect("/group/"+B.readAttribute("groupid")+"/admin/invite.html");break;case"member":$redirect(B.readAttribute("memberurl"));break;case"configure":$redirect("/group/"+B.readAttribute("groupid")+"/admin/style.html");break;case"quit":this.pf_leaveGroup_GroupCommon(B.readAttribute("userid"),B.readAttribute("groupid"),B.readAttribute("grouptitle"));break;case"join":this.pf_joinGroup_GroupCommon(B.readAttribute("userid"),B.readAttribute("groupid"));break}return false},onClickGroupHeadView:function(A){var B=Event.element(A);var C=B.readAttribute("method");if(!C){if(B.tagName=="A"){if(B.href.indexOf("#")!=B.href.length-1){$redirect(B.href)}return false}}switch(C){case"changeurl":$redirect("/group/"+B.readAttribute("groupid")+"/admin/");break;case"favorite":this.pf_favoriteGroup_GroupCommon(B.readAttribute("groupurl"),B.readAttribute("grouptitle"));break}return false},navigationBarSearch:function(){var B=$("navSearchValueInput").value.Trim();var A=$F("navSearchTypeSelect");if(B!=""){window.open("/search/"+(A=="all"?"":A)+"?"+encodeURI(B),"_blank")}},OnClickManageArea:function(J){var F=Event.element(J);var A=F.readAttribute("method");var K=$("rel").value.split("|");var I=K[0];var B=K[1];var D=K[2];var H=K[5];switch(A){case"cancelTop":$confirm("确定要取消置顶当前话题?",function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"UpdateTop"),{status:L},function(M){if(M.Success){$alert("成功取消置顶话题");this.pageRefresh()}}.bind(this))}.bind(this));break;case"top":$confirm("确定要置顶当前话题?",function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"UpdateTop"),{status:L},function(M){if(M.Success){$alert("成功置顶话题");this.pageRefresh()}else{$alert("你好，最多只允许置顶5个话题")}}.bind(this))}.bind(this));break;case"cancelDistillate":$confirm("确定要取消精华当前话题?",function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"UpdateDistillate"),{distillate:L},function(M){if(M.Success){$alert("成功取消精华话题");this.pageRefresh()}}.bind(this))}.bind(this));break;case"distillate":$confirm("确定要精华当前话题?",function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"UpdateDistillate"),{distillate:L},function(M){if(M.Success){$alert("成功精华话题");this.pageRefresh()}}.bind(this))}.bind(this));break;case"move":var C=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"GetGroupForumString"),{mForumId:C},function(L){new Dialog({windowStyle:"width: 320px;",title:'<h3 class="px14">请选择要转移的版块</h3>',containerClassName:"p12",content:L.Message,buttonRegionClass:"mt10 tc",buttons:[{title:"确定",buttonStyle:"btn_square_hover",callback:function(N){var M=0;N.windowElement.getElementsBySelector("input[name='p_groupForum']").each(function(O){if($(O).checked){M=$(O).value}});groupAjax.callBack(String.format("/group/page/commonajax.aspx?groupstring={0}&ForumId={1}&imageid={2}&ajax=1&m={3}",I,B,D,"MoveTopic"),{distillate:M},function(O){if(O.Success){$alert("转移成功!");this.pageRefresh()}}.bind(this));N.close()}.bind(this)},{title:"取消",buttonStyle:"btn_square ml9",callback:function(M){M.close()}.bind(this)}]})}.bind(this));break;case"deltopic":if(F.readAttribute("isauthor")=="true"){var G="确定要删除当前话题?";if(H>0){G="确定要删除当前图帖?"}$confirm(G,function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"DelTopic"),{},function(M){if(M.Success){$alert("成功删除话题");window.location.href=M.Message}}.bind(this))}.bind(this))}else{$redirect("/group/"+I+"/discussion/"+B+"/delete.html")}break;case"deltopicimage":$confirm("确定要删除当前图片?",function(){var L=F.rel;groupAjax.callBack(String.format(this.topicCallbackStr,I,B,D,"DelTopicImage"),{},function(M){if(M.Success){$alert("成功删除图片");window.location.href=M.Message}}.bind(this))}.bind(this));break;case"edittopic":$redirect("/group/"+I+"/discussion/"+B+"/edit.html");break;case"editblog":var E=F.readAttribute("blogid");JumpMenuItem("写日志","编辑日志","?blogId="+E);break}},dvReplyOnClick:function(K){var S=Event.element(K);var E=S.readAttribute("method");var D=$("rel").value.split("|");var C=D[0];var A=D[1];var M=D[2];var Q=D[6];switch(E){case"addimg":var R=S.readAttribute("addimgurl");$redirect(R);break;case"power":var N=S.id.split("_")[1];groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"PowerTopicString"),{},function(T){new Dialog({windowStyle:"width: 220px;",title:'<h3 class="px14">请选择你要奖励的积分</h3>',containerClassName:"p12",content:T,buttonRegionClass:"mt10 tc",buttons:[{title:"确定",buttonStyle:"btn_square_hover",callback:function(U){var V=0;U.windowElement.getElementsBySelector("input[name='p_groupPower']").each(function(W){if($(W).checked){V=$(W).value}});groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"UpdateReplyPowerById"),{power:V,replyID:N},function(W){if(W.Success){$alert("成功奖励加分!");this.pageRefresh()}else{$alert("剩余积分不足，奖励积分失败！")}}.bind(this));U.close()}.bind(this)},{title:"取消",buttonStyle:"btn_square ml9",callback:function(U){U.close()}.bind(this)}]})}.bind(this));break;case"a_like":if(!this.ilike){groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"AddImageLike"),{},function(T){if(T.Success){$("likecount").innerHTML=parseInt($("likecount").innerHTML)+1;this.ilike=true}else{$alert(T.Message)}}.bind(this))}break;case"for_reply":if(Q=="true"){var N=S.id.split("_")[2];var O="p_replyReplyDiv_"+N;$(O).show();$("editreplytextarea_"+N).focus()}break;case"reply_reply":if(Q=="true"){var N=S.id.split("_")[2];var O="p_replyReplyDiv_"+N;$(O).show();$("editreplytextarea_"+N).focus()}break;case"edit":var N=S.id.split("_")[1];var B=$("content_"+N);var H=B.innerHTML;var G=$("foreditcontainer_"+N);var L=$("foredit_"+N);if(p_replyEditor!=null){p_replyEditor.dispose();$("foredit_"+p_replyEditor.container.id.split("_")[1]).hide()}p_replyEditor=new MTimeEditor({instanceId:"RPC",value:H,area:1,type:2,container:B});L.show();break;case"editreply":var N=S.id.split("_")[1];var F="content_"+N;var B=$(F).innerHTML;B=B.replace(/<br>/ig,"\r\n").replace(/&nbsp;/g," ");var G=$("foredit_"+N);$(F).hide();$("editreplytextarea_"+N).value=B;G.show();break;case"del":var N=S.id.split("_")[1];$confirm("确定要删除所选的回复?",function(){groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"DelTopicReply"),{replyID:N},function(T){if(T.Success){this.pageRefresh()}else{$alert(T.Message)}}.bind(this))}.bind(this));break;case"cancel":var N=S.id.split("_")[1];var O="p_replyReplyDiv_"+N;$(O).hide();break;case"subReply":var N=S.id.split("_")[1];var J="editreplytextarea_"+N;var P=$(J).value;if(P.length>0&&this.isValid(N)&&this.isValid(C)&&this.isValid(A)&&this.isValid(M)){groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"AddTopicReplyReply"),{replyID:N,content:P},function(T){if(T.Success){this.pageRefresh()}else{$alert(T.Message)}}.bind(this),S,"post")}break;case"subeditreplyr":var N=S.id.split("_")[1];var F="editreplytextarea_"+N;var B=$(F).value;var G=$("foredit_"+N);if(B.length>0){groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"EditTopicReply"),{replyID:N,content:B,isReplyReply:true},function(T){if(T.Success){this.pageRefresh()}else{$alert(T.Message)}}.bind(this),G,"post")}break;case"editreplycancel":var N=S.id.split("_")[1];var O="foredit_"+N;$(O).hide();$("content_"+N).show();break;case"editcancel":var N=S.id.split("_")[1];var O="foredit_"+N;var L=$("content_"+N);if(p_replyEditor!=null&&L!=null){var I=p_replyEditor.value;p_replyEditor.dispose();p_replyEditor=null;L.innerHTML=I}$(O).hide();break;case"subeditreply":var N=S.id.split("_")[1];var G=$("foredit_"+N);var P=p_replyEditor.getValue();if(P.length>0){groupAjax.callBack(String.format(this.topicCallbackStr,C,A,M,"EditTopicReply"),{replyID:N,content:P,isReplyReply:false},function(T){if(T.Success){this.pageRefresh()}else{$alert(T.Message)}}.bind(this),G,"post")}break;case"replyclick":p_editor.focus();break}},onClickReplyBtn:function(B){var G=Event.element(B);var A=$("rel").value.split("|");var D=A[0];var E=A[1];var C=A[2];if(p_editor!=null&&!p_editor.isEmpty()){var F=p_editor.getValue();if(F.length>0){groupAjax.callBack(String.format(this.topicCallbackStr,D,E,C,"AddTopicReply"),{content:F},function(H){if(H.Success){this.pageRefresh()}else{$alert(H.Message)}}.bind(this),G,"post")}}},pageRefresh:function(){var A=window.location.href;if(A.indexOf("#")>0){window.location.href=A.substring(0,A.indexOf("#"))}else{window.location.href=A}},pf_getRadioValue:function(D){var A=null;if(D!=null){for(var B=0,C=D.length;B<C;B++){if(D[B]!=null&&D[B].checked){A=D[B].value;break}}}return A},pf_signinValid:function(A){if(A>0){return true}else{manager.signIn();return false}},LoadPageSubArea:function(A){if($(A)&&this.isValid($(A).readAttribute("groupId"))){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+$(A).readAttribute("groupId")+"&ajax=1&m=GetPageSubArea",{pageSubArea:$(A).readAttribute("pageSubArea")},function(B){$(A).innerHTML=B})}},pf_joinGroup_GroupCommon:function(B,A){if(this.pf_signinValid(B)&&this.isValid(B)&&this.isValid(A)){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+A+"&ajax=1&m=GetGroupJoinRule",{userId:B,groupId:A},this.pf_joinGroup_GroupCommon_Callback.bind(this))}},pf_joinGroup_GroupCommon_Callback:function(A){if(A){if(A[1]==1){this.pf_joinGroup(A[2],A[3],"")}else{if(A[1]==-2){$alert("你已经是群组成员！");this.fixChrome()}else{if(A[1]==-3){this.pf_giveJoinGroupWords(A[2],A[3],A[0])}else{if(A[1]==0){$alert("加入请求操作失败，请重新操作！");this.fixChrome()}}}}}else{$alert("加入请求操作失败，请重新操作！");this.fixChrome()}},pf_giveJoinGroupWords:function(C,B,A){var E=new StringBuilder();E.append('<div><div id="p_joinGroupWindow-TipDiv" style="display:none;">理由不能超过');E.append(A/2);E.append("个汉字或者");E.append(A);E.append("个英文字符!请重新输入</div>");E.append('<p><textarea id="p_joinGroupWordsTextArea"  cols="40" rows="3" class="txt01" onfocus="this.className=\'txt02\'" onblur="this.className=\'txt01\'" ></textarea></p>');E.append('<div class="baseline"> ');E.append(" </div></div>");var D=E.toString();E=null;new Dialog({windowStyle:"width: 324px;",title:'<h3 class="px14">加入理由：</h3>',containerClassName:"p12",content:D,buttonRegionClass:"mt10 tc",buttons:[{title:"确 定",buttonStyle:"btn_square_hover mr10",callback:function(F){var I=$("p_joinGroupWordsTextArea");if(I!=null){if(I.value.Trim().bytelength()<=A){var G=I.value.Trim();F.close();this.pf_joinGroup(C,B,G)}else{var H=$("p_joinGroupWindow-TipDiv");if(H!=null){H.show();window.setTimeout('if($("p_joinGroupWindow-TipDiv"))$("p_joinGroupWindow-TipDiv").hide();',3000)}}}}.bind(this)},{title:"取 消",buttonStyle:"btn_square",callback:function(F){F.close()}.bind(this)}]});this.fixChrome()},pf_joinGroup:function(B,A,C){if(this.isValid(B)&&this.isValid(A)){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+A+"&ajax=1&m=JoinGroupByDescription",{userId:B,groupId:A,description:C},this.pf_joinGroup_Callback.bind(this))}},pf_joinGroup_Callback:function(A){if(A==1){$alert("你已成功加入这个小组！");this.fixChrome();this.pageRefresh()}else{if(A==-1){$alert("您最多只能加入200个群组！");this.fixChrome()}else{if(A==-2){$alert("你已经是群组成员！");this.fixChrome()}else{if(A==-3){$alert("加入请求已发送，请等待管理员批准通过！");this.fixChrome()}else{if(A==-4){$alert("你已被管理员放入群组黑名单中，暂无法加入和退出该群组");this.fixChrome()}else{$alert("加入请求操作失败，请重新操作！");this.fixChrome()}}}}}},pf_leaveGroup_GroupCommon:function(B,A,C){$confirm("确定要退出"+C+"群组么？",function(){this.pf_leaveGroup(B,A)}.bind(this));this.fixChrome()},pf_leaveGroup:function(B,A){if(this.isValid(B)&&this.isValid(A)){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+A+"&ajax=1&m=LeaveGroup",{userId:B,groupId:A},this.pf_leaveGroup_GroupCommon_Callback.bind(this))}},pf_leaveGroup_GroupCommon_Callback:function(A){if(A==1){this.pageRefresh()}},pf_search_GroupCommon:function(B){var C=$F("p_searchText");if(C.Trim()!=""){var D=$("p_searchSelect");var A=D.options[D.selectedIndex].value;B+=A+"/"+encodeURI(C.Trim())+"/";window.location=B}},pf_favoriteTopic_GroupCommon:function(A,B,D){if(this.pf_signinValid(A)){var C=new Favorite({windowId:"GroupTopicFav",userId:A,objectType:B,relatedId:D})}},pf_favoriteGroup_GroupCommon:function(A,B){if((typeof window.sidebar=="object")&&(typeof window.sidebar.addPanel=="function")){window.sidebar.addPanel(B,A,"")}else{window.external.AddFavorite(A,B)}},inviteFriendUser:function(B,A){if(this.isValid(A)&&this.isValid(B)){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+B+"&ajax=1&m=GetFriendUserData",{groupID:B,userID:A},function(C){if(C.length==0){$alert("对不起，你暂时没有需要邀请的好友！")}else{var D=new InviteUserPopupWindow(C);D.onSaveHandler=function(E,G,F){groupAjax.callBack("/group/page/commonajax.aspx?groupstring="+B+"&ajax=1&m=GroupInviteByMember",{groupId:B,ids:E,emailList:G,messageText:F,userID:0},function(H){if(H){$alert("恭喜，已成功发送邀请！")}})}}})}},checkMailText:function(A){if($(A).value.length>0){if(!/(\S)+[@](\S)+[.](\w)+/.test(A.value)){$(A).next().show()}else{$(A).next().hide()}}},addMailText:function(D){var B=document.createElement("input");$(B).setAttribute("type","text");$(B).setAttribute("size","40");B.className="gray";$(B).observe("blur",function(){commonClient.checkMailText(B)}.bindAsEventListener(this));var C=document.createElement("span");C.style.display="none";C.className="ml10 gray";C.innerHTML="&nbsp;邮箱地址有误，请重新输入";$("p_maillist").appendChild(B);$("p_maillist").appendChild(C);var A=$("p_maillist").getElementsBySelector("input").length;$("p_maillist").getElementsBySelector("input")[A-1].focus()},isValid:function(A){if(typeof (A)=="undefined"||A==undefined||A==null||A==""){return false}return true},fixChrome:function(){if(navigator.appName=="Netscape"&&navigator.userAgent.indexOf("Chrome")!=-1){document.getElementById("contentEnd").childNodes[0].childNodes[0].style.width="";var A=document.getElementById("contentEnd").childNodes[0].childNodes[0].className;document.getElementById("contentEnd").childNodes[0].childNodes[0].className="";document.getElementById("contentEnd").childNodes[0].childNodes[0].className=A}},isDirty:function(){return false},render:function(){},close:function(){this.destroyEvent();this.destroyDOM()}});var commonClient=null;$DOMReady(function(){commonClient=new GroupCommonClient()});var InviteUserPopupWindow=Class.create();Object.extend(InviteUserPopupWindow.prototype,{onSaveHandler:function(A,C,B){},initialize:function(A){this.friendList=A;var B='<div class="ml10"><ul class="m_col2"><li><h4>请选择好友</h4><p class="mt5"><input type="text" id="m_searchFriendText" onblur="this.className=\'gray\'" onfocus="this.className=\'\'" class="gray" size="32" value="请输入好友昵称进行搜索"/> </p><div id="m_friendRegion" class="m_gnoflist"><div id="m_friendItemTemplate" class="none"><p><input type="checkbox" friendId="#{Id}" friendTitle="#{Title}" friendArea="#{Area}" friendEmail="#{Email}"/>#{Title}(#{Area})</p></div></div></li><li><h4>已选好友</h4><div id="m_selectFriendRegion" class="m_gflist"><div id="m_selectedFriendItemTemplate" class="none"><p><img friendId="#{Id}" friendTitle="#{Title}" friendArea="#{Area}" friendEmail="#{Email}" onmouseout="this.className=\'icon_01 fr\'" onmouseover="this.className=\'icon_on01 fr\'" class="icon_01 fr" alt="关闭" src="/images/transparent.gif"/>#{Title}(#{Area}) </p></div></div><p class="mt10"><textarea id="m_messageTextArea" class="txt07" rows="6" cols="32">想对你的好友说点什么...</textarea></p><p class="mt20"><input id="m_saveButton" type="button" class="btn08" value="发送邀请"/></p></li></ul><div class="clear"></div></div>';this.searchObjectPopupWindow=new Dialog({windowStyle:"width: 500px;",title:'<h3 class="px14">邀请好友</h3>',containerClassName:"p12",content:B,buttonRegionClass:"mt10 tc",onClickCloseCallback:function(){this.close()}.bind(this)});this.saveButton=$("m_saveButton");this.friendItemTemplate=$("m_friendItemTemplate");this.selectedFriendItemTemplate=$("m_selectedFriendItemTemplate");this.messageTextArea=$("m_messageTextArea");this.saveButton.observe("click",this.saveHandler.bind(this));this.friendSearchBox=new SearchBox({textId:"m_searchFriendText",textWatermarkText:"请输入好友昵称进行搜索",resultRegionId:"m_friendRegion",itemTemplate:this.friendItemTemplate.innerHTML,searchDatas:this.friendList,onClickResultRegion:this.onClickFriendRegion.bindAsEventListener(this)});this.selectedFriendSearchBox=new SearchBox({resultRegionId:"m_selectFriendRegion",itemTemplate:this.selectedFriendItemTemplate.innerHTML,searchDatas:[],onClickResultRegion:this.onClickSelectedFriendRegion.bindAsEventListener(this)})},saveHandler:function(){var A=this.selectedFriendSearchBox.getSearchData(),D=[],E=[];for(var B=0,C=A.length;B<C;B++){D.push(A[B].Id)}for(var B=0,C=A.length;B<C;B++){E.push(A[B].Email)}this.onSaveHandler(D.join("|"),E.join("|"),this.messageTextArea.value);this.searchObjectPopupWindow.close();this.close()},onClickFriendRegion:function(B){var D=Event.element(B);var C=D.readAttribute("friendId");if(this.selectedFriendSearchBox.getSearchData().length>=6){$alert("每次邀请最多只能邀请六位好友！")}else{if(C&&C>0){var A=D.readAttribute("friendTitle");var F=D.readAttribute("friendArea");var E=D.readAttribute("friendEmail");this.friendSearchBox.removeSearchData(D.parentNode,C);this.selectedFriendSearchBox.addSearchData({Id:C,Title:A,Area:F,Email:E})}}},onClickSelectedFriendRegion:function(B){var D=Event.element(B);var C=D.readAttribute("friendId");if(C&&C>0){var A=D.readAttribute("friendTitle");var F=D.readAttribute("friendArea");var E=D.readAttribute("friendEmail");this.selectedFriendSearchBox.removeSearchData(D.parentNode,C);this.friendSearchBox.addSearchData({Id:C,Title:A,Area:F,Email:E})}},close:function(){this.friendList=null;this.saveButton=null;this.friendItemTemplate=null;this.selectedFriendItemTemplate=null;this.messageTextArea=null;this.friendSearchBox.close();this.friendSearchBox=null;this.selectedFriendSearchBox.close();this.selectedFriendSearchBox=null}});var SearchBox=Mtime.Control.SearchBox;SearchBox=Class.create();SearchBox.prototype={hasFocus:false,changed:false,active:false,searchIndex:0,scrollTop:0,usedSearchDataIds:[],options:{textId:"",textWatermarkText:"",resultRegionId:"",searchDatas:[],itemTemplate:"",choiceCount:15,onRender:null,onClickResultRegion:null},setOptions:function(A){Object.extend(Object.extend(this,this.options),A)},initialize:function(A){this.setOptions(A);this.initializeDOM();this.initializeEvent();this.itemTemplate=new Template(this.itemTemplate);this.scrollTop=this.getScrollTop();this.render()},initializeDOM:function(){this.text=$(this.textId);if(this.text!=null){this.text.setAttribute("autocomplete","off")}this.resultRegion=$(this.resultRegionId)},destroyDOM:function(){this.text=null;this.resultRegion=null},initializeEvent:function(){this.onBlurTextHandler=this.onBlurText.bindAsEventListener(this);if(this.text!=null){this.text.observe("blur",this.onBlurTextHandler)}this.onFocusTextHandler=this.onFocusText.bindAsEventListener(this);if(this.text!=null){this.text.observe("focus",this.onFocusTextHandler)}this.onKeypressTextHandler=this.onKeypressText.bindAsEventListener(this);if(this.text!=null){this.text.observe("keyup",this.onKeypressTextHandler)}this.onScrollResultRegionHandler=this.onScrollResultRegion.bindAsEventListener(this);this.resultRegion.observe("scroll",this.onScrollResultRegionHandler);if(this.onClickResultRegion){this.resultRegion.observe("click",this.onClickResultRegion)}},removeEvent:function(){if(this.text!=null){this.text.stopObserving("blur",this.onBlurTextHandler);this.text.stopObserving("focus",this.onFocusTextHandler);this.text.stopObserving("keyup",this.onKeypressTextHandler)}this.resultRegion.stopObserving("scroll",this.onScrollResultRegionHandler);if(this.onClickResultRegion){this.resultRegion.stopObserving("click",this.onClickResultRegion)}},onFocusText:function(){this.hasFocus=true;var A=this.text;A.removeClassName("gray");if(A.value==this.textWatermarkText){A.value=""}},onBlurText:function(){this.hasFocus=false;var A=this.text;A.addClassName("gray");if(A.value==""){A.value=this.textWatermarkText}},onKeypressText:function(A){this.scrollTop=this.getScrollTop();this.searchIndex=0;this.usedSearchDataIds.clear();this.render()},onScrollResultRegion:function(A){var B=this.getScrollTop();if(B>this.scrollTop){if(!this.active){this.active=true;this.scrollTop=B;this.getMoreResult();this.active=false}}},getMoreResult:function(){this.resultRegion.innerHTML+=this.getSearchResults(this.getSearchText())},render:function(){this.resultRegion.update(this.getSearchResults(this.getSearchText()))},removeSearchData:function(D,G){var A=this.searchDatas,E=null,B=0;for(var C=0,F=A.length;C<F;C++){E=A[C];if(E.Id==G){B=C;break}}A.splice(B,1);this.searchDatas=A;this.resultRegion.removeChild(D);this.getMoreResult()},addSearchData:function(A){this.searchDatas.push(A);this.usedSearchDataIds.push(A.Id);new Insertion.Top(this.resultRegion,this.getSearchResult(A.Id,A.Title,A.Area,A.Email,this.itemTemplate))},getSearchData:function(){return this.searchDatas},getSearchText:function(){if(this.text==null||this.text.value==this.textWatermarkText){return""}return this.text.value},getSearchResults:function(searchText){var searchTextLength=searchText.length,choiceCount=this.choiceCount,searchDatas=this.searchDatas,searchData=null,results=[],resultBuilder=new StringBuilder(),resultCount=0,itemTemplate=this.itemTemplate,getSearchResult=this.getSearchResult;for(var i=this.searchIndex,count=searchDatas.length;i<count&&resultCount<choiceCount;i++){searchData=(typeof searchDatas[i]=="object")?searchDatas[i]:eval("("+searchDatas[i]+")");var title=searchData.Title;var id=searchData.Id;var area=searchData.Area;var email=searchData.Email;if(!this.usedSearchDataIds.include(id)){this.usedSearchDataIds.push(id);if(searchTextLength==0){resultBuilder.append(getSearchResult(id,title,area,email,itemTemplate));resultCount++}else{var foundPos=title.toLowerCase().indexOf(searchText.toLowerCase());if(foundPos!=-1){if(foundPos==0&&title.length!=searchText.length){title="<strong>"+title.substr(0,searchText.length)+"</strong>"+title.substr(searchText.length);resultBuilder.append(getSearchResult(id,title,area,email,itemTemplate));resultCount++}else{title=title.substr(0,foundPos)+"<strong>"+title.substr(foundPos,searchText.length)+"</strong>"+title.substr(foundPos+searchText.length);resultBuilder.append(getSearchResult(id,title,area,email,itemTemplate));resultCount++}}}this.searchIndex=i}}this.searchIndex++;return resultBuilder.toString()},getSearchResult:function(F,E,C,B,D){var A={Id:F,Title:E,Area:C,Email:B};return D.evaluate(A)},getScrollTop:function(){return Position.realOffset(this.resultRegion)[1]},close:function(){this.removeEvent();this.destroyDOM();this.usedSearchDataIds.clear()}};var groupAjax={MAX_REREQUEST_COUNT:2,_requestKeys:[],_requestErrorCounts:[],requestQueue:[],callBack:function(F,B,D,C,A){if(this.isValid(C)){this.addOverlay(C)}var E=true;if(!D||D==null){E=false}if(E){var G={clientCallBack:D,args:B,url:F,submitButton:C};if(this.inQueue(G)){return }this.requestQueue.push(G)}new Ajax.Request(F,{parameters:Hash.toQueryString(B),requestObj:G,method:!A||A==null?"get":"post",timeout:10000,onComplete:this.onComplete.bind(this)})},toQueryString:function(A){var E="";if(A){var C=[];for(var B=0,D=A.length;B<D;B++){C.push("&Ajax_CallBackArgument");C.push(B);C.push("=");C.push(encodeURIComponent(A[B]))}E=C.join("")}return E},inQueue:function(E){if(this.requestQueue.length>0){var D=this.requestQueue,C=null;for(var A=0,B=D.length;A<B;A++){C=D[A];if(C==E){return true}else{if(this.equal(C,E)){return true}}}return false}},dequeue:function(F){if(this.requestQueue.length>0){var E=this.requestQueue,D=null,A=-1;for(var B=0,C=E.length;B<C;B++){D=E[B];if(D==F){A=B;break}else{if(this.equal(D,F)){A=B;break}}}if(A>=0){E.splice(A,1)}}},equal:function(A,B){if(A.url==B.url&&A.args==B.args){return true}return false},onComplete:function(F,D,B){if(!Mtime.isEmpty(F.responseText)){var A=Mtime.Utility.JSON.toObject(F.responseText);var E=B.requestObj;this.dequeue(E);FunctionExt.defer(E.clientCallBack,1,null,[A]);E.clientCallBack=null;delete E.clientCallBack;var C=E.submitButton;if(this.isValid(C)){this.removeOverlay(C)}E=null;delete E;B.requestObj=null;delete B.requestObj}},isValid:function(A){if(!Mtime.isUndefined(A)&&!Mtime.isNull(A)&&!Mtime.isString(A)){return true}return false},addOverlay:function(D){if(typeof D==="undefined"||D===null){return }var E=new Date().getTime();var C="submitOverlay_"+E;var A=D.parentNode;var B=Element.extend(document.createElement("div"));B.id=C;B.className="submiting";$("contentEnd").appendChild(B);Position.clone(D,B);D._overlay=B},removeOverlay:function(A){if(typeof A==="undefined"||A===null){return }if(A._overlay){$("contentEnd").removeChild(A._overlay);A._overlay=null}}};var SuccessBox=Class.create();Object.extend(Object.extend(SuccessBox.prototype,BoxBase.prototype),{initializeBox:function(){var A=new StringBuilder();A.append('<div class="info_border_b">');A.append('<p class="c_green bold px14 lh25 clearfix"><span class="right2">&nbsp;</span>保存成功</p>');A.append('<div style="margin-left:40px;">');for(var B=0,C=this.messages.length;B<C;++B){A.append(String.format('<p class="mt6">{0}</p>',this.messages[B]))}A.append("</div>");A.append("</div>");this.boxRegion.innerHTML=A.toString()},destroyBox:function(){}});var FailureBox=Class.create();Object.extend(Object.extend(FailureBox.prototype,BoxBase.prototype),{initializeBox:function(){var A=new StringBuilder();A.append('<div class="info_border_o">');A.append('<p class="px14 c_red bold clearfix lh25"><span class="error2 mt3">&nbsp;</span>信息有误</p>');A.append('<div style="margin-left:40px;">');for(var B=0,C=this.messages.length;B<C;++B){A.append(String.format('<p class="mt6">{0}</p>',this.messages[B]))}A.append("</div>");A.append("</div>");this.boxRegion.innerHTML=A.toString()},destroyBox:function(){}});