public ResponseModel ObtainPhoneNumberCode(GetPhoneNumberCodeModel model) { var response = new ResponseModel { Success = false, Messages = new List <string>() }; if (ModelState.IsValid) { try { var user = UserManager.FindByName(model.PhoneNumber); if (user != null) { GeneratePhoneCodeApiMethod(user.Id, user.PhoneNumber); response.Success = true; response.Messages.Add("Code has been sent"); } else { response.Messages.Add("User not found"); } } catch (Exception error) { response.Messages.Add(error.InnerException.Message); } } else { foreach (var error in ModelState.Values.SelectMany(obj => obj.Errors)) { response.Messages.Add(error.ErrorMessage); } } return(response); }
public async Task <ActionResult> ForgotPassword(GetPhoneNumberCodeModel model) { try { //if (!ModelState.IsValid) //{ // return Json(new { Success = false, Message = "Either UserId or Code is empty" }, JsonRequestBehavior.AllowGet); //} string actionPath = "User/RequestResetPassword"; ResponseModel responseContent = null; using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(CommonFunction.GetWebAPIBaseURL()); client.DefaultRequestHeaders.Authorization = AuthHandler.AuthenticationHeader(); //client.BaseAddress = new Uri(path); HttpResponseMessage response = await client.PostAsJsonAsync(actionPath, model); if (response.IsSuccessStatusCode) { responseContent = await response.Content.ReadAsAsync <ResponseModel>(); } } if (responseContent != null && responseContent.Success) { var json = JsonConvert.SerializeObject(responseContent.Data); var itemsResponseModel = JsonConvert.DeserializeObject <UserModel>(json); //await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); return(Json(new { Success = responseContent.Success, Message = String.Join(" ", responseContent.Messages), Object = new { UserId = itemsResponseModel.Id != Guid.Empty ? itemsResponseModel.Id : itemsResponseModel.UserId } }, JsonRequestBehavior.AllowGet)); } return(Json(new { Success = false, Message = String.Join(" ", responseContent.Messages) }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { Success = false, Message = "Something went wrong while user forgot password" }, JsonRequestBehavior.AllowGet)); } }
public async Task <ActionResult> ResendCode(GetPhoneNumberCodeModel model) { try { //if (!ModelState.IsValid) //{ // return Json(new { Success = false, Message = "Either UserId or Code is empty" }, JsonRequestBehavior.AllowGet); //} string actionPath = "account/GetPhoneNumberCode"; ResponseModel responseContent = null; using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(CommonFunction.GetWebAPIBaseURL()); client.DefaultRequestHeaders.Authorization = AuthHandler.AuthenticationHeader(); //client.BaseAddress = new Uri(path); HttpResponseMessage response = await client.PostAsJsonAsync(actionPath, model); if (response.IsSuccessStatusCode) { responseContent = await response.Content.ReadAsAsync <ResponseModel>(); } } if (responseContent != null && responseContent.Success) { //var json = JsonConvert.SerializeObject(responseContent.Data); //var itemsResponseModel = JsonConvert.DeserializeObject<UserModel>(json); return(Json(new { Success = responseContent.Success, Message = String.Join(" ", responseContent.Messages) }, JsonRequestBehavior.AllowGet)); } return(Json(new { Success = false, Message = String.Join(" ", responseContent.Messages) }, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { Success = false, Message = "Something went wrong while resending code on phone number" }, JsonRequestBehavior.AllowGet)); } }