Example #1
0
        /// <summary>
        /// Добавляет нового пользователя в базу
        /// </summary>
        /// <param name="newUserLogin">логин</param>
        /// <param name="newUserPassword">пароль</param>
        /// <returns>True - пользователь успешно добавлен, иначе False</returns>
        public static UserError Add(string newUserLogin, string newUserPassword)
        {
            var client = new NewsService();

            var newUser = new UserDto
            {
                Login = newUserLogin,
                PasswordHash = newUserPassword.GetSha256Hash() + newUserLogin.GetSha256Hash()
            };

            var alreadyContainsUser = client.ContainsUser(newUserLogin);

            if (alreadyContainsUser)
            {
                return new UserError
                {
                    Value = false,
                    Message = Config.LoginAlreadyInUseMessage
                };
            }

            try
            {
                client.AddUser(newUser);

                return new UserError
                {
                    Value = true,
                    Message = Config.NewUserSuccessAdded
                };
            }
            catch (DataException)
            {
                return new UserError
                {
                    Value = false,
                    Message = Config.UnexpectedError
                };
            }
        }
Example #2
0
        public static string GetNewsPostById(int newsPostId)
        {
            var client = new NewsService();

            return client.GetNewsPostById(newsPostId).Title;
        }
Example #3
0
        /// <summary>
        /// Удаляет пользователя(помечая удаленным IsDeleted = 1)
        /// </summary>
        /// <param name="selectedUser">Выбранный пользователь</param>
        /// <returns>Объект с ошибкой</returns>
        public static UserError Delete(UserDto selectedUser)
        {
            var client = new NewsService();

            try
            {
                client.DeleteLazyUser(SelectedUser.Id);

                return new UserError
                {
                    Value = true,
                    Message = Config.UserSuccessDeleted
                };
            }
            catch (DataException)
            {
                return new UserError
                {
                    Value = false,
                    Message = Config.UnexpectedError
                };
            }
        }
Example #4
0
 public static void UpdateUsers()
 {
     var client = new NewsService();
     Users = new BindingList<UserDto>(client.GetAllUsersWithDeleted().OrderBy(u => u.Login).ToList());
 }
Example #5
0
        public static UserError UpdateUser(UserDto userDto, string newLogin, string newPassword)
        {
            var client = new NewsService();
            var loginChanged = userDto.Login != newLogin;

            //если логин поменялся
            if (loginChanged)
            {

                var alreadyContainsUser = client.ContainsUser(newLogin);

                if (alreadyContainsUser)
                {
                    return new UserError
                    {
                        Value = false,
                        Message = Config.LoginAlreadyInUseMessage
                    };
                }

                userDto.Login = newLogin;
            }

            var newPasswordHash = newPassword.GetSha256Hash() + userDto.Login.GetSha256Hash();
            var passwordChanged = userDto.PasswordHash != newPasswordHash;

            //если поменялся пароль преобразовать его в хеш
            if (passwordChanged)
            {
                userDto.PasswordHash = newPasswordHash;
            }

            //если логин не менялся или поменялся на свободный
            try
            {

                client.UpdateUser(userDto);

                return new UserError
                {
                    Value = true,
                    Message = Config.NewUserSuccessUpdated
                };
            }
            catch (DataException)
            {
                return new UserError
                {
                    Value = false,
                    Message = Config.UnexpectedError
                };
            }
        }
Example #6
0
        public static List<LogDto> Log(int userId)
        {
            var client = new NewsService();

            return client.GetLogByUserId(userId).OrderBy(l => l.UploadDate).ToList();
        }
Example #7
0
        public static List<LogDto> Log()
        {
            var client = new NewsService();

            return client.GetFullLog().OrderBy(l => l.UploadDate).ToList();
        }