public void UpdateRole(CommunityManagementRole role) { switch (role) { case CommunityManagementRole.Moderator: this.Description = CommonResources.CommunityManager_Moderator; break; case CommunityManagementRole.Editor: this.Description = CommonResources.CommunityManager_Editor; break; case CommunityManagementRole.Administrator: this.Description = CommonResources.CommunityManager_Administrator; break; case CommunityManagementRole.Creator: this.Description = CommonResources.CommunityManager_Creator; break; default: this.Description = ""; break; } }
public LinkHeader(User user, CommunityManagementRole currentUserRole, bool isManagement) { this.Id = user.id; this.Photo = user.photo_max; this.Title = user.Name; this.User = user; this.IsActionButtonEnabled = isManagement && (user.Role == CommunityManagementRole.Unknown || currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator) && (user.id != AppGlobalStateManager.Current.LoggedInUserId || currentUserRole == CommunityManagementRole.Administrator) && user.Role != CommunityManagementRole.Creator; this.ActionButtonVisibility = this.IsActionButtonEnabled.ToVisiblity(); base.NotifyPropertyChanged <bool>(() => this.IsActionButtonEnabled); base.NotifyPropertyChanged <Visibility>(() => this.ActionButtonVisibility); this.AddToManagersVisibility = (user.Role == CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity(); this.EditVisibility = (user.Role != CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity(); this.RemoveFromCommunityVisibility = (user.Role == CommunityManagementRole.Unknown || (currentUserRole == CommunityManagementRole.Administrator && user.id != AppGlobalStateManager.Current.LoggedInUserId) || currentUserRole == CommunityManagementRole.Creator).ToVisiblity(); this.BlockVisibility = (this.EditVisibility == Visibility.Collapsed).ToVisiblity(); this.UpdateRole(user.Role); }
public void EditManager(long communityId, long userId, CommunityManagementRole role, bool isContact, string position, string email, string phone, Action <BackendResult <int, ResultCode> > callback) { Dictionary <string, string> parameters = new Dictionary <string, string>() { { "group_id", communityId.ToString() }, { "user_id", userId.ToString() }, { "is_contact", isContact ? "1" : "0" }, { "contact_position", position }, { "contact_email", email }, { "contact_phone", phone } }; switch (role) { case CommunityManagementRole.Moderator: parameters.Add("role", "moderator"); break; case CommunityManagementRole.Editor: parameters.Add("role", "editor"); break; case CommunityManagementRole.Administrator: parameters.Add("role", "administrator"); break; } VKRequestsDispatcher.DispatchRequestToVK <int>("groups.editManager", parameters, callback, null, false, true, new CancellationToken?(), null); }
public LinkHeader(User user, CommunityManagementRole currentUserRole, bool isManagement) { //this.IsActionButtonEnabled = true; this._blockVisibility = Visibility.Visible; this.ActionButtonIcon = "/Resources/WallPost/CardActions.png"; this.ActionButtonSize = 56.0; Action <FrameworkElement> arg_5E_1 = new Action <FrameworkElement>(e => { ContextMenuService.GetContextMenu(e).IsOpen = true; }); this.ActionButtonAction = arg_5E_1; this.Id = user.id; this.Photo = user.photo_max; this.Title = user.Name; this.User = user; this.IsActionButtonEnabled = isManagement && (user.Role == CommunityManagementRole.Unknown || currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator) && user.id != AppGlobalStateManager.Current.LoggedInUserId && user.Role != CommunityManagementRole.Creator; this.ActionButtonVisibility = this.IsActionButtonEnabled.ToVisiblity(); this.NotifyPropertyChanged <bool>((System.Linq.Expressions.Expression <Func <bool> >)(() => this.IsActionButtonEnabled)); this.NotifyPropertyChanged <Visibility>((System.Linq.Expressions.Expression <Func <Visibility> >)(() => this.ActionButtonVisibility)); this.AddToManagersVisibility = (user.Role == CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity(); this.EditVisibility = (user.Role != CommunityManagementRole.Unknown && (currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator)).ToVisiblity(); this.RemoveFromCommunityVisibility = (user.Role == CommunityManagementRole.Unknown || currentUserRole == CommunityManagementRole.Administrator || currentUserRole == CommunityManagementRole.Creator).ToVisiblity(); this.BlockVisibility = (this.EditVisibility == Visibility.Collapsed).ToVisiblity(); this.UpdateRole(user.Role); }
public void SaveChanges(bool isRemoving, NavigationService navigationService) { CommunityManagementRole role = CommunityManagementRole.Unknown; if (!isRemoving) { bool?moderatorSelected = this.IsModeratorSelected; bool flag1 = true; if ((moderatorSelected.GetValueOrDefault() == flag1 ? (moderatorSelected.HasValue ? 1 : 0) : 0) != 0) { role = CommunityManagementRole.Moderator; } bool?isEditorSelected = this.IsEditorSelected; bool flag2 = true; if ((isEditorSelected.GetValueOrDefault() == flag2 ? (isEditorSelected.HasValue ? 1 : 0) : 0) != 0) { role = CommunityManagementRole.Editor; } bool?administratorSelected = this.IsAdministratorSelected; bool flag3 = true; if ((administratorSelected.GetValueOrDefault() == flag3 ? (administratorSelected.HasValue ? 1 : 0) : 0) != 0) { role = CommunityManagementRole.Administrator; } } EditingMode editingMode = this._isEditing ? EditingMode.Editing : EditingMode.Adding; if (isRemoving) { editingMode = EditingMode.Removing; } this.SetInProgress(true, ""); this.IsFormEnabled = false; GroupsService current1 = GroupsService.Current; long communityId = this._communityId; long id = this._manager.id; int num1 = (int)role; bool? isContact1 = this.IsContact; bool flag4 = true; int num2 = isContact1.GetValueOrDefault() == flag4 ? (isContact1.HasValue ? 1 : 0) : 0; string position1 = this.Position; string email1 = this.Email; string phone1 = this.Phone; Action <BackendResult <int, ResultCode> > callback = (Action <BackendResult <int, ResultCode> >)(result => Execute.ExecuteOnUIThread((Action)(() => { if (result.ResultCode == ResultCode.Succeeded) { EventAggregator current2 = EventAggregator.Current; CommunityManagerChanged communityManagerChanged = new CommunityManagerChanged(); communityManagerChanged.CommunityId = this._communityId; communityManagerChanged.ManagerId = this._manager.id; communityManagerChanged.EditingMode = editingMode; communityManagerChanged.Role = role; bool?isContact2 = this.IsContact; bool flag1 = true; int num3 = isContact2.GetValueOrDefault() == flag1 ? (isContact2.HasValue ? 1 : 0) : 0; communityManagerChanged.IsContact = num3 != 0; string position2 = this.Position; communityManagerChanged.Position = position2; string email2 = this.Email; communityManagerChanged.Email = email2; string phone2 = this.Phone; communityManagerChanged.Phone = phone2; User manager = this._manager; communityManagerChanged.User = manager; current2.Publish((object)communityManagerChanged); if (!this._isEditing && this._fromPicker) { navigationService.RemoveBackEntry(); } if (this._manager.id != VKClient.Common.Library.AppGlobalStateManager.Current.LoggedInUserId || role == CommunityManagementRole.Administrator) { Navigator.Current.GoBack(); } else if (role != CommunityManagementRole.Unknown) { Navigator.Current.NavigateToCommunityManagement(this._communityId, this._communityType, false); this._navigationService.RemoveBackEntry(); this._navigationService.RemoveBackEntry(); this._navigationService.RemoveBackEntry(); } else { this._navigationService.RemoveBackEntry(); this._navigationService.RemoveBackEntry(); Navigator.Current.GoBack(); } } else { this.SetInProgress(false, ""); this.IsFormEnabled = true; VKClient.Common.UC.GenericInfoUC.ShowBasedOnResult((int)result.ResultCode, "", null); } }))); current1.EditManager(communityId, id, (CommunityManagementRole)num1, num2 != 0, position1, email1, phone1, callback); }