public async Task <IActionResult> ChangePassword(AjaxUserChangrPassword model, CancellationToken cancellationToken) { CustomUser user = await _userManager.FindByIdAsync(model.Id); AjaxResult result = new AjaxResult("Error"); if (user != null) { IdentityResult changeResult = await _userManager.ChangePasswordAsync(user, model.OldPassWord, model.NewPassWords); if (changeResult.Succeeded) { result.Status = "Success"; result.MessageWhenSuccessed = "پسوورد با موفقیت تغییر کرد"; result.RedirectUrl = "/User/Home/Index"; return(new JsonResult(result)); } else { ModelState.AddModelStateError(changeResult.Errors.Select(c => c.Description)); } result.AddErrors(ModelState); return(new JsonResult(result)); } ModelState.AddModelError("", "کاربر یافت نشد"); result.AddErrors(ModelState); return(new JsonResult(result)); }
public async Task <IActionResult> EditProfileImage(AjaxUserEditProfileImage model, CancellationToken cancellationToken) { AjaxResult result = new AjaxResult("Error"); CustomUser user = await _userManager.FindByIdAsync(model.Id); if (user != null) { string uploads = Path.Combine(_hostingEnvironment.WebRootPath, "images", "UserProfile"); string OldProfileImagePath = $"{_hostingEnvironment.WebRootPath}\\images\\UserProfile\\{user.Avatar}"; string strFilePath = await fileHandler.UploadFileAsync(model.FormFile, uploads, cancellationToken, OldProfileImagePath); user.Avatar = strFilePath; IdentityResult Result = await _userManager.UpdateAsync(user); if (Result.Succeeded) { result.Status = "Success"; result.RedirectUrl = "/User/Home/Index"; result.MessageWhenSuccessed = "تصویر پروفایل با موفقیت عوض شد"; return(new JsonResult(result)); } else { ModelState.AddModelStateError(Result.Errors.Select(c => c.Description)); } } ModelState.AddModelError("", "کاربر یافت نشد"); result.AddErrors(ModelState); return(new JsonResult(result)); }
public async Task <IActionResult> SendPayment(WalletTransactViewModel model, CancellationToken cancellationToken) { AjaxResult result = new AjaxResult("Error"); if (ModelState.IsValid) { PayInput input = new PayInput(); CustomUser user = await UserManager.GetUserAsync(User); input.Deposits = model.Deposits; input.Description = "عملیات شارژ حساب"; input.Redirect = SiteSetting.CallBackUrl + $"?transactType={TransactType.Creditor}"; input.PhoneNumber = user.PhoneNumber; PaymentRequest response = await Payment.PayAsync(input, cancellationToken); if (Assert.NotNull(response) && response.Status == 1 && Assert.NotNull(response.Token)) { result.Status = "Success"; result.RedirectUrl = SiteSetting.RedirectUrl + response.Token; user.PaymentToken = response.Token; await UserManager.UpdateAsync(user); return(new JsonResult(result)); } else { result.Errors.Add(response.ErrorMessage); } return(new JsonResult(result)); } result.AddErrors(ModelState); return(new JsonResult(result)); }