public async Task <IActionResult> Edit(string FirstName, string LastName, string Email, string Phone) { var identity = (ClaimsIdentity)User.Identity; int userId = Convert.ToInt32(identity.FindFirst(Models.User.UserId).Value); User loggedInUser = await _context.Users.FindAsync(userId); bool hasChanged = !FirstName.Equals(loggedInUser.FirstName) || !LastName.Equals(loggedInUser.LastName) || !Email.Equals(loggedInUser.Email) || !Phone.Equals(loggedInUser.Phone); if (hasChanged) { loggedInUser.FirstName = FirstName; loggedInUser.LastName = LastName; loggedInUser.Email = Email; loggedInUser.Phone = Phone; _context.Update(loggedInUser); await _context.SaveChangesAsync(); ViewData.Add("changed", "Dina inställningar är nu uppdaterade!"); } return(View(loggedInUser)); }
public async Task <IActionResult> Details(int?id) { if (id == null) { return(NotFound()); } var message = await _context.Messages .Include(m => m.MessageSender) .ThenInclude(ms => ms.User) .FirstOrDefaultAsync(m => m.Id == id); if (message == null) { return(NotFound()); } if (message.IsRead == false) { message.IsRead = true; _context.Update(message); await _context.SaveChangesAsync(); } return(View(message)); }
public async Task <IActionResult> Edit(int id, string Name, string Title, double Price, string Description, string Phone, List <int> CategoryIds) { Advertisement advertisement = await _context.Advertisements.FindAsync(id); List <AdvertisementCategory> advertisementCategories = await _context.AdvertisementCategories.Where(ac => ac.AdvertisementId == id).ToListAsync(); IFormFileCollection files = this.Request.Form.Files; bool hasChanged = !Name.Equals(advertisement.Name) || !Title.Equals(advertisement.Title) || !Description.Equals(advertisement.Description) || !Phone.Equals(advertisement.Phone) || Price != advertisement.Price; if (hasChanged) { advertisement.Name = Name; advertisement.Title = Title; advertisement.Description = Description; advertisement.Phone = Phone; advertisement.Price = Price; } _context.Update(advertisement); await _context.SaveChangesAsync(); foreach (AdvertisementCategory advertisementCategory in advertisementCategories) { _context.AdvertisementCategories.Remove(advertisementCategory); } await _context.SaveChangesAsync(); foreach (int categoryId in CategoryIds) { _context.AdvertisementCategories.Add(new AdvertisementCategory(id, categoryId)); } await _context.SaveChangesAsync(); SaveFileUploads(files, id); ViewData.Add("changed", "Dina inställningar är nu uppdaterade!"); return(RedirectToAction(nameof(Index))); }