Exemple #1
0
 public void Visit(IAuditableVisitor <Registration> logger, DbContext dbContext)
 {
     Visit(logger, dbContext.Entry(this));
     PaymentInfo?.Visit(logger, dbContext, "Fizetési mód");
     Preferences?.Visit(logger, dbContext, "Preferenciák");
     Settings?.Visit(logger, dbContext, "Beállítások");
 }
        public void Visit(IAuditableVisitor <Registration> logger, DbContext dbContext, string navigation)
        {
            var entry = dbContext.Entry(this);

            if (entry.State == EntityState.Added)
            {
                logger.LogChange($"{navigation} Felnőtt tartalom megjelenítése", NSFWContent);
                logger.LogChange($"{navigation} Helyi hír értesítések", RecieveLocalNewsAlerts);
            }

            if (entry.State == EntityState.Modified)
            {
                AuditHelpers.LogAttributeIfChanged(logger, entry, $"{navigation} Felnőtt tartalom megjelenítése", nameof(NSFWContent), NSFWContent);
                AuditHelpers.LogAttributeIfChanged(logger, entry, $"{navigation} Helyi hír értesítések", nameof(RecieveLocalNewsAlerts), RecieveLocalNewsAlerts);
            }

            foreach (var regionPref in RegionPreferences)
            {
                regionPref.Visit(logger, dbContext, "Régió preferenciák");
            }

            var removed = dbContext.ChangeTracker
                          .Entries <RegionPreference>()
                          .Where(e => e.State == EntityState.Deleted &&
                                 (int)e.Property(nameof(RegionPreference.Preferences) + "Id").OriginalValue == Id)
                          .Select(e => e.Entity)
                          .ToList();

            foreach (var regionPref in removed)
            {
                regionPref.Visit(logger, dbContext, "Régió preferenciák");
            }
        }
Exemple #3
0
        private void Visit(IAuditableVisitor <Registration> logger, EntityEntry entityEntry)
        {
            if (entityEntry.State == EntityState.Added)
            {
                logger.LogChange("Email", Email);
            }

            if (entityEntry.State == EntityState.Modified)
            {
                AuditHelpers.LogAttributeIfChanged(logger, entityEntry, "Email", nameof(Email), Email);
            }
        }
        public void Visit(IAuditableVisitor <Registration> logger, DbContext dbContext, string navigation)
        {
            var entry = dbContext.Entry(this);

            if (entry.State == EntityState.Added)
            {
                logger.LogChange("Fizetési mód", PaymentMethod);
            }
            else if (entry.State == EntityState.Modified)
            {
                AuditHelpers.LogAttributeIfChanged(logger, entry, "Fizetési mód", nameof(PaymentMethod), PaymentMethod);
            }
        }
        public void Visit(IAuditableVisitor <Registration> logger, DbContext dbContext, string navigation)
        {
            var entry = dbContext.Entry(this);

            if (entry.State == EntityState.Added)
            {
                logger.LogChange(navigation, $"{Region.ToFriendlyString()} hozzáadva");
            }
            else if (entry.State == EntityState.Deleted)
            {
                logger.LogChange(navigation, $"{Region.ToFriendlyString()} törölve");
            }
        }
        public static void LogAttributeIfChanged <TRoot, TAttrib>(
            IAuditableVisitor <TRoot> visitor,
            EntityEntry entityEntry,
            string attribute,
            string propertyName,
            TAttrib value)
            where TRoot : IAuditableEntityRoot <TRoot>
        {
            var original = (TAttrib)entityEntry.OriginalValues[propertyName];

            if (!original.Equals(value))
            {
                visitor.LogChange(attribute, original, value);
            }
        }
        public void Visit(IAuditableVisitor <Registration> logger, DbContext dbContext, string navigation)
        {
            var huCulture = CultureInfo.GetCultures(CultureTypes.SpecificCultures).FirstOrDefault(c => c.Name == "hu");
            var entry     = dbContext.Entry(this);

            if (entry.State == EntityState.Added)
            {
                logger.LogChange($"{navigation} Téma", Theme.ToString());
                logger.LogChange($"{navigation} Menü megjelenítése", HideMenu.ToString(huCulture));
            }

            if (entry.State == EntityState.Modified)
            {
                AuditHelpers.LogAttributeIfChanged(logger, entry, $"{navigation} Téma", nameof(Theme), Theme);
                AuditHelpers.LogAttributeIfChanged(logger, entry, $"{navigation} Menü megjelenítése", nameof(HideMenu), HideMenu);
            }
        }