diff --git a/locale/Messages.resx b/locale/Messages.resx
index c2be4cd..79526a8 100644
--- a/locale/Messages.resx
+++ b/locale/Messages.resx
@@ -663,4 +663,7 @@
Welcome messages channel
+
+ Can't report an issue in the dirty version
+
diff --git a/locale/Messages.ru.resx b/locale/Messages.ru.resx
index d38509c..06d5354 100644
--- a/locale/Messages.ru.resx
+++ b/locale/Messages.ru.resx
@@ -663,4 +663,7 @@
Канал для приветствий
+
+ Нельзя сообщить о проблеме в dirty версии
+
diff --git a/locale/Messages.tt-ru.resx b/locale/Messages.tt-ru.resx
index dfb1ee6..31453d8 100644
--- a/locale/Messages.tt-ru.resx
+++ b/locale/Messages.tt-ru.resx
@@ -663,4 +663,7 @@
канал куда говорить здравствуйте
+
+ вот иди сам и почини что сломал
+
diff --git a/src/BuildInfo.cs b/src/BuildInfo.cs
index 50f86a2..c704328 100644
--- a/src/BuildInfo.cs
+++ b/src/BuildInfo.cs
@@ -34,7 +34,7 @@ public static class BuildInfo
}
}
- private static bool IsDirty
+ public static bool IsDirty
{
get
{
diff --git a/src/Commands/AboutCommandGroup.cs b/src/Commands/AboutCommandGroup.cs
index 05b1855..88ac423 100644
--- a/src/Commands/AboutCommandGroup.cs
+++ b/src/Commands/AboutCommandGroup.cs
@@ -111,6 +111,22 @@ public class AboutCommandGroup : CommandGroup
URL: BuildInfo.RepositoryUrl
);
+ if (BuildInfo.IsDirty)
+ {
+ var dirtyButton = new ButtonComponent(
+ ButtonComponentStyle.Link,
+ Messages.ButtonDirty,
+ new PartialEmoji(Name: "⚠️"),
+ IsDisabled: true
+ );
+
+ return await _feedback.SendContextualEmbedResultAsync(embed,
+ new FeedbackMessageOptions(MessageComponents: new[]
+ {
+ new ActionRowComponent(new[] { repositoryButton, dirtyButton })
+ }), ct);
+ }
+
var issuesButton = new ButtonComponent(
ButtonComponentStyle.Link,
Messages.ButtonReportIssue,
diff --git a/src/Commands/Events/ErrorLoggingPostExecutionEvent.cs b/src/Commands/Events/ErrorLoggingPostExecutionEvent.cs
index 5d7830b..8f06423 100644
--- a/src/Commands/Events/ErrorLoggingPostExecutionEvent.cs
+++ b/src/Commands/Events/ErrorLoggingPostExecutionEvent.cs
@@ -68,6 +68,22 @@ public class ErrorLoggingPostExecutionEvent : IPostExecutionEvent
.WithColour(ColorsList.Red)
.Build();
+ if (BuildInfo.IsDirty)
+ {
+ var dirtyButton = new ButtonComponent(
+ ButtonComponentStyle.Link,
+ Messages.ButtonDirty,
+ new PartialEmoji(Name: "⚠️"),
+ IsDisabled: true
+ );
+
+ return await _feedback.SendContextualEmbedResultAsync(embed,
+ new FeedbackMessageOptions(MessageComponents: new[]
+ {
+ new ActionRowComponent(new[] { dirtyButton })
+ }), ct);
+ }
+
var issuesButton = new ButtonComponent(
ButtonComponentStyle.Link,
Messages.ButtonReportIssue,
diff --git a/src/Messages.Designer.cs b/src/Messages.Designer.cs
index 707c814..2a8ae0d 100644
--- a/src/Messages.Designer.cs
+++ b/src/Messages.Designer.cs
@@ -1196,5 +1196,11 @@ namespace Octobot {
return ResourceManager.GetString("SettingsWelcomeMessagesChannel", resourceCulture);
}
}
+
+ internal static string ButtonDirty {
+ get {
+ return ResourceManager.GetString("ButtonDirty", resourceCulture);
+ }
+ }
}
}
diff --git a/src/Responders/GuildLoadedResponder.cs b/src/Responders/GuildLoadedResponder.cs
index c493910..fb53bb9 100644
--- a/src/Responders/GuildLoadedResponder.cs
+++ b/src/Responders/GuildLoadedResponder.cs
@@ -113,6 +113,19 @@ public class GuildLoadedResponder : IResponder
.WithColour(ColorsList.Red)
.Build();
+ if (BuildInfo.IsDirty)
+ {
+ var dirtyButton = new ButtonComponent(
+ ButtonComponentStyle.Link,
+ Messages.ButtonDirty,
+ new PartialEmoji(Name: "⚠️"),
+ IsDisabled: true
+ );
+
+ return await _channelApi.CreateMessageWithEmbedResultAsync(channel, embedResult: errorEmbed,
+ components: new[] { new ActionRowComponent(new[] { dirtyButton }) }, ct: ct);
+ }
+
var issuesButton = new ButtonComponent(
ButtonComponentStyle.Link,
Messages.ButtonReportIssue,