Ejemplo n.º 1
0
        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);
        }
 private List <LoginTokenDto> AddLoginTokenDto(LoginTokenDto token, Guid userID)
 {
     return(new List <LoginTokenDto>()
     {
         _baseService.SaveToken(userID, token.UserAgent, token.Token)
     });
 }
        public void DeleteToken(LoginTokenDto loginToken)
        {
            var tokenToRemove = _dbContext.LoginTokens.ToList().Find(x => x.LoginTokenId == loginToken.LoginTokenId.ToString());

            _dbContext.LoginTokens.Remove(tokenToRemove);
            _dbContext.SaveChanges();
        }
        public List <LoginTokenDto> AddNewToken(LoginTokenDto loginToken)
        {
            var newToken = GetLoginTokenModelFromDto(loginToken);

            _dbContext.LoginTokens.Add(newToken);
            _dbContext.SaveChanges();
            return(GetTokens());
        }
        public List <LoginTokenDto> SetToken(LoginTokenDto loginToken)
        {
            List <LoginTokenDto> Tokens = GetTokens();

            if (Tokens.Find(x => x.LoginTokenId == loginToken.LoginTokenId) != null)
            {
                DeleteToken(loginToken);
            }
            return(AddNewToken(loginToken));
        }
        public bool IsAuthorized(Guid id, string Token)
        {
            AccountDto    account = _userManagementService.FindValidUserID(id);
            LoginTokenDto token   = _baseService.FindToken(id, Token);

            if (account != null && token != null && token.Token == Token)
            {
                return(true);
            }
            return(false);
        }
 private LoginTokenModel GetLoginTokenModelFromDto(LoginTokenDto model)
 {
     return(new LoginTokenModel
     {
         LoginTokenId = model.LoginTokenId.ToString(),
         UserId = model.UserId.ToString(),
         Token = model.Token,
         UserAgent = model.UserAgent,
         LastLogIn = model.LastLogIn
     });
 }
        public void DeleteToken(LoginTokenDto loginToken)
        {
            List <LoginTokenDto>   Tokens      = new List <LoginTokenDto>();
            List <LoginTokenModel> TokenModels = _fileReader.ReadFileToken().ToList();
            int index = TokenModels.FindIndex(x => x.LoginTokenId == loginToken.LoginTokenId.ToString());

            if (index > 0 && index < TokenModels.Count)
            {
                TokenModels.RemoveAt(index);
            }
            _fileReader.WriteFileToken(TokenModels);
        }
        public List <LoginTokenDto> SetToken(LoginTokenDto loginToken)
        {
            List <LoginTokenDto>   Tokens      = new List <LoginTokenDto>();
            List <LoginTokenModel> TokenModels = _fileReader.ReadFileToken().ToList();
            int index = TokenModels.FindIndex(x => x.LoginTokenId == loginToken.LoginTokenId.ToString());

            if (index > 0 && index < TokenModels.Count)
            {
                TokenModels.RemoveAt(index);
            }
            loginToken.LastLogIn = DateTime.Now;
            TokenModels.Add(GetLoginTokenModelFromDto(loginToken));
            _fileReader.WriteFileToken(TokenModels)?.ToList().ForEach(x => Tokens.Add(GetLoginTokenDtoFromModel(x)));
            return(Tokens);
        }
 public Task SetLoginToken(LoginTokenDto loginToken) => _localStorageService.SetItemAsync(_loginTokenKey, loginToken);
 private List <LoginTokenDto> DeleteLoginTokenDto(LoginTokenDto token, Guid userID)
 {
     _baseService.DeleteToken(userID, token.UserAgent, token.Token);
     return(_baseService.FindUserTokens(userID));
 }
 private List <LoginTokenDto> ChangeLoginTokenDto(LoginTokenDto token, Guid userID)
 {
     return(AddLoginTokenDto(token, userID));
 }
 private List <LoginTokenDto> GetLoginTokenDto(LoginTokenDto token, Guid userID)
 {
     return(_baseService.FindUserTokens(userID));
 }