37 lines
1.4 KiB
C#
37 lines
1.4 KiB
C#
using System.Runtime.CompilerServices;
|
|
using HellionChat.Util;
|
|
|
|
namespace HellionChat.Branding;
|
|
|
|
// Centralised — a future invite/URL rotation only touches this file.
|
|
internal static class BrandingLinks
|
|
{
|
|
public const string HellionForgeDiscordInvite = "https://discord.gg/X9V7Kcv5gR";
|
|
public const string HellionForgeGitea = "https://gitea.hellion-forge.cloud/Hellion-Forge";
|
|
public const string HellionChatRepo =
|
|
"https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat";
|
|
public const string HellionChatCustomRepoManifest =
|
|
"https://gitea.hellion-forge.cloud/JonKazama-Hellion/HellionChat/raw/branch/main/repo.json";
|
|
public const string HellionForgeWebsite = "https://hellion-forge.cloud";
|
|
public const string HellionMediaWebsite = "https://hellion-media.de/de";
|
|
|
|
// CA2255 warns against [ModuleInitializer] in library code, but Dalamud
|
|
// loads the plugin DLL directly so the module-init pass is the right hook
|
|
// for a one-shot URL sanity check at plugin load.
|
|
#pragma warning disable CA2255
|
|
[ModuleInitializer]
|
|
#pragma warning restore CA2255
|
|
internal static void ValidateUrls()
|
|
{
|
|
UrlValidation.ValidateAll(
|
|
nameof(BrandingLinks),
|
|
HellionForgeDiscordInvite,
|
|
HellionForgeGitea,
|
|
HellionChatRepo,
|
|
HellionChatCustomRepoManifest,
|
|
HellionForgeWebsite,
|
|
HellionMediaWebsite
|
|
);
|
|
}
|
|
}
|