public void onInfoUpdated(int paramInt) { if (paramInt == 3) if (this.mMessage != null) { UserProfile localUserProfile = UserProfileManager.getInstance().getUserProfile(this.mTalkingId); if (localUserProfile != null) this.mTalkingUserInfo = localUserProfile.getUserInfo(); } GroupInfo localGroupInfo; do { do return; while ((paramInt != 6) || (!ChatMode.isGroup()) || ((this.mAdmins != null) && (this.mAdmins.size() != 0))); localGroupInfo = IMAgent.getInstance().getGroupInfo(this.mTalkingId); } while (localGroupInfo == null); if ((localGroupInfo.lstAdmins != null) && (localGroupInfo.lstAdmins.size() > 0)) for (int i = 0; i < localGroupInfo.lstAdmins.size(); i++) this.mAdmins.add(((UserInfo)localGroupInfo.lstAdmins.get(i)).userKey); this.mHeadView.update("setData", localGroupInfo); this.mTalkingUserInfo = null; this.mTalkingGroupInfo = localGroupInfo; this.mTalkingBlocked = false; this.mMessage = null; }
private void sendMessage(String paramString, int paramInt) { if ((ChatMode.isGroup()) && (!IMContacts.getInstance().hasWatchedGroup(this.mTalkingId))) InfoManager.getInstance().getUserProfile().followGroup(this.mTalkingId); actualSendMessage(paramString, paramInt); }
private void actualSendMessage(String paramString, int paramInt) { int i = 4; if (this.mLoading) { this.mDatas.clear(); this.mLoading = false; } String str = InfoManager.getInstance().getUserProfile().getUserKey(); if (ChatMode.isGroup()) { if ((IMAgent.getInstance().isCheckin(paramInt)) && (this.mTalkingGroupInfo != null) && (!IMAgent.getInstance().hasCheckIn(this.mTalkingGroupInfo.groupId))) paramString = IMAgent.getInstance().getCheckinText(); IMAgent.getInstance().sendGroupMsg(paramString, this.mTalkingGroupInfo, paramInt); IMMessage localIMMessage2 = new IMMessage(); localIMMessage2.mMessage = paramString; localIMMessage2.chatType = 1; localIMMessage2.publish = (System.currentTimeMillis() / 1000L); long l2 = localIMMessage2.publish; if (l2 - this.mLastTimestamp >= 1800L) { this.mDatas.add(new ChatItem(32, getTimestampBySecond(l2))); this.mLastTimestamp = l2; } List localList2 = this.mDatas; if (isAdmin(str)); while (true) { localList2.add(new ChatItem(i, localIMMessage2)); IMContacts.getInstance().addRecentContacts(this.mTalkingGroupInfo); this.mAdapter.notifyDataSetChanged(); return; i = 1; } } if (this.mTalkingBlocked) { Toast.makeText(getContext(), "该账号已经被举报,无法接收消息", 1).show(); return; } IMAgent.getInstance().sendUserMsg(paramString, this.mTalkingUserInfo, paramInt); IMMessage localIMMessage1 = new IMMessage(); localIMMessage1.mMessage = paramString; localIMMessage1.chatType = 0; localIMMessage1.publish = (System.currentTimeMillis() / 1000L); long l1 = localIMMessage1.publish; if (l1 - this.mLastTimestamp >= 1800L) { this.mDatas.add(new ChatItem(32, getTimestampBySecond(l1))); this.mLastTimestamp = l1; } List localList1 = this.mDatas; if (isAdmin(str)); while (true) { localList1.add(new ChatItem(i, localIMMessage1)); IMContacts.getInstance().addRecentContacts(this.mTalkingUserInfo); break; i = 1; } }