/// <summary> /// Authenticate a user name and password /// </summary> /// <param name="email"></param> /// <param name="password"></param> /// <returns>User account if authenticated, otherwise null</returns> public AccountData Authenticate(string email, string password) { var authenRequest = new AuthenticationRequest() { PrincipalName = email, PrincipalPassword = password }; var account = AccountDataRepo.Read(authenRequest); return(account); }
/// <summary> /// Append attribute to base item when it is loaded /// </summary> /// <param name="item">Base item just read from datastore</param> public void OnItemRead(Item item) { var characterManager = ModuleManager.GetManager <IAccountCharacterManager>(); var characterData = characterManager.ReadByCharacter(item.Id); if (characterData != null) { var accountData = AccountDataRepo.Read(characterData.AccountId); // accountData.Password = null; item.Data.Add(accountData); } }
/// <summary> /// Delete an account and all associated account characters /// </summary> /// <param name="accountId"></param> public void Delete(Guid accountId) { var accountCharacterDatas = ModuleManager.GetManager <IAccountCharacterManager>() .ReadByAccount(accountId); var accountCharacterItemIds = accountCharacterDatas.Select(x => x.CharacterItemId).ToList(); if (accountCharacterItemIds.Count > 0) { ModuleManager.GetManager <IAccountCharacterManager>().Delete(accountCharacterItemIds); } var accountData = AccountDataRepo.Read(accountId); AccountDataRepo.Delete(accountData); }