Exemple #1
0
        public bool Login(User user, string password, string url)
        {
            string         hashedPassword    = HashPassword(password);
            RegisteredUser correspondentUser = Users.Find(item => item.GetId() == user.Id &&
                                                          item.GetHashedPassword() == hashedPassword &&
                                                          item.GetName() == user.Name);

            if (correspondentUser != null)
            {
                LoggedUsers.Add(correspondentUser, url);

                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #2
0
        public User CreateUser(User user, string password)
        {
            string hashedPassword = this.HashPassword(password);

            int computedId = this.LastId + 1;

            this.LastId = computedId;

            RegisteredUser registered = new RegisteredUser(user.Name, computedId, hashedPassword);

            this.Users.Add(registered); // add new user

            User newUser = new User();

            user.Id   = registered.GetId();
            user.Name = registered.GetName();

            return(newUser);
        }
Exemple #3
0
        public bool RemovedFromLoggedUsers(User user)
        {
            RegisteredUser registered = GetRegisteredUser(user);

            return(LoggedUsers.Remove(registered)); // true if removed
        }
Exemple #4
0
        public bool IsLoggedIn(User user, string url)
        {
            RegisteredUser registeredUser = GetRegisteredUser(user);

            return(LoggedUsers.ContainsKey(registeredUser) && LoggedUsers.GetValueOrDefault(registeredUser) == url);
        }