public async Task <IActionResult> ExternalReceipt(ConsentViewModel model)
        {
            /* if (!ModelState.IsValid)
             * {
             *   return View(model);
             * }
             */
            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
            }

            List <string> sCr = GenerateConsentReceipt(user);

            if (sCr.Count == 3)
            {
                ConsentReceiptViewModel crModel = new ConsentReceiptViewModel
                {
                    Insert = sCr[0],
                    Json   = sCr[1],
                    CrGuid = sCr[2]
                };
                return(View(nameof(ConsentReceipt), crModel));
            }
            ;
            StatusMessage = sCr[0];

            return(View(model));
        }
        public async Task <IActionResult> Index(IndexViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
            }

            var email = user.Email;

            if (model.Email != email)
            {
                var setEmailResult = await _userManager.SetEmailAsync(user, model.Email);

                if (!setEmailResult.Succeeded)
                {
                    throw new ApplicationException($"Unexpected error occurred setting email for user with ID '{user.Id}'.");
                }
            }

            var phoneNumber = user.PhoneNumber;

            if (model.PhoneNumber != phoneNumber)
            {
                var setPhoneResult = await _userManager.SetPhoneNumberAsync(user, model.PhoneNumber);

                if (!setPhoneResult.Succeeded)
                {
                    throw new ApplicationException($"Unexpected error occurred setting phone number for user with ID '{user.Id}'.");
                }
            }

            StatusMessage = "Your profile has been updated";

            if (model.SendReceipt == true)
            {
                List <string> sCr = GenerateConsentReceipt(user);
                if (sCr.Count == 3)
                {
                    ConsentReceiptViewModel crModel = new ConsentReceiptViewModel
                    {
                        Insert = sCr[0],
                        Json   = sCr[1],
                        CrGuid = sCr[2]
                    };
                    return(View(nameof(ConsentReceipt), crModel));
                }
                ;
                StatusMessage = sCr[0];
            }

            return(RedirectToAction(nameof(Index)));
        }
 public IActionResult ConsentReceipt(ConsentReceiptViewModel model)
 {
     return(View(model));
 }