From f0ef990993446bae13d6c1104504bb78489a2ade Mon Sep 17 00:00:00 2001
From: Sarah Faey
Date: Sat, 3 Dec 2022 17:59:29 +0100
Subject: [PATCH] added EventType to raid
---
.../20221203164723_RaidEventType.Designer.cs | 694 ++++++++++++++++++
.../20221203164723_RaidEventType.cs | 37 +
Lieb/Migrations/LiebContextModelSnapshot.cs | 6 +
Lieb/Models/GuildWars2/Raid/Raid.cs | 8 -
Lieb/Models/GuildWars2/Raid/RaidBase.cs | 19 +
Lieb/Pages/Raids/RaidEdit/RaidEdit.razor | 11 +
.../Raids/RaidEdit/RaidTemplateEdit.razor | 11 +
7 files changed, 778 insertions(+), 8 deletions(-)
create mode 100644 Lieb/Migrations/20221203164723_RaidEventType.Designer.cs
create mode 100644 Lieb/Migrations/20221203164723_RaidEventType.cs
diff --git a/Lieb/Migrations/20221203164723_RaidEventType.Designer.cs b/Lieb/Migrations/20221203164723_RaidEventType.Designer.cs
new file mode 100644
index 0000000..9118f1d
--- /dev/null
+++ b/Lieb/Migrations/20221203164723_RaidEventType.Designer.cs
@@ -0,0 +1,694 @@
+//
+using System;
+using Lieb.Data;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace Lieb.Migrations
+{
+ [DbContext(typeof(LiebContext))]
+ [Migration("20221203164723_RaidEventType")]
+ partial class RaidEventType
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder.HasAnnotation("ProductVersion", "6.0.10");
+
+ modelBuilder.Entity("Lieb.Models.DiscordSettings", b =>
+ {
+ b.Property("DiscordSettingsId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("ChangeUserNames")
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordLogChannel")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("DiscordSettingsId");
+
+ b.ToTable("DiscordSettings", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Equipped", b =>
+ {
+ b.Property("EquippedId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("CanTank")
+ .HasColumnType("INTEGER");
+
+ b.Property("GuildWars2AccountId")
+ .HasColumnType("INTEGER");
+
+ b.Property("GuildWars2BuildId")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("EquippedId");
+
+ b.HasIndex("GuildWars2AccountId");
+
+ b.HasIndex("GuildWars2BuildId");
+
+ b.ToTable("Equipped", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.GuildWars2Account", b =>
+ {
+ b.Property("GuildWars2AccountId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("AccountName")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("ApiKey")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("LiebUserId")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("GuildWars2AccountId");
+
+ b.HasIndex("LiebUserId");
+
+ b.ToTable("GuildWars2Account", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.GuildWars2Build", b =>
+ {
+ b.Property("GuildWars2BuildId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("Alacrity")
+ .HasColumnType("INTEGER");
+
+ b.Property("BuildName")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("TEXT");
+
+ b.Property("Class")
+ .HasColumnType("INTEGER");
+
+ b.Property("EliteSpecialization")
+ .HasColumnType("INTEGER");
+
+ b.Property("Heal")
+ .HasColumnType("INTEGER");
+
+ b.Property("Might")
+ .HasColumnType("INTEGER");
+
+ b.Property("Quickness")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("GuildWars2BuildId");
+
+ b.ToTable("GuildWars2Build", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.DiscordRaidMessage", b =>
+ {
+ b.Property("DiscordRaidMessageId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordChannelId")
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordGuildId")
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordMessageId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidTemplateId")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("DiscordRaidMessageId");
+
+ b.HasIndex("RaidId");
+
+ b.HasIndex("RaidTemplateId");
+
+ b.ToTable("DiscordRaidMessage", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.Raid", b =>
+ {
+ b.Property("RaidId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("Description")
+ .IsRequired()
+ .HasMaxLength(1000)
+ .HasColumnType("TEXT");
+
+ b.Property("EndTimeUTC")
+ .HasColumnType("TEXT");
+
+ b.Property("EventType")
+ .HasColumnType("INTEGER");
+
+ b.Property("FreeForAllTimeUTC")
+ .HasColumnType("TEXT");
+
+ b.Property("Guild")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.Property("MoveFlexUsers")
+ .HasColumnType("INTEGER");
+
+ b.Property("Organizer")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.Property("RaidOwnerId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidType")
+ .HasColumnType("INTEGER");
+
+ b.Property("RequiredRole")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("StartTimeUTC")
+ .HasColumnType("TEXT");
+
+ b.Property("Title")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("TEXT");
+
+ b.Property("VoiceChat")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.HasKey("RaidId");
+
+ b.ToTable("Raid", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidLog", b =>
+ {
+ b.Property("RaidLogId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("LogEntry")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("RaidId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidTemplateId")
+ .HasColumnType("INTEGER");
+
+ b.Property("Time")
+ .HasColumnType("TEXT");
+
+ b.Property("Type")
+ .HasColumnType("INTEGER");
+
+ b.Property("UserId")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("RaidLogId");
+
+ b.HasIndex("RaidId");
+
+ b.HasIndex("RaidTemplateId");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("RaidLog", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidReminder", b =>
+ {
+ b.Property("RaidReminderId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordChannelId")
+ .HasColumnType("INTEGER");
+
+ b.Property("DiscordServerId")
+ .HasColumnType("INTEGER");
+
+ b.Property("Message")
+ .IsRequired()
+ .HasMaxLength(1000)
+ .HasColumnType("TEXT");
+
+ b.Property("RaidId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidTemplateId")
+ .HasColumnType("INTEGER");
+
+ b.Property("ReminderTimeUTC")
+ .HasColumnType("TEXT");
+
+ b.Property("Sent")
+ .HasColumnType("INTEGER");
+
+ b.Property("TimeType")
+ .HasColumnType("INTEGER");
+
+ b.Property("Type")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("RaidReminderId");
+
+ b.HasIndex("RaidId");
+
+ b.HasIndex("RaidTemplateId");
+
+ b.ToTable("RaidReminder", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidRole", b =>
+ {
+ b.Property("RaidRoleId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("Description")
+ .IsRequired()
+ .HasMaxLength(200)
+ .HasColumnType("TEXT");
+
+ b.Property("IsRandomSignUpRole")
+ .HasColumnType("INTEGER");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("TEXT");
+
+ b.Property("RaidId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidTemplateId")
+ .HasColumnType("INTEGER");
+
+ b.Property("Spots")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("RaidRoleId");
+
+ b.HasIndex("RaidId");
+
+ b.HasIndex("RaidTemplateId");
+
+ b.ToTable("RaidRole", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidSignUp", b =>
+ {
+ b.Property("RaidSignUpId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("ExternalUserName")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("GuildWars2AccountId")
+ .HasColumnType("INTEGER");
+
+ b.Property("LiebUserId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidRoleId")
+ .HasColumnType("INTEGER");
+
+ b.Property("SignUpType")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("RaidSignUpId");
+
+ b.HasIndex("GuildWars2AccountId");
+
+ b.HasIndex("LiebUserId");
+
+ b.HasIndex("RaidId");
+
+ b.HasIndex("RaidRoleId");
+
+ b.ToTable("RaidSignUp", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidTemplate", b =>
+ {
+ b.Property("RaidTemplateId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("CreateDaysBefore")
+ .HasColumnType("INTEGER");
+
+ b.Property("Description")
+ .IsRequired()
+ .HasMaxLength(1000)
+ .HasColumnType("TEXT");
+
+ b.Property("EndTime")
+ .HasColumnType("TEXT");
+
+ b.Property("EventType")
+ .HasColumnType("INTEGER");
+
+ b.Property("FreeForAllTime")
+ .HasColumnType("TEXT");
+
+ b.Property("Guild")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.Property("Interval")
+ .HasColumnType("INTEGER");
+
+ b.Property("MoveFlexUsers")
+ .HasColumnType("INTEGER");
+
+ b.Property("Organizer")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.Property("RaidOwnerId")
+ .HasColumnType("INTEGER");
+
+ b.Property("RaidType")
+ .HasColumnType("INTEGER");
+
+ b.Property("RequiredRole")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("StartTime")
+ .HasColumnType("TEXT");
+
+ b.Property("TimeZone")
+ .IsRequired()
+ .HasColumnType("TEXT");
+
+ b.Property("Title")
+ .IsRequired()
+ .HasMaxLength(100)
+ .HasColumnType("TEXT");
+
+ b.Property("VoiceChat")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("TEXT");
+
+ b.HasKey("RaidTemplateId");
+
+ b.ToTable("RaidTemplate", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.LiebRole", b =>
+ {
+ b.Property("LiebRoleId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("Level")
+ .HasColumnType("INTEGER");
+
+ b.Property("LevelToAssign")
+ .HasColumnType("INTEGER");
+
+ b.Property("RoleName")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("TEXT");
+
+ b.Property("Type")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("LiebRoleId");
+
+ b.ToTable("LiebRole", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.LiebUser", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("INTEGER");
+
+ b.Property("AlwaysSignUpWithMainAccount")
+ .HasColumnType("INTEGER");
+
+ b.Property("BannedUntil")
+ .HasColumnType("TEXT");
+
+ b.Property("Birthday")
+ .HasColumnType("TEXT");
+
+ b.Property("MainGW2Account")
+ .HasColumnType("INTEGER");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(40)
+ .HasColumnType("TEXT");
+
+ b.Property("Pronouns")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("TEXT");
+
+ b.HasKey("Id");
+
+ b.ToTable("LiebUser", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.RoleAssignment", b =>
+ {
+ b.Property("RoleAssignmentId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("INTEGER");
+
+ b.Property("LiebRoleId")
+ .HasColumnType("INTEGER");
+
+ b.Property("LiebUserId")
+ .HasColumnType("INTEGER");
+
+ b.HasKey("RoleAssignmentId");
+
+ b.HasIndex("LiebRoleId");
+
+ b.HasIndex("LiebUserId");
+
+ b.ToTable("RoleAssignment", (string)null);
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Equipped", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.GuildWars2Account", "GuildWars2Account")
+ .WithMany("EquippedBuilds")
+ .HasForeignKey("GuildWars2AccountId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Lieb.Models.GuildWars2.GuildWars2Build", "GuildWars2Build")
+ .WithMany("EquippedRoles")
+ .HasForeignKey("GuildWars2BuildId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("GuildWars2Account");
+
+ b.Navigation("GuildWars2Build");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.GuildWars2Account", b =>
+ {
+ b.HasOne("Lieb.Models.LiebUser", null)
+ .WithMany("GuildWars2Accounts")
+ .HasForeignKey("LiebUserId");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.DiscordRaidMessage", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.Raid.Raid", null)
+ .WithMany("DiscordRaidMessages")
+ .HasForeignKey("RaidId");
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.RaidTemplate", null)
+ .WithMany("DiscordRaidMessages")
+ .HasForeignKey("RaidTemplateId");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidLog", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.Raid.Raid", "Raid")
+ .WithMany("RaidLogs")
+ .HasForeignKey("RaidId");
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.RaidTemplate", "RaidTemplate")
+ .WithMany("TemplateLogs")
+ .HasForeignKey("RaidTemplateId");
+
+ b.HasOne("Lieb.Models.LiebUser", "User")
+ .WithMany()
+ .HasForeignKey("UserId");
+
+ b.Navigation("Raid");
+
+ b.Navigation("RaidTemplate");
+
+ b.Navigation("User");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidReminder", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.Raid.Raid", null)
+ .WithMany("Reminders")
+ .HasForeignKey("RaidId");
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.RaidTemplate", null)
+ .WithMany("Reminders")
+ .HasForeignKey("RaidTemplateId");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidRole", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.Raid.Raid", null)
+ .WithMany("Roles")
+ .HasForeignKey("RaidId");
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.RaidTemplate", null)
+ .WithMany("Roles")
+ .HasForeignKey("RaidTemplateId");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidSignUp", b =>
+ {
+ b.HasOne("Lieb.Models.GuildWars2.GuildWars2Account", "GuildWars2Account")
+ .WithMany()
+ .HasForeignKey("GuildWars2AccountId");
+
+ b.HasOne("Lieb.Models.LiebUser", "LiebUser")
+ .WithMany()
+ .HasForeignKey("LiebUserId");
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.Raid", "Raid")
+ .WithMany("SignUps")
+ .HasForeignKey("RaidId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Lieb.Models.GuildWars2.Raid.RaidRole", "RaidRole")
+ .WithMany()
+ .HasForeignKey("RaidRoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("GuildWars2Account");
+
+ b.Navigation("LiebUser");
+
+ b.Navigation("Raid");
+
+ b.Navigation("RaidRole");
+ });
+
+ modelBuilder.Entity("Lieb.Models.RoleAssignment", b =>
+ {
+ b.HasOne("Lieb.Models.LiebRole", "LiebRole")
+ .WithMany("RoleAssignments")
+ .HasForeignKey("LiebRoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Lieb.Models.LiebUser", "LiebUser")
+ .WithMany("RoleAssignments")
+ .HasForeignKey("LiebUserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("LiebRole");
+
+ b.Navigation("LiebUser");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.GuildWars2Account", b =>
+ {
+ b.Navigation("EquippedBuilds");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.GuildWars2Build", b =>
+ {
+ b.Navigation("EquippedRoles");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.Raid", b =>
+ {
+ b.Navigation("DiscordRaidMessages");
+
+ b.Navigation("RaidLogs");
+
+ b.Navigation("Reminders");
+
+ b.Navigation("Roles");
+
+ b.Navigation("SignUps");
+ });
+
+ modelBuilder.Entity("Lieb.Models.GuildWars2.Raid.RaidTemplate", b =>
+ {
+ b.Navigation("DiscordRaidMessages");
+
+ b.Navigation("Reminders");
+
+ b.Navigation("Roles");
+
+ b.Navigation("TemplateLogs");
+ });
+
+ modelBuilder.Entity("Lieb.Models.LiebRole", b =>
+ {
+ b.Navigation("RoleAssignments");
+ });
+
+ modelBuilder.Entity("Lieb.Models.LiebUser", b =>
+ {
+ b.Navigation("GuildWars2Accounts");
+
+ b.Navigation("RoleAssignments");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Lieb/Migrations/20221203164723_RaidEventType.cs b/Lieb/Migrations/20221203164723_RaidEventType.cs
new file mode 100644
index 0000000..09fd579
--- /dev/null
+++ b/Lieb/Migrations/20221203164723_RaidEventType.cs
@@ -0,0 +1,37 @@
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace Lieb.Migrations
+{
+ public partial class RaidEventType : Migration
+ {
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.AddColumn(
+ name: "EventType",
+ table: "RaidTemplate",
+ type: "INTEGER",
+ nullable: false,
+ defaultValue: 0);
+
+ migrationBuilder.AddColumn(
+ name: "EventType",
+ table: "Raid",
+ type: "INTEGER",
+ nullable: false,
+ defaultValue: 0);
+ }
+
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropColumn(
+ name: "EventType",
+ table: "RaidTemplate");
+
+ migrationBuilder.DropColumn(
+ name: "EventType",
+ table: "Raid");
+ }
+ }
+}
diff --git a/Lieb/Migrations/LiebContextModelSnapshot.cs b/Lieb/Migrations/LiebContextModelSnapshot.cs
index d44cf67..84c184d 100644
--- a/Lieb/Migrations/LiebContextModelSnapshot.cs
+++ b/Lieb/Migrations/LiebContextModelSnapshot.cs
@@ -160,6 +160,9 @@ namespace Lieb.Migrations
b.Property("EndTimeUTC")
.HasColumnType("TEXT");
+ b.Property("EventType")
+ .HasColumnType("INTEGER");
+
b.Property("FreeForAllTimeUTC")
.HasColumnType("TEXT");
@@ -376,6 +379,9 @@ namespace Lieb.Migrations
b.Property("EndTime")
.HasColumnType("TEXT");
+ b.Property("EventType")
+ .HasColumnType("INTEGER");
+
b.Property("FreeForAllTime")
.HasColumnType("TEXT");
diff --git a/Lieb/Models/GuildWars2/Raid/Raid.cs b/Lieb/Models/GuildWars2/Raid/Raid.cs
index 51ae9e7..ee445ce 100644
--- a/Lieb/Models/GuildWars2/Raid/Raid.cs
+++ b/Lieb/Models/GuildWars2/Raid/Raid.cs
@@ -2,14 +2,6 @@
namespace Lieb.Models.GuildWars2.Raid
{
- public enum RaidType
- {
- Planned = 0,
- RandomWithBoons = 1,
- RandomClasses = 2,
- RandomEliteSpecialization = 3,
- }
-
public class Raid : RaidBase
{
public int RaidId { get; private set; }
diff --git a/Lieb/Models/GuildWars2/Raid/RaidBase.cs b/Lieb/Models/GuildWars2/Raid/RaidBase.cs
index 73bb8de..78c24f9 100644
--- a/Lieb/Models/GuildWars2/Raid/RaidBase.cs
+++ b/Lieb/Models/GuildWars2/Raid/RaidBase.cs
@@ -2,6 +2,22 @@
namespace Lieb.Models.GuildWars2.Raid
{
+ public enum RaidType
+ {
+ Planned = 0,
+ RandomWithBoons = 1,
+ RandomClasses = 2,
+ RandomEliteSpecialization = 3,
+ }
+ public enum EventType
+ {
+ Other = 0,
+ Raid = 1,
+ Strike = 2,
+ Dungeon = 3,
+ Guild = 4
+ }
+
public abstract class RaidBase
{
[Required]
@@ -27,6 +43,9 @@ namespace Lieb.Models.GuildWars2.Raid
[Required]
public RaidType RaidType { get; set; }
+ [Required]
+ public EventType EventType { get; set; }
+
public string RequiredRole { get; set; } = String.Empty;
public bool MoveFlexUsers { get; set; } = true;
diff --git a/Lieb/Pages/Raids/RaidEdit/RaidEdit.razor b/Lieb/Pages/Raids/RaidEdit/RaidEdit.razor
index c8cd34c..4e0ce7f 100644
--- a/Lieb/Pages/Raids/RaidEdit/RaidEdit.razor
+++ b/Lieb/Pages/Raids/RaidEdit/RaidEdit.razor
@@ -46,6 +46,17 @@
+
+
+
+
+
+