public async Task <IActionResult> Create(CreateEventInputViewModel input) { var user = await this.userManager.GetUserAsync(this.User); var eventId = await this.eventsService.CreateNewEvent(input, user.Id); this.TempData["Message"] = "You have sucessully added a hiking event!"; return(this.RedirectToAction(nameof(this.GetById), new { id = eventId })); }
public async Task <IActionResult> EventInput(CreateEventInputViewModel model) { var timeErrorMessage = this.eventsService.GetTimeErrorMessage(model.ActiveFrom, model.ActiveTo, model.ActivationDate, model.TimeZone); if (timeErrorMessage != null) { model.Error = timeErrorMessage; return(this.View(model)); } var userId = this.userManager.GetUserId(this.User); var eventId = await this.eventsService.CreateEventAsync(model.Name, model.ActivationDate, model.ActiveFrom, model.ActiveTo, userId); return(this.RedirectToAction("AssignGroupsToEvent", new { id = eventId })); }
public async Task <IActionResult> EventInput(CreateEventInputViewModel model) { var timeErrorMessage = this.service.GetTimeErrorMessage(model.ActiveFrom, model.ActiveTo, model.ActivationDate, model.TimeZone); if (timeErrorMessage != null) { model.Error = timeErrorMessage; return(this.View(model)); } var user = await this.userManager.GetUserAsync(this.User); var eventId = await this.service.CreateEventAsync(model.Name, model.ActivationDate, model.ActiveFrom, model.ActiveTo, user.Id); await this.hub.Clients.Group(GlobalConstants.AdministratorRoleName).SendAsync("NewEventUpdate", user.UserName, model.Name); return(this.RedirectToAction("AssignGroupsToEvent", new { id = eventId })); }
public async Task <int> CreateNewEvent(CreateEventInputViewModel input, string userId) { var @event = new Event { CreatedById = userId, Details = input.Details, EndTime = DateTime.Parse(input.EndTime, CultureInfo.InvariantCulture), StartTime = DateTime.Parse(input.StartTime, CultureInfo.InvariantCulture), TransportId = input.TransportId, MaxGroupSize = input.MaxGroupSize, TripId = input.TripId, Title = input.Title, }; @event.Participants.Add(new EventsUsers { UserId = userId, EventId = @event.Id }); await this.eventsRepository.AddAsync(@event); await this.eventsRepository.SaveChangesAsync(); return(@event.Id); }