public IActionResult ResetPassword(string token) { if (token != "" && token != null) { ValidationForgotPasswordOutputModel Output = new ValidationForgotPasswordOutputModel(); ValidationForgotPasswordInputModel data = new ValidationForgotPasswordInputModel(); data.ForgotID = Guid.Parse(token); JsonConvert.SerializeObject(data); using (var client = new HttpClient()) { client.BaseAddress = new Uri(BaseAPI + "Profile/"); //HTTP POST var postTask = client.PostAsJsonAsync <ValidationForgotPasswordInputModel>("CheckValidIDForgotPassword", data); postTask.Wait(); var result = postTask.Result; if (result.IsSuccessStatusCode && TempData["CustomError"] == null) { var content = result.Content.ReadAsStringAsync(); ValidationForgotPasswodResponseModel resetContent = Newtonsoft.Json.JsonConvert.DeserializeObject <ValidationForgotPasswodResponseModel>(content.Result); Output = resetContent.data; if (Output == null) { return(RedirectToAction("ErrorHandling", "Home")); } else { HttpContext.Session.SetString(SessionKeyVID, Output.UserID.ToString()); HttpContext.Session.SetString(SessionKeyToken, token); } } else if (TempData["CustomError"] == null) { TempData["CustomError"] = "Server Error. Please contact administrator."; } } if (TempData["CustomError"] != null) { ModelState.AddModelError(string.Empty, TempData["CustomError"].ToString()); } return(View()); } else { return(RedirectToAction("ErrorHandling", "Home")); } }
public ActionResult <ValidationForgotPasswodResponseModel> CheckValidIDForgotPassword([FromBody] ValidationForgotPasswordInputModel data) { try { ForgotPasswordBL forPasswordBL = new ForgotPasswordBL(DbContext); var url = AppSettings.URLForgotPassword; var result = forPasswordBL.CheckValidate(data); if (result.IsStillUse) { ValidationForgotPasswodResponseModel response = new ValidationForgotPasswodResponseModel(); response.data = result; response.Response = true; response.Message = "Valid"; return(response); } else { ValidationForgotPasswodResponseModel response = new ValidationForgotPasswodResponseModel(); response.Response = false; response.Message = "Waktu anda meminta reset password sudah tidak berlaku, lakukan permintaan ulang"; return(response); } } catch (Exception ex) { ValidationForgotPasswodResponseModel logres = new ValidationForgotPasswodResponseModel(); logres.Message = ex.Message; logres.Response = false; return(logres); } }