public void UpdatePersonalDetails(
         PersonalDetailsViewModel model,
         ModelMethodContext context)
        {
            if (!context.ModelState.IsValid) return;

             var user = GetCurrentUser();
             user.UserDetails.Title = model.Title;
             user.UserDetails.FirstName = model.FirstName;
             user.UserDetails.LastName = model.LastName;
             user.UserDetails.Gender = model.Gender;
             user.UserDetails.DateOfBirth = model.DateOfBirth;

             var result = _userManager.Update(user);
             if (result.Succeeded)
             {
            RedirectToManager(ManageMessageId.UserDetailsUpdateSuccess);
            return;
             }

             AddErrors(result, context);
        }
        public PersonalDetailsViewModel GetPersonalDetails()
        {
            var userId = _context.User.Identity.GetUserId();
             if (userId == null)
             {
            RedirectToLogin(
               StateController.GetNavigationLink("UpdatePersonalDetails")
               );
            return null;
             }

             var user = _userManager.FindById(userId);
             var model = new PersonalDetailsViewModel();

             if (user.UserDetails == null) return model;

             model.Title = user.UserDetails.Title;
             model.FirstName = user.UserDetails.FirstName;
             model.LastName = user.UserDetails.LastName;
             model.Gender = user.UserDetails.Gender;
             model.DateOfBirth = user.UserDetails.DateOfBirth;

             return model;
        }