public virtual ActionResult Edit(ViewModels.ContactEnterprise.Edit editContactInformation)
        {
            var contact = _contactEnterpriseRepository.GetById(editContactInformation.Id);

            if (contact == null)
            {
                return(HttpNotFound());
            }

            if (!editContactInformation.OldPassword.IsNullOrWhiteSpace())
            {
                if (!PasswordHash.ValidatePassword(editContactInformation.OldPassword, contact.Password))
                {
                    ModelState.AddModelError("OldPassword", StudentResources.OldPasswordInvalid);
                }
            }

            if (!ModelState.IsValid)
            {
                this.Flash(FlashMessageResources.ErrorsOnPage, FlashEnum.Error);
                return(View(editContactInformation));
            }

            if (!editContactInformation.PasswordConfirmation.IsNullOrWhiteSpace())
            {
                editContactInformation.Password = PasswordHash.CreateHash(editContactInformation.PasswordConfirmation);
            }
            if (editContactInformation.Password == null)
            {
                editContactInformation.Password = contact.Password;
            }

            Mapper.Map(editContactInformation, contact);

            _contactEnterpriseRepository.Update(contact);
            this.Flash(FlashMessageResources.EditSuccess, FlashEnum.Success);

            var identity = new ClaimsIdentity(new[]
            {
                new Claim(ClaimTypes.Name, contact.FirstName + " " + contact.LastName),
                new Claim(ClaimTypes.NameIdentifier, contact.Id.ToString())
            }, DefaultAuthenticationTypes.ApplicationCookie);

            foreach (var role in contact.Roles)
            {
                identity.AddClaim(new Claim(ClaimTypes.Role, role.RoleName));
            }

            _httpContext.AuthenticationSignIn(identity);

            return(RedirectToAction(MVC.ContactEnterprise.Index()));
        }
        private void AuthentificateUser(ApplicationUser applicationUser)
        {
            var identity = new ClaimsIdentity(new[]
            {
                new Claim(ClaimTypes.Name, applicationUser.FirstName + " " + applicationUser.LastName),
                new Claim(ClaimTypes.NameIdentifier, applicationUser.Id.ToString())
            }, DefaultAuthenticationTypes.ApplicationCookie);

            foreach (var role in applicationUser.Roles)
            {
                identity.AddClaim(new Claim(ClaimTypes.Role, role.RoleName));
            }

            _httpContext.AuthenticationSignIn(identity);
        }
예제 #3
0
        private void AuthentificateUser(MiamUser miamUser)
        {
            var identity = new ClaimsIdentity(new[]
            {
                new Claim(ClaimTypes.Name, miamUser.Email),
                new Claim(ClaimTypes.NameIdentifier, miamUser.Id.ToString()),
            },
                                              DefaultAuthenticationTypes.ApplicationCookie);

            foreach (var role in miamUser.Roles)
            {
                identity.AddClaim(new Claim(ClaimTypes.Role, role.RoleName));
            }

            _httpContext.AuthenticationSignIn(identity);
        }