public async Task <IActionResult> Edit([FromBody] EditEventViewModel editEventViewModel)
        {
            logger.LogInformation($"POST Request {HttpContext.Request.Headers[":path"]}. Body: {JsonConvert.SerializeObject(editEventViewModel)}");

            var eventId = editEventViewModel.Id;

            if (!await accessChecker.CanManageEvent(eventId))
            {
                throw new HttpStatusException(HttpStatusCode.Forbidden, CommonErrorMessages.Forbidden);
            }

            var @event = await context.Events.Include(e => e.Owner).FirstOrDefaultAsync(e => e.Id == eventId);

            var config = new MapperConfiguration(cfg => cfg.CreateMap <EditEventViewModel, Event>()
                                                 .ForMember("Teams", opt => opt.Ignore())
                                                 .ForMember("Owner", opt => opt.Ignore()));
            var mapper = new Mapper(config);

            mapper.Map(editEventViewModel, @event);

            try
            {
                context.Update(@event);
                await context.SaveChangesAsync();
            }
            catch (System.Exception)
            {
                throw new HttpStatusException(HttpStatusCode.InternalServerError, CommonErrorMessages.SaveChanges);
            }

            return(Json(@event));
        }