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;
     });
 }
        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 GetMetadata(GetContentItemMetadataContext context, AuditTrailSettingsPart part) {
     context.Metadata.EditorGroupInfo.Add(new GroupInfo(T("Audit Trail")));
 }