public async Task <IActionResult> Update(int?id) { if (id == null) { return(NotFound()); } EventModerator moder = await _context.EventModerators.Where(c => !c.IsDeleted && c.ModeratorId == _userManager.GetUserId(User) && c.EventId == id).Include(c => c.Event).FirstOrDefaultAsync(); if (moder == null) { return(NotFound()); } Event @event = await _context.Events.Where(e => !e.IsDeleted && e.Id == id).FirstOrDefaultAsync(); if (@event == null) { return(NotFound()); } _context.IncludeCategoryEvent(false); List <Category> ctg = _context.Categories.Where(c => !c.IsDeleted && c.Activeted).ToList(); ViewBag.Categories = ctg; return(View(@event)); }
public async Task <IActionResult> Status(int?id) { if (id == null) { return(NotFound()); } EventModerator moder = await _context.EventModerators.Where(c => !c.IsDeleted && c.ModeratorId == _userManager.GetUserId(User) && c.EventId == id).Include(c => c.Event).FirstOrDefaultAsync(); if (moder == null) { return(NotFound()); } Event @event = await _context.Events.FindAsync(id); if (@event == null) { return(NotFound()); } _context.IncludeCategoryEvent(false); _context.IncludeModeratorsEvent(true); foreach (EventCategory item in @event.EventCategories) { item.Activeted = [email protected]; } foreach (EventModerator item in @event.EventModerators) { item.Activeted = [email protected]; } @event.Activeted = [email protected]; await _context.SaveChangesAsync(); return(Json(new { suc = true, status = @event.Activeted })); }
public async Task <IActionResult> Update(int?id, Event @event, int[] Categories) { List <Category> ctg = _context.Categories.Where(c => !c.IsDeleted && c.Activeted).ToList(); ViewBag.Categories = ctg; if (id == null) { return(NotFound()); } EventModerator moder = await _context.EventModerators.Where(c => !c.IsDeleted && c.ModeratorId == _userManager.GetUserId(User) && c.EventId == id).Include(c => c.Event).FirstOrDefaultAsync(); if (moder == null) { return(NotFound()); } Event eventDb = await _context.Events.Where(e => !e.IsDeleted && e.Id == id).FirstOrDefaultAsync(); _context.IncludeCategoryEvent(false); if (@event == null) { return(NotFound()); } if (id == null) { return(NotFound()); } if (Helpers.Helper.CheckLengthArray(Categories, ModelState)) { return(View(eventDb)); } if (!ModelState.IsValid) { return(View(eventDb)); } if (@event.Title != eventDb.Title) { bool IsExist = _context.Events.Where(e => !e.IsDeleted).Any(e => e.Title.ToLower() == @event.Title.ToLower()); if (IsExist) { ModelState.AddModelError("Name", "This course name already exist!!!"); return(View(eventDb)); } } if (@event.Photo != null) { if ([email protected](ModelState)) { return(View(eventDb)); } string folder = Path.Combine("site", "img", "event"); string fileName = await @event.Photo.SaveImage(_env.WebRootPath, folder); eventDb.Image = fileName; } List <EventCategory> eventCategories = new List <EventCategory>(); foreach (int categoryId in Categories) { eventCategories.Add(new EventCategory { CategoryId = categoryId, EventId = @event.Id, Activeted = @event.Activeted }); } eventDb.Title = @event.Title; eventDb.StartTime = @event.StartTime; eventDb.EndTime = @event.EndTime; eventDb.Description = @event.Description; eventDb.Venue = @event.Venue; eventDb.EventCategories = eventCategories; await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); }