public void OnUserActivated(object sender, UserAccountEventArgs args) { if (args.UserType == UserType.Member) { _membersHandler.OnMemberActivated(args.UserId); } }
/// <summary> /// Handles the UserAccountEventArgs received. /// </summary> /// <param name="userAccountEventArgs">User Account Event Args</param> public void handleUserAccountEventArgs(UserAccountEventArgs userAccountEventArgs) { IEnumerable <IUserAccountView> views = new List <IUserAccountView>(); switch (userAccountEventArgs.UserAccountActionType) { case UserAccountActionType.UpdateUsers: case UserAccountActionType.AddUser: case UserAccountActionType.AddUserFailed: case UserAccountActionType.EditUser: case UserAccountActionType.EditUserFailed: case UserAccountActionType.UnlockUser: case UserAccountActionType.UnlockUserFailed: case UserAccountActionType.DeleteUser: case UserAccountActionType.DeleteUserFailed: case UserAccountActionType.SearchUsers: views = GetViews <IUserAccountView>(); break; } foreach (IUserAccountView view in views) { view.UserAccountAction (userAccountEventArgs.UserAccountActionType, userAccountEventArgs.UserAccounts, userAccountEventArgs.UserAccountLoggedIn, userAccountEventArgs.UserAccountActionMessage); } }
public void OnUserDisabled(object sender, UserAccountEventArgs e) { if (e.UserType == UserType.Member) { Update(e.UserId); } }
/// <summary> /// Search for Users /// </summary> /// <param name="clientSearchCriteria">Search criteria.</param> /// <param name="keyWord">Search key word.</param> public void SearchUser( DCU.Enums.UserInfoSearchCriteria clientSearchCriteria, string keyWord) { // 1.) Get Service IUserManagementServices userManagementServices = ComponentManager.GetComponent <IUserManagementServices>(); // 2.) Create Request DCO.Enums.UserInfoSearchCriteriaEnum coreSearchCriteria = UserAccountConverter.ConvertToCoreUserInfoSearchCriteria(clientSearchCriteria); UserManagementRequest request = UserManagementHelper.CreateUserManagementRequest( UserManagementActionType.SearchUsers, searchKeyWord: keyWord, userInfoSearchCriteria: coreSearchCriteria); // 3.) Send Request UserManagementResponse response = userManagementServices.UserManagementHandleRequest(request); // 4.) Handle Response List <DCO.Objects.UserAccount> coreUserAccounts = response.UserAccountsRetrieved; List <DCU.Objects.UserAccount> clientUserAccounts = new List <DCU.Objects.UserAccount>(); foreach (DCO.Objects.UserAccount coreUserAccount in coreUserAccounts) { clientUserAccounts.Add(UserAccountConverter.CovertToClientUserAccount(coreUserAccount)); } // Get the logged in user account that was used by the server // when handling the request. DCU.Objects.UserAccount clientUserAccountLoggedIn = UserAccountConverter.CovertToClientUserAccount(response.RequestorUserAccount); UserAccountEventArgs userAccountEventArgs = createUserAccountEventArgs( UserAccountActionType.SearchUsers, clientUserAccounts, clientUserAccountLoggedIn, response.ResponseErrorMessage); // Broadcast to UserAccountEventArgs that a search user was triggered. EventBus <UserAccountEventArgs> .Broadcast( this, userAccountEventArgs); }
/// <summary> /// Unlocks a User Account /// </summary> /// <param name="userAccount">User Account to be unlocked.</param> public void UnlockUser(DCU.Objects.UserAccount userAccount) { // 1.) Get Service IUserManagementServices userManagementServices = ComponentManager.GetComponent <IUserManagementServices>(); // 2.) Create Request UserManagementRequest request = UserManagementHelper.CreateUserManagementRequest( UserManagementActionType.UnlockUser, UserAccountConverter.CovertToCoreUserAccount(userAccount)); // 3.) Send Request UserManagementResponse response = userManagementServices.UserManagementHandleRequest(request); // 4.) Handle Response UserAccountActionType userAccountActionType; string message; if (response.IsRequestSuccessful) { userAccountActionType = UserAccountActionType.UnlockUser; message = response.ResponseMessage; } else { userAccountActionType = UserAccountActionType.UnlockUserFailed; message = response.ResponseErrorMessage; } // Get the logged in user account that was used by the server // when handling the request. DCU.Objects.UserAccount clientUserAccountLoggedIn = UserAccountConverter.CovertToClientUserAccount(response.RequestorUserAccount); UserAccountEventArgs userAccountEventArgs = createUserAccountEventArgs( userAccountActionType, null, clientUserAccountLoggedIn, message); // Broadcast to UserAccountEventARgs that an unlock user was triggered. EventBus <UserAccountEventArgs> .Broadcast( this, userAccountEventArgs); }
/// <summary> /// Updates User Accounts /// </summary> /// <param name="actionType">Action Type</param> public void UpdateUsers( UserAccountActionType actionType = UserAccountActionType.UpdateUsers) { // 1.) Get Service IUserManagementServices userManagementServices = ComponentManager.GetComponent <IUserManagementServices>(); // 2.) Create Request UserManagementRequest request = UserManagementHelper.CreateUserManagementRequest( UserManagementActionType.GetUsers); // 3.) Send Request UserManagementResponse response = userManagementServices.UserManagementHandleRequest(request); // 4.) Handle Response List <DCO.Objects.UserAccount> coreUserAccounts = response.UserAccountsRetrieved; List <DCU.Objects.UserAccount> clientUserAccounts = new List <DCU.Objects.UserAccount>(); foreach (DCO.Objects.UserAccount coreUserAccount in coreUserAccounts) { clientUserAccounts.Add(UserAccountConverter.CovertToClientUserAccount(coreUserAccount)); } // Get the logged in user account that was used by the server // when handling the request. DCU.Objects.UserAccount clientUserAccountLoggedIn = UserAccountConverter.CovertToClientUserAccount(response.RequestorUserAccount); UserAccountEventArgs userAccountEventArgs = createUserAccountEventArgs( actionType, clientUserAccounts, clientUserAccountLoggedIn, response.ResponseErrorMessage); // Broadcast to UserAccountEventArgs that update users was triggered. EventBus <UserAccountEventArgs> .Broadcast( this, userAccountEventArgs); }
/// <summary> /// Edits a User Account /// </summary> /// <param name="userAccount">User Account to be edited.</param> public void EditUser(DCU.Objects.UserAccount userAccount) { // 1.) Get Service IUserManagementServices userManagementServices = ComponentManager.GetComponent <IUserManagementServices>(); // 2.) Create Request UserManagementRequest request = UserManagementHelper.CreateUserManagementRequest( UserManagementActionType.EditUser, UserAccountConverter.CovertToCoreUserAccount(userAccount)); // 3.) Send Request UserManagementResponse response = userManagementServices.UserManagementHandleRequest(request); // 4.) Handle Response if (response.IsRequestSuccessful) { // Broadcast to UserAccountEventArgs that add was successful. UpdateUsers(UserAccountActionType.EditUser); } else { // Get the logged in user account that was used by the server // when handling the request. DCU.Objects.UserAccount clientUserAccountLoggedIn = UserAccountConverter.CovertToClientUserAccount(response.RequestorUserAccount); UserAccountEventArgs userAccountEventArgs = createUserAccountEventArgs( UserAccountActionType.EditUserFailed, null, clientUserAccountLoggedIn, response.ResponseErrorMessage); // Broadcast to UserAccountEventArgs that add failed. EventBus <UserAccountEventArgs> .Broadcast( this, userAccountEventArgs); } }