public async Task <IActionResult> OnGetAsync() { var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } var userName = await _userManager.GetUserNameAsync(user); var email = await _userManager.GetEmailAsync(user); var phoneNumber = await _userManager.GetPhoneNumberAsync(user); var id = await _userManager.GetUserIdAsync(user); Username = userName; BDS_ML.Models.ModelDB.Admin admin = _context.Admin.Where(c => c.Account_ID == id).SingleOrDefault(); Input = new InputModel { Email = email, PhoneNumber = phoneNumber, FullName = admin.FullName, Address = admin.Address }; IsEmailConfirmed = await _userManager.IsEmailConfirmedAsync(user); return(Page()); }
public async Task <IActionResult> OnGetAsync() { var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } var userName = await _userManager.GetUserNameAsync(user); var email = await _userManager.GetEmailAsync(user); var phoneNumber = await _userManager.GetPhoneNumberAsync(user); var id = await _userManager.GetUserIdAsync(user); if (user.IsAdmin == 1) { BDS_ML.Models.ModelDB.Admin admin = _context.Admin.Where(c => c.Account_ID == id).SingleOrDefault(); Input = new InputModel { AvatarImage = admin.Avatar_URL }; } if (user.IsAdmin == 0) { Customer customer = _context.Customer.Where(c => c.Account_ID == id).SingleOrDefault(); Input = new InputModel { AvatarImage = customer.Avatar_URL }; } return(Page()); }
public async Task <IActionResult> OnPostAsync(IFormFile image) { if (!ModelState.IsValid) { return(Page()); } var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } if (user.IsAdmin == 1) { BDS_ML.Models.ModelDB.Admin admin = _context.Admin.Where(c => c.Account_ID == user.Id).SingleOrDefault(); var email = await _userManager.GetEmailAsync(user); if (admin == null) { return(NotFound($"Unable to load admin with úuerID '{_userManager.GetUserId(User)}'.")); } var oldImage = admin.Avatar_URL; if (image != null) { string fileName = Path.GetFileName(image.FileName); string extensionFileName = Path.GetExtension(fileName); if (fileName.Substring(0, fileName.Length - extensionFileName.Length).Length > 40) { fileName = fileName.Substring(0, fileName.Length - extensionFileName.Length - 40) + "-" + user.Id + "-" + DateTime.Now.ToString().Replace(" ", "").Replace(":", "").Replace("/", "") + extensionFileName; } else { fileName = fileName.Substring(0, fileName.Length - extensionFileName.Length) + "-" + user.Id + "-" + DateTime.Now.ToString().Replace(" ", "").Replace(":", "").Replace("/", "") + extensionFileName; } var path = Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images\avatars", fileName); using (var stream = new FileStream(path, FileMode.Create)) { await image.CopyToAsync(stream); } admin.Avatar_URL = fileName; } else { admin.Avatar_URL = "avatar_common.png"; } { try { _context.Admin.Attach(admin); _context.Entry(admin).State = Microsoft.EntityFrameworkCore.EntityState.Modified; _context.SaveChanges(); HttpContext.Session.SetString("AvatarImage", admin.Avatar_URL); if (String.Compare(oldImage, "avatar_common.png", true) != 0) { var path = Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images\avatars", oldImage); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } } } catch { StatusMessage = "Error Cập nhật thông tin không thành công!"; return(RedirectToPage()); } } } if (user.IsAdmin == 0) { Customer customer = _context.Customer.Where(c => c.Account_ID == user.Id).SingleOrDefault(); var email = await _userManager.GetEmailAsync(user); if (customer == null) { return(NotFound($"Unable to load admin with úuerID '{_userManager.GetUserId(User)}'.")); } var oldImage = customer.Avatar_URL; if (image != null) { string fileName = Path.GetFileName(image.FileName); string extensionFileName = Path.GetExtension(fileName); if (fileName.Length - extensionFileName.Length > 40) { fileName = fileName.Substring(0, 40) + "-" + user.Id + "-" + DateTime.Now.ToString().Replace(" ", "").Replace(":", "").Replace("/", "") + extensionFileName; } else { fileName = fileName.Substring(0, fileName.Length - extensionFileName.Length) + "-" + user.Id + "-" + DateTime.Now.ToString().Replace(" ", "").Replace(":", "").Replace("/", "") + extensionFileName; } var path = Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images\avatars", fileName); using (var stream = new FileStream(path, FileMode.Create)) { await image.CopyToAsync(stream); } customer.Avatar_URL = fileName; } else { customer.Avatar_URL = "avatar_common.png"; } { try { _context.Customer.Attach(customer); _context.Entry(customer).State = Microsoft.EntityFrameworkCore.EntityState.Modified; _context.SaveChanges(); HttpContext.Session.SetString("AvatarImage", customer.Avatar_URL); if (String.Compare(oldImage, "avatar_common.png", true) != 0) { var path = Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\images\avatars", oldImage); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } } } catch { StatusMessage = "Error Cập nhật thông tin không thành công!"; return(RedirectToPage()); } } } StatusMessage = "Thông tin của bạn đã được cập nhật"; return(RedirectToPage()); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } var user = await _userManager.GetUserAsync(User); if (user == null) { return(NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.")); } BDS_ML.Models.ModelDB.Admin admin = _context.Admin.Where(c => c.Account_ID == user.Id).SingleOrDefault(); var email = await _userManager.GetEmailAsync(user); if (Input.Email != email) { admin.Email = Input.Email; var setEmailResult = await _userManager.SetEmailAsync(user, Input.Email); if (!setEmailResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting email for user with ID '{userId}'."); } } var phoneNumber = await _userManager.GetPhoneNumberAsync(user); if (Input.PhoneNumber != phoneNumber) { admin.PhoneNumber = Input.PhoneNumber; var setPhoneResult = await _userManager.SetPhoneNumberAsync(user, Input.PhoneNumber); if (!setPhoneResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting phone number for user with ID '{userId}'."); } } if (Input.FullName != admin.FullName) { admin.FullName = Input.FullName; } if (Input.Address != admin.Address) { admin.Address = Input.Address; } admin.ModifiedDate = DateTime.Now; var updateResult = await _userManager.UpdateAsync(user); if (!updateResult.Succeeded) { var userId = await _userManager.GetUserIdAsync(user); throw new InvalidOperationException($"Unexpected error occurred setting fields for user with ID '{userId}'."); } else { try { _context.Admin.Attach(admin); _context.Entry(admin).State = Microsoft.EntityFrameworkCore.EntityState.Modified; _context.SaveChanges(); } catch { StatusMessage = "Error Cập nhật thông tin không thành công!"; return(RedirectToPage()); } } await _signInManager.RefreshSignInAsync(user); StatusMessage = "Thông tin của bạn đã được cập nhật"; return(RedirectToPage()); }