public IActionResult CreateAct(ActsCreateActVM model) { if (ModelState.IsValid) { if (_context.Acts.FirstOrDefault(a => a.Name == model.Name) != null) { ModelState.AddModelError("Name", "There is already an act with this name."); return(View(model)); } var act = new Act() { Id = Guid.NewGuid(), Name = model.Name }; _context.Acts.Add(act); _context.SaveChanges(); return(RedirectToAction("Overview")); } ViewBag.Title = "Create act"; return(View(model)); }
public async Task <IActionResult> UpgradeToPromotor() { var user = await GetCurrentUserAsync(); var result = await _userManager.AddToRoleAsync(user, "Promotor"); if (result.Succeeded) { _context.Promotors.Add(new Promotor() { Id = user.Id, Email = user.Email, Events = new List <Event>() }); _context.SaveChanges(); TempData["UpgradedToPromotor"] = "You are now a Promotor."; return(RedirectToAction("Overview")); } TempData["UpgradeFailed"] = "Upgrade to promotor failed."; return(RedirectToAction("Overview")); }
public async Task <IActionResult> CreateEvent(EventsCreateEventVM model) { if (ModelState.IsValid) { var e = new Event() { Id = Guid.NewGuid(), Name = model.Name, DateCreated = DateTime.Today, StartDate = model.StartDate.Date, EndDate = model.EndDate.Date, StartTime = model.StartTime, EndTime = model.EndTime, Promotor = _context.Promotors.Find((await GetCurrentUserAsync()).Id), AddressLine = model.AddressLine, PostalCode = model.PostalCode, City = model.City }; _context.Events.Add(e); _context.EventActs.AddRange( model.Acts .Where(a => a.IsChecked) .Select(a => _context.Acts.Find(a.ActId)) .Select(a => new EventAct() { Act = a, Event = e })); _context.SaveChanges(); return(RedirectToAction("Overview")); } ViewBag.Title = "Create Event"; return(View(model)); }