123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690 |
- //
- // JXGroupManagementVC.m
- // shiku_im
- //
- // Created by p on 2018/5/28.
- // Copyright © 2018年 Reese. All rights reserved.
- //
- #import "JXGroupManagementVC.h"
- #import "JXRoomRemind.h"
- #import "JXSelFriendVC.h"
- #import "JXMsgViewController.h"
- #import "JXCopyRoomVC.h"
- #import "CYGroupNameRankViewController.h"
- #define HEIGHT 50
- #define IMGSIZE 170
- #define TAG_LABEL 1999
- @interface JXGroupManagementVC ()
- @property (nonatomic,strong) memberData * currentMember;
- @property (nonatomic, strong) JXImageView *GroupValidationBtn;
- @property (nonatomic, strong) UISwitch *GroupValidationSwitch;
- @property (nonatomic, strong) NSNumber *updateType;
- @property (nonatomic, assign) BOOL isMonitorPeople; // YES:监控人 NO: 隐身人
- @end
- @implementation JXGroupManagementVC
- - (void)viewDidLoad {
- [super viewDidLoad];
- // Do any additional setup after loading the view.
-
- self.heightHeader = JX_SCREEN_TOP;
- self.heightFooter = 0;
- self.isGotoBack = YES;
- self.title = Localized(@"JX_GroupManagement");
- [self createHeadAndFoot];
- self.tableBody.backgroundColor = HEXCOLOR(0xF2F2F2);
-
- int membHeight = 0;
-
- JXImageView *iv;
- UILabel *label;
- // 群主管理权转让
- iv = [self createButton:Localized(@"JX_ManagerAreTransferred") drawTop:NO drawBottom:NO must:NO click:@selector(roomTransferAction)];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- membHeight = CGRectGetMaxY(iv.frame);
- // 设置管理员
- iv = [self createButton:Localized(@"JXRoomMemberVC_SetAdministrator") drawTop:YES drawBottom:NO must:NO click:@selector(specifyAdministrator)];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- membHeight = CGRectGetMaxY(iv.frame);
- // 设置隐身人
- // iv = [self createButton:Localized(@"JXDesignatedStealthMan") drawTop:YES drawBottom:NO must:NO click:@selector(specifyInvisibleMan)];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // membHeight = CGRectGetMaxY(iv.frame);
- // 设置监控人
- // iv = [self createButton:@"指定监控人" drawTop:NO drawBottom:YES must:NO click:@selector(specifyMonitorPeople)];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // membHeight = CGRectGetMaxY(iv.frame) + 10;
- if (self.room.userId == [MY_USER_ID intValue]) {
- //群复制
- iv = [self createButton:Localized(@"JX_One-clickReplicationNewGroups" ) drawTop:YES drawBottom:NO must:NO click:@selector(onCopyRoom)];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- membHeight = CGRectGetMaxY(iv.frame) + 10;
- }
-
- if (self.room.userId == [MY_USER_ID intValue]) {
- //对群成员备注
- iv = [self createButton:@"对群成员备注" drawTop:NO drawBottom:YES must:NO click:@selector(roomEG)];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- membHeight = CGRectGetMaxY(iv.frame) + 1;
-
- // //群头衔设置
- // iv = [self createButton:@"群头衔设置" drawTop:NO drawBottom:YES must:NO click:@selector(roomNameSetting)];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // membHeight = CGRectGetMaxY(iv.frame) + 10;
- }
-
- if (![g_config.isOpenRoomSearch boolValue]) {
- // 私密群组
- // iv = [self createButton:Localized(@"JX_PrivateGroups") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2457 isOn:self.room.isLook];
- // label = [self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_CannotBeSearched")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
- }
-
- // 显示已读人数
- iv = [self createButton:Localized(@"JX_RoomShowRead") drawTop:NO drawBottom:NO must:NO click:nil];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- [self createSwitchWithParent:iv tag:2456 isOn:self.room.showRead];
- label = [self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_ReadPeopleList")];
- membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 群验证
- // iv = [self createButton:Localized(@"JX_GroupInvitationConfirmation") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2458 isOn:self.room.isNeedVerify];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_IntoGroupNeedManager")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
- //
- iv = [self createButton:@"群消息防撤回" drawTop:NO drawBottom:YES must:NO click:nil];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- [self createSwitchWithParent:iv tag:2001 isOn:self.room.isAttritionRecall];
- label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 2 text:@"启用后,群组成员(除群主外)发送的消息不可撤回"];
- membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 显示群成员列表
- iv = [self createButton:Localized(@"JX_DisplayGroupMemberList") drawTop:NO drawBottom:NO must:NO click:nil];
- iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- [self createSwitchWithParent:iv tag:2459 isOn:self.room.showMember];
- label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_OnlyShowManager")];
- membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 允许普通成员私聊
- // iv = [self createButton:Localized(@"JX_AllowMemberChat") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2460 isOn:self.room.allowSendCard];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_ShowDefaultIcon")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 允许普通群成员邀请好友
- // iv = [self createButton:Localized(@"JX_AllowInviteFriend") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2461 isOn:self.room.allowInviteFriend];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_NotInviteFunction")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 允许普通群成员上传文件
- // iv = [self createButton:Localized(@"JX_AllowMemberToUpload") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2462 isOn:self.room.allowUploadFile];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_AllowMemberNotUpload")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
- //
-
- // 允许普通群成员召开会议
- // iv = [self createButton:Localized(@"JX_InitiateMeeting") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2463 isOn:self.room.allowConference];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_NotInitiateMeeting")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
-
- // 允许普通群成员发起讲课
- // iv = [self createButton:Localized(@"JX_InitiateLectures") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2464 isOn:self.room.allowSpeakCourse];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_NotInitiateLectures")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
-
-
- // 群组减员发送通知
- // iv = [self createButton:Localized(@"JX_GroupReduction") drawTop:NO drawBottom:NO must:NO click:nil];
- // iv.frame = CGRectMake(0, membHeight, JX_SCREEN_WIDTH, HEIGHT);
- // [self createSwitchWithParent:iv tag:2465 isOn:self.room.isAttritionNotice];
- // label =[self createLabelWithParent:self.tableBody frameY:CGRectGetMaxY(iv.frame) + 10 text:Localized(@"JX_NotGroupReduction")];
- // membHeight = CGRectGetMaxY(label.frame) + 10;
-
- self.tableBody.contentSize = CGSizeMake(0, CGRectGetMaxY(label.frame) + 10);
-
- }
- - (void)onCopyRoom {
- JXCopyRoomVC *vc = [[JXCopyRoomVC alloc] init];
- vc.room = self.room;
- [g_navigation pushViewController:vc animated:YES];
- }
- -(void)roomEG{
- NSLog(@"群成员备注");
-
-
- }
- -(void)roomNameSetting{
- NSLog(@"群头衔设置");
- // self.room.isAttritionRecall;
- CYGroupNameRankViewController *vc = [[CYGroupNameRankViewController alloc] init];
- vc.room = self.room;
- vc.isOpenIntegral = self.room.isOpenIntegral;
- [g_navigation pushViewController:vc animated:YES];
-
- }
- -(JXImageView*)createButton:(NSString*)title drawTop:(BOOL)drawTop drawBottom:(BOOL)drawBottom must:(BOOL)must click:(SEL)click{
- JXImageView* btn = [[JXImageView alloc] init];
- btn.backgroundColor = [UIColor whiteColor];
- btn.userInteractionEnabled = YES;
- if(click)
- btn.didTouch = click;
- else
- btn.didTouch = @selector(hideKeyboard);
- btn.delegate = self;
- [self.tableBody addSubview:btn];
-
- if(must){
- UILabel* p = [[UILabel alloc] initWithFrame:CGRectMake(INSETS, 5, 20, HEIGHT-5)];
- p.text = @"*";
- p.font = g_factory.font18;
- p.backgroundColor = [UIColor clearColor];
- p.textColor = [UIColor redColor];
- p.textAlignment = NSTextAlignmentCenter;
- [btn addSubview:p];
- }
-
- JXLabel* p = [[JXLabel alloc] initWithFrame:CGRectMake(15, 0, 200, HEIGHT)];
- p.text = title;
- p.font = g_factory.font15;
- p.backgroundColor = [UIColor clearColor];
- p.textColor = [UIColor blackColor];
-
- [btn addSubview:p];
-
- if(drawTop){
- UIView* line = [[UIView alloc] initWithFrame:CGRectMake(15,0,JX_SCREEN_WIDTH-15,LINE_WH)];
- line.backgroundColor = THE_LINE_COLOR;
- [btn addSubview:line];
- }
-
- if(drawBottom){
- UIView* line = [[UIView alloc]initWithFrame:CGRectMake(15,HEIGHT-LINE_WH,JX_SCREEN_WIDTH-15,LINE_WH)];
- line.backgroundColor = THE_LINE_COLOR;
- [btn addSubview:line];
- }
-
- if(click){
- UIImageView* iv;
- iv = [[UIImageView alloc] initWithFrame:CGRectMake(JX_SCREEN_WIDTH-15-7, (HEIGHT-13)/2, 7, 13)];
- iv.image = [UIImage imageNamed:@"new_icon_>"];
- [btn addSubview:iv];
- }
- return btn;
- }
- - (UISwitch *)createSwitchWithParent:(UIView *)parent tag:(NSInteger)tag isOn:(BOOL)isOn{
- UISwitch *switchView = [[UISwitch alloc] init];
- switchView.frame = CGRectMake(JX_SCREEN_WIDTH-INSETS-51,0,0,0);
- switchView.center = CGPointMake(switchView.center.x, parent.frame.size.height/2);
- switchView.tag = tag;
- switchView.on = isOn;
- switchView.onTintColor = THEMECOLOR;
- [switchView addTarget:self action:@selector(switchViewAction:) forControlEvents:UIControlEventValueChanged];
- [parent addSubview:switchView];
-
- return switchView;
- }
- - (UILabel *)createLabelWithParent:(UIView *)parent frameY:(CGFloat)framey text:(NSString *)text {
- CGSize size = [text boundingRectWithSize:CGSizeMake(JX_SCREEN_WIDTH - 20, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:13.0]} context:nil].size;
- UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(15, framey, JX_SCREEN_WIDTH - 20, size.height)];
- label.font = [UIFont systemFontOfSize:13.0];
- label.textColor = [UIColor lightGrayColor];
- label.numberOfLines = 0;
- label.text = text;
- [parent addSubview:label];
-
- return label;
- }
- // 设置管理员
- -(void)specifyAdministrator{
- [self setManagerWithType:JXSelUserTypeSpecifyAdmin];
- }
- //设置隐身人
- - (void)specifyInvisibleMan {
- [self setManagerWithType:JXSelUserTypeRoomInvisibleMan];
- }
- // 设置监控人
- - (void)specifyMonitorPeople {
- [self setManagerWithType:JXSelUserTypeRoomMonitorPeople];
- }
- - (void)setManagerWithType:(JXSelUserType)type {
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- return;
- }
-
- JXSelFriendVC * selVC = [[JXSelFriendVC alloc] init];
- selVC.type = type;
- selVC.room = self.room;
- selVC.delegate = self;
- if (type == JXSelUserTypeSpecifyAdmin) {
- selVC.didSelect = @selector(specifyAdministratorDelegate:);
- }else if(type == JXSelUserTypeRoomInvisibleMan) {
- selVC.didSelect = @selector(specifyInvisibleManDelegate:);
- }else {
- selVC.didSelect = @selector(specifyMonitorPeopleDelegate:);
- }
- [g_navigation pushViewController:selVC animated:YES];
- }
- // 群主转让
- - (void)roomTransferAction {
- JXSelFriendVC * selVC = [[JXSelFriendVC alloc] init];
- selVC.room = _room;
- selVC.type = JXSelUserTypeRoomTransfer;
- selVC.delegate = self;
- selVC.didSelect = @selector(atSelectMemberDelegate:);
- [g_navigation pushViewController:selVC animated:YES];
- }
- -(void)atSelectMemberDelegate:(memberData *)member{
- _currentMember = member;
- [g_server roomTransfer:_room.roomId toUserId:[NSString stringWithFormat:@"%ld",member.userId] toView:self];
-
- // 更新数据库
- JXUserObject *user = [[JXUserObject alloc] init];
- user.userId = [NSString stringWithFormat:@"%ld",_room.userId];
- user.createUserId = [NSString stringWithFormat:@"%ld",member.userId];
- [user updateCreateUser];
- }
- // 指定管理员回调
- -(void)specifyAdministratorDelegate:(memberData *)member{
-
- _currentMember = member;
- int type;
- if ([member.role intValue] == 2) {
- type = 3;
- }else {
- type = 2;
- }
-
- [g_server setRoomAdmin:member.roomId userId:[NSString stringWithFormat:@"%ld",member.userId] type:type toView:self];
- }
- // 指定隐身人回调
- - (void)specifyInvisibleManDelegate:(memberData *)member {
- _currentMember = member;
- int type;
- if ([member.role intValue] == 3) {
- type = 4;
- }else {
- type = -1;
- }
- self.isMonitorPeople = NO;
- [g_server setRoomInvisibleGuardian:member.roomId userId:[NSString stringWithFormat:@"%ld",member.userId] type:type toView:self];
- }
- //指定监控人回调
- - (void)specifyMonitorPeopleDelegate:(memberData *)member {
- _currentMember = member;
- int type;
- if ([member.role intValue] == 3) {
- type = 5;
- }else {
- type = 0;
- }
- self.isMonitorPeople = YES;
- [g_server setRoomInvisibleGuardian:member.roomId userId:[NSString stringWithFormat:@"%ld",member.userId] type:type toView:self];
- }
- - (void)switchViewAction:(UISwitch *)switchView {
- switch (switchView.tag) {
- case 2456:
- [self readSwitchAction:switchView];
- break;
- case 2457:
- [self lookSwitchAction:switchView];
- break;
- case 2458:
- [self needVerifySwitchAction:switchView];
- break;
- case 2459:
- [self showMemberSwitchAction:switchView];
- break;
- case 2460:
- [self allowSendCardSwitchAction:switchView];
- break;
- case 2461:
- [self allowInviteFriendSwitchAction:switchView];
- break;
- case 2462:
- [self allowUploadFileSwitchAction:switchView];
- break;
- case 2463:
- [self allowConferenceSwitchAction:switchView];
- break;
- case 2464:
- [self allowSpeakCourseSwitchAction:switchView];
- break;
- case 2465:
- [self isAttritionNoticeSwitchAction:switchView];
- break;
- case 2001:
- NSLog(@"开启群消息防撤回");
- [self isAttritionRecallSwitchAction:switchView];
- break;
- default:
- break;
- }
- }
- // 显示已读人数
- -(void)readSwitchAction:(UISwitch *)readswitch{
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- [readswitch setOn:!readswitch.isOn];
- return;
- }
- self.updateType = [NSNumber numberWithInt:kRoomRemind_ShowRead];
- self.room.showRead = readswitch.on;
- [g_server updateRoomShowRead:self.room key:@"showRead" value:self.room.showRead toView:self];
- }
- // 进群验证
- - (void)needVerifySwitchAction:(UISwitch *)needVerifySwitch {
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- [needVerifySwitch setOn:!needVerifySwitch.isOn];
- return;
- }
- self.updateType = [NSNumber numberWithInt:kRoomRemind_NeedVerify];
- self.room.isNeedVerify = needVerifySwitch.on;
- [g_server updateRoomShowRead:self.room key:@"isNeedVerify" value:self.room.isNeedVerify toView:self];
- }
- // 私密群组群组
- - (void)lookSwitchAction:(UISwitch *)lookSwitch {
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- [lookSwitch setOn:!lookSwitch.isOn];
- return;
- }
- self.updateType = [NSNumber numberWithInt:2457];
- self.room.isLook = lookSwitch.on;
- [g_server updateRoomShowRead:self.room key:@"isLook" value:self.room.isLook toView:self];
- }
- // 显示群成员列表
- - (void)showMemberSwitchAction:(UISwitch *)showMemberSwitch {
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- [showMemberSwitch setOn:!showMemberSwitch.isOn];
- return;
- }
- self.updateType = [NSNumber numberWithInt:kRoomRemind_ShowMember];
- self.room.showMember = showMemberSwitch.on;
- [g_server updateRoomShowRead:self.room key:@"showMember" value:self.room.showMember toView:self];
- }
- // 允许发送名片
- - (void)allowSendCardSwitchAction:(UISwitch *)allowSendCardSwitch {
- memberData *data = [self.room getMember:g_myself.userId];
-
- if ([data.role intValue] != 1) {
- [g_App showAlert:Localized(@"JXRoomMemberVC_NotGroupMarsterCannotDoThis")];
- [allowSendCardSwitch setOn:!allowSendCardSwitch.isOn];
- return;
- }
-
- self.updateType = [NSNumber numberWithInt:kRoomRemind_allowSendCard];
- self.room.allowSendCard = allowSendCardSwitch.on;
- [g_server updateRoomShowRead:self.room key:@"allowSendCard" value:self.room.allowSendCard toView:self];
- }
- // 允许普通成员邀请好友
- - (void)allowInviteFriendSwitchAction:(UISwitch *)switchView {
- self.updateType = [NSNumber numberWithInt:kRoomRemind_RoomAllowInviteFriend];
- self.room.allowInviteFriend = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"allowInviteFriend" value:self.room.allowInviteFriend toView:self];
- }
- // 允许普通成员上传文件
- - (void)allowUploadFileSwitchAction:(UISwitch *)switchView {
- self.updateType = [NSNumber numberWithInt:kRoomRemind_RoomAllowUploadFile];
- self.room.allowUploadFile = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"allowUploadFile" value:self.room.allowUploadFile toView:self];
- }
- // 允许普通成员召开会议
- - (void)allowConferenceSwitchAction:(UISwitch *)switchView {
- self.updateType = [NSNumber numberWithInt:kRoomRemind_RoomAllowConference];
- self.room.allowConference = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"allowConference" value:self.room.allowConference toView:self];
- }
- // 允许普通成员开启讲课
- - (void)allowSpeakCourseSwitchAction:(UISwitch *)switchView {
- self.updateType = [NSNumber numberWithInt:kRoomRemind_RoomAllowSpeakCourse];
- self.room.allowSpeakCourse = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"allowSpeakCourse" value:self.room.allowSpeakCourse toView:self];
- }
- // 群减员通知
- - (void)isAttritionNoticeSwitchAction:(UISwitch *)switchView {
- // self.updateType = [NSNumber numberWithInt:kRoomRemind_RoomAllowSpeakCourse];
- self.room.isAttritionNotice = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"isAttritionNotice" value:self.room.isAttritionNotice toView:self];
- }
- - (void)isAttritionRecallSwitchAction:(UISwitch *)switchView{
- self.room.isAttritionRecall = switchView.on;
- [g_server updateRoomShowRead:self.room key:@"isAttritionRecall" value:self.room.isAttritionRecall toView:self];
- }
- -(void) didServerResultSucces:(JXConnection*)aDownload dict:(NSDictionary*)dict array:(NSArray*)array1{
- [_wait stop];
- if( [aDownload.action isEqualToString:act_UserGet] ){
- JXUserObject* user = [[JXUserObject alloc]init];
- [user getDataFromDict:dict];
- [self.room setNickNameForUser:user];
-
- // JXUserInfoVC* vc = [JXUserInfoVC alloc];
- // vc.user = user;
- // vc = [vc init];
- //// [g_window addSubview:vc.view];
- // [g_navigation pushViewController:vc animated:YES];
- // [user release];
- }
- if( [aDownload.action isEqualToString:act_roomSet] ){
-
- JXUserObject * user = [[JXUserObject alloc]init];
- user = [user getUserById:self.room.roomJid];
- user.showRead = [NSNumber numberWithBool:self.room.showRead];
- user.showMember = [NSNumber numberWithBool:self.room.showMember];
- user.allowSendCard = [NSNumber numberWithBool:self.room.allowSendCard];
- user.chatRecordTimeOut = self.room.chatRecordTimeOut;
- user.talkTime = [NSNumber numberWithLong:self.room.talkTime];
- user.allowInviteFriend = [NSNumber numberWithBool:self.room.allowInviteFriend];
- user.allowUploadFile = [NSNumber numberWithBool:self.room.allowUploadFile];
- user.allowConference = [NSNumber numberWithBool:self.room.allowConference];
- user.allowSpeakCourse = [NSNumber numberWithBool:self.room.allowSpeakCourse];
- user.isNeedVerify = [NSNumber numberWithBool:self.room.isNeedVerify];
- [user update];
-
- if ([self.updateType intValue] == kRoomRemind_ShowRead || [self.updateType intValue] == kRoomRemind_ShowMember || [self.updateType intValue] == kRoomRemind_allowSendCard || [self.updateType intValue] == kRoomRemind_RoomAllowInviteFriend || [self.updateType intValue] == kRoomRemind_RoomAllowUploadFile || [self.updateType intValue] == kRoomRemind_RoomAllowConference || [self.updateType intValue] == kRoomRemind_RoomAllowSpeakCourse) {
-
- JXRoomRemind* p = [[JXRoomRemind alloc] init];
- p.objectId = self.room.roomJid;
- switch ([self.updateType intValue]) {
- case kRoomRemind_ShowRead: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_ShowRead];
- p.content = [NSString stringWithFormat:@"%d",self.room.showRead];
- }
- break;
-
- case kRoomRemind_ShowMember: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_ShowMember];
- p.content = [NSString stringWithFormat:@"%d",self.room.showMember];
- }
- break;
-
- case kRoomRemind_allowSendCard: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_allowSendCard];
- p.content = [NSString stringWithFormat:@"%d",self.room.allowSendCard];
- }
- break;
- case kRoomRemind_RoomAllowInviteFriend: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_RoomAllowInviteFriend];
- p.content = [NSString stringWithFormat:@"%d",self.room.allowInviteFriend];
- }
- break;
- case kRoomRemind_RoomAllowUploadFile: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_RoomAllowUploadFile];
- p.content = [NSString stringWithFormat:@"%d",self.room.allowUploadFile];
- }
- break;
- case kRoomRemind_RoomAllowConference: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_RoomAllowConference];
- p.content = [NSString stringWithFormat:@"%d",self.room.allowConference];
- }
- break;
- case kRoomRemind_RoomAllowSpeakCourse: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_RoomAllowSpeakCourse];
- p.content = [NSString stringWithFormat:@"%d",self.room.allowSpeakCourse];
- }
- break;
-
- case kRoomRemind_RoomIsAttritionRecall: {
-
- p.type = [NSNumber numberWithInt:kRoomRemind_RoomIsAttritionRecall];
- p.content = [NSString stringWithFormat:@"%d",self.room.isAttritionRecall];
- }
- break;
-
- default:
- break;
- }
- [p notify];
- }
-
- [g_App showAlert:Localized(@"JXAlert_UpdateOK")];
- }
-
- if ([aDownload.action isEqualToString:act_roomSetAdmin]) {
- //设置群组管理员
- NSString *str;
- if ([_currentMember.role intValue] == 2) {
- _currentMember.role = [NSNumber numberWithInt:3];
- str = Localized(@"JXRoomMemberVC_CancelAdministratorSuccess");
- }else {
- _currentMember.role = [NSNumber numberWithInt:2];
- str = Localized(@"JXRoomMemberVC_SetAdministratorSuccess");
- }
- // [_currentMember updateRole];
- [g_server showMsg:str];
- }
-
- if ([aDownload.action isEqualToString:act_roomSetInvisibleGuardian]) {
- //设置群组隐身人、监控人
- NSString *str;
- if (self.isMonitorPeople) {
- if ([_currentMember.role intValue] == 3){
- _currentMember.role = [NSNumber numberWithInt:5];
- str = @"指定监控人成功";
- }else {
- _currentMember.role = [NSNumber numberWithInt:3];
- str = @"取消监控人成功";
- }
- }else {
- if ([_currentMember.role intValue] == 3) {
- _currentMember.role = [NSNumber numberWithInt:4];
- str = Localized(@"JX_SetInvisibleSuccessfully");
- }else{
- _currentMember.role = [NSNumber numberWithInt:3];
- str = Localized(@"JX_CancelInvisibleSuccessfully");
- }
- }
- [_currentMember updateRole];
- [g_server showMsg:str];
- }
-
- if ([aDownload.action isEqualToString:act_roomTransfer]) {
- //转让群主
-
- memberData *groupOwner = [memberData searchGroupOwner:self.room.roomId];
- groupOwner.role = [NSNumber numberWithInt:3];
- _currentMember.role = [NSNumber numberWithInt:1];
-
- [g_server showMsg:Localized(@"JX_ManagerAssignment")];
- [g_navigation popToRootViewController];
- }
- }
- -(int) didServerResultFailed:(JXConnection*)aDownload dict:(NSDictionary*)dict{
- [_wait stop];
- return show_error;
- }
- -(int) didServerConnectError:(JXConnection*)aDownload error:(NSError *)error{//error为空时,代表超时
- [_wait stop];
- return show_error;
- }
- -(void) didServerConnectStart:(JXConnection*)aDownload{
- [_wait start];
- }
- - (void)didReceiveMemoryWarning {
- [super didReceiveMemoryWarning];
- // Dispose of any resources that can be recreated.
- }
- /*
- #pragma mark - Navigation
- // In a storyboard-based application, you will often want to do a little preparation before navigation
- - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
- // Get the new view controller using [segue destinationViewController].
- // Pass the selected object to the new view controller.
- }
- */
- @end
|