public static Data.Event ToEntity(this EventInputModel model, MemberUser user) => new Data.Event { Title = model.Title, Description = model.Description, Type = model.Type, CreatedAt = TimeProvider.UtcNow, CreatedByUser = user, SignupOptions = new EventSignupOptions { RequiresMembershipFee = model.RequiresMembershipFee, RequiresTrainingFee = model.RequiresTrainingFee, RequiresClassesFee = model.RequiresClassesFee, PriceForMembers = model.PriceForMembers, PriceForNonMembers = model.PriceForNonMembers, SignupOpensAt = GetUtc(model.EnableSignupOpensAt, model.SignupOpensAtDate, model.SignupOpensAtTime), SignupClosesAt = GetUtc(model.EnableSignupClosesAt, model.SignupClosesAtDate, model.SignupClosesAtTime), SignupHelp = model.SignupHelp, RoleSignup = model.RoleSignup, RoleSignupHelp = model.RoleSignupHelp, AllowPartnerSignup = model.AllowPartnerSignup, AllowPartnerSignupHelp = model.AllowPartnerSignupHelp, AutoAcceptedSignups = model.AutoAcceptedSignups } };
public async Task <IActionResult> Edit(Guid id, [FromForm] EventInputModel model) { if (!ModelState.IsValid) { return(View(model)); } await _database.EditEvent(id, e => e.UpdateEvent(model)); return(RedirectToAction(nameof(View), new { id })); }
public async Task <IActionResult> Create([FromForm] EventInputModel model) { if (!ModelState.IsValid) { return(View(model)); } var entity = model.ToEntity(await GetCurrentUser()); await _database.AddAsync(entity); await _database.SaveChangesAsync(); return(RedirectToAction(nameof(View), new { id = entity.Id })); }
public static void UpdateEvent(this Data.Event entity, EventInputModel model) { entity.Title = model.Title; entity.Description = model.Description; entity.Type = model.Type; entity.SignupOptions.RequiresMembershipFee = model.RequiresMembershipFee; entity.SignupOptions.RequiresTrainingFee = model.RequiresTrainingFee; entity.SignupOptions.RequiresClassesFee = model.RequiresClassesFee; entity.SignupOptions.PriceForMembers = model.PriceForMembers; entity.SignupOptions.PriceForNonMembers = model.PriceForNonMembers; entity.SignupOptions.SignupOpensAt = GetUtc(model.EnableSignupOpensAt, model.SignupOpensAtDate, model.SignupOpensAtTime); entity.SignupOptions.SignupClosesAt = GetUtc(model.EnableSignupClosesAt, model.SignupClosesAtDate, model.SignupClosesAtTime); entity.SignupOptions.SignupHelp = model.SignupHelp; entity.SignupOptions.RoleSignup = model.RoleSignup; entity.SignupOptions.RoleSignupHelp = model.RoleSignupHelp; entity.SignupOptions.AllowPartnerSignup = model.AllowPartnerSignup; entity.SignupOptions.AllowPartnerSignupHelp = model.AllowPartnerSignupHelp; entity.SignupOptions.AutoAcceptedSignups = model.AutoAcceptedSignups; }
public async Task <IActionResult> Create([FromForm] EventInputModel model) { if (!ModelState.IsValid) { return(View(model)); } var entity = model.ToEntity(await GetCurrentUser()); if (model.SemesterId.HasValue) { var semester = await _database.Semesters.FindAsync(model.SemesterId.Value); semester.Courses.Add(entity); } else { _database.Events.Add(entity); } await _database.SaveChangesAsync(); return(RedirectToAction(nameof(View), new { id = entity.Id })); }
public static Data.Event ToEntity(this EventInputModel model, User user) => new()