예제 #1
0
        public IActionResult Login(AuthenticateModel Autentication)
        {
            try
            {
                SM_USER User = _UserService.Authenticate(Autentication.Useremail, Autentication.Password, 0, Autentication.Link);

                if (User != null)
                {
                    HttpContext.Session.Set("User", User);
                    HttpContext.Session.SetString("UserFullName", User.TX_FirstName + " " + User.TX_LastName);
                    return(Redirect("/Home"));
                }
                else
                {
                    ViewBag.SendEmailPassword = "";
                    ViewBag.ErrorMessage      = "El correo o contraseña son incorrectos";
                    return(View());
                }
            }
            catch (Exception e)
            {
                ViewBag.SendEmailPassword = "";
                ViewBag.ErrorMessage      = "Ocurrió un error: " + e.Message;
                return(View());
            }
        }
예제 #2
0
        public bool Edit(SM_USER user)
        {
            try
            {
                SM_USER editedUser = DB.SM_USER.SingleOrDefault(u => u.ID_User == user.ID_User);

                if (!user.TX_Email.Equals(editedUser.TX_Email))
                {
                    return(false);
                }
                editedUser.TX_Email          = user.TX_Email;
                editedUser.TX_FirstName      = user.TX_FirstName;
                editedUser.TX_SecondName     = user.TX_SecondName;
                editedUser.TX_LastName       = user.TX_LastName;
                editedUser.TX_SecondLastName = user.TX_SecondLastName;
                editedUser.TX_Phone          = user.TX_Phone;

                if (user.PasswordChanged)
                {
                    editedUser.TX_Password = HashHandler.CreateHash(user.TX_Password);
                }

                DB.SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
예제 #3
0
        public async Task <IActionResult> Post(UserViewModel viewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View("Form", viewModel));
                }
                bool passWordChanged = (viewModel.TX_Password != null);

                SM_USER user = await Manager.Save(new SM_USER
                {
                    ID_User           = viewModel.ID_User,
                    TX_Email          = viewModel.TX_Email,
                    TX_FirstName      = viewModel.TX_FirstName,
                    TX_SecondName     = viewModel.TX_SecondName,
                    TX_LastName       = viewModel.TX_LastName,
                    TX_SecondLastName = viewModel.TX_SecondLastName,
                    TX_Phone          = viewModel.TX_Phone,
                    TX_Password       = viewModel.TX_Password,
                    PasswordChanged   = passWordChanged,
                });

                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Error", ex.Message);
                return(View("Form", viewModel));
            }
        }
예제 #4
0
        public static SM_USER WithoutPassword(this SM_USER user)
        {
            if (user == null)
            {
                return(null);
            }

            user.TX_Password = null;
            return(user);
        }
예제 #5
0
        public SM_USER Create(SM_USER user)
        {
            try
            {
                user.TX_Password = HashHandler.CreateHash(user.TX_Password);

                DB.SM_USER.Add(user);
                DB.SaveChanges();
                return(DB.SM_USER.OrderByDescending(x => x.ID_User).FirstOrDefault());
            }
            catch (Exception ex)
            {
                return(user);
            }
        }
예제 #6
0
 public async Task <SM_USER> Save(SM_USER user)
 {
     try
     {
         if (user.ID_User == 0)
         {
             var userSuccessfully = UserService.Create(user);
             return(userSuccessfully);
         }
         else
         {
             UserService.Edit(user);
             return(user);
         }
     }
     catch (UniqueKeyException ex)
     {
         throw new Exception("Cannont insert or update a value duplicate");
     }
     catch (Exception ex)
     {
         throw new Exception("Cannont add a register");
     }
 }