예제 #1
0
        public async Task <ActionResult> SaveFullEditChanges(EditCollaboratorViewModel model)
        {
            if (ModelState.IsValid)
            {
                ApplicationUser user = await UserManager.FindByEmailAsync(model.Email);

                bool error = false;

                if (!string.IsNullOrEmpty(model.NewPassword))
                {
                    var result = UserManager.ChangePassword(user.Id, model.Password, model.NewPassword);

                    if (!result.Succeeded)
                    {
                        ModelState["Password"].Errors.Add("Senha incorreta");
                        error = true;
                    }
                }

                if (!error)
                {
                    user = await UserManager.FindByEmailAsync(model.Email);

                    Collaborator collaborator = model.ToCollaborator(user.PasswordHash);

                    BusinessManager.Instance.Collaborators.Update(collaborator);

                    return(RedirectToAction("Index", "LocalAdmin"));
                }
            }

            return(View("FullEdit", model));
        }
예제 #2
0
 private static void SetAddress(Address address, EditCollaboratorViewModel collaboratorViewModel)
 {
     collaboratorViewModel.Street     = address.Street;
     collaboratorViewModel.Square     = address.Square;
     collaboratorViewModel.PostalCode = address.PostalCode;
     collaboratorViewModel.State      = address.State;
     collaboratorViewModel.City       = address.City;
 }
 private static Address GetAddress(EditCollaboratorViewModel registerModel)
 {
     return(new Address
     {
         City = registerModel.City,
         PostalCode = registerModel.PostalCode,
         Square = registerModel.Square,
         State = registerModel.State,
         Street = registerModel.Street
     });
 }
 public static ApplicationUser ToApplicationUser(this EditCollaboratorViewModel model)
 {
     return(new ApplicationUser
     {
         FirstName = model.FirstName,
         LastName = model.LastName,
         UserName = model.Email,
         Email = model.Email,
         PhoneNumber = model.PhoneNumber,
         UserType = UserType.Collaborator
     });
 }
 public static Collaborator ToCollaborator(this EditCollaboratorViewModel model, string passwordHash)
 {
     return(new Collaborator
     {
         Address = GetAddress(model),
         StreetNumber = int.Parse(model.Number),
         CPF = model.CPF,
         Email = model.Email,
         FirstName = model.FirstName,
         LastName = model.LastName,
         Password = passwordHash,
         RG = model.RG,
         Telephone = model.PhoneNumber,
         Salary = decimal.Parse(model.Salary)
     });
 }
예제 #6
0
        public static EditCollaboratorViewModel ToEditCollaboratorViewModel(this Collaborator collaborator)
        {
            var collaboratorViewModel = new EditCollaboratorViewModel
            {
                CPF         = collaborator.CPF,
                Email       = collaborator.Email,
                FirstName   = collaborator.FirstName,
                LastName    = collaborator.LastName,
                Number      = collaborator.StreetNumber.ToString(),
                PhoneNumber = collaborator.Telephone,
                RG          = collaborator.RG,
                Salary      = collaborator.Salary.ToString()
            };

            SetAddress(collaborator.Address, collaboratorViewModel);

            return(collaboratorViewModel);
        }
예제 #7
0
 private ActionResult Edit(EditCollaboratorViewModel model)
 {
     return(View(model));
 }