Exemplo n.º 1
0
        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"));
            }
        }
Exemplo n.º 2
0
        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);
            }
        }