diff --git a/CHANGELOG.md b/CHANGELOG.md
index d7faabc..47bf5fc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,23 @@
Mostly based on [keepachangelog](https://keepachangelog.com/en/1.0.0/) except date format. a-c-f-r-o
+## [5.1.3] - 08.07.2024
+
+### Added
+
+- Added `'quran` command, which will show the provided ayah in english and arabic, including recitation by Alafasy
+
+### Changed
+
+- Replying to the bot's message in the channel where chatterbot is enabled will also trigger the ai response, as if you pinged the bot. This only works for chatterbot, but not for ellie ai command prompts
+
+### Fixed
+
+- Fixed `'stickeradd` it now properly supports 300x300 image uploads.
+- Bot should now trim the invalid characters from chatterbot usernames to avoid openai errors
+- Fixed prompt triggering chatterbot responses twice
+- Honeypot commands now actually works
+
## [5.1.2] - 29.06.2024
### Fixed
diff --git a/src/Ellie.Marmalade/Attributes/svcAttribute.cs b/src/Ellie.Marmalade/Attributes/svcAttribute.cs
index a453303..df9cdde 100644
--- a/src/Ellie.Marmalade/Attributes/svcAttribute.cs
+++ b/src/Ellie.Marmalade/Attributes/svcAttribute.cs
@@ -1,7 +1,7 @@
namespace EllieBot.Marmalade;
///
-/// Marks the class as a service which can be used within the same Medusa
+/// Marks the class as a service which can be used within the same Marmalade
///
[AttributeUsage(AttributeTargets.Class)]
public class svcAttribute : Attribute
diff --git a/src/EllieBot/Bot.cs b/src/EllieBot/Bot.cs
index b312624..9ab0f92 100644
--- a/src/EllieBot/Bot.cs
+++ b/src/EllieBot/Bot.cs
@@ -110,7 +110,7 @@ public sealed class Bot : IBot
var svcs = new Container();
- // this is required in order for medusa unloading to work
+ // this is required in order for marmalade unloading to work
// svcs.Components.Remove();
// svcs.Components.Add();
diff --git a/src/EllieBot/Db/EllieContext.cs b/src/EllieBot/Db/EllieContext.cs
index 860e834..afc50ca 100644
--- a/src/EllieBot/Db/EllieContext.cs
+++ b/src/EllieBot/Db/EllieContext.cs
@@ -149,7 +149,7 @@ public abstract class EllieContext : DbContext
.OnDelete(DeleteBehavior.Cascade);
// start antispam
-
+
modelBuilder.Entity()
.HasOne(x => x.AntiSpamSetting)
.WithOne()
@@ -282,10 +282,10 @@ public abstract class EllieContext : DbContext
var selfassignableRolesEntity = modelBuilder.Entity();
selfassignableRolesEntity.HasIndex(s => new
- {
- s.GuildId,
- s.RoleId
- })
+ {
+ s.GuildId,
+ s.RoleId
+ })
.IsUnique();
selfassignableRolesEntity.Property(x => x.Group).HasDefaultValue(0);
@@ -358,10 +358,10 @@ public abstract class EllieContext : DbContext
var xps = modelBuilder.Entity();
xps.HasIndex(x => new
- {
- x.UserId,
- x.GuildId
- })
+ {
+ x.UserId,
+ x.GuildId
+ })
.IsUnique();
xps.HasIndex(x => x.UserId);
@@ -407,9 +407,9 @@ public abstract class EllieContext : DbContext
.OnDelete(DeleteBehavior.SetNull);
ci.HasIndex(x => new
- {
- x.Name
- })
+ {
+ x.Name
+ })
.IsUnique();
#endregion
@@ -528,10 +528,10 @@ public abstract class EllieContext : DbContext
.IsUnique(false);
rr2.HasIndex(x => new
- {
- x.MessageId,
- x.Emote
- })
+ {
+ x.MessageId,
+ x.Emote
+ })
.IsUnique();
});
@@ -606,11 +606,11 @@ public abstract class EllieContext : DbContext
{
// user can own only one of each item
x.HasIndex(model => new
- {
- model.UserId,
- model.ItemType,
- model.ItemKey
- })
+ {
+ model.UserId,
+ model.ItemType,
+ model.ItemKey
+ })
.IsUnique();
});
@@ -635,10 +635,10 @@ public abstract class EllieContext : DbContext
#region Sticky Roles
modelBuilder.Entity(sr => sr.HasIndex(x => new
- {
- x.GuildId,
- x.UserId
- })
+ {
+ x.GuildId,
+ x.UserId
+ })
.IsUnique());
#endregion
diff --git a/src/EllieBot/Db/EllieDbService.cs b/src/EllieBot/Db/EllieDbService.cs
index 52e0bf9..2a3382e 100644
--- a/src/EllieBot/Db/EllieDbService.cs
+++ b/src/EllieBot/Db/EllieDbService.cs
@@ -4,14 +4,14 @@ using Microsoft.EntityFrameworkCore;
namespace EllieBot.Db;
-public sealed class EllieDbService : DbService
+public sealed class EllieDbService : DbService
{
private readonly IBotCredsProvider _creds;
// these are props because creds can change at runtime
private string DbType => _creds.GetCreds().Db.Type.ToLowerInvariant().Trim();
private string ConnString => _creds.GetCreds().Db.ConnectionString;
-
+
public EllieDbService(IBotCredsProvider creds)
{
LinqToDBForEFTools.Initialize();
@@ -26,13 +26,13 @@ public sealed class EllieDbService : DbService
var connString = ConnString;
await using var context = CreateRawDbContext(dbType, connString);
-
+
// make sure sqlite db is in wal journal mode
if (context is SqliteContext)
{
await context.Database.ExecuteSqlRawAsync("PRAGMA journal_mode=WAL");
}
-
+
await context.Database.MigrateAsync();
}
@@ -52,7 +52,7 @@ public sealed class EllieDbService : DbService
throw new NotSupportedException($"The database provide type of '{dbType}' is not supported.");
}
}
-
+
private EllieContext GetDbContextInternal()
{
var dbType = DbType;
diff --git a/src/EllieBot/EllieBot.csproj b/src/EllieBot/EllieBot.csproj
index 174d25d..86a9972 100644
--- a/src/EllieBot/EllieBot.csproj
+++ b/src/EllieBot/EllieBot.csproj
@@ -4,7 +4,7 @@
enable
true
en
- 5.1.2
+ 5.1.3
$(MSBuildProjectDirectory)
diff --git a/src/EllieBot/Migrations/Mysql/20240627033532_honeypot.Designer.cs b/src/EllieBot/Migrations/Mysql/20240627033532_honeypot.Designer.cs
index e54e7c8..8d0bf29 100644
--- a/src/EllieBot/Migrations/Mysql/20240627033532_honeypot.Designer.cs
+++ b/src/EllieBot/Migrations/Mysql/20240627033532_honeypot.Designer.cs
@@ -26,3777 +26,3777 @@ namespace EllieBot.Migrations.Mysql
MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
modelBuilder.Entity("EllieBot.Db.Models.AntiAltSetting", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Action")
- .HasColumnType("int")
- .HasColumnName("action");
+ b.Property("Action")
+ .HasColumnType("int")
+ .HasColumnName("action");
- b.Property("ActionDurationMinutes")
- .HasColumnType("int")
- .HasColumnName("actiondurationminutes");
+ b.Property("ActionDurationMinutes")
+ .HasColumnType("int")
+ .HasColumnName("actiondurationminutes");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("MinAge")
- .HasColumnType("time(6)")
- .HasColumnName("minage");
+ b.Property("MinAge")
+ .HasColumnType("time(6)")
+ .HasColumnName("minage");
- b.Property("RoleId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("roleid");
+ b.Property("RoleId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("roleid");
- b.HasKey("Id")
- .HasName("pk_antialtsetting");
+ b.HasKey("Id")
+ .HasName("pk_antialtsetting");
- b.HasIndex("GuildConfigId")
- .IsUnique()
- .HasDatabaseName("ix_antialtsetting_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .IsUnique()
+ .HasDatabaseName("ix_antialtsetting_guildconfigid");
- b.ToTable("antialtsetting", (string)null);
- });
+ b.ToTable("antialtsetting", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AntiRaidSetting", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Action")
- .HasColumnType("int")
- .HasColumnName("action");
+ b.Property("Action")
+ .HasColumnType("int")
+ .HasColumnName("action");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("PunishDuration")
- .HasColumnType("int")
- .HasColumnName("punishduration");
+ b.Property("PunishDuration")
+ .HasColumnType("int")
+ .HasColumnName("punishduration");
- b.Property("Seconds")
- .HasColumnType("int")
- .HasColumnName("seconds");
+ b.Property("Seconds")
+ .HasColumnType("int")
+ .HasColumnName("seconds");
- b.Property("UserThreshold")
- .HasColumnType("int")
- .HasColumnName("userthreshold");
+ b.Property("UserThreshold")
+ .HasColumnType("int")
+ .HasColumnName("userthreshold");
- b.HasKey("Id")
- .HasName("pk_antiraidsetting");
+ b.HasKey("Id")
+ .HasName("pk_antiraidsetting");
- b.HasIndex("GuildConfigId")
- .IsUnique()
- .HasDatabaseName("ix_antiraidsetting_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .IsUnique()
+ .HasDatabaseName("ix_antiraidsetting_guildconfigid");
- b.ToTable("antiraidsetting", (string)null);
- });
+ b.ToTable("antiraidsetting", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AntiSpamIgnore", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("AntiSpamSettingId")
- .HasColumnType("int")
- .HasColumnName("antispamsettingid");
+ b.Property("AntiSpamSettingId")
+ .HasColumnType("int")
+ .HasColumnName("antispamsettingid");
- b.Property("ChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("channelid");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.HasKey("Id")
- .HasName("pk_antispamignore");
+ b.HasKey("Id")
+ .HasName("pk_antispamignore");
- b.HasIndex("AntiSpamSettingId")
- .HasDatabaseName("ix_antispamignore_antispamsettingid");
+ b.HasIndex("AntiSpamSettingId")
+ .HasDatabaseName("ix_antispamignore_antispamsettingid");
- b.ToTable("antispamignore", (string)null);
- });
+ b.ToTable("antispamignore", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AntiSpamSetting", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Action")
- .HasColumnType("int")
- .HasColumnName("action");
+ b.Property("Action")
+ .HasColumnType("int")
+ .HasColumnName("action");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("MessageThreshold")
- .HasColumnType("int")
- .HasColumnName("messagethreshold");
+ b.Property("MessageThreshold")
+ .HasColumnType("int")
+ .HasColumnName("messagethreshold");
- b.Property("MuteTime")
- .HasColumnType("int")
- .HasColumnName("mutetime");
+ b.Property("MuteTime")
+ .HasColumnType("int")
+ .HasColumnName("mutetime");
- b.Property("RoleId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("roleid");
+ b.Property("RoleId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("roleid");
- b.HasKey("Id")
- .HasName("pk_antispamsetting");
+ b.HasKey("Id")
+ .HasName("pk_antispamsetting");
- b.HasIndex("GuildConfigId")
- .IsUnique()
- .HasDatabaseName("ix_antispamsetting_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .IsUnique()
+ .HasDatabaseName("ix_antispamsetting_guildconfigid");
- b.ToTable("antispamsetting", (string)null);
- });
+ b.ToTable("antispamsetting", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.ArchivedTodoListModel", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Name")
- .HasColumnType("longtext")
- .HasColumnName("name");
+ b.Property("Name")
+ .HasColumnType("longtext")
+ .HasColumnName("name");
- b.Property("UserId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("userid");
- b.HasKey("Id")
- .HasName("pk_todosarchive");
+ b.HasKey("Id")
+ .HasName("pk_todosarchive");
- b.ToTable("todosarchive", (string)null);
- });
+ b.ToTable("todosarchive", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AutoCommand", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("ChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("channelid");
- b.Property("ChannelName")
- .HasColumnType("longtext")
- .HasColumnName("channelname");
+ b.Property("ChannelName")
+ .HasColumnType("longtext")
+ .HasColumnName("channelname");
- b.Property("CommandText")
- .HasColumnType("longtext")
- .HasColumnName("commandtext");
+ b.Property("CommandText")
+ .HasColumnType("longtext")
+ .HasColumnName("commandtext");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("guildid");
+ b.Property("GuildId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("guildid");
- b.Property("GuildName")
- .HasColumnType("longtext")
- .HasColumnName("guildname");
+ b.Property("GuildName")
+ .HasColumnType("longtext")
+ .HasColumnName("guildname");
- b.Property("Interval")
- .HasColumnType("int")
- .HasColumnName("interval");
+ b.Property("Interval")
+ .HasColumnType("int")
+ .HasColumnName("interval");
- b.Property("VoiceChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("voicechannelid");
+ b.Property("VoiceChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("voicechannelid");
- b.Property("VoiceChannelName")
- .HasColumnType("longtext")
- .HasColumnName("voicechannelname");
+ b.Property("VoiceChannelName")
+ .HasColumnType("longtext")
+ .HasColumnName("voicechannelname");
- b.HasKey("Id")
- .HasName("pk_autocommands");
+ b.HasKey("Id")
+ .HasName("pk_autocommands");
- b.ToTable("autocommands", (string)null);
- });
+ b.ToTable("autocommands", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AutoPublishChannel", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("ChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("channelid");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("guildid");
+ b.Property("GuildId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("guildid");
- b.HasKey("Id")
- .HasName("pk_autopublishchannel");
+ b.HasKey("Id")
+ .HasName("pk_autopublishchannel");
- b.HasIndex("GuildId")
- .IsUnique()
- .HasDatabaseName("ix_autopublishchannel_guildid");
+ b.HasIndex("GuildId")
+ .IsUnique()
+ .HasDatabaseName("ix_autopublishchannel_guildid");
- b.ToTable("autopublishchannel", (string)null);
- });
+ b.ToTable("autopublishchannel", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AutoTranslateChannel", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("AutoDelete")
- .HasColumnType("tinyint(1)")
- .HasColumnName("autodelete");
+ b.Property("AutoDelete")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("autodelete");
- b.Property("ChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("channelid");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("guildid");
+ b.Property("GuildId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("guildid");
- b.HasKey("Id")
- .HasName("pk_autotranslatechannels");
+ b.HasKey("Id")
+ .HasName("pk_autotranslatechannels");
- b.HasIndex("ChannelId")
- .IsUnique()
- .HasDatabaseName("ix_autotranslatechannels_channelid");
+ b.HasIndex("ChannelId")
+ .IsUnique()
+ .HasDatabaseName("ix_autotranslatechannels_channelid");
- b.HasIndex("GuildId")
- .HasDatabaseName("ix_autotranslatechannels_guildid");
+ b.HasIndex("GuildId")
+ .HasDatabaseName("ix_autotranslatechannels_guildid");
- b.ToTable("autotranslatechannels", (string)null);
- });
+ b.ToTable("autotranslatechannels", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.AutoTranslateUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("ChannelId")
- .HasColumnType("int")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("int")
+ .HasColumnName("channelid");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("Source")
- .HasColumnType("longtext")
- .HasColumnName("source");
+ b.Property("Source")
+ .HasColumnType("longtext")
+ .HasColumnName("source");
- b.Property("Target")
- .HasColumnType("longtext")
- .HasColumnName("target");
+ b.Property("Target")
+ .HasColumnType("longtext")
+ .HasColumnName("target");
- b.Property("UserId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("userid");
- b.HasKey("Id")
- .HasName("pk_autotranslateusers");
+ b.HasKey("Id")
+ .HasName("pk_autotranslateusers");
- b.HasAlternateKey("ChannelId", "UserId")
- .HasName("ak_autotranslateusers_channelid_userid");
+ b.HasAlternateKey("ChannelId", "UserId")
+ .HasName("ak_autotranslateusers_channelid_userid");
- b.ToTable("autotranslateusers", (string)null);
- });
+ b.ToTable("autotranslateusers", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.BanTemplate", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("guildid");
+ b.Property("GuildId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("guildid");
- b.Property("PruneDays")
- .HasColumnType("int")
- .HasColumnName("prunedays");
+ b.Property("PruneDays")
+ .HasColumnType("int")
+ .HasColumnName("prunedays");
- b.Property("Text")
- .HasColumnType("longtext")
- .HasColumnName("text");
+ b.Property("Text")
+ .HasColumnType("longtext")
+ .HasColumnName("text");
- b.HasKey("Id")
- .HasName("pk_bantemplates");
+ b.HasKey("Id")
+ .HasName("pk_bantemplates");
- b.HasIndex("GuildId")
- .IsUnique()
- .HasDatabaseName("ix_bantemplates_guildid");
+ b.HasIndex("GuildId")
+ .IsUnique()
+ .HasDatabaseName("ix_bantemplates_guildid");
- b.ToTable("bantemplates", (string)null);
- });
+ b.ToTable("bantemplates", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.BankUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Balance")
- .HasColumnType("bigint")
- .HasColumnName("balance");
+ b.Property("Balance")
+ .HasColumnType("bigint")
+ .HasColumnName("balance");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("UserId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("userid");
- b.HasKey("Id")
- .HasName("pk_bankusers");
+ b.HasKey("Id")
+ .HasName("pk_bankusers");
- b.HasIndex("UserId")
- .IsUnique()
- .HasDatabaseName("ix_bankusers_userid");
+ b.HasIndex("UserId")
+ .IsUnique()
+ .HasDatabaseName("ix_bankusers_userid");
- b.ToTable("bankusers", (string)null);
- });
+ b.ToTable("bankusers", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.BlacklistEntry", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("ItemId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("itemid");
+ b.Property("ItemId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("itemid");
- b.Property("Type")
- .HasColumnType("int")
- .HasColumnName("type");
+ b.Property("Type")
+ .HasColumnType("int")
+ .HasColumnName("type");
- b.HasKey("Id")
- .HasName("pk_blacklist");
+ b.HasKey("Id")
+ .HasName("pk_blacklist");
- b.ToTable("blacklist", (string)null);
- });
+ b.ToTable("blacklist", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.ClubApplicants", b =>
- {
- b.Property("ClubId")
- .HasColumnType("int")
- .HasColumnName("clubid");
+ {
+ b.Property("ClubId")
+ .HasColumnType("int")
+ .HasColumnName("clubid");
- b.Property("UserId")
- .HasColumnType("int")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("int")
+ .HasColumnName("userid");
- b.HasKey("ClubId", "UserId")
- .HasName("pk_clubapplicants");
+ b.HasKey("ClubId", "UserId")
+ .HasName("pk_clubapplicants");
- b.HasIndex("UserId")
- .HasDatabaseName("ix_clubapplicants_userid");
+ b.HasIndex("UserId")
+ .HasDatabaseName("ix_clubapplicants_userid");
- b.ToTable("clubapplicants", (string)null);
- });
+ b.ToTable("clubapplicants", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.ClubBans", b =>
- {
- b.Property("ClubId")
- .HasColumnType("int")
- .HasColumnName("clubid");
+ {
+ b.Property("ClubId")
+ .HasColumnType("int")
+ .HasColumnName("clubid");
- b.Property("UserId")
- .HasColumnType("int")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("int")
+ .HasColumnName("userid");
- b.HasKey("ClubId", "UserId")
- .HasName("pk_clubbans");
+ b.HasKey("ClubId", "UserId")
+ .HasName("pk_clubbans");
- b.HasIndex("UserId")
- .HasDatabaseName("ix_clubbans_userid");
+ b.HasIndex("UserId")
+ .HasDatabaseName("ix_clubbans_userid");
- b.ToTable("clubbans", (string)null);
- });
+ b.ToTable("clubbans", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.ClubInfo", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("Description")
- .HasColumnType("longtext")
- .HasColumnName("description");
+ b.Property("Description")
+ .HasColumnType("longtext")
+ .HasColumnName("description");
- b.Property("ImageUrl")
- .HasColumnType("longtext")
- .HasColumnName("imageurl");
+ b.Property("ImageUrl")
+ .HasColumnType("longtext")
+ .HasColumnName("imageurl");
- b.Property("Name")
- .HasMaxLength(20)
- .HasColumnType("varchar(20)")
- .HasColumnName("name")
- .UseCollation("utf8mb4_bin");
+ b.Property("Name")
+ .HasMaxLength(20)
+ .HasColumnType("varchar(20)")
+ .HasColumnName("name")
+ .UseCollation("utf8mb4_bin");
- b.Property("OwnerId")
- .HasColumnType("int")
- .HasColumnName("ownerid");
+ b.Property("OwnerId")
+ .HasColumnType("int")
+ .HasColumnName("ownerid");
- b.Property("Xp")
- .HasColumnType("int")
- .HasColumnName("xp");
+ b.Property("Xp")
+ .HasColumnType("int")
+ .HasColumnName("xp");
- b.HasKey("Id")
- .HasName("pk_clubs");
+ b.HasKey("Id")
+ .HasName("pk_clubs");
- b.HasIndex("Name")
- .IsUnique()
- .HasDatabaseName("ix_clubs_name");
+ b.HasIndex("Name")
+ .IsUnique()
+ .HasDatabaseName("ix_clubs_name");
- b.HasIndex("OwnerId")
- .IsUnique()
- .HasDatabaseName("ix_clubs_ownerid");
+ b.HasIndex("OwnerId")
+ .IsUnique()
+ .HasDatabaseName("ix_clubs_ownerid");
- b.ToTable("clubs", (string)null);
- });
+ b.ToTable("clubs", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.CommandAlias", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("Mapping")
- .HasColumnType("longtext")
- .HasColumnName("mapping");
+ b.Property("Mapping")
+ .HasColumnType("longtext")
+ .HasColumnName("mapping");
- b.Property("Trigger")
- .HasColumnType("longtext")
- .HasColumnName("trigger");
+ b.Property("Trigger")
+ .HasColumnType("longtext")
+ .HasColumnName("trigger");
- b.HasKey("Id")
- .HasName("pk_commandalias");
+ b.HasKey("Id")
+ .HasName("pk_commandalias");
- b.HasIndex("GuildConfigId")
- .HasDatabaseName("ix_commandalias_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .HasDatabaseName("ix_commandalias_guildconfigid");
- b.ToTable("commandalias", (string)null);
- });
+ b.ToTable("commandalias", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.CommandCooldown", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("CommandName")
- .HasColumnType("longtext")
- .HasColumnName("commandname");
+ b.Property("CommandName")
+ .HasColumnType("longtext")
+ .HasColumnName("commandname");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("Seconds")
- .HasColumnType("int")
- .HasColumnName("seconds");
+ b.Property("Seconds")
+ .HasColumnType("int")
+ .HasColumnName("seconds");
- b.HasKey("Id")
- .HasName("pk_commandcooldown");
+ b.HasKey("Id")
+ .HasName("pk_commandcooldown");
- b.HasIndex("GuildConfigId")
- .HasDatabaseName("ix_commandcooldown_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .HasDatabaseName("ix_commandcooldown_guildconfigid");
- b.ToTable("commandcooldown", (string)null);
- });
+ b.ToTable("commandcooldown", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.CurrencyTransaction", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Amount")
- .HasColumnType("bigint")
- .HasColumnName("amount");
+ b.Property("Amount")
+ .HasColumnType("bigint")
+ .HasColumnName("amount");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("Extra")
- .IsRequired()
- .HasColumnType("longtext")
- .HasColumnName("extra");
+ b.Property("Extra")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnName("extra");
- b.Property("Note")
- .HasColumnType("longtext")
- .HasColumnName("note");
+ b.Property("Note")
+ .HasColumnType("longtext")
+ .HasColumnName("note");
- b.Property("OtherId")
- .ValueGeneratedOnAdd()
- .HasColumnType("bigint unsigned")
- .HasColumnName("otherid")
- .HasDefaultValueSql("NULL");
+ b.Property("OtherId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("otherid")
+ .HasDefaultValueSql("NULL");
- b.Property("Type")
- .IsRequired()
- .HasColumnType("longtext")
- .HasColumnName("type");
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("longtext")
+ .HasColumnName("type");
- b.Property("UserId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("userid");
+ b.Property("UserId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("userid");
- b.HasKey("Id")
- .HasName("pk_currencytransactions");
+ b.HasKey("Id")
+ .HasName("pk_currencytransactions");
- b.HasIndex("UserId")
- .HasDatabaseName("ix_currencytransactions_userid");
+ b.HasIndex("UserId")
+ .HasDatabaseName("ix_currencytransactions_userid");
- b.ToTable("currencytransactions", (string)null);
- });
+ b.ToTable("currencytransactions", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.DelMsgOnCmdChannel", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("ChannelId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("channelid");
+ b.Property("ChannelId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("channelid");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildConfigId")
- .HasColumnType("int")
- .HasColumnName("guildconfigid");
+ b.Property("GuildConfigId")
+ .HasColumnType("int")
+ .HasColumnName("guildconfigid");
- b.Property("State")
- .HasColumnType("tinyint(1)")
- .HasColumnName("state");
+ b.Property("State")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("state");
- b.HasKey("Id")
- .HasName("pk_delmsgoncmdchannel");
+ b.HasKey("Id")
+ .HasName("pk_delmsgoncmdchannel");
- b.HasIndex("GuildConfigId")
- .HasDatabaseName("ix_delmsgoncmdchannel_guildconfigid");
+ b.HasIndex("GuildConfigId")
+ .HasDatabaseName("ix_delmsgoncmdchannel_guildconfigid");
- b.ToTable("delmsgoncmdchannel", (string)null);
- });
+ b.ToTable("delmsgoncmdchannel", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.DiscordPermOverride", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property("Command")
- .HasColumnType("varchar(255)")
- .HasColumnName("command");
+ b.Property("Command")
+ .HasColumnType("varchar(255)")
+ .HasColumnName("command");
- b.Property("DateAdded")
- .HasColumnType("datetime(6)")
- .HasColumnName("dateadded");
+ b.Property("DateAdded")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("dateadded");
- b.Property("GuildId")
- .HasColumnType("bigint unsigned")
- .HasColumnName("guildid");
+ b.Property("GuildId")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("guildid");
- b.Property("Perm")
- .HasColumnType("bigint unsigned")
- .HasColumnName("perm");
+ b.Property("Perm")
+ .HasColumnType("bigint unsigned")
+ .HasColumnName("perm");
- b.HasKey("Id")
- .HasName("pk_discordpermoverrides");
+ b.HasKey("Id")
+ .HasName("pk_discordpermoverrides");
- b.HasIndex("GuildId", "Command")
- .IsUnique()
- .HasDatabaseName("ix_discordpermoverrides_guildid_command");
+ b.HasIndex("GuildId", "Command")
+ .IsUnique()
+ .HasDatabaseName("ix_discordpermoverrides_guildid_command");
- b.ToTable("discordpermoverrides", (string)null);
- });
+ b.ToTable("discordpermoverrides", (string)null);
+ });
modelBuilder.Entity("EllieBot.Db.Models.DiscordUser", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int")
- .HasColumnName("id");
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasColumnName("id");
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
+ MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
- b.Property