예제 #1
0
 public bool UpdateUser(User user)
 {
     using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
     {
         dataAccess.UpdateUser(user.ConvertToUserTable(user));
         return(true);
     }
 }
예제 #2
0
        public List <User> GetUsers()
        {
            List <User> list = new List <User>();

            using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
            {
                List <DataAccess.Tables.User> users = dataAccess.GetUsers();
                foreach (var user in users)
                {
                    User _user = new User();
                    _user = _user.ConvertToUser(user, appSettings.ConnectionString);
                    list.Add(_user);
                }
                return(list);
            }
        }
예제 #3
0
 public User Login(string username, string password)
 {
     using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
     {
         User user = new User();
         user = user.ConvertToUser(dataAccess.GetUser(username), appSettings.ConnectionString);
         if (user != null)
         {
             string decriptedPassword = EncryptDecryptHelper.Decrypt(user.Password);
             if (decriptedPassword == password)
             {
                 return(user);
             }
             return(new User());
         }
         return(new User());
     }
 }
예제 #4
0
        public User AddUser(User user)
        {
            using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
            {
                string realPassword = user.Password;
                string password     = EncryptDecryptHelper.Encrypt(user.Password);
                user.Password = password;
                dataAccess.AddUser(user.ConvertToUserTable(user));

                //Send Email
                EmailService emailService  = new EmailService(appSettings);
                Task         sendEmailTask = new Task(() => emailService.NewUserEmail(user.ConvertToUserTable(user), realPassword));
                sendEmailTask.Start();

                User newUser = user.ConvertToUser(dataAccess.GetUser(user.Username), appSettings.ConnectionString);
                return(newUser);
            }
        }
예제 #5
0
        public bool ResetPassword(string username, string adminPassword)
        {
            using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
            {
                MAM.DataAccess.Tables.User user = dataAccess.GetUser(username);
                if (user != null)
                {
                    string password = EncryptDecryptHelper.Encrypt(adminPassword);
                    user.Password          = password;
                    user.PasswordIsChanged = false;
                    dataAccess.UpdateUser(user);

                    EmailService emailService = new EmailService(appSettings);
                    //Send Email
                    Task sendEmailTask = new Task(() => emailService.SendResertPasswordEmail(user, adminPassword));
                    sendEmailTask.Start();
                    return(true);
                }
                return(false);
            }
        }
예제 #6
0
        public bool ChangePassword(string username, string newPassword, string oldPassword)
        {
            using (var dataAccess = new DataAccess.Repositories.UserRepository(appSettings.ConnectionString))
            {
                MAM.DataAccess.Tables.User user = dataAccess.GetUser(username);
                if (user != null)
                {
                    string decriptedPassword = EncryptDecryptHelper.Decrypt(user.Password);
                    if (decriptedPassword == oldPassword)
                    {
                        string password = EncryptDecryptHelper.Encrypt(newPassword);
                        user.Password          = password;
                        user.PasswordIsChanged = true;

                        dataAccess.UpdateUser(user);
                        return(true);
                    }
                    return(false);
                }
                return(false);
            }
        }