public async Task <AuthorizedUserDto> LocalLogin(AuthorizedUserDto user, LoginTokenDto loginToken) { User = user; LoginToken = loginToken; // Remove all current credentials - this fixes problem when the credentials in the local storage are broken await _localStorageManagerService.RemoveLoginToken(); await _localStorageManagerService.RemoveLoginProfile(); // Save credentials to local storage await _localStorageManagerService.SetLoginProfile(user); await _localStorageManagerService.SetLoginToken(loginToken); // Set static state if (user.HasHomeStudyGroup) { _staticStateService.SetSelectedStudyGroup( new StudyGroupToSelectDto( user.HomeStudyGroup !.LongName, user.HomeStudyGroup.ShortName, user.HomeStudyGroup.StudyGroupId, user.HomeStudyGroup.UniversityShortName, user.HomeStudyGroup.UniversityId)); } // Notify the rest of the app about authentication _localAuthenticationStateProvider.SetAsLoggedIn(loginToken.PrimaryTokenId); return(User); }
public Task UpdateUser(AuthorizedUserDto user) { // Dont do anything if the user is not authenticated if (!IsAuthenticated) { return(Task.CompletedTask); } User = user; return(_localStorageManagerService.SetLoginProfile(user)); }
public Task SetLoginProfile(AuthorizedUserDto loginProfile) => _localStorageService.SetItemAsync(_loginProfileKey, loginProfile);