public IActionResult Reset(ResetViewModel vm, string userid, string email, string token)
        {
            ViewData["status"] = "";

            ValidateReset(vm, userid, email, token);

            if (ModelState.IsValid)
            {
                try
                {
                    Auth0.ManagementApi.Models.User userResult   = null;
                    SalesforceService.Response      hashResponse = SalesforceService.CheckHash(_sfdcTokenManager.instance_url, _sfdcTokenManager.access_token, System.Net.WebUtility.HtmlDecode(email), token).Result;
                    _logger.LogInformation("Hash Code Response: {0}", hashResponse.code);
                    _logger.LogInformation("User Id: {0}", userid);

                    //Hash matches
                    if (hashResponse.code == "10014")
                    {
                        string accessToken = GetClientToken().Result;
                        userResult         = UpdateUserPassword(accessToken, System.Net.WebUtility.HtmlDecode(userid), vm.NewPassword1).Result;
                        ViewData["status"] = userResult.UpdatedAt;
                    }
                    else
                    {
                        ModelState.AddModelError("", "Token has expired");
                    }
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", e.Message);
                }
            }

            return(View(vm));
        }