protected override EventEditModel GetEditViewModel(EventBase @event, ActivityLinks links) { var eventExtended = (Event)@event; var model = base.GetEditViewModel(@event, links).Map <EventExtendedEditModel>(); model.CanSubscribe = eventExtended.CanSubscribe; model.SubscribeNotes = eventExtended.SubscribeNotes; model.CanEditSubscribe = _eventsService.CanEditSubscribe(@event.Id); return(model); }
private Event MapToEvent(EventEditModel editModel) { var @event = _eventsService.Get(editModel.Id); @event = Mapper.Map(editModel, @event); @event.MediaIds = @event.MediaIds.Concat(_mediaHelper.CreateMedia(editModel, MediaFolderTypeEnum.EventsContent)); @event.StartDate = editModel.StartDate.ToUniversalTime().WithCorrectedDaylightSavingTime(editModel.StartDate); @event.PublishDate = editModel.PublishDate.ToUniversalTime().WithCorrectedDaylightSavingTime(editModel.PublishDate); @event.EndDate = editModel.EndDate.ToUniversalTime().WithCorrectedDaylightSavingTime(editModel.EndDate); @event.EndPinDate = editModel.EndPinDate?.ToUniversalTime().WithCorrectedDaylightSavingTime(editModel.EndPinDate.Value); if (!_permissionsService.Check(ActivityType, PermissionActionEnum.CanPin)) { @event.EndPinDate = null; @event.IsPinned = false; } @event.SubscribeNotes = editModel.SubscribeNotes; // not allow change CanSubscribe, if someone subscribes while event was editing if (_eventsService.CanEditSubscribe(@event.Id)) { @event.CanSubscribe = editModel.CanSubscribe; } return(@event); }