private void EndUpdateEvent(UpdateContentContext context, AuditTrailSettingsPart part)
        {
            var newEventSettings = part.Retrieve <string>("Events");

            if (newEventSettings == _oldEventSettings)
            {
                return;
            }

            _auditTrailManager.CreateRecord <AuditTrailSettingsEventProvider>(
                eventName: AuditTrailSettingsEventProvider.EventsChanged,
                eventData: new Dictionary <string, object> {
                { "OldSettings", _auditTrailManager.ToEventData(_oldEventSettings) },
                { "NewSettings", _auditTrailManager.ToEventData(newEventSettings) }
            },
                user: _wca.GetContext().CurrentUser);
        }
 private void BeginUpdateEvent(UpdateContentContext context, AuditTrailSettingsPart part)
 {
     _oldEventSettings = part.Retrieve <string>("Events");
 }
 private void SetupLazyFields(ActivatedContentContext context, AuditTrailSettingsPart part)
 {
     part._eventProviderSettingsField.Loader(() => _auditTrailManager.DeserializeProviderConfiguration(part.Retrieve <string>("Events")));
     part._eventProviderSettingsField.Setter(value => {
         part.Store("Events", _auditTrailManager.SerializeProviderConfiguration(value));
         _signals.Trigger("AuditTrail.EventSettings");
         return(value);
     });
 }