Add team roles and content management updates
This commit is contained in:
@@ -17,6 +17,8 @@ public sealed class AwardsDbContext(DbContextOptions<AwardsDbContext> options) :
|
||||
public DbSet<AdminAuditEntry> AdminAuditEntries => Set<AdminAuditEntry>();
|
||||
public DbSet<ClipSubmission> ClipSubmissions => Set<ClipSubmission>();
|
||||
public DbSet<SiteSettings> SiteSettings => Set<SiteSettings>();
|
||||
public DbSet<TeamMember> TeamMembers => Set<TeamMember>();
|
||||
public DbSet<TeamRolePermission> TeamRolePermissions => Set<TeamRolePermission>();
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
@@ -43,10 +45,36 @@ public sealed class AwardsDbContext(DbContextOptions<AwardsDbContext> options) :
|
||||
entity.Property(item => item.DemoLoginPasswordSalt).HasMaxLength(80);
|
||||
entity.Property(item => item.DemoLoginTwitchUserId).HasMaxLength(120);
|
||||
entity.Property(item => item.DemoLoginDisplayName).HasMaxLength(120);
|
||||
entity.Property(item => item.TwitchClientId).HasMaxLength(120);
|
||||
entity.Property(item => item.TwitchClientSecret).HasMaxLength(180);
|
||||
entity.Property(item => item.TwitchRedirectUri).HasMaxLength(400);
|
||||
entity.Property(item => item.TwitchScope).HasMaxLength(300);
|
||||
entity.Property(item => item.MaintenanceTitle).HasMaxLength(120);
|
||||
entity.Property(item => item.MaintenanceMessage).HasMaxLength(600);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<TeamMember>(entity =>
|
||||
{
|
||||
entity.HasIndex(item => item.Login).IsUnique();
|
||||
entity.HasIndex(item => item.BoundTwitchUserId).IsUnique();
|
||||
entity.Property(item => item.Login).HasMaxLength(80);
|
||||
entity.Property(item => item.DisplayName).HasMaxLength(120);
|
||||
entity.Property(item => item.Role).HasMaxLength(40);
|
||||
entity.Property(item => item.PasswordHash).HasMaxLength(120);
|
||||
entity.Property(item => item.PasswordSalt).HasMaxLength(80);
|
||||
entity.Property(item => item.BoundTwitchUserId).HasMaxLength(120);
|
||||
entity.Property(item => item.BoundTwitchDisplayName).HasMaxLength(120);
|
||||
entity.Property(item => item.CreatedByTwitchId).HasMaxLength(120);
|
||||
entity.Property(item => item.UpdatedByTwitchId).HasMaxLength(120);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<TeamRolePermission>(entity =>
|
||||
{
|
||||
entity.HasIndex(item => item.Role).IsUnique();
|
||||
entity.Property(item => item.Role).HasMaxLength(40);
|
||||
entity.Property(item => item.UpdatedByTwitchId).HasMaxLength(120);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Category>(entity =>
|
||||
{
|
||||
entity.HasIndex(item => new { item.SeasonId, item.Slug }).IsUnique();
|
||||
|
||||
Reference in New Issue
Block a user