From 7bb43070061c31d5dee40334f6b4c80f95da5653 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Thu, 13 Apr 2023 06:08:22 +0200 Subject: [PATCH 01/16] added experimental message cache --- backend/MASZ/MASZ.csproj | 2 +- backend/MASZ/Models/CacheApiResponse.cs | 4 + backend/MASZ/Program.cs | 2 +- backend/MASZ/Services/DiscordAPIInterface.cs | 11 ++- backend/MASZ/Services/GuildAuditLogger.cs | 78 +++++++++++++++++-- .../MASZ/Services/InternalConfiguration.cs | 9 ++- backend/MASZ/Services/Scheduler.cs | 33 ++++++++ docker-compose-dev.yml | 1 + docker-compose.yml | 1 + nginx/masz-svelte/src/config.ts | 2 +- nginx/static/version.json | 4 +- 11 files changed, 129 insertions(+), 18 deletions(-) diff --git a/backend/MASZ/MASZ.csproj b/backend/MASZ/MASZ.csproj index 28ae67ec9..e4b492bed 100644 --- a/backend/MASZ/MASZ.csproj +++ b/backend/MASZ/MASZ.csproj @@ -22,7 +22,7 @@ - + diff --git a/backend/MASZ/Models/CacheApiResponse.cs b/backend/MASZ/Models/CacheApiResponse.cs index df6379dd9..501f53311 100644 --- a/backend/MASZ/Models/CacheApiResponse.cs +++ b/backend/MASZ/Models/CacheApiResponse.cs @@ -19,5 +19,9 @@ public bool IsExpired() { return DateTime.Now > ExpiresAt; } + public DateTime GetExpiresAt() + { + return ExpiresAt; + } } } diff --git a/backend/MASZ/Program.cs b/backend/MASZ/Program.cs index 8d85a2a9d..be64651d9 100644 --- a/backend/MASZ/Program.cs +++ b/backend/MASZ/Program.cs @@ -58,7 +58,7 @@ AlwaysDownloadUsers = true, MessageCacheSize = 10240, LogLevel = LogSeverity.Debug, - GatewayIntents = (GatewayIntents)((int) GatewayIntents.AllUnprivileged | (int) GatewayIntents.GuildMembers | (int) GatewayIntents.GuildMessages | (int) GatewayIntents.DirectMessages | 1 << 15), + GatewayIntents = GatewayIntents.AllUnprivileged | GatewayIntents.GuildMembers | GatewayIntents.GuildMessages | GatewayIntents.DirectMessages | GatewayIntents.MessageContent, LogGatewayIntentWarnings = false }) diff --git a/backend/MASZ/Services/DiscordAPIInterface.cs b/backend/MASZ/Services/DiscordAPIInterface.cs index a7de9e024..4215eaddc 100644 --- a/backend/MASZ/Services/DiscordAPIInterface.cs +++ b/backend/MASZ/Services/DiscordAPIInterface.cs @@ -705,12 +705,15 @@ public Dictionary GetCache() { return _cache; } + + public void RemoveFromCache(string key) + { + _cache.Remove(key); + } + public void RemoveFromCache(CacheKey key) { - if (_cache.ContainsKey(key.GetValue())) - { - _cache.Remove(key.GetValue()); - } + _cache.Remove(key.GetValue()); } public T GetFromCache(CacheKey key) diff --git a/backend/MASZ/Services/GuildAuditLogger.cs b/backend/MASZ/Services/GuildAuditLogger.cs index 15a435e2a..ea7135c10 100644 --- a/backend/MASZ/Services/GuildAuditLogger.cs +++ b/backend/MASZ/Services/GuildAuditLogger.cs @@ -16,13 +16,19 @@ public class GuildAuditLogger : IEvent { private readonly static string CHECK = "\u2705"; private readonly static string X_CHECK = "\u274C"; + private readonly ILogger _logger; + private readonly InternalConfiguration _config; private readonly DiscordSocketClient _client; private readonly IServiceProvider _serviceProvider; + private readonly DiscordAPIInterface _discordAPIInterface; - public GuildAuditLogger(DiscordSocketClient client, IServiceProvider serviceProvider) + public GuildAuditLogger(DiscordSocketClient client, IServiceProvider serviceProvider, DiscordAPIInterface discordAPIInterface, InternalConfiguration config, ILogger logger) { + _logger = logger; + _config = config; _client = client; _serviceProvider = serviceProvider; + _discordAPIInterface = discordAPIInterface; } public void RegisterEvents() @@ -710,7 +716,31 @@ public async Task HandleUserRemoved(SocketGuild guild, SocketUser user) public async Task HandleMessageDeleted(Cacheable messageCached, Cacheable channel) { - var message = await messageCached.GetOrDownloadAsync(); + IMessage message = null; + if (_config.IsExperimentalMessageCacheEnabled()) + { + try + { + message = _discordAPIInterface.GetFromCache(CacheKey.IMessage(channel.Id, messageCached.Id)); + } + catch (NotFoundInCacheException ex) + { + _logger.LogError(ex, "Error while trying to get message from experimental cache"); + } + } + + if (message == null) + { + try + { + message = await messageCached.GetOrDownloadAsync(); + } + catch (HttpException) { } + catch (Exception ex) + { + _logger.LogError(ex, "Error while trying to get message from cache"); + } + } if (message == null) { @@ -805,6 +835,14 @@ public async Task HandleMessageSent(IMessage message) { if (message.Channel is ITextChannel tchannel) { + if (_config.IsExperimentalMessageCacheEnabled()) + { + _discordAPIInterface.AddOrUpdateCache( + CacheKey.IMessage(tchannel.Id, message.Id), + new CacheApiResponse(message, 60 * 24 * 31 * 12) + ); + } + if (await CheckForIgnoredChannel(tchannel.GuildId, GuildAuditLogEvent.MessageSent, tchannel)) { return; @@ -875,7 +913,7 @@ public async Task HandleMessageSent(IMessage message) } } - public async Task HandleMessageUpdated(Cacheable messageBefore, SocketMessage messageAfter, ISocketMessageChannel channel) + public async Task HandleMessageUpdated(Cacheable _messageBefore, SocketMessage messageAfter, ISocketMessageChannel channel) { if (!messageAfter.Author.IsBot && !messageAfter.Author.IsWebhook) { @@ -913,21 +951,45 @@ public async Task HandleMessageUpdated(Cacheable messageBefore, embed.AddField(translator.T().GuildAuditLogMessageUpdatedPinned(), messageAfter.IsPinned ? CHECK : X_CHECK, false); - var before = await messageBefore.GetOrDownloadAsync(); + IMessage messageBefore = null; + if (_config.IsExperimentalMessageCacheEnabled()) + { + try + { + messageBefore = _discordAPIInterface.GetFromCache(CacheKey.IMessage(channel.Id, _messageBefore.Id)); + } + catch (NotFoundInCacheException ex) + { + _logger.LogError(ex, "Error while trying to get message from experimental cache"); + } + } + + if (messageBefore == null) + { + try + { + messageBefore = await _messageBefore.GetOrDownloadAsync(); + } + catch (HttpException) { } + catch (Exception ex) + { + _logger.LogError(ex, "Error while trying to get message from cache"); + } + } - if (before == null) + if (messageBefore == null) { embed.AddField(translator.T().GuildAuditLogMessageUpdatedContentBefore(), translator.T().GuildAuditLogNotFoundInCache()); } else { - if (string.Equals(before.Content, messageAfter.Content) && before.Embeds.Count != messageAfter.Embeds.Count) + if (string.Equals(messageBefore.Content, messageAfter.Content) && messageBefore.Embeds.Count != messageAfter.Embeds.Count) { return; } - if (!string.IsNullOrEmpty(before.Content)) + if (!string.IsNullOrEmpty(messageBefore.Content)) { - embed.AddField(translator.T().GuildAuditLogMessageUpdatedContentBefore(), before.Content.Truncate(1024)); + embed.AddField(translator.T().GuildAuditLogMessageUpdatedContentBefore(), messageBefore.Content.Truncate(1024)); } } diff --git a/backend/MASZ/Services/InternalConfiguration.cs b/backend/MASZ/Services/InternalConfiguration.cs index bc899125e..563ea0462 100644 --- a/backend/MASZ/Services/InternalConfiguration.cs +++ b/backend/MASZ/Services/InternalConfiguration.cs @@ -23,6 +23,7 @@ public class InternalConfiguration private string _deployMode; private string _discordBotStatus; private bool _lowMemoryPhishingListEnabled; + private bool _experimentalMessageCacheEnabled; public InternalConfiguration(ILogger logger) { @@ -58,6 +59,7 @@ public void Init() _deployMode = Environment.GetEnvironmentVariable("DEPLOY_MODE"); _discordBotStatus = Environment.GetEnvironmentVariable("DISCORD_BOT_STATUS"); _lowMemoryPhishingListEnabled = string.Equals("true", Environment.GetEnvironmentVariable("ENABLE_LOW_MEMORY_PHISHING_LIST")); + _experimentalMessageCacheEnabled = string.Equals("true", Environment.GetEnvironmentVariable("ENABLE_EXPERIMENTAL_MESSAGE_CACHE")); } public string GetBaseUrl() @@ -157,7 +159,7 @@ public string GetDeployMode() public string GetVersion() { - return "v3.4.1"; + return "v3.4.2"; } public string GetDiscordBotStatus() @@ -169,5 +171,10 @@ public bool IsLowMemoryPhishingListEnabled() { return _lowMemoryPhishingListEnabled; } + + public bool IsExperimentalMessageCacheEnabled() + { + return _experimentalMessageCacheEnabled; + } } } \ No newline at end of file diff --git a/backend/MASZ/Services/Scheduler.cs b/backend/MASZ/Services/Scheduler.cs index b603a6ba5..1a885ee1a 100644 --- a/backend/MASZ/Services/Scheduler.cs +++ b/backend/MASZ/Services/Scheduler.cs @@ -7,6 +7,7 @@ using MASZ.Repositories; using MASZ.Utils; using System.Net; +using System.Text.RegularExpressions; using Timer = System.Timers.Timer; namespace MASZ.Services @@ -92,6 +93,7 @@ public async Task ExecuteAsync() EventTimer.Elapsed += (s, e) => LoopThroughCaches(); MinuteEventTimer.Elapsed += async (s, e) => await CheckDueScheduledMessages(); + MinuteEventTimer.Elapsed += (s, e) => ClearMessageCache(); await Task.Run(() => EventTimer.Start()); await Task.Run(() => MinuteEventTimer.Start()); @@ -336,6 +338,37 @@ public async Task> CacheAllKnownUsers(List handledUsers) return handledUsers; } + public void ClearMessageCache() + { + Dictionary cache = _discordAPI.GetCache(); + // delete oldest keys (based on value.ExpiresAt) that match the regex pattern "c:channelId:m:messageId" if there are more than 10000 entries that match the pattern until there are 10000 entries left + + var keys = cache.Keys.Where(x => Regex.IsMatch(x, @"^c:\d+:m:\d+$")).ToList(); + if (keys.Count > 10000) + { + _logger.LogInformation("Cacher | Clearing message cache."); + var sortedCache = cache.OrderBy(x => x.Value.GetExpiresAt()).ToList(); + + int i = 0; + int deleted = 0; + while (sortedCache.Count > 10000) + { + if (Regex.IsMatch(sortedCache[i].Key, @"^c:\d+:m:\d+$")) + { + _discordAPI.RemoveFromCache(sortedCache[i].Key); + sortedCache.RemoveAt(i); + deleted++; + } + else + { + i++; + } + } + + _logger.LogInformation($"Cacher | Cleared message cache: {cache.Count} entries left, {deleted} entries removed."); + } + } + public DateTime GetNextCacheSchedule() { return _nextCacheSchedule; diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml index 7554c668c..15f460fa7 100644 --- a/docker-compose-dev.yml +++ b/docker-compose-dev.yml @@ -61,6 +61,7 @@ services: - DEBUG_COLORS=true - TERM=xterm-256color - COLORTERM=truecolor + - ENABLE_EXPERIMENTAL_MESSAGE_CACHE=${ENABLE_EXPERIMENTAL_MESSAGE_CACHE} networks: - appnetwork volumes: diff --git a/docker-compose.yml b/docker-compose.yml index 6555247b2..672a6cf2a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -54,6 +54,7 @@ services: - ABSOLUTE_PATH_TO_FILE_UPLOAD=/filehost/ - ENABLE_TELEMETRY=${ENABLE_TELEMETRY} - ENABLE_LOW_MEMORY_PHISHING_LIST=${ENABLE_LOW_MEMORY_PHISHING_LIST} + - ENABLE_EXPERIMENTAL_MESSAGE_CACHE=${ENABLE_EXPERIMENTAL_MESSAGE_CACHE} networks: - appnetwork volumes: diff --git a/nginx/masz-svelte/src/config.ts b/nginx/masz-svelte/src/config.ts index 590347e19..a870cd507 100644 --- a/nginx/masz-svelte/src/config.ts +++ b/nginx/masz-svelte/src/config.ts @@ -16,7 +16,7 @@ export const LOCAL_STORAGE_KEY_GUILD_QUICKSEARCH_HISTORY = "__masz-guild-quickse export const FEEDBACK_COOKIE_NAME = "__masz-feedback"; export const APP_NAME = "MASZ"; -export const APP_VERSION = "v3.4.1"; +export const APP_VERSION = "v3.4.2"; export const GUILD_QUICKSEARCH_MAX_HISTORY_ENTRIES = 10; diff --git a/nginx/static/version.json b/nginx/static/version.json index 262abfe31..529c2decb 100644 --- a/nginx/static/version.json +++ b/nginx/static/version.json @@ -1,5 +1,5 @@ { - "version": "v3.4.1", + "version": "v3.4.2", "wrapper_version": 4, - "pre_release": false + "pre_release": true } From 8869d63d7d7756a3a425f6f87bcace0fda09e1c2 Mon Sep 17 00:00:00 2001 From: UponAnonymous Date: Fri, 21 Apr 2023 14:02:11 +0100 Subject: [PATCH 02/16] Updated frontend.json Added Dutch (NL) as a translation --- translations/frontend.json | 1688 ++++++++++++++++++++++++------------ 1 file changed, 1125 insertions(+), 563 deletions(-) diff --git a/translations/frontend.json b/translations/frontend.json index 8a25a180f..ec7e7bf8f 100644 --- a/translations/frontend.json +++ b/translations/frontend.json @@ -9,7 +9,8 @@ "fr": "Confirmer", "es": "Confirmar", "ru": "Подтвердить", - "it": "Conferma" + "it": "Conferma", + "nl": "Bevestigen" }, "message": { "description": "Are you sure?", @@ -19,7 +20,8 @@ "fr": "Êtes-vous sûr?", "es": "¿Está seguro?", "ru": "Вы уверены?", - "it": "Sei sicuro?" + "it": "Sei sicuro?", + "nl": "Weet je het zeker?" }, "confirm": { "description": "Confirm", @@ -29,7 +31,8 @@ "fr": "Confirmer", "es": "Confirmar", "ru": "Подтвердить", - "it": "Conferma" + "it": "Conferma", + "nl": "Bevestigen" }, "cancel": { "description": "Cancel", @@ -39,7 +42,8 @@ "fr": "Annuler", "es": "Cancelar", "ru": "Отмена", - "it": "Annulla" + "it": "Annulla", + "nl": "Annuleren" } } }, @@ -52,7 +56,8 @@ "fr": "Connexion", "es": "Iniciar sesión", "ru": "Вход", - "it": "Accedi" + "it": "Accedi", + "nl": "Inloggen" }, "noaccount": { "description": "No account?", @@ -62,7 +67,8 @@ "fr": "Pas encore de compte ?", "es": "¿No tienes una cuenta?", "ru": "У вас нет аккаунта?", - "it": "Non hai un account?" + "it": "Non hai un account?", + "nl": "Heb je geen account?" }, "createaccount": { "description": "Create account", @@ -72,7 +78,8 @@ "fr": "Créer un compte Discord", "es": "Crear una cuenta de Discord", "ru": "Создать аккаунт Discord", - "it": "Crea un account Discord" + "it": "Crea un account Discord", + "nl": "Maak een Discord-account aan" }, "terms": { "description": "Terms of Service", @@ -82,7 +89,8 @@ "fr": "Conditions d'utilisation", "es": "Términos de servicio", "ru": "Условия использования", - "it": "Termini di servizio" + "it": "Termini di servizio", + "nl": "Voorwaarden" }, "and": { "description": "and", @@ -92,7 +100,8 @@ "fr": "et", "es": "y", "ru": "и", - "it": "e" + "it": "e", + "nl": "en" }, "privacy": { "description": "Privacy Policy", @@ -102,7 +111,8 @@ "fr": "Politique de confidentialité", "es": "Política de privacidad", "ru": "Политика конфиденциальности", - "it": "Informativa sulla privacy" + "it": "Informativa sulla privacy", + "nl": "Privacybeleid" } }, "settings": { @@ -114,7 +124,8 @@ "fr": "Paramètres", "es": "Ajustes", "ru": "Настройки", - "it": "Impostazioni" + "it": "Impostazioni", + "nl": "Instellingen" }, "basedetails": { "description": "Settings", @@ -124,7 +135,8 @@ "fr": "Ajustez vos paramètres MASZ.", "es": "Ajuste tus ajustes de MASZ.", "ru": "Настройки MASZ.", - "it": "Impostazioni MASZ." + "it": "Impostazioni MASZ.", + "nl": "Pas jouw MASZ instellingen aan." }, "theme": { "description": "Theme", @@ -134,7 +146,8 @@ "fr": "Thème", "es": "Tema", "ru": "Тема", - "it": "Tema" + "it": "Tema", + "nl": "Thema" }, "themedetails": { "description": "Theme details", @@ -144,7 +157,8 @@ "fr": "Choisissez comment MASZ vous apparence.", "es": "Elige cómo MASZ te va a parecer.", "ru": "Выберите, как MASZ вас видит.", - "it": "Scegli come MASZ ti appare." + "it": "Scegli come MASZ ti appare.", + "nl": "Kies hoe MASZ er voor jou uitziet." }, "language": { "description": "Language", @@ -154,7 +168,8 @@ "fr": "Langue", "es": "Idioma", "ru": "Язык", - "it": "Lingua" + "it": "Lingua", + "nl": "Taal" }, "languagedetails": { "description": "Language details", @@ -164,7 +179,8 @@ "fr": "Changer la langue", "es": "Cambiar el idioma", "ru": "Изменить язык", - "it": "Cambia la lingua" + "it": "Cambia la lingua", + "nl": "Wijzig de taal" }, "autosave": { "description": "Autosave", @@ -174,7 +190,8 @@ "fr": "Tous les paramètres sont automatiquement enregistrés.", "es": "Todos los ajustes se guardan automáticamente.", "ru": "Все настройки сохраняются автоматически.", - "it": "Tutte le impostazioni vengono salvate automaticamente." + "it": "Tutte le impostazioni vengono salvate automaticamente.", + "nl": "Alle instellingen worden automatisch opgeslagen." } }, "nav": { @@ -186,7 +203,8 @@ "fr": "Toutes les Guildes", "es": "Todas las Hermandades", "ru": "Все гильдии", - "it": "Tutte le Gilde" + "it": "Tutte le Gilde", + "nl": "Alle gildes" }, "patchnotes": { "description": "Patchnotes", @@ -196,7 +214,8 @@ "fr": "Notes de version", "es": "Notas de la versión", "ru": "Изменения версии", - "it": "Note della versione" + "it": "Note della versione", + "nl": "Wijzigingsnotities" }, "patchnotesdetails": { "description": "Patchnotes", @@ -206,7 +225,8 @@ "fr": "Voir les notes de version les plus récentes de MASZ.", "es": "Ver las últimas notas de la versión de MASZ.", "ru": "Просмотреть последние изменения версии MASZ.", - "it": "Visualizza le ultime note della versione di MASZ." + "it": "Visualizza le ultime note della versione di MASZ.", + "nl": "Bekijk de laatste wijzigingsnotities van MASZ." }, "credits": { "description": "Credits", @@ -216,7 +236,8 @@ "fr": "Crédits", "es": "Créditos", "ru": "Благодарности", - "it": "Crediti" + "it": "Crediti", + "nl": "Credits" }, "creditsdetails": { "description": "Credits", @@ -226,7 +247,8 @@ "fr": "Voir les crédits de MASZ.", "es": "Ver los créditos de MASZ.", "ru": "Просмотреть благодарности MASZ.", - "it": "Visualizza i crediti di MASZ." + "it": "Visualizza i crediti di MASZ.", + "nl": "Bekijk de credits van MASZ." }, "community": { "description": "Community", @@ -236,7 +258,8 @@ "fr": "Communauté", "es": "Comunidad", "ru": "Сообщество", - "it": "Comunità" + "it": "Comunità", + "nl": "Community" }, "communitydetails": { "description": "Community", @@ -246,7 +269,8 @@ "fr": "Visitez la communauté discord de MASZ.", "es": "Visite la comunidad de Discord de MASZ.", "ru": "Посетите сообщество MASZ.", - "it": "Visita la comunità di MASZ." + "it": "Visita la comunità di MASZ.", + "nl": "Bezoek de Discord Community van MASZ." }, "reportabug": { "description": "reportabug", @@ -256,7 +280,8 @@ "fr": "Signaler un bug", "es": "Reportar un error", "ru": "Сообщить об ошибке", - "it": "Segnala un errore" + "it": "Segnala un errore", + "nl": "Rapporteer een bug" }, "reportabugdetails": { "description": "Report a bug", @@ -266,7 +291,8 @@ "fr": "Signaler un bug", "es": "Reportar un error", "ru": "Сообщить об ошибке", - "it": "Segnala un errore" + "it": "Segnala un errore", + "nl": "Rapporteer bugs op GitHub" }, "terms": { "description": "Terms of Service", @@ -276,7 +302,8 @@ "fr": "Conditions d'utilisation", "es": "Términos de servicio", "ru": "Условия использования", - "it": "Termini di servizio" + "it": "Termini di servizio", + "nl": "Voorwaarden" }, "privacy": { "description": "Privacy Policy", @@ -286,7 +313,8 @@ "fr": "Politique de confidentialité", "es": "Política de privacidad", "ru": "Политика конфиденциальности", - "it": "Informativa sulla privacy" + "it": "Informativa sulla privacy", + "nl": "Privacybeleid" }, "admin": { "base": { @@ -297,7 +325,8 @@ "fr": "Admin", "es": "Admin", "ru": "Админ", - "it": "Admin" + "it": "Admin", + "nl": "Beheerder" }, "searchdescription": { "description": "Search", @@ -307,7 +336,8 @@ "fr": "Afficher les statistiques de votre application", "es": "Ver insights de tu aplicación", "ru": "Просмотреть отчеты о вашей приложении", - "it": "Visualizza le statistiche della tua applicazione" + "it": "Visualizza le statistiche della tua applicazione", + "nl": "Bekijk inzichten van uw applicatie" }, "dashboard": { "description": "Dashboard", @@ -317,7 +347,8 @@ "fr": "Tableau de bord", "es": "Tablero", "ru": "Панель управления", - "it": "Cruscotto" + "it": "Cruscotto", + "nl": "Dashboard" }, "settings": { "description": "Settings", @@ -327,7 +358,8 @@ "fr": "Paramètres", "es": "Ajustes", "ru": "Настройки", - "it": "Impostazioni" + "it": "Impostazioni", + "nl": "Instellingen" }, "tokens": { "description": "Tokens", @@ -337,7 +369,8 @@ "fr": "Jeton", "es": "Fichas", "ru": "Токены", - "it": "Token" + "it": "Token", + "nl": "Tokens" } }, "guild": { @@ -349,7 +382,8 @@ "fr": "Guilde", "es": "Hermandad", "ru": "Гильдия", - "it": "Gilda" + "it": "Gilda", + "nl": "Gilde" }, "dashboard": { "description": "Dashboard", @@ -359,7 +393,8 @@ "fr": "Tableau de bord", "es": "Tablero", "ru": "Панель управления", - "it": "Cruscotto" + "it": "Cruscotto", + "nl": "Dashboard" }, "cases": { "description": "Cases", @@ -369,7 +404,8 @@ "fr": "Cas", "es": "Casos", "ru": "Дела", - "it": "Casi" + "it": "Casi", + "nl": "Zaken" }, "evidence": { "description": "Evidence (plural)", @@ -379,7 +415,8 @@ "fr": "Preuves", "es": "Pruebas", "ru": "Доказательства", - "it": "Prove" + "it": "Prove", + "nl": "Bewijs" }, "automods": { "description": "Automods", @@ -389,7 +426,8 @@ "fr": "Automods", "es": "Automods", "ru": "Автомоды", - "it": "Automods" + "it": "Automods", + "nl": "Automods" }, "appeals": { "description": "Appeals", @@ -399,7 +437,8 @@ "fr": "Appel", "es": "Apelaciones", "ru": "Обращения", - "it": "Appelli" + "it": "Appelli", + "nl": "Beroepen" }, "usernotes": { "description": "Usernotes", @@ -409,7 +448,8 @@ "fr": "Notes d'utilisateur", "es": "Notas de usuario", "ru": "Заметки пользователя", - "it": "Note utente" + "it": "Note utente", + "nl": "Gebruikersnotities" }, "usermaps": { "description": "User Maps", @@ -419,7 +459,8 @@ "fr": "Cartes d'utilisateur", "es": "Mapas de usuario", "ru": "Карты пользователя", - "it": "Mappe utente" + "it": "Mappe utente", + "nl": "Gebruikerskaarten" }, "messages": { "description": "Messages", @@ -429,7 +470,8 @@ "fr": "Messages", "es": "Mensajes", "ru": "Сообщения", - "it": "Messaggi" + "it": "Messaggi", + "nl": "Berichten" }, "settings": { "motd": { @@ -440,7 +482,8 @@ "fr": "MotD", "es": "MotD", "ru": "MotD", - "it": "MotD" + "it": "MotD", + "nl": "MotD" }, "auditlog": { "description": "Audit Log", @@ -450,7 +493,8 @@ "fr": "Auditlog", "es": "Auditlog", "ru": "Auditlog", - "it": "Auditlog" + "it": "Auditlog", + "nl": "Auditlog" }, "zalgo": { "description": "Zalgo", @@ -460,7 +504,8 @@ "fr": "Zalgo", "es": "Zalgo", "ru": "Zalgo", - "it": "Zalgo" + "it": "Zalgo", + "nl": "Zalgo" }, "automod": { "description": "Automod", @@ -470,7 +515,8 @@ "fr": "Automod", "es": "Automod", "ru": "Автомод", - "it": "Automod" + "it": "Automod", + "nl": "Automod" }, "base": { "description": "Base", @@ -480,7 +526,8 @@ "fr": "Paramètres", "es": "Ajustes", "ru": "Настройки", - "it": "Impostazioni" + "it": "Impostazioni", + "nl": "Instellingen" }, "search": { "description": "Search", @@ -490,7 +537,8 @@ "fr": "Paramètres de guilde", "es": "Ajustes de hermandad", "ru": "Настройки гильдии", - "it": "Impostazioni gilda" + "it": "Impostazioni gilda", + "nl": "Gilde Instellingen" }, "searchdetails": { "description": "Search Details", @@ -500,7 +548,8 @@ "fr": "Modifiez les paramètres de cette guilde.", "es": "Editar los ajustes de esta hermandad.", "ru": "Изменить настройки этой гильдии.", - "it": "Modificare le impostazioni di questa gilda." + "it": "Modificare le impostazioni di questa gilda.", + "nl": "Bewerk de instellingen van deze gilde." } } }, @@ -512,7 +561,8 @@ "fr": "Se déconnecter", "es": "Cerrar sesión", "ru": "Выйти", - "it": "Disconnettersi" + "it": "Disconnettersi", + "nl": "Uitloggen" } }, "widgets": { @@ -525,7 +575,8 @@ "fr": "Derniers cas", "es": "Últimos casos", "ru": "Последние дела", - "it": "Ultimi casi" + "it": "Ultimi casi", + "nl": "Laatste zaken" }, "widgetdescription": { "description": "Description", @@ -535,7 +586,8 @@ "fr": "Ce widget affiche les derniers cas de votre guilde.", "es": "Este widget muestra los últimos casos de tu hermandad.", "ru": "Этот виджет показывает последние дела в вашей гильдии.", - "it": "Questo widget mostra gli ultimi casi della tua gilda." + "it": "Questo widget mostra gli ultimi casi della tua gilda.", + "nl": "Toont de laatste zaken in jouw gilde." }, "empty": { "description": "Empty", @@ -545,7 +597,8 @@ "fr": "Aucun cas trouvé.", "es": "No se encontraron casos.", "ru": "Дела не найдены.", - "it": "Nessun caso trovato." + "it": "Nessun caso trovato.", + "nl": "Geen zaken gevonden." } }, "latestappeals": { @@ -557,7 +610,8 @@ "fr": "Derniers appels", "es": "Últimos apelaciones", "ru": "Последние обращения", - "it": "Ultimi appelli" + "it": "Ultimi appelli", + "nl": "Laatste Beroepen" }, "widgetdescription": { "description": "Description", @@ -567,7 +621,8 @@ "fr": "Ce widget affiche les derniers appels de votre guilde.", "es": "Este widget muestra los últimos apelaciones de tu hermandad.", "ru": "Этот виджет показывает последние обращения в вашей гильдии.", - "it": "Questo widget mostra gli ultimi appelli della tua gilda." + "it": "Questo widget mostra gli ultimi appelli della tua gilda.", + "nl": "Toont de laatste beroepen in jouw gilde." }, "empty": { "description": "Empty", @@ -577,7 +632,8 @@ "fr": "Aucun appel trouvé.", "es": "No se encontraron apelaciones.", "ru": "Обращения не найдены.", - "it": "Nessun appello trovato." + "it": "Nessun appello trovato.", + "nl": "Geen beroepen gevonden." } }, "guildmoderatorcases": { @@ -589,7 +645,8 @@ "fr": "Cas par modérateur", "es": "Casos por moderador", "ru": "Дела по модератору", - "it": "Casi per moderatore" + "it": "Casi per moderatore", + "nl": "Zaken per moderator" }, "widgetdescription": { "description": "Description", @@ -599,7 +656,8 @@ "fr": "Ce widget affiche tous les cas par modérateur de votre guilde.", "es": "Este widget muestra todos los casos por moderador de tu hermandad.", "ru": "Этот виджет показывает все дела по модератору в вашей гильдии.", - "it": "Questo widget mostra tutti i casi per moderatore della tua gilda." + "it": "Questo widget mostra tutti i casi per moderatore della tua gilda.", + "nl": "Toont alle zaken per moderator in jouw gilde." }, "cases": { "description": "Cases", @@ -609,7 +667,8 @@ "fr": "Cas", "es": "Casos", "ru": "Дела", - "it": "Casi" + "it": "Casi", + "nl": "Zaken" }, "empty": { "description": "Empty", @@ -619,7 +678,8 @@ "fr": "Aucun cas trouvé.", "es": "No se encontraron casos.", "ru": "Дела не найдены.", - "it": "Nessun caso trovato." + "it": "Nessun caso trovato.", + "nl": "Geen zaken gevonden." } }, "guildstats": { @@ -631,7 +691,8 @@ "fr": "Statistiques de guilde", "es": "Estadísticas de hermandad", "ru": "Статистика гильдии", - "it": "Statistiche della gilda" + "it": "Statistiche della gilda", + "nl": "Gilde statistieken" }, "widgetdescription": { "description": "Description", @@ -641,7 +702,8 @@ "fr": "Ce widget affiche les statistiques de votre guilde.", "es": "Este widgetshowConfirmDialog muestra las estadísticas de tu hermandad.", "ru": "Этот виджет показывает статистику гильдии.", - "it": "Questo widget mostra le statistiche della tua gilda." + "it": "Questo widget mostra le statistiche della tua gilda.", + "nl": "Toont de gilde statistieken." }, "automods": { "description": "Automod", @@ -651,7 +713,8 @@ "fr": "Automod", "es": "Automod", "ru": "Автомодерация", - "it": "Automod" + "it": "Automod", + "nl": "Automods" }, "invites": { "description": "Invites", @@ -661,7 +724,8 @@ "fr": "Invitations", "es": "Invitaciones", "ru": "Приглашения", - "it": "Inviti" + "it": "Inviti", + "nl": "Uitnodigingen" }, "usernotes": { "description": "Usernotes", @@ -671,7 +735,8 @@ "fr": "Notes d'utilisateur", "es": "Notas de usuario", "ru": "Заметки пользователя", - "it": "Note utente" + "it": "Note utente", + "nl": "Gebruikersnotities" }, "usermaps": { "description": "User Maps", @@ -681,7 +746,8 @@ "fr": "Cartes d'utilisateur", "es": "Mapas de usuario", "ru": "Карты пользователя", - "it": "Mappe utente" + "it": "Mappe utente", + "nl": "Gebruikerskaarten" }, "banappeals": { "description": "Ban Appeals", @@ -691,7 +757,8 @@ "fr": "Appels de bannissement", "es": "Quejas de Baneo", "ru": "Жалобы на бан", - "it": "Appelli di banno" + "it": "Appelli di banno", + "nl": "Ban Beroepen" }, "empty": { "description": "Empty", @@ -701,7 +768,8 @@ "fr": "Aucune statistique trouvée.", "es": "No se encontraron estadísticas.", "ru": "Статистики не найдены.", - "it": "Nessuna statistica trovata." + "it": "Nessuna statistica trovata.", + "nl": "Geen statistieken gevonden." } }, "guildautomodsplit": { @@ -713,7 +781,8 @@ "fr": "Séparation automod", "es": "División automod", "ru": "Разделение автомодерации", - "it": "Divisione automod" + "it": "Divisione automod", + "nl": "Automatische moderatie splitsen" }, "widgetdescription": { "description": "Description", @@ -723,7 +792,8 @@ "fr": "Ce widget affiche les automodérations de votre guilde.", "es": "Este widget muestra la división de automod de tu hermandad.", "ru": "Этот виджет показывает раздел автомодерации в вашей гильдии.", - "it": "Questo widget mostra la divisione dell'automod della tua gilda." + "it": "Questo widget mostra la divisione dell'automod della tua gilda.", + "nl": "Toont de automatische moderatie splitsing van jouw gilde." }, "empty": { "description": "Empty", @@ -733,7 +803,8 @@ "fr": "Aucune séparation automod trouvée.", "es": "No se encontró división automod.", "ru": "Разделение автомодерации не найдено.", - "it": "Nessuna divisione automod trovata." + "it": "Nessuna divisione automod trovata.", + "nl": "Geen automatische moderatie splitsing gevonden." } }, "guildmodcasecountchart": { @@ -745,7 +816,8 @@ "fr": "Aperçu des cas", "es": "Resumen de casos", "ru": "Обзор дел", - "it": "Panoramica casi" + "it": "Panoramica casi", + "nl": "Zaak overzicht" }, "widgetdescription": { "description": "Description", @@ -755,7 +827,8 @@ "fr": "Ce widget affiche l'aperçu des cas de votre guilde.", "es": "Este widget muestra el resumen de los casos de tu hermandad.", "ru": "Этот виджет показывает обзор дел в вашей гильдии.", - "it": "Questo widget mostra la panoramica dei casi della tua gilda." + "it": "Questo widget mostra la panoramica dei casi della tua gilda.", + "nl": "Toont het overzicht van zaken in jouw gilde." }, "empty": { "description": "Empty", @@ -765,7 +838,8 @@ "fr": "Aucun cas trouvé.", "es": "No se encontraron casos.", "ru": "Дела не найдены.", - "it": "Nessun caso trovato." + "it": "Nessun caso trovato.", + "nl": "Geen zaak gevonden." } }, "guildappealcountchart": { @@ -777,7 +851,8 @@ "fr": "Aperçu des appels", "es": "Resumen de quejas", "ru": "Обзор жалоб", - "it": "Panoramica appelli" + "it": "Panoramica appelli", + "nl": "Beroep overzicht" }, "widgetdescription": { "description": "Description", @@ -787,7 +862,8 @@ "fr": "Ce widget affiche l'aperçu des appels de votre guilde.", "es": "Este widget muestra el resumen de las quejas de tu hermandad.", "ru": "Этот виджет показывает обзор жалоб в вашей гильдии.", - "it": "Questo widget mostra la panoramica degli appelli della tua gilda." + "it": "Questo widget mostra la panoramica degli appelli della tua gilda.", + "nl": "Toont het overzicht van beroepen in jouw gilde." }, "empty": { "description": "Empty", @@ -797,7 +873,8 @@ "fr": "Aucun appel trouvé.", "es": "No se encontraron quejas.", "ru": "Жалобы не найдены.", - "it": "Nessun appello trovato." + "it": "Nessun appello trovato.", + "nl": "Geen beroepen gevonden." } }, "guildautomodcountchart": { @@ -809,7 +886,8 @@ "fr": "Aperçu des automodérations", "es": "Resumen de automod", "ru": "Обзор автомодерации", - "it": "Panoramica automod" + "it": "Panoramica automod", + "nl": "Automatische moderatie overzicht" }, "widgetdescription": { "description": "Description", @@ -819,7 +897,8 @@ "fr": "Ce widget affiche l'aperçu des automodérations de votre guilde.", "es": "Este widget muestra el resumen de las automod de tu hermandad.", "ru": "Этот виджет показывает обзор автомодерации в вашей гильдии.", - "it": "Questo widget mostra la panoramica dell'automod della tua gilda." + "it": "Questo widget mostra la panoramica dell'automod della tua gilda.", + "nl": "Toont het automatische moderatie overzicht van jouw gilde." }, "empty": { "description": "Empty", @@ -829,7 +908,8 @@ "fr": "Aucune automodération trouvée.", "es": "No se encontraron automod.", "ru": "Автомодерации не найдены.", - "it": "Nessuna automod trovata." + "it": "Nessuna automod trovata.", + "nl": "Geen automatische moderatie gevonden." } }, "guildpendingmessages": { @@ -841,7 +921,8 @@ "fr": "Messages en attente", "es": "Mensajes pendientes", "ru": "Ожидающие сообщения", - "it": "Messaggi in attesa" + "it": "Messaggi in attesa", + "nl": "In afwachting van geplande berichten" }, "widgetdescription": { "description": "Description", @@ -851,7 +932,8 @@ "fr": "Ce widget affiche les messages en attente de votre guilde.", "es": "Este widget muestra los mensajes pendientes de tu hermandad.", "ru": "Этот виджет показывает ожидающие сообщения в вашей гильдии.", - "it": "Questo widget mostra i messaggi in attesa della tua gilda." + "it": "Questo widget mostra i messaggi in attesa della tua gilda.", + "nl": "Toont de berichten die in afwachting zijn van planning in jouw gilde." }, "empty": { "description": "Empty", @@ -861,7 +943,8 @@ "fr": "Aucun message en attente trouvé.", "es": "No se encontraron mensajes pendientes.", "ru": "Нет ожидающих сообщений.", - "it": "Nessun messaggio in attesa trovato." + "it": "Nessun messaggio in attesa trovato.", + "nl": "Geen berichten in afwachting van planning gevonden." } }, "guildpunishmentstats": { @@ -873,7 +956,8 @@ "fr": "Statistiques de punition", "es": "Estadísticas de castigos", "ru": "Статистика наказаний", - "it": "Statistiche del castigo" + "it": "Statistiche del castigo", + "nl": "Bestraffing Statistieken" }, "widgetdescription": { "description": "Description", @@ -883,7 +967,8 @@ "fr": "Ce widget affiche les statistiques de punition de votre guilde.", "es": "Este widget muestra las estadísticas de castigos de tu hermandad.", "ru": "Этот виджет показывает статистику наказаний в вашей гильдии.", - "it": "Questo widget mostra le statistiche del castigo della tua gilda." + "it": "Questo widget mostra le statistiche del castigo della tua gilda.", + "nl": "Toont de bestraffing statistieken van jouw gilde." }, "activemutes": { "description": "Active Mutes", @@ -893,7 +978,8 @@ "fr": "Mutes actifs", "es": "Mutes activos", "ru": "Активные муты", - "it": "Mute attivo" + "it": "Mute attivo", + "nl": "Actieve gedempende" }, "activebans": { "description": "Active Bans", @@ -903,7 +989,8 @@ "fr": "Bannissements actifs", "es": "Bans activos", "ru": "Активные баны", - "it": "Ban attivo" + "it": "Ban attivo", + "nl": "Actieve bans" }, "empty": { "description": "Empty", @@ -913,7 +1000,8 @@ "fr": "Aucune punition trouvée.", "es": "No se encontraron castigos.", "ru": "Нет наказаний.", - "it": "Nessun castigo trovato." + "it": "Nessun castigo trovato.", + "nl": "Geen straffen gevonden." } }, "guildquicksearch": { @@ -925,7 +1013,8 @@ "fr": "Recherche rapide", "es": "Búsqueda rápida", "ru": "Быстрый поиск", - "it": "Ricerca rapida" + "it": "Ricerca rapida", + "nl": "Snelzoeken" }, "widgetdescription": { "description": "Description", @@ -935,7 +1024,8 @@ "fr": "Ce widget permet de rechercher rapidement un cas, un utilisateur ou d'autres ressources.", "es": "Este widget te permite buscar rápidamente un caso, un usuario o otra recurso.", "ru": "Этот виджет позволяет быстро найти случай, пользователя или другие ресурсы.", - "it": "Questo widget ti permette di cercare rapidamente un caso, un utente o altre risorse." + "it": "Questo widget ti permette di cercare rapidamente un caso, un utente o altre risorse.", + "nl": "Hiermee kan snel worden gezocht naar zaken, gebruikers of andere bronnen." }, "placeholder": { "description": "Placeholder for the search field", @@ -945,7 +1035,8 @@ "fr": "Quicksearch utilisateurs, modcases, punitions, ...", "es": "Usuarios de Quicksearch, modcases, castigos, ...", "ru": "Пользователи Quicksearch, модкейсы, наказания, ...", - "it": "Utenti Quicksearch, modcase, punizioni, ..." + "it": "Utenti Quicksearch, modcase, punizioni, ...", + "nl": "Quicksearch gebruikers, zaken en straffen..." }, "searchhistory": { "description": "Search History", @@ -955,7 +1046,8 @@ "fr": "Historique de recherche", "es": "Historial de búsqueda", "ru": "История поиска", - "it": "Cronologia della ricerca" + "it": "Cronologia della ricerca", + "nl": "Zoekgeschiedenis" }, "clearhistory": { "description": "Clear History", @@ -965,7 +1057,8 @@ "fr": "Effacer l'historique", "es": "Limpiar historial", "ru": "Очистить историю", - "it": "Cancella cronologia" + "it": "Cancella cronologia", + "nl": "Geschiedenis wissen" }, "noresults": { "description": "No results found", @@ -975,7 +1068,8 @@ "fr": "Aucun résultat trouvé.", "es": "No se encontraron resultados.", "ru": "Ничего не найдено.", - "it": "Nessun risultato trovato." + "it": "Nessun risultato trovato.", + "nl": "Geen resultaten gevonden." }, "searching": { "description": "Searching...", @@ -985,7 +1079,8 @@ "fr": "Recherche en cours...", "es": "Buscando...", "ru": "Поиск...", - "it": "Ricerca in corso..." + "it": "Ricerca in corso...", + "nl": "Zoeken..." }, "searchfailed": { "description": "Search failed", @@ -995,7 +1090,8 @@ "fr": "La recherche a échoué.", "es": "La búsqueda falló.", "ru": "Поиск не удался.", - "it": "La ricerca non è riuscita." + "it": "La ricerca non è riuscita.", + "nl": "Zoeken is mislukt." } }, "guildmotd": { @@ -1007,7 +1103,8 @@ "fr": "MotD", "es": "MotD", "ru": "MotD", - "it": "MotD" + "it": "MotD", + "nl": "MotD" }, "widgetdescription": { "description": "Description", @@ -1017,7 +1114,8 @@ "fr": "Ce widget affiche le message du jour actuel.", "es": "Este widget muestra el mensaje del día actual.", "ru": "Этот виджет показывает текущее сообщение дня.", - "it": "Questo widget mostra il messaggio del giorno attuale." + "it": "Questo widget mostra il messaggio del giorno attuale.", + "nl": "Toont het huidige bericht van de dag." }, "empty": { "description": "Empty", @@ -1027,7 +1125,8 @@ "fr": "Aucun message du jour.", "es": "No hay mensaje del día.", "ru": "Нет сообщения дня.", - "it": "Nessun messaggio del giorno." + "it": "Nessun messaggio del giorno.", + "nl": "Geen bericht van de dag." } }, "adminversion": { @@ -1039,7 +1138,8 @@ "fr": "Version info", "es": "Información de la versión", "ru": "Информация о версии", - "it": "Informazioni sulla versione" + "it": "Informazioni sulla versione", + "nl": "Versie info" }, "widgetdescription": { "description": "Description", @@ -1049,7 +1149,8 @@ "fr": "Ce widget affiche la version actuellement installée et les mises à jour disponibles.", "es": "Este widget muestra la versión actualmente instalada y las actualizaciones disponibles.", "ru": "Этот виджет показывает текущую установленную версию и доступные обновления.", - "it": "Questo widget mostra la versione attualmente installata e le aggiornamenti disponibili." + "it": "Questo widget mostra la versione attualmente installata e le aggiornamenti disponibili.", + "nl": "Deze widget toont de huidig geïnstalleerde versie en beschikbare updates" }, "current": { "description": "Current version", @@ -1059,7 +1160,8 @@ "fr": "Version actuelle", "es": "Versión actual", "ru": "Текущая версия", - "it": "Versione attuale" + "it": "Versione attuale", + "nl": "Huidige versie" }, "new": { "description": "New version", @@ -1069,7 +1171,8 @@ "fr": "Mise à jour disponible", "es": "Actualización disponible", "ru": "Доступное обновление", - "it": "Aggiornamento disponibile" + "it": "Aggiornamento disponibile", + "nl": "Beschikbare update" }, "empty": { "description": "No update available", @@ -1079,7 +1182,8 @@ "fr": "Aucune mise à jour disponible", "es": "No hay actualización disponible", "ru": "Нет доступных обновлений", - "it": "Nessun aggiornamento disponibile" + "it": "Nessun aggiornamento disponibile", + "nl": "Geen update beschikbaar" } }, "admindiscordinvite": { @@ -1091,7 +1195,8 @@ "fr": "Invitation Discord", "es": "Invitación de Discord", "ru": "Приглашение в Discord", - "it": "Invito Discord" + "it": "Invito Discord", + "nl": "Discord uitnodiging" }, "widgetdescription": { "description": "Description", @@ -1101,7 +1206,8 @@ "fr": "Ce widget affiche un lien d'invitation pour le Discord communautaire MASZ.", "es": "Este widget muestra un enlace de invitación para el Discord de la comunidad MASZ.", "ru": "Этот виджет показывает ссылку приглашения для Discord-сообщества MASZ.", - "it": "Questo widget mostra un link di invito per il Discord della comunità MASZ." + "it": "Questo widget mostra un link di invito per il Discord della comunità MASZ.", + "nl": "Deze widget toont een invite link voor de MASZ community Discord." }, "message": { "description": "Message", @@ -1111,7 +1217,8 @@ "fr": "Rejoignez le Discord communautaire MASZ!", "es": "¡Únete al Discord de la comunidad MASZ!", "ru": "Присоединяйтесь к серверу сообщества MASZ!", - "it": "Unisciti al Discord della comunità MASZ!" + "it": "Unisciti al Discord della comunità MASZ!", + "nl": "Word lid van de MASZ gemeenschap Discord!" } }, "adminstatus": { @@ -1123,7 +1230,8 @@ "fr": "Statut", "es": "Estado", "ru": "Статус", - "it": "Stato" + "it": "Stato", + "nl": "Status" }, "widgetdescription": { "description": "Description", @@ -1133,7 +1241,8 @@ "fr": "Ce widget affiche le ping actuel des composants MASZ.", "es": "Este widget muestra el ping actual de los componentes MASZ.", "ru": "Этот виджет показывает текущий пинг компонентов MASZ.", - "it": "Questo widget mostra il ping attuale dei componenti MASZ." + "it": "Questo widget mostra il ping attuale dei componenti MASZ.", + "nl": "Deze widget toont de huidige ping van MASZ' componenten" }, "offline": { "description": "Offline", @@ -1143,7 +1252,8 @@ "fr": "Hors ligne", "es": "Desconectado", "ru": "Оффлайн", - "it": "Offline" + "it": "Offline", + "nl": "Offline" }, "bot": { "description": "Bot", @@ -1153,7 +1263,8 @@ "fr": "Bot", "es": "Bot", "ru": "Бот", - "it": "Bot" + "it": "Bot", + "nl": "Bot" }, "db": { "description": "Database", @@ -1163,7 +1274,8 @@ "fr": "Base de données", "es": "Base de datos", "ru": "База данных", - "it": "Database" + "it": "Database", + "nl": "Databank" }, "cache": { "description": "Cache", @@ -1173,7 +1285,8 @@ "fr": "Cache", "es": "Caché", "ru": "Кэш", - "it": "Cache" + "it": "Cache", + "nl": "Cache" }, "empty": { "description": "No status available", @@ -1183,7 +1296,8 @@ "fr": "Aucun statut disponible", "es": "No hay estado disponible", "ru": "Нет статуса", - "it": "Nessuno stato disponibile" + "it": "Nessuno stato disponibile", + "nl": "Geen status beschikbaar" } }, "adminloggedin": { @@ -1195,7 +1309,8 @@ "fr": "Utilisateurs connectés", "es": "Usuarios conectados", "ru": "Зарегистрированные пользователи", - "it": "Utenti connessi" + "it": "Utenti connessi", + "nl": "Aangemelde gebruikers" }, "widgetdescription": { "description": "Description", @@ -1205,7 +1320,8 @@ "fr": "Ce widget affiche les utilisateurs actuellement connectés.", "es": "Este widget muestra los usuarios actualmente conectados.", "ru": "Этот виджет показывает текущих пользователей.", - "it": "Questo widget mostra gli utenti attualmente collegati." + "it": "Questo widget mostra gli utenti attualmente collegati.", + "nl": "Deze widget toont de momenteel ingelogde gebruikers" }, "empty": { "description": "No logged in users", @@ -1215,7 +1331,8 @@ "fr": "Aucun utilisateur connecté", "es": "No hay usuarios conectados", "ru": "Нет зарегистрированных пользователей", - "it": "Nessun utente connesso" + "it": "Nessun utente connesso", + "nl": "Geen ingelogde gebruikers" } }, "adminresources": { @@ -1227,7 +1344,8 @@ "fr": "Ressources", "es": "Recursos", "ru": "Ресурсы", - "it": "Risorse" + "it": "Risorse", + "nl": "Middelen" }, "widgetdescription": { "description": "Description", @@ -1237,7 +1355,8 @@ "fr": "Ce widget affiche le nombre actuel de ressources créées dans votre base de données.", "es": "Este widget muestra la cantidad actual de recursos creados en su base de datos.", "ru": "Этот виджет показывает текущее количество созданных ресурсов в базе данных.", - "it": "Questo widget mostra la quantità attuale di risorse create nel database." + "it": "Questo widget mostra la quantità attuale di risorse create nel database.", + "nl": "Deze widget toont het huidige aantal aangemaakte resources in je databank." }, "guilds": { "description": "Guilds", @@ -1247,7 +1366,8 @@ "fr": "Guildes", "es": "Hermandades", "ru": "Гильдии", - "it": "Gilde" + "it": "Gilde", + "nl": "Gilden" }, "cases": { "description": "Cases", @@ -1257,7 +1377,8 @@ "fr": "Cas", "es": "Casos", "ru": "Дела", - "it": "Casi" + "it": "Casi", + "nl": "Gevallen" }, "automods": { "description": "Automod", @@ -1267,7 +1388,8 @@ "fr": "Automod", "es": "Automod", "ru": "Автомод", - "it": "Automod" + "it": "Automod", + "nl": "Automod" }, "usernotes": { "description": "User notes", @@ -1277,7 +1399,8 @@ "fr": "Notes d'utilisateur", "es": "Notas de usuario", "ru": "Заметки пользователя", - "it": "Note utente" + "it": "Note utente", + "nl": "Gebruiksaanwijzingen" }, "usermaps": { "description": "User maps", @@ -1287,7 +1410,8 @@ "fr": "Cartes d'utilisateur", "es": "Mapas de usuario", "ru": "Карты пользователя", - "it": "Mappe utente" + "it": "Mappe utente", + "nl": "Gebruikskaarten" }, "invites": { "description": "Invites", @@ -1297,7 +1421,8 @@ "fr": "Invitations", "es": "Invitaciones", "ru": "Приглашения", - "it": "Inviti" + "it": "Inviti", + "nl": "uitnodigingen" }, "empty": { "description": "No resources", @@ -1307,7 +1432,8 @@ "fr": "Aucune ressource", "es": "No hay recursos", "ru": "Нет ресурсов", - "it": "Nessuna risorsa" + "it": "Nessuna risorsa", + "nl": "Geen middelen" } }, "admincache": { @@ -1319,7 +1445,8 @@ "fr": "Cache", "es": "Caché", "ru": "Кэш", - "it": "Cache" + "it": "Cache", + "nl": "Cache" }, "widgetdescription": { "description": "Description", @@ -1329,7 +1456,8 @@ "fr": "Ce widget affiche le nombre actuel de ressources mises en cache.", "es": "Este widget muestra la cantidad actual de recursos en caché.", "ru": "Этот виджет показывает текущее количество кэшированных ресурсов.", - "it": "Questo widget mostra la quantità attuale di risorse memorizzate in cache." + "it": "Questo widget mostra la quantità attuale di risorse memorizzate in cache.", + "nl": "Deze widget toont de huidige hoeveelheid bronnen in de cache." }, "users": { "description": "Users", @@ -1339,7 +1467,8 @@ "fr": "Utilisateurs", "es": "Usuarios", "ru": "Пользователи", - "it": "Utenti" + "it": "Utenti", + "nl": "Gebruikers" }, "guilds": { "description": "Guilds", @@ -1349,7 +1478,8 @@ "fr": "Guildes", "es": "Hermandades", "ru": "Гильдии", - "it": "Gilde" + "it": "Gilde", + "nl": "Gilden" }, "bans": { "description": "Bans", @@ -1359,7 +1489,8 @@ "fr": "Banns", "es": "Bans", "ru": "Баны", - "it": "Bannati" + "it": "Bannati", + "nl": "Bans" }, "members": { "description": "Members", @@ -1369,7 +1500,8 @@ "fr": "Membres", "es": "Miembros", "ru": "Участники", - "it": "Membri" + "it": "Membri", + "nl": "Leden" }, "dmchannels": { "description": "DM channels", @@ -1379,7 +1511,8 @@ "fr": "Canaux DM", "es": "Canales DM", "ru": "Личные сообщения", - "it": "Canali DM" + "it": "Canali DM", + "nl": "DM-kanalen" }, "tokens": { "description": "Tokens", @@ -1389,7 +1522,8 @@ "fr": "Connexions par jetons", "es": "Inicios de sesión con token", "ru": "Вход с токеном", - "it": "Accesso con token" + "it": "Accesso con token", + "nl": "Token logins" }, "empty": { "description": "No resources", @@ -1399,7 +1533,8 @@ "fr": "Aucune ressource", "es": "No hay recursos", "ru": "Нет ресурсов", - "it": "Nessuna risorsa" + "it": "Nessuna risorsa", + "nl": "Geen bronnen" } }, "dashboardconfig": { @@ -1411,7 +1546,8 @@ "fr": "Configuration du tableau de bord", "es": "Configuración del tablero", "ru": "Конфигурация панели управления", - "it": "Configurazione cruscotto" + "it": "Configurazione cruscotto", + "nl": "Dashboard configuratie" }, "widgetdescription": { "description": "Description", @@ -1421,7 +1557,8 @@ "fr": "Ce widget vous aide à configurer votre tableau de bord.", "es": "Este widget te ayuda a configurar tu tablero de mando.", "ru": "Этот виджет поможет вам настроить панель управления.", - "it": "Questo widget ti aiuta a configurare il cruscotto." + "it": "Questo widget ti aiuta a configurare il cruscotto.", + "nl": "Helpt u bij de configuratie van uw dashboard." }, "available": { "description": "Available", @@ -1431,7 +1568,8 @@ "fr": "Widgets disponibles", "es": "Widgets disponibles", "ru": "Доступные виджеты", - "it": "Widget disponibili" + "it": "Widget disponibili", + "nl": "Beschikbare widgets" }, "enabled": { "description": "Enabled", @@ -1441,7 +1579,8 @@ "fr": "Widgets activés", "es": "Widgets activados", "ru": "Включенные виджеты", - "it": "Widget abilitati" + "it": "Widget abilitati", + "nl": "Geactiveerde widgets" }, "enabledragging": { "description": "Enable dragging", @@ -1451,7 +1590,8 @@ "fr": "Activer le glisser", "es": "Activar arrastrar", "ru": "Включить перетаскивание", - "it": "Abilita il trascinamento" + "it": "Abilita il trascinamento", + "nl": "Slepen mogelijk maken" }, "clearcache": { "description": "Clear cache", @@ -1461,7 +1601,8 @@ "fr": "Effacer le cache", "es": "Limpiar caché", "ru": "Очистить кэш", - "it": "Cancella cache" + "it": "Cancella cache", + "nl": "Cache wissen" }, "clearcacheconfirm": { "description": "Are you sure you want to clear the cache?", @@ -1471,7 +1612,8 @@ "fr": "Êtes-vous sûr de vouloir effacer le cache? Cela peut affecter le rendement de votre tableau de bord.", "es": "¿Estás seguro de que quieres limpiar el caché? Esto puede afectar el rendimiento de tu tablero de mando.", "ru": "Вы уверены, что хотите очистить кэш? Это может повлиять на производительность вашего панели управления.", - "it": "Sei sicuro di voler cancellare la cache? Questo potrebbe influire sulle prestazioni del cruscotto." + "it": "Sei sicuro di voler cancellare la cache? Questo potrebbe influire sulle prestazioni del cruscotto.", + "nl": "Weet je zeker dat je de cache wilt wissen? Dit kan de prestaties van je dashboard beïnvloeden." }, "clearcachesuccess": { "description": "Cache cleared", @@ -1481,7 +1623,8 @@ "fr": "Effacé {count} entrées du cache.", "es": "Limpiado {count} entradas de caché.", "ru": "Очищено {count} записей кэша.", - "it": "Cache cancellata {count}." + "it": "Cache cancellata {count}.", + "nl": "{count} cachevermeldingen gewist." }, "configurewidgets": { "description": "Configure widgets", @@ -1491,7 +1634,8 @@ "fr": "Configurer les widgets", "es": "Configurar widgets", "ru": "Настроить виджеты", - "it": "Configura i widget" + "it": "Configura i widget", + "nl": "Widgets configureren" } } }, @@ -1505,7 +1649,8 @@ "fr": "Ajouter une guilde", "es": "Añadir una hermandad", "ru": "Добавить гильдию", - "it": "Aggiungi gilda" + "it": "Aggiungi gilda", + "nl": "Gilde toevoegen" }, "add": { "description": "Add", @@ -1515,7 +1660,8 @@ "fr": "Ajouter", "es": "Añadir", "ru": "Добавить", - "it": "Aggiungi" + "it": "Aggiungi", + "nl": "Toevoegen" }, "name": { "description": "Name", @@ -1525,7 +1671,8 @@ "fr": "Nom", "es": "Nombre", "ru": "Имя", - "it": "Nome" + "it": "Nome", + "nl": "Naam" }, "id": { "description": "ID", @@ -1535,7 +1682,8 @@ "fr": "ID", "es": "ID", "ru": "ID", - "it": "ID" + "it": "ID", + "nl": "ID" }, "invitefirst": { "description": "Invite first", @@ -1545,7 +1693,8 @@ "fr": "Veuillez d'abord inviter le bot à cette guilde", "es": "Por favor, invita al bot a esta hermandad primero", "ru": "Пожалуйста, пригласите бота в эту гильдию первым", - "it": "Per favore invita il bot prima a questa gilda" + "it": "Per favore invita il bot prima a questa gilda", + "nl": "Nodig de bot eerst uit voor deze gilde" }, "windowfailed": { "description": "Failed to open window", @@ -1555,7 +1704,8 @@ "fr": "Échec de l'ouverture de la fenêtre", "es": "Fallo al abrir la ventana", "ru": "Не удалось открыть окно", - "it": "Impossibile aprire la finestra" + "it": "Impossibile aprire la finestra", + "nl": "Openen van venster gefaald" } }, "list": { @@ -1567,7 +1717,8 @@ "fr": "Guildes admin", "es": "Gildes administradores", "ru": "Административные гильдии", - "it": "Gilde amministrative" + "it": "Gilde amministrative", + "nl": "Admin gilden" }, "mod": { "description": "Mod", @@ -1577,7 +1728,8 @@ "fr": "Guildes mod", "es": "Gildes moderadores", "ru": "Модераторские гильдии", - "it": "Gilde moderative" + "it": "Gilde moderative", + "nl": "Gilde Moderatoren" }, "guild": { "description": "Guilds", @@ -1587,7 +1739,8 @@ "fr": "Guildes", "es": "Gildes", "ru": "Гильдии", - "it": "Gilde" + "it": "Gilde", + "nl": "Gilden" }, "banned": { "description": "Banned", @@ -1597,7 +1750,8 @@ "fr": "Guildes bannis", "es": "Gildes prohibidas", "ru": "Заблокированные гильдии", - "it": "Gilde bloccate" + "it": "Gilde bloccate", + "nl": "Verbannen gilden" } }, "caseview": { @@ -1609,7 +1763,8 @@ "fr": "Cette preuve est vérifiée", "es": "Esta evidencia está verificada", "ru": "Это доказательство подтверждено", - "it": "Questa prova è verificata" + "it": "Questa prova è verificata", + "nl": "Dit bewijs wordt geverifieerd" }, "unlinked": { "description": "Unlinked", @@ -1619,7 +1774,8 @@ "fr": "Caselink supprimé", "es": "Caselink eliminado", "ru": "Ссылка удалена", - "it": "Caselink eliminato" + "it": "Caselink eliminato", + "nl": "Caselink verwijderd" }, "unlinkfailed": { "description": "Unlink failed", @@ -1629,7 +1785,8 @@ "fr": "Échec de la suppression du caselink", "es": "Fallo al desvincular caselink", "ru": "Не удалось разорвать ссылку", - "it": "Impossibile scollegare il caso" + "it": "Impossibile scollegare il caso", + "nl": "Ontkoppeling van zaak mislukt" }, "linked": { "description": "Linked", @@ -1639,7 +1796,8 @@ "fr": "Caselink créé", "es": "Caselink creado", "ru": "Ссылка создана", - "it": "Caselink creato" + "it": "Caselink creato", + "nl": "Caselink aangemaakt" }, "linkfailed": { "description": "Link failed", @@ -1649,7 +1807,8 @@ "fr": "Échec de la création du caselink", "es": "Fallo al vincular caselink", "ru": "Не удалось создать ссылку", - "it": "Impossibile collegare il caso" + "it": "Impossibile collegare il caso", + "nl": "Zaak niet gekoppeld" }, "linkcase": { "description": "Link case", @@ -1659,7 +1818,8 @@ "fr": "Lier le cas", "es": "Vincular caso", "ru": "Ссылка на кейс", - "it": "Collega il caso" + "it": "Collega il caso", + "nl": "Link zaak" }, "search": { "description": "Search", @@ -1669,7 +1829,8 @@ "fr": "Recherche", "es": "Buscar", "ru": "Поиск", - "it": "Cerca" + "it": "Cerca", + "nl": "Zoeken" }, "nocasesfound": { "description": "No cases found", @@ -1679,7 +1840,8 @@ "fr": "Aucun cas trouvé", "es": "No se encontraron casos", "ru": "Нет кейсов", - "it": "Nessun caso trovato" + "it": "Nessun caso trovato", + "nl": "Geen gevallen gevonden" }, "attachmentuploadfailed": { "description": "Attachment upload failed", @@ -1689,7 +1851,8 @@ "fr": "Échec de l'envoi de pièce jointe", "es": "Subida de adjunto falló", "ru": "Загрузка вложения не удалась", - "it": "Caricamento allegato non riuscito" + "it": "Caricamento allegato non riuscito", + "nl": "Het uploaden van bijlagen is mislukt" }, "casenotfound": { "description": "Case not found", @@ -1699,7 +1862,8 @@ "fr": "Cas non trouvé", "es": "Caso no encontrado", "ru": "Дело не найдено", - "it": "Caso non trovato" + "it": "Caso non trovato", + "nl": "Zaak niet gevonden" }, "filedeleted": { "description": "File deleted", @@ -1709,7 +1873,8 @@ "fr": "Fichier supprimé", "es": "Archivo eliminado", "ru": "Файл удален", - "it": "File eliminato" + "it": "File eliminato", + "nl": "Bestand verwijderd" }, "filedeletefailed": { "description": "File delete failed", @@ -1719,7 +1884,8 @@ "fr": "Échec de la suppression du fichier", "es": "Eliminación de archivo falló", "ru": "Не удалось удалить файл", - "it": "Eliminazione file non riuscita" + "it": "Eliminazione file non riuscita", + "nl": "Faalde om bestand te verwijderen" }, "commentdeleted": { "description": "Comment deleted", @@ -1729,7 +1895,8 @@ "fr": "Commentaire supprimé", "es": "Comentario eliminado", "ru": "Комментарий удален", - "it": "Commento eliminato" + "it": "Commento eliminato", + "nl": "Commentaar verwijderd" }, "commentdeletefailed": { "description": "Comment delete failed", @@ -1739,7 +1906,8 @@ "fr": "Échec de la suppression du commentaire", "es": "Eliminación de comentario falló", "ru": "Не удалось удалить комментарий", - "it": "Eliminazione commento non riuscita" + "it": "Eliminazione commento non riuscita", + "nl": "Gefaald om commentaar te verwijderen" }, "commentadded": { "description": "Comment added", @@ -1749,7 +1917,8 @@ "fr": "Commentaire ajouté", "es": "Comentario añadido", "ru": "Комментарий добавлен", - "it": "Commento aggiunto" + "it": "Commento aggiunto", + "nl": "Commentaar toegevoegd" }, "commentaddfailed": { "description": "Comment add failed", @@ -1759,7 +1928,8 @@ "fr": "Échec de l'ajout du commentaire", "es": "Fallo al añadir comentario", "ru": "Не удалось добавить комментарий", - "it": "Inserimento commento non riuscito" + "it": "Inserimento commento non riuscito", + "nl": "Geen commentaar toegevoegd" }, "linkcopied": { "description": "Link copied", @@ -1769,7 +1939,8 @@ "fr": "Lien copié dans le presse-papiers", "es": "Enlace copiado al portapapeles", "ru": "Ссылка скопирована в буфер обмена", - "it": "Link copiato negli appunti" + "it": "Link copiato negli appunti", + "nl": "Link gekopieerd naar klembord" }, "fileuploaded": { "description": "File uploaded", @@ -1779,7 +1950,8 @@ "fr": "Fichier téléchargé", "es": "Archivo subido", "ru": "Файл загружен", - "it": "File caricato" + "it": "File caricato", + "nl": "Bestand geupload" }, "fileuploadfailed": { "description": "File upload failed", @@ -1789,7 +1961,8 @@ "fr": "Échec de la téléchargement du fichier", "es": "Fallo al subir archivo", "ru": "Не удалось загрузить файл", - "it": "Caricamento file non riuscito" + "it": "Caricamento file non riuscito", + "nl": "Kan geen bestand uploaden" }, "punishmentactivated": { "description": "Punishment activated", @@ -1799,7 +1972,8 @@ "fr": "Pardon activé", "es": "Pena activada", "ru": "Штраф активирован", - "it": "Punizione attivata" + "it": "Punizione attivata", + "nl": "Straf geactiveerd" }, "punishmentdeactivated": { "description": "Punishment deactivated", @@ -1809,7 +1983,8 @@ "fr": "Pardon désactivé", "es": "Pena desactivada", "ru": "Штраф деактивирован", - "it": "Punizione disattivata" + "it": "Punizione disattivata", + "nl": "Straf gedeactiveerd" }, "punishmentactivatefailed": { "description": "Punishment activate failed", @@ -1819,7 +1994,8 @@ "fr": "Échec de l'activation du pardon", "es": "Fallo al activar la penalización", "ru": "Не удалось активировать штраф", - "it": "Fallimento dell'attivazione della punizione" + "it": "Fallimento dell'attivazione della punizione", + "nl": "Mislukt om straf te activeren" }, "punishmentdeactivatefailed": { "description": "Punishment deactivate failed", @@ -1829,7 +2005,8 @@ "fr": "Échec de la désactivation du pardon", "es": "Fallo al desactivar la penalización", "ru": "Не удалось деактивировать штраф", - "it": "Fallimento della disattivazione della punizione" + "it": "Fallimento della disattivazione della punizione", + "nl": "Mislukt om straf te deactiveren" }, "commentslocked": { "description": "Comments locked", @@ -1839,7 +2016,8 @@ "fr": "Commentaires verrouillés", "es": "Comentarios bloqueados", "ru": "Комментарии заблокированы", - "it": "Commenti bloccati" + "it": "Commenti bloccati", + "nl": "Reacties op slot" }, "commentslockfailed": { "description": "Comments lock failed", @@ -1849,7 +2027,8 @@ "fr": "Échec du verrouillage des commentaires", "es": "Fallo al bloquear comentarios", "ru": "Не удалось заблокировать комментарии", - "it": "Fallimento del blocco dei commenti" + "it": "Fallimento del blocco dei commenti", + "nl": "Reacties niet vergrendeld" }, "commentsunlocked": { "description": "Comments unlocked", @@ -1859,7 +2038,8 @@ "fr": "Commentaires déverrouillés", "es": "Comentarios desbloqueados", "ru": "Комментарии разблокированы", - "it": "Commenti sbloccati" + "it": "Commenti sbloccati", + "nl": "Opmerkingen ontgrendeld" }, "commentsunlockfailed": { "description": "Comments unlock failed", @@ -1869,7 +2049,8 @@ "fr": "Échec du déverrouillage des commentaires", "es": "Fallo al desbloquear comentarios", "ru": "Не удалось разблокировать комментарии", - "it": "Fallimento dello sblocco dei commenti" + "it": "Fallimento dello sblocco dei commenti", + "nl": "Reacties niet ontgrendeld" }, "deletedcase": { "description": "Case deleted", @@ -1879,7 +2060,8 @@ "fr": "Cas supprimé", "es": "Caso eliminado", "ru": "Дело удалено", - "it": "Caso eliminato" + "it": "Caso eliminato", + "nl": "Zaak verwijderd" }, "markeddeletecase": { "description": "Case marked for deletion", @@ -1889,7 +2071,8 @@ "fr": "Cas marqué pour suppression", "es": "Caso marcado para eliminación", "ru": "Дело помечено на удаление", - "it": "Caso contrassegnato per l'eliminazione" + "it": "Caso contrassegnato per l'eliminazione", + "nl": "Zaak gemarkeerd voor verwijdering" }, "deletecasefailed": { "description": "Failed to delete case", @@ -1899,7 +2082,8 @@ "fr": "Échec de la suppression du cas", "es": "Fallo al eliminar caso", "ru": "Не удалось удалить дело", - "it": "Fallimento dell'eliminazione del caso" + "it": "Fallimento dell'eliminazione del caso", + "nl": "Kan zaak niet verwijderen" }, "caserestored": { "description": "Case restored", @@ -1909,7 +2093,8 @@ "fr": "Cas restauré", "es": "Caso restaurado", "ru": "Дело восстановлено", - "it": "Caso ripristinato" + "it": "Caso ripristinato", + "nl": "Zaak hersteld" }, "caserestorefailed": { "description": "Failed to restore case", @@ -1919,7 +2104,8 @@ "fr": "Échec de la restauration du cas", "es": "Fallo al restaurar caso", "ru": "Не удалось восстановить дело", - "it": "Fallimento della ripristinazione del caso" + "it": "Fallimento della ripristinazione del caso", + "nl": "Kan zaak niet herstellen" }, "commentedited": { "description": "Comment edited", @@ -1929,7 +2115,8 @@ "fr": "Commentaire modifié", "es": "Comentario editado", "ru": "Комментарий отредактирован", - "it": "Commento modificato" + "it": "Commento modificato", + "nl": "Commentaar aangepast" }, "commenteditfailed": { "description": "Failed to edit comment", @@ -1939,7 +2126,8 @@ "fr": "Échec de la modification du commentaire", "es": "Fallo al editar comentario", "ru": "Не удалось отредактировать комментарий", - "it": "Fallimento della modifica del commento" + "it": "Fallimento della modifica del commento", + "nl": "Kan opmerking niet bewerken" }, "deletecase": { "description": "Delete case", @@ -1949,7 +2137,8 @@ "fr": "Supprimer le cas", "es": "Eliminar caso", "ru": "Удалить дело", - "it": "Elimina caso" + "it": "Elimina caso", + "nl": "Zaak verwijderen" }, "sendpublicnotification": { "description": "Send public notification", @@ -1959,7 +2148,8 @@ "fr": "Envoyer une notification publique", "es": "Enviar notificación pública", "ru": "Отправить публичную уведомление", - "it": "Invia notifica pubblica" + "it": "Invia notifica pubblica", + "nl": "Verzend openbare notificatie" }, "forcedelete": { "description": "Force delete", @@ -1969,7 +2159,8 @@ "fr": "Supprimer", "es": "Eliminar", "ru": "Удалить", - "it": "Elimina" + "it": "Elimina", + "nl": "Geforceerd verwijderen" }, "editcomment": { "description": "Edit comment", @@ -1979,7 +2170,8 @@ "fr": "Modifier le commentaire", "es": "Editar comentario", "ru": "Редактировать комментарий", - "it": "Modifica commento" + "it": "Modifica commento", + "nl": "Opmerking bewerken" }, "editcommentfield": { "description": "Edit comment field", @@ -1989,7 +2181,8 @@ "fr": "Commentaire", "es": "Comentario", "ru": "Комментарий", - "it": "Commento" + "it": "Commento", + "nl": "Commentaar" }, "editcommentfieldinvalid": { "description": "Comment field is invalid", @@ -1999,7 +2192,8 @@ "fr": "Commentaire doit être moins de 300 caractères", "es": "Comentario debe ser menos de 300 caracteres", "ru": "Комментарий должен быть меньше 300 символов", - "it": "Il commento deve essere più corto di 300 caratteri" + "it": "Il commento deve essere più corto di 300 caratteri", + "nl": "Het commentaar moet minder dan 300 tekens bevatten" }, "sharecase": { "description": "Share case", @@ -2009,7 +2203,8 @@ "fr": "Partager le cas", "es": "Compartir caso", "ru": "Поделиться делом", - "it": "Condividi caso" + "it": "Condividi caso", + "nl": "Deel zaak" }, "uploadfile": { "description": "Upload file", @@ -2019,7 +2214,8 @@ "fr": "Télécharger un fichier", "es": "Subir archivo", "ru": "Загрузить файл", - "it": "Carica file" + "it": "Carica file", + "nl": "Bestand uploaden" }, "activate": { "description": "Activate", @@ -2029,7 +2225,8 @@ "fr": "Activer", "es": "Activar", "ru": "Активировать", - "it": "Attiva" + "it": "Attiva", + "nl": "Activeer" }, "deactivate": { "description": "Deactivate", @@ -2039,7 +2236,8 @@ "fr": "Désactiver", "es": "Desactivar", "ru": "Деактивировать", - "it": "Disattiva" + "it": "Disattiva", + "nl": "Deactiveer" }, "unlockcomments": { "description": "Unlock comments", @@ -2049,7 +2247,8 @@ "fr": "Déverrouiller les commentaires", "es": "Desbloquear comentarios", "ru": "Разблокировать комментарии", - "it": "Sblocca commenti" + "it": "Sblocca commenti", + "nl": "Ontgrendel opmerkingen" }, "lockcomments": { "description": "Lock comments", @@ -2059,7 +2258,8 @@ "fr": "Verrouiller les commentaires", "es": "Bloquear comentarios", "ru": "Заблокировать комментарии", - "it": "Blocca commenti" + "it": "Blocca commenti", + "nl": "Vergrendel opmerkingen" }, "edit": { "description": "Edit", @@ -2069,7 +2269,8 @@ "fr": "Modifier", "es": "Editar", "ru": "Редактировать", - "it": "Modifica" + "it": "Modifica", + "nl": "Bewerk" }, "delete": { "description": "Delete", @@ -2079,7 +2280,8 @@ "fr": "Supprimer", "es": "Eliminar", "ru": "Удалить", - "it": "Elimina" + "it": "Elimina", + "nl": "Verwijder" }, "restore": { "description": "Restore", @@ -2089,7 +2291,8 @@ "fr": "Restaurer", "es": "Restaurar", "ru": "Восстановить", - "it": "Ripristina" + "it": "Ripristina", + "nl": "Herstel" }, "markedtodelete": { "description": "Marked to delete", @@ -2099,7 +2302,8 @@ "fr": "Ce cas a été marqué pour être supprimé à {time}", "es": "Este caso ha sido marcado para ser eliminado a las {time}", "ru": "Это дело было помечено на удаление в {time}", - "it": "Questo caso è stato contrassegnato per essere eliminato a {time}" + "it": "Questo caso è stato contrassegnato per essere eliminato a {time}", + "nl": "Deze zaak is gemarkeerd om te worden verwijderd op {time}" }, "markedtodeletesubtitle": { "description": "Marked to delete subtitle", @@ -2109,7 +2313,8 @@ "fr": "Supprimé par {user}", "es": "Eliminado por {user}", "ru": "Удалено пользователем {user}", - "it": "Eliminato da {user}" + "it": "Eliminato da {user}", + "nl": "Verwijderd door {user}" }, "attachments": { "description": "Attachments", @@ -2119,7 +2324,8 @@ "fr": "Pièces jointes", "es": "Adjuntos", "ru": "Вложения", - "it": "Allegati" + "it": "Allegati", + "nl": "Bijlagen" }, "comments": { "description": "Comments", @@ -2129,7 +2335,8 @@ "fr": "Commentaires", "es": "Comentarios", "ru": "Комментарии", - "it": "Commenti" + "it": "Commenti", + "nl": "Opmerkingen" }, "addacomment": { "description": "Add a comment", @@ -2139,7 +2346,8 @@ "fr": "Ajouter un commentaire... (max. 300 caractères)", "es": "Añadir un comentario... (max. 300 caracteres)", "ru": "Добавить комментарий... (макс. 300 символов)", - "it": "Aggiungi un commento... (max. 300 caratteri)" + "it": "Aggiungi un commento... (max. 300 caratteri)", + "nl": "Voeg een opmerking toe... (max. 300 tekens)" }, "addacommenterror": { "description": "Add a comment error", @@ -2149,7 +2357,8 @@ "fr": "Commentaire doit être moins de 300 caractères", "es": "Comentario debe ser menos de 300 caracteres", "ru": "Комментарий должен быть меньше 300 символов", - "it": "Il commento deve essere più corto di 300 caratteri" + "it": "Il commento deve essere più corto di 300 caratteri", + "nl": "Reacties mogen niet langer zijn dan 300 tekens!" }, "caseislocked": { "description": "Case is locked", @@ -2159,7 +2368,8 @@ "fr": "Vous ne pouvez pas commenter car ce cas est verrouillé.", "es": "No puede comentar porque este caso está bloqueado.", "ru": "Вы не можете добавлять комментарии, потому что это дело заблокировано.", - "it": "Non puoi commentare perché questo caso è bloccato." + "it": "Non puoi commentare perché questo caso è bloccato.", + "nl": "U kunt geen commentaar geven omdat deze zaak op slot zit." }, "violator": { "description": "Violator", @@ -2169,7 +2379,8 @@ "fr": "Violateur", "es": "Violador", "ru": "Преступник", - "it": "Violatore" + "it": "Violatore", + "nl": "Overtreder" }, "punishment": { "description": "Punishment", @@ -2179,7 +2390,8 @@ "fr": "Punition", "es": "Castigo", "ru": "Наказание", - "it": "Punizione" + "it": "Punizione", + "nl": "straf" }, "punishmentinactive": { "description": "Punishment inactive", @@ -2189,7 +2401,8 @@ "fr": "inactif", "es": "inactivo", "ru": "неактивный", - "it": "inattivo" + "it": "inattivo", + "nl": "inactief" }, "labels": { "description": "Labels", @@ -2199,7 +2412,8 @@ "fr": "Étiquettes", "es": "Etiquetas", "ru": "Метки", - "it": "Etichette" + "it": "Etichette", + "nl": "Labels" }, "punisheduntil": { "description": "Punished until", @@ -2209,7 +2423,8 @@ "fr": "Punition jusqu'à", "es": "Castigado hasta", "ru": "Наказан до", - "it": "Punito fino a" + "it": "Punito fino a", + "nl": "Gestraft tot" }, "usernote": { "description": "Usernote", @@ -2219,7 +2434,8 @@ "fr": "Note utilisateur", "es": "Nota de usuario", "ru": "Пользовательская заметка", - "it": "Nota utente" + "it": "Nota utente", + "nl": "Gebruiksaanwijzing" }, "moderator": { "description": "Moderator", @@ -2229,7 +2445,8 @@ "fr": "Modérateur", "es": "Moderador", "ru": "Модератор", - "it": "Moderatore" + "it": "Moderatore", + "nl": "Moderator" }, "lasteditmoderator": { "description": "Last edit moderator", @@ -2239,7 +2456,8 @@ "fr": "Dernier modérateur", "es": "Último moderador", "ru": "Последний модератор", - "it": "Ultimo moderatore" + "it": "Ultimo moderatore", + "nl": "Laatst bijgewerkt door moderator" }, "moderatorunknown": { "description": "Moderator unknown", @@ -2249,7 +2467,8 @@ "fr": "Inconnu ou caché", "es": "Desconocido o oculto", "ru": "Неизвестный или скрытый", - "it": "Sconosciuto o nascosto" + "it": "Sconosciuto o nascosto", + "nl": "Onbekend of verborgen" }, "created": { "description": "Created", @@ -2259,7 +2478,8 @@ "fr": "Créé", "es": "Creado", "ru": "Создан", - "it": "Creato" + "it": "Creato", + "nl": "aangemaakt op" }, "updated": { "description": "Updated", @@ -2269,7 +2489,8 @@ "fr": "Mis à jour", "es": "Actualizado", "ru": "Обновлен", - "it": "Aggiornato" + "it": "Aggiornato", + "nl": "Bijgewerkt op" }, "unknown": { "description": "Unknown", @@ -2279,7 +2500,8 @@ "fr": "Inconnu", "es": "Desconocido", "ru": "Неизвестный", - "it": "Sconosciuto" + "it": "Sconosciuto", + "nl": "onbekend" }, "linkevidence": { "description": "Link evidence", @@ -2289,7 +2511,8 @@ "fr": "Lier la preuve", "es": "Vincular evidencia", "ru": "Связать доказательства", - "it": "Collega prova" + "it": "Collega prova", + "nl": "Link bewijs" }, "noevidencefound": { "description": "a feedback message displayed when no evidence is found (evidence linking)", @@ -2299,7 +2522,8 @@ "fr": "Aucune preuve trouvée", "es": "No se encontró evidencia", "ru": "Доказательства не найдены", - "it": "Nessuna prova trovata" + "it": "Nessuna prova trovata", + "nl": "Geen bewijs gevonden" }, "evidencelinkfailed": { "description": "error message displayed when evidence to case link fails", @@ -2309,7 +2533,8 @@ "fr": "Échec du lien de preuve", "es": "Error al vincular evidencia", "ru": "Связь доказательств не удалась", - "it": "Collegamento prova fallito" + "it": "Collegamento prova fallito", + "nl": "Bewijs link mislukt" } }, "casedialog": { @@ -2321,7 +2546,8 @@ "fr": "Créer un cas", "es": "Crear caso", "ru": "Создать случай", - "it": "Crea caso" + "it": "Crea caso", + "nl": "Maak zaak aan" }, "editcase": { "description": "Edit case", @@ -2331,7 +2557,8 @@ "fr": "Modifier le cas", "es": "Editar caso", "ru": "Редактировать случай", - "it": "Modifica caso" + "it": "Modifica caso", + "nl": "Bewerk zaak" }, "caseexplain": { "description": "Case explanation", @@ -2341,7 +2568,8 @@ "fr": "Utilisez un cas pour journaliser des infractions et des punitions dans votre guilde.", "es": "Utiliza un caso para registrar infracciones y sanciones en tu hermandad.", "ru": "Используйте случай, чтобы записывать нарушения и наказания в вашей гильдии.", - "it": "Utilizza un caso per registrare infrazioni e punizioni nella tua gilda." + "it": "Utilizza un caso per registrare infrazioni e punizioni nella tua gilda.", + "nl": "Gebruik zaak om overtredingen en bestraffingen in jouw gilde te registreren." }, "caseexplain2": { "description": "Case explanation", @@ -2351,7 +2579,8 @@ "fr": "MASZ va automatiquement gérer votre punition et notifier l'utilisateur et votre guilde si configuré.", "es": "MASZ gestionará automáticamente tu sanción y notificará al usuario y tu hermandad si está configurado.", "ru": "MASZ будет автоматически управлять вашей наказанием и уведомлять пользователя и вашу гильдию, если настроено.", - "it": "MASZ gestisce automaticamente la tua punizione e notifica l'utente e la tua gilda se configurato." + "it": "MASZ gestisce automaticamente la tua punizione e notifica l'utente e la tua gilda se configurato.", + "nl": "Als jouw gilde is geconfigureerd, zal MASZ automatisch jouw bestraffingen beheren en zowel jouw gilde als de gebruiker op de hoogte stellen." }, "importtemplate": { "description": "Import template", @@ -2361,7 +2590,8 @@ "fr": "Importer un modèle", "es": "Importar plantilla", "ru": "Импортировать шаблон", - "it": "Importa modello" + "it": "Importa modello", + "nl": "Sjabloon importeren" }, "templateexplain": { "description": "Template explanation", @@ -2371,7 +2601,8 @@ "fr": "Aucun modèle ne correspond à vos besoins? Créez-en un à la fin de cette boîte de dialogue!", "es": "¿No hay una plantilla que coincida con tus requisitos? ¡Crea una al final de este diálogo!", "ru": "Нет шаблона, соответствующего вашим требованиям? Создайте его в конце этого диалога!", - "it": "Nessun modello che corrisponda ai tuoi requisiti? Crea uno alla fine di questa finestra di dialogo!" + "it": "Nessun modello che corrisponda ai tuoi requisiti? Crea uno alla fine di questa finestra di dialogo!", + "nl": "Geen sjabloon gevonden dat aan jouw eisen voldoet? Maak er één aan het einde van de dialoog!" }, "selecttemplate": { "description": "Select template", @@ -2381,7 +2612,8 @@ "fr": "Sélectionnez un modèle", "es": "Seleccionar plantilla", "ru": "Выберите шаблон", - "it": "Seleziona modello" + "it": "Seleziona modello", + "nl": "Selecteer sjabloon" }, "notemplatesfound": { "description": "No templates found", @@ -2391,7 +2623,8 @@ "fr": "Aucun modèle trouvé", "es": "No se encontraron plantillas", "ru": "Шаблоны не найдены", - "it": "Nessun modello trovato" + "it": "Nessun modello trovato", + "nl": "Geen sjablonen gevonden" }, "member": { "description": "member", @@ -2401,7 +2634,8 @@ "fr": "Sélectionnez un membre", "es": "Seleccionar miembro", "ru": "Выберите участника", - "it": "Seleziona membro" + "it": "Seleziona membro", + "nl": "Selecteer lid" }, "memberexplain": { "description": "Member explanation", @@ -2411,7 +2645,8 @@ "fr": "Sélectionnez le membre que vous voulez punir ou entrez une ID si le membre n'est pas dans la liste.", "es": "Seleccione el miembro que desea sanción o ingrese una ID si el miembro no está en la lista.", "ru": "Выберите участника, которого вы хотите наказать или введите ID, если участник не в списке.", - "it": "Seleziona il membro che vuoi punire o inserisci un ID se il membro non è nella lista." + "it": "Seleziona il membro che vuoi punire o inserisci un ID se il membro non è nella lista.", + "nl": "Selecteer het lid die je wenst te straffen of voeg een ID toe, als het lid niet in de lijst staat" }, "nomembersfound": { "description": "No members found", @@ -2421,7 +2656,8 @@ "fr": "Aucun membre trouvé", "es": "No se encontraron miembros", "ru": "Участников не найдено", - "it": "Nessun membro trovato" + "it": "Nessun membro trovato", + "nl": "Geen leden gevonden" }, "reason": { "description": "Reason", @@ -2431,7 +2667,8 @@ "fr": "Raison", "es": "Razón", "ru": "Причина", - "it": "Motivo" + "it": "Motivo", + "nl": "Reden" }, "title": { "description": "Title", @@ -2441,7 +2678,8 @@ "fr": "Titre", "es": "Título", "ru": "Название", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "titleplaceholder": { "description": "Title", @@ -2451,7 +2689,8 @@ "fr": "Titre (max 100 caractères)", "es": "Título (max 100 caracteres)", "ru": "Название (макс. 100 символов)", - "it": "Titolo (max 100 caratteri)" + "it": "Titolo (max 100 caratteri)", + "nl": "Titel (maximaal 100 tekens)" }, "titleinvalid": { "description": "Title is invalid", @@ -2461,7 +2700,8 @@ "fr": "Le champ Titre est obligatoire et ne peut contenir plus de 100 caractères.", "es": "El campo Título es obligatorio y sólo puede contener 100 caracteres.", "ru": "Поле Название является обязательным и может содержать не более 100 символов.", - "it": "Il campo Titolo è obbligatorio e può contenere solo 100 caratteri." + "it": "Il campo Titolo è obbligatorio e può contenere solo 100 caratteri.", + "nl": "Titelveld is vereist en kan slechts 100 tekens lang zijn." }, "descriptionfield": { "description": "Description", @@ -2471,7 +2711,8 @@ "fr": "Description", "es": "Descripción", "ru": "Описание", - "it": "Descrizione" + "it": "Descrizione", + "nl": "Beschrijving" }, "labels": { "description": "Labels", @@ -2481,7 +2722,8 @@ "fr": "Étiquettes", "es": "Etiquetas", "ru": "Метки", - "it": "Etichette" + "it": "Etichette", + "nl": "Labels" }, "clearlabel": { "description": "Clear label", @@ -2491,7 +2733,8 @@ "fr": "Effacer l'étiquette", "es": "Etiqueta clara", "ru": "Очистить метку", - "it": "Etichetta chiara" + "it": "Etichetta chiara", + "nl": "Label verwijderen" }, "labelsplaceholder": { "description": "Labels", @@ -2501,7 +2744,8 @@ "fr": "Nouvelle étiquette", "es": "Nueva etiqueta", "ru": "Новая метка", - "it": "Nuova etichetta" + "it": "Nuova etichetta", + "nl": "Nieuw label" }, "punishment": { "description": "Punishment", @@ -2511,7 +2755,8 @@ "fr": "Punition", "es": "Sancion", "ru": "Наказание", - "it": "Punizione" + "it": "Punizione", + "nl": "Straf" }, "punishmentexplained": { "description": "Punishment explanation", @@ -2521,7 +2766,8 @@ "fr": "MASZ va gérer automatiquement votre punition et la supprimer après le temps spécifié. Vous pouvez également changer la punition plus tard.", "es": "MASZ gestionará automáticamente tu sanción y la eliminará después del tiempo especificado. También puedes cambiar la sanción más tarde.", "ru": "MASZ будет автоматически управлять вашим наказанием и удалить его после указанного времени. Вы также можете изменить наказание позже.", - "it": "MASZ gestisce automaticamente la tua punizione e la rimuoverà dopo il tempo specificato. Puoi anche cambiare la punizione più tardi." + "it": "MASZ gestisce automaticamente la tua punizione e la rimuoverà dopo il tempo specificato. Puoi anche cambiare la punizione più tardi.", + "nl": "MASZ zal automatisch jouw straf beheren en deze na de opgegeven tijd verwijderen. Je kunt de straf ook wijzigen indien nodig." }, "punishmentexplained2": { "description": "Punishment explanation", @@ -2531,7 +2777,8 @@ "fr": "Si vous n'entrez pas de temps, la punition sera permanente.", "es": "Si no ingresas un tiempo, la sanción será permanente.", "ru": "Если вы не введете время, наказание будет постоянным.", - "it": "Se non inserisci un tempo, la punizione sarà permanente." + "it": "Se non inserisci un tempo, la punizione sarà permanente.", + "nl": "De straf zal permanent zijn als er geen tijd is ingevoegd." }, "punisheduntil": { "description": "Punished until", @@ -2541,7 +2788,8 @@ "fr": "Punition jusqu'à", "es": "Sancionado hasta", "ru": "Наказано до", - "it": "Punito fino a" + "it": "Punito fino a", + "nl": "Gestraft tot" }, "quickactions": { "title": { @@ -2552,7 +2800,8 @@ "fr": "Sélection rapide", "es": "Selección rápida", "ru": "Быстрый выбор", - "it": "Selezione rapida" + "it": "Selezione rapida", + "nl": "Snelle selectie" }, "permanent": { "description": "Quick action permanent", @@ -2562,7 +2811,8 @@ "fr": "Permanent", "es": "Permanente", "ru": "Постоянный", - "it": "Permanente" + "it": "Permanente", + "nl": "Permanent" }, "1hour": { "description": "Quick action 1 hour", @@ -2572,7 +2822,8 @@ "fr": "1 heure", "es": "1 hora", "ru": "1 час", - "it": "1 ora" + "it": "1 ora", + "nl": "1 uur" }, "24hours": { "description": "Quick action 24 hours", @@ -2582,7 +2833,8 @@ "fr": "24 heures", "es": "24 horas", "ru": "24 часа", - "it": "24 ore" + "it": "24 ore", + "nl": "24 uur" }, "3days": { "description": "Quick action 3 days", @@ -2592,7 +2844,8 @@ "fr": "3 jours", "es": "3 días", "ru": "3 дня", - "it": "3 giorni" + "it": "3 giorni", + "nl": "3 dagen" }, "7days": { "description": "Quick action 7 days", @@ -2602,7 +2855,8 @@ "fr": "7 jours", "es": "7 días", "ru": "7 дней", - "it": "7 giorni" + "it": "7 giorni", + "nl": "7 dagen" }, "14days": { "description": "Quick action 14 days", @@ -2612,7 +2866,8 @@ "fr": "14 jours", "es": "14 días", "ru": "14 дней", - "it": "14 giorni" + "it": "14 giorni", + "nl": "14 dagen" }, "28days": { "description": "Quick action 28 days", @@ -2622,7 +2877,8 @@ "fr": "28 jours", "es": "28 días", "ru": "28 дней", - "it": "28 giorni" + "it": "28 giorni", + "nl": "28 dagen" }, "3months": { "description": "Quick action 3 months", @@ -2632,7 +2888,8 @@ "fr": "3 mois", "es": "3 meses", "ru": "3 месяца", - "it": "3 mesi" + "it": "3 mesi", + "nl": "3 maanden" } }, "formatisrequired": { @@ -2643,7 +2900,8 @@ "fr": "Veuillez respecter le format: {format}", "es": "Por favor, respeta el formato: {format}", "ru": "Пожалуйста, соблюдайте формат: {format}", - "it": "Si prega di rispettare il formato: {format}" + "it": "Si prega di rispettare il formato: {format}", + "nl": "Gelieve het formaat te respecteren: {format}" }, "senddmnotification": { "description": "Send DM notification", @@ -2653,7 +2911,8 @@ "fr": "Envoyer une notification DM", "es": "Enviar notificación DM", "ru": "Отправить уведомление в ЛС", - "it": "Invia notifica DM" + "it": "Invia notifica DM", + "nl": "Stuur DM-melding" }, "executepunishment": { "description": "Execute punishment", @@ -2663,7 +2922,8 @@ "fr": "Exécuter la punition", "es": "Ejecutar sanción", "ru": "Выполнить наказание", - "it": "Esegui punizione" + "it": "Esegui punizione", + "nl": "Straf uitvoeren" }, "sendpublicnotification": { "description": "Send public notification", @@ -2673,7 +2933,8 @@ "fr": "Envoyer une notification publique", "es": "Enviar notificación pública", "ru": "Отправить публичное уведомление", - "it": "Invia notifica pubblica" + "it": "Invia notifica pubblica", + "nl": "Zend openbare notificatie" }, "files": { "description": "Files", @@ -2683,7 +2944,8 @@ "fr": "Fichiers", "es": "Archivos", "ru": "Файлы", - "it": "File" + "it": "File", + "nl": "Bestanden" }, "filesexplain": { "description": "Files explanation", @@ -2693,7 +2955,8 @@ "fr": "Vous pouvez télécharger des fichiers à MASZ comme preuve, sachez que l'utilisateur pourra aussi les voir", "es": "Puedes subir archivos a MASZ como prueba, ten en cuenta que el usuario también podrá ver esos", "ru": "Вы можете загрузить файлы в MASZ как доказательство, обратите внимание, что пользователь также сможет видеть эти", - "it": "Puoi caricare file a MASZ come prova, tieni presente che l'utente sarà in grado di vederli" + "it": "Puoi caricare file a MASZ come prova, tieni presente che l'utente sarà in grado di vederli", + "nl": "Je kunt bestanden uploaden naar MASZ als bewijs. Let op dat iedereen ze zal kunnen zien!" }, "filesbutton": { "description": "Files button", @@ -2703,7 +2966,8 @@ "fr": "Sélectionnez les fichiers", "es": "Seleccionar archivos", "ru": "Выберите файлы", - "it": "Seleziona file" + "it": "Seleziona file", + "nl": "Selecteer bestanden" }, "createtemplate": { "description": "Create template", @@ -2713,7 +2977,8 @@ "fr": "Créer un modèle", "es": "Crear plantilla", "ru": "Создать шаблон", - "it": "Crea modello" + "it": "Crea modello", + "nl": "Maak sjabloon" }, "submitting": { "description": "Submitting", @@ -2723,7 +2988,8 @@ "fr": "Soumission...", "es": "Enviando...", "ru": "Отправка...", - "it": "Invio..." + "it": "Invio...", + "nl": "Bezig met verzenden..." }, "casecreated": { "description": "Case created", @@ -2733,7 +2999,8 @@ "fr": "Cas #{id} créé", "es": "Caso #{id} creado", "ru": "Случай #{id} создан", - "it": "Caso #{id} creato" + "it": "Caso #{id} creato", + "nl": "Zaak #{id} aangemaakt" }, "casecreatefailed": { "description": "Case creation failed", @@ -2743,7 +3010,8 @@ "fr": "Échec de la création du cas", "es": "Falla al crear caso", "ru": "Не удалось создать случай", - "it": "Fallito creare caso" + "it": "Fallito creare caso", + "nl": "Aanmaken van zaak mislukt" }, "caseedited": { "description": "Case created", @@ -2753,7 +3021,8 @@ "fr": "Cas #{id} édité", "es": "Caso #{id} editado", "ru": "Случай #{id} отредактирован", - "it": "Caso #{id} modificato" + "it": "Caso #{id} modificato", + "nl": "Zaak #{id} bewerkt" }, "caseeditfailed": { "description": "Case creation failed", @@ -2763,7 +3032,8 @@ "fr": "Échec de la modification du cas", "es": "Falla al editar caso", "ru": "Не удалось отредактировать случай", - "it": "Fallito modificare caso" + "it": "Fallito modificare caso", + "nl": "Bewerken van zaak gefaald" }, "templateapplied": { "description": "Template applied", @@ -2773,7 +3043,8 @@ "fr": "Modèle appliqué", "es": "Plantilla aplicada", "ru": "Шаблон применен", - "it": "Modello applicato" + "it": "Modello applicato", + "nl": "Sjabloon toegepast" }, "templatesaved": { "description": "Template saved", @@ -2783,7 +3054,8 @@ "fr": "Modèle enregistré", "es": "Plantilla guardada", "ru": "Шаблон сохранен", - "it": "Modello salvato" + "it": "Modello salvato", + "nl": "Sjabloon opgeslagen" }, "templatesavefailed": { "description": "Template save failed", @@ -2793,7 +3065,8 @@ "fr": "Échec de l'enregistrement du modèle", "es": "Error al guardar plantilla", "ru": "Не удалось сохранить шаблон", - "it": "Errore durante il salvataggio del modello" + "it": "Errore durante il salvataggio del modello", + "nl": "Opslaan van sjabloon mislukt" }, "visibility": { "description": "Visibility", @@ -2803,7 +3076,8 @@ "fr": "Visibilité", "es": "Visibilidad", "ru": "Видимость", - "it": "Visibilità" + "it": "Visibilità", + "nl": "Zichtbaarheid" }, "evidenceexplained": { "description": "Explaination of linked evidence", @@ -2813,7 +3087,8 @@ "fr": "Vous ne trouvez pas ce que vous cherchez ? Ne vous inquiétez pas, vous pouvez toujours créer et lier des preuves plus tard!", "es": "¿No encuentra lo que busca? No se preocupe, ¡siempre puede crear y enlazar pruebas más tarde!", "ru": "Не можете найти то, что ищете? Не волнуйтесь, вы всегда можете создать и связать улики позже!", - "it": "Non riesci a trovare quello che stai cercando? Non preoccuparti, puoi sempre creare e collegare le prove in un secondo momento!" + "it": "Non riesci a trovare quello che stai cercando? Non preoccuparti, puoi sempre creare e collegare le prove in un secondo momento!", + "nl": "Kun je niet vinden wat je zoekt? Maak je geen zorgen, je kunt altijd later bewijsmateriaal maken en koppelen!" } }, "modcasetable": { @@ -2825,7 +3100,8 @@ "fr": "Membres", "es": "Miembros", "ru": "Члены", - "it": "Membri" + "it": "Membri", + "nl": "Leden" }, "selectmoderators": { "description": "Select moderator", @@ -2835,7 +3111,8 @@ "fr": "Modérateurs", "es": "Moderadores", "ru": "Модераторы", - "it": "Moderatori" + "it": "Moderatori", + "nl": "Moderatoren" }, "selectcreationtypes": { "description": "Select creation types", @@ -2845,7 +3122,8 @@ "fr": "Types de création", "es": "Tipos de creación", "ru": "Типы создания", - "it": "Tipi di creazione" + "it": "Tipi di creazione", + "nl": "Creatie typen" }, "selectpunishments": { "description": "Select punishments", @@ -2855,7 +3133,8 @@ "fr": "Les sanctions", "es": "Castigos", "ru": "Наказания", - "it": "punizioni" + "it": "punizioni", + "nl": "Straffen" }, "selectedited": { "description": "Select edited", @@ -2865,7 +3144,8 @@ "fr": "Modifier le statut", "es": "Editar estado", "ru": "Изменить статус", - "it": "Modifica stato" + "it": "Modifica stato", + "nl": "Status bewerken" }, "selectlocked": { "description": "Select locked", @@ -2875,7 +3155,8 @@ "fr": "État de verrouillage", "es": "Estado de bloqueo", "ru": "Статус блокировки", - "it": "Stato di blocco" + "it": "Stato di blocco", + "nl": "Vergrendel status" }, "selectdelete": { "description": "Select delete", @@ -2885,7 +3166,8 @@ "fr": "Supprimer le statut", "es": "Eliminar estado", "ru": "Удалить статус", - "it": "Elimina stato" + "it": "Elimina stato", + "nl": "Status verwijderen" }, "selectactive": { "description": "Select active", @@ -2895,7 +3177,8 @@ "fr": "Statut actif", "es": "Estado activo", "ru": "Активный статус", - "it": "Stato attivo" + "it": "Stato attivo", + "nl": "Actieve status" }, "filtersince": { "description": "Filter since", @@ -2905,7 +3188,8 @@ "fr": "Créé depuis", "es": "Creado desde", "ru": "Создано с", - "it": "Creato da" + "it": "Creato da", + "nl": "Gemaakt sinds" }, "filteruntil": { "description": "Filter until", @@ -2915,7 +3199,8 @@ "fr": "Créé jusqu'au", "es": "Creado hasta", "ru": "Создано до", - "it": "Creato fino al" + "it": "Creato fino al", + "nl": "Gemaakt tot" }, "executesearch": { "description": "execute search button to use advanced filters", @@ -2925,7 +3210,8 @@ "fr": "Chercher", "es": "Búsqueda", "ru": "Поиск", - "it": "Ricerca" + "it": "Ricerca", + "nl": "Zoeken" }, "useadvancedfilter": { "description": "use advanced filter on current table", @@ -2935,7 +3221,8 @@ "fr": "Basculer le filtre avancé.", "es": "Alternar filtro avanzado.", "ru": "Переключить расширенный фильтр.", - "it": "Attiva filtro avanzato." + "it": "Attiva filtro avanzato.", + "nl": "Schakel geavanceerd filter in." }, "createnewcase": { "description": "Create a new case button", @@ -2945,7 +3232,8 @@ "fr": "Créer un nouveau cas", "es": "Crear nuevo caso", "ru": "Создать новое дело", - "it": "Crea nuovo caso" + "it": "Crea nuovo caso", + "nl": "Nieuwe zaak aanmaken" }, "search": { "description": "Search button", @@ -2955,7 +3243,8 @@ "fr": "Recherche (utilisateur, identifiant, description...)", "es": "Búsqueda (usuario, id, descripción ...)", "ru": "Поиск (пользователь, идентификатор, описание ...)", - "it": "Cerca (utente, id, descrizione...)" + "it": "Cerca (utente, id, descrizione...)", + "nl": "Zoeken (gebruiker, id, beschrijving...)" }, "failedtoload": { "description": "Failed to load case table", @@ -2965,7 +3254,8 @@ "fr": "Échec du chargement des cas.", "es": "No se pudieron cargar los casos.", "ru": "Не удалось загрузить кейсы.", - "it": "Impossibile caricare i casi." + "it": "Impossibile caricare i casi.", + "nl": "Kan zaken niet laden." }, "nomatches": { "description": "No matches for search string found.", @@ -2975,7 +3265,8 @@ "fr": "Aucun cas ne correspond à votre recherche.", "es": "Ningún caso coincide con su búsqueda.", "ru": "По вашему запросу не найдено ни одного случая.", - "it": "Nessun caso corrisponde alla tua ricerca." + "it": "Nessun caso corrisponde alla tua ricerca.", + "nl": "Geen cases gevonden die overeenkomen met je zoekopdracht!" }, "nomatchesdescription": { "description": "No matches for search string found.", @@ -2985,7 +3276,8 @@ "fr": "Il n'y a peut-être pas encore de cas dans ce serveur. Cependant, vous pouvez essayer de régler vos filtres ci-dessus pour trouver des cas.", "es": "Puede que no haya casos todavía en este servidor. Sin embargo, puede intentar ajustar sus filtros arriba para encontrar algunos casos.", "ru": "Возможно, в этом сервере еще нет кейсов. Однако, вы можете попробовать изменить фильтры выше, чтобы найти кейсы.", - "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi." + "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi.", + "nl": "Probeer uw filters hierboven aan te passen om dit op te lossen." } }, "evidencetable": { @@ -2997,7 +3289,8 @@ "fr": "Créer un élément de preuve", "es": "Crear evidencia", "ru": "Создать доказательство", - "it": "Crea prova" + "it": "Crea prova", + "nl": "Maak bewijs aan" }, "createinstruction": { "description": "instructions on how to create evidence in the dashboard", @@ -3007,7 +3300,8 @@ "fr": "Collez le lien du message Discord dans le champ de texte ci-dessous pour créer l'élément de preuve", "es": "Pegue el enlace del mensaje de Discord en el campo de texto a continuación para crear la evidencia", "ru": "Вставьте ссылку на сообщение Discord в текстовое поле ниже, чтобы создать доказательство", - "it": "Incolla il link del messaggio di Discord nel campo di testo qui sotto per creare la prova" + "it": "Incolla il link del messaggio di Discord nel campo di testo qui sotto per creare la prova", + "nl": "Plak de link naar het discord-bericht in het onderstaande tekstveld om het bewijs te maken" }, "createplaceholder": { "description": "message link text field placeholder", @@ -3017,7 +3311,8 @@ "fr": "Lien Discord ici", "es": "Enlace de Discord aquí", "ru": "Ссылка на Discord здесь", - "it": "Link di Discord qui" + "it": "Link di Discord qui", + "nl": "Discord link hier" }, "badcreate": { "description": "error displayed when the message link is not correct", @@ -3027,7 +3322,8 @@ "fr": "Le lien du message n'est pas correct", "es": "El enlace del mensaje no es correcto", "ru": "Ссылка на сообщение неверна", - "it": "Il link del messaggio non è corretto" + "it": "Il link del messaggio non è corretto", + "nl": "De berichtlink klopt niet" }, "badguild": { "description": "error message displayed when the link guild id does not match the current guild id (the one in the dashboard url)", @@ -3037,7 +3333,8 @@ "fr": "L'ID du serveur dans le lien du message ne correspond pas à l'ID de ce serveur", "es": "El ID del servidor en el enlace del mensaje no coincide con el ID de este servidor", "ru": "ID сервера в ссылке на сообщение не соответствует ID этого сервера", - "it": "L'ID del server nel link del messaggio non corrisponde all'ID di questo server" + "it": "L'ID del server nel link del messaggio non corrisponde all'ID di questo server", + "nl": "Het guild-ID in de berichtlink komt niet overeen met het guild-ID van deze server" }, "created": { "description": "feedback message on successful evidence creation", @@ -3047,7 +3344,8 @@ "fr": "Élément de preuve créé avec succès", "es": "Evidencia creada con éxito", "ru": "Доказательство успешно создано", - "it": "Prova creata con successo" + "it": "Prova creata con successo", + "nl": "Bewijs succesvol aangemaakt" }, "createerror": { "description": "error message displayed on the backend rejecting the evidence creation", @@ -3057,7 +3355,8 @@ "fr": "Quelque chose a empêché la création de l'élément de preuve", "es": "Algo impidió que se creara la evidencia", "ru": "Что-то помешало созданию доказательства", - "it": "Qualcosa ha impedito la creazione della prova" + "it": "Qualcosa ha impedito la creazione della prova", + "nl": "Er is iets dat het bewijsmateriaal belet heeft om aangemaakt te worden" } }, "evidenceview": { @@ -3069,7 +3368,8 @@ "fr": "L'élément de preuve n'existe pas", "es": "La evidencia no existe", "ru": "Доказательство не существует", - "it": "La prova non esiste" + "it": "La prova non esiste", + "nl": "Bewijs bestaat niet" }, "linktocase": { "description": "Link to case", @@ -3079,7 +3379,8 @@ "fr": "Lien vers l'affaire", "es": "Enlace al caso", "ru": "Ссылка на дело", - "it": "Collegamento al caso" + "it": "Collegamento al caso", + "nl": "Link naar zaak" }, "evidence": { "description": "Evidence (singular)", @@ -3089,7 +3390,8 @@ "fr": "Élément de preuve", "es": "Evidencia", "ru": "Доказательство", - "it": "Prova" + "it": "Prova", + "nl": "Bewijs" }, "goto": { "description": "text displayed on the button that displays the message in Discord", @@ -3099,7 +3401,8 @@ "fr": "Voir dans Discord", "es": "Ver en Discord", "ru": "Посмотреть в Discord", - "it": "Visualizza in Discord" + "it": "Visualizza in Discord", + "nl": "Bekijk in Discord" }, "reportedcontent": { "description": "Label for the reported content", @@ -3109,7 +3412,8 @@ "fr": "Contenu signalé", "es": "Contenido reportado", "ru": "Сообщение", - "it": "Contenuto segnalato" + "it": "Contenuto segnalato", + "nl": "Gerapporteerde inhoud" }, "sent": { "description": "Label for 'sent at' timestamp", @@ -3119,7 +3423,8 @@ "fr": "Envoyé à", "es": "Enviado a", "ru": "Отправлено в", - "it": "Inviato a" + "it": "Inviato a", + "nl": "Verzonden op" }, "reported": { "description": "Label for 'reported at' timestamp", @@ -3129,7 +3434,8 @@ "fr": "Signalé à", "es": "Reportado a", "ru": "Сообщено в", - "it": "Segnalato a" + "it": "Segnalato a", + "nl": "Geraporteerd op" }, "shareevidence": { "description": "label for the 'share' button", @@ -3139,7 +3445,8 @@ "fr": "Partager", "es": "Compartir", "ru": "Поделиться", - "it": "Condividi" + "it": "Condividi", + "nl": "Delen" }, "deleted": { "description": "displayed on successful deletion", @@ -3149,7 +3456,8 @@ "fr": "Élément de preuve supprimé", "es": "Evidencia eliminada", "ru": "Доказательство удалено", - "it": "Prova eliminata" + "it": "Prova eliminata", + "nl": "Bewijs verwijderd" }, "deletefailed": { "description": "error displayed on unsuccessful deletion", @@ -3159,7 +3467,8 @@ "fr": "Impossible de supprimer l'élément de preuve", "es": "No se pudo eliminar la evidencia", "ru": "Не удалось удалить доказательство", - "it": "Impossibile eliminare la prova" + "it": "Impossibile eliminare la prova", + "nl": "Verwijderen van bewijsmateriaal mislukt" }, "unknown": { "description": "displayed when the author of the message is unknown", @@ -3169,7 +3478,8 @@ "fr": "Inconnu", "es": "Desconocido", "ru": "Неизвестно", - "it": "Sconosciuto" + "it": "Sconosciuto", + "nl": "Onbekend" } }, "automodtable": { @@ -3181,7 +3491,8 @@ "fr": "Membres", "es": "Miembros", "ru": "Члены", - "it": "Membri" + "it": "Membri", + "nl": "Leden" }, "selecttypes": { "description": "Select types", @@ -3191,7 +3502,8 @@ "fr": "Types de modération", "es": "Tipos de moderación", "ru": "Типы модерации", - "it": "Tipi di moderazione" + "it": "Tipi di moderazione", + "nl": "Moderatie typen" }, "selectactions": { "description": "Select actions", @@ -3201,7 +3513,8 @@ "fr": "Actions", "es": "Acciones", "ru": "Действия", - "it": "Azioni" + "it": "Azioni", + "nl": "Acties" }, "executesearch": { "description": "execute search button to use advanced filters", @@ -3211,7 +3524,8 @@ "fr": "Chercher", "es": "Búsqueda", "ru": "Поиск", - "it": "Ricerca" + "it": "Ricerca", + "nl": "Zoeken" }, "useadvancedfilter": { "description": "use advanced filter on current table", @@ -3221,7 +3535,8 @@ "fr": "Basculer le filtre avancé.", "es": "Alternar filtro avanzado.", "ru": "Переключить расширенный фильтр.", - "it": "Attiva filtro avanzato." + "it": "Attiva filtro avanzato.", + "nl": "Schakel geavanceerde filter in/uit." }, "failedtoload": { "description": "Failed to load automod table", @@ -3231,7 +3546,8 @@ "fr": "Échec du chargement des automod.", "es": "No se pudieron cargar las automod.", "ru": "Не удалось загрузить автомодерации.", - "it": "Impossibile caricare le automod." + "it": "Impossibile caricare le automod.", + "nl": "Laden van automoderatie is mislukt." }, "nomatches": { "description": "No matches for search string found.", @@ -3241,7 +3557,8 @@ "fr": "Aucun automod ne correspond à votre recherche.", "es": "Ningún automod coincide con su búsqueda.", "ru": "По вашему запросу не найдено ни одной автомодерации.", - "it": "Nessuna automod corrisponde alla tua ricerca." + "it": "Nessuna automod corrisponde alla tua ricerca.", + "nl": "Er komen geen zaken overeen met je zoekopdracht!" }, "nomatchesdescription": { "description": "No matches for search string found.", @@ -3251,7 +3568,8 @@ "fr": "Il n'y a peut-être pas encore de cas dans ce serveur. Cependant, vous pouvez essayer de régler vos filtres ci-dessus pour trouver des cas.", "es": "Puede que no haya casos todavía en este servidor. Sin embargo, puede intentar ajustar sus filtros arriba para encontrar algunos casos.", "ru": "Возможно, в этом сервере еще нет кейсов. Однако, вы можете попробовать изменить фильтры выше, чтобы найти кейсы.", - "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi." + "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi.", + "nl": "Probeer je filters hierboven aan te passen om dit op te lossen." } }, "appealtable": { @@ -3263,7 +3581,8 @@ "fr": "Créer une nouvelle demande", "es": "Crear una nueva queja", "ru": "Создать новое обращение", - "it": "Crea un nuovo reclamo" + "it": "Crea un nuovo reclamo", + "nl": "Nieuw beroep aanmaken" }, "disabledexplained": { "description": "Disabled explanation", @@ -3273,7 +3592,8 @@ "fr": "Vous ne pouvez pas créer une nouvelle demande de bannissement car vous en avez créé une récemment ou votre punition a été créée récemment ou ce serveur n'a pas de demandes de bannissement configurées.", "es": "No puedes crear una nueva queja porque has creado una recientemente o tu castigo fue creado recientemente o este servidor no tiene configuradas quejas de expulsión.", "ru": "Вы не можете создать новое обращение, потому что создали недавно или ваш предупреждение было создано недавно или этот сервер не имеет настроенных обращений в бан.", - "it": "Non puoi creare un nuovo reclamo perché hai creato uno recentemente o la tua punizione è stata creata recentemente o questo server non ha configurato reclami di ban" + "it": "Non puoi creare un nuovo reclamo perché hai creato uno recentemente o la tua punizione è stata creata recentemente o questo server non ha configurato reclami di ban", + "nl": "Je mag geen nieuw bezwaar maken omdat je recentelijk je laatste bezwaar hebt gemaakt, je straf recent was of deze gilde nog geen beroep op verbannen heeft geconfigureerd" }, "configureappeal": { "description": "Configure appeal", @@ -3283,7 +3603,8 @@ "fr": "Configurer la demande", "es": "Configurar la queja", "ru": "Настроить обращение", - "it": "Configura reclamo" + "it": "Configura reclamo", + "nl": "Beroep configureren" }, "useadvancedfilter": { "description": "use advanced filter on current table", @@ -3293,7 +3614,8 @@ "fr": "Basculer le filtre avancé.", "es": "Alternar filtro avanzado.", "ru": "Переключить расширенный фильтр.", - "it": "Attiva filtro avanzato." + "it": "Attiva filtro avanzato.", + "nl": "Schakel geavanceerde filter in/uit." }, "selectmembers": { "description": "Select members", @@ -3303,7 +3625,8 @@ "fr": "Sélectionner les membres", "es": "Seleccionar miembros", "ru": "Выбрать участников", - "it": "Seleziona membri" + "it": "Seleziona membri", + "nl": "Selecteer leden" }, "statustype": { "description": "Status type", @@ -3313,7 +3636,8 @@ "fr": "Statut", "es": "Estado", "ru": "Статус", - "it": "Stato" + "it": "Stato", + "nl": "Status" }, "executesearch": { "description": "Execute search", @@ -3323,7 +3647,8 @@ "fr": "Exécuter la recherche", "es": "Ejecutar la búsqueda", "ru": "Выполнить поиск", - "it": "Esegui ricerca" + "it": "Esegui ricerca", + "nl": "Voer zoekopdracht uit" }, "nomatches": { "description": "No matches for search string found.", @@ -3333,7 +3658,8 @@ "fr": "Aucune demande ne correspond à votre recherche.", "es": "Ningún reclamo coincide con su búsqueda.", "ru": "По вашему запросу не найдено ни одного обращения.", - "it": "Nessun reclamo corrisponde alla tua ricerca." + "it": "Nessun reclamo corrisponde alla tua ricerca.", + "nl": "Geen beroepen gevonden!" }, "nomatchesdescription": { "description": "No appeals match your search.", @@ -3343,7 +3669,8 @@ "fr": "Il n'y a peut-être pas encore de cas dans ce serveur. Cependant, vous pouvez essayer de régler vos filtres ci-dessus pour trouver des cas.", "es": "Puede que no haya casos todavía en este servidor. Sin embargo, puede intentar ajustar sus filtros arriba para encontrar algunos casos.", "ru": "Возможно, в этом сервере еще нет кейсов. Однако, вы можете попробовать изменить фильтры выше, чтобы найти кейсы.", - "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi." + "it": "Potrebbe non essere ancora nessun caso in questo server. Tuttavia, è possibile provare a regolare i filtri in alto per trovare alcuni casi.", + "nl": "Probeer je filters hierboven aan te passen om dit op te lossen." }, "failedtoload": { "description": "Failed to load appeals", @@ -3353,7 +3680,8 @@ "fr": "Échec du chargement des demandes", "es": "No se pudo cargar las quejas", "ru": "Не удалось загрузить обращения", - "it": "Impossibile caricare reclami" + "it": "Impossibile caricare reclami", + "nl": "Laden van beroepen is mislukt" }, "hasanswered": { "description": "has answered", @@ -3363,7 +3691,8 @@ "fr": "L'utilisateur a répondu à {count} questions", "es": "El usuario ha respondido {count} preguntas", "ru": "Пользователь ответил на {count} вопросов", - "it": "L'utente ha risposto a {count} domande" + "it": "L'utente ha risposto a {count} domande", + "nl": "Gebruiker heeft {count} vragen beantwoord" } }, "appealconfig": { @@ -3375,7 +3704,8 @@ "fr": "Structure de la demande de bannissement", "es": "Estructura de reclamo de prohibición", "ru": "Структура обращения за бан", - "it": "Struttura reclami banno" + "it": "Struttura reclami banno", + "nl": "Structuur van een ban beroep" }, "explain": { "description": "Configure", @@ -3385,7 +3715,8 @@ "fr": "Configurer le formulaire pour l'appel d'embargo de la guilde.", "es": "Configurar el formulario para el apelante de la gildia.", "ru": "Настройте форму для обращения в гильдию.", - "it": "Configura il modulo per l'appello della gilda." + "it": "Configura il modulo per l'appello della gilda.", + "nl": "Configureer het formulier voor het ban beroep van de server." }, "explain2": { "description": "Skip", @@ -3395,7 +3726,8 @@ "fr": "Les utilisateurs peuvent sauter des questions si ils le souhaitent.", "es": "Los usuarios pueden omitir las preguntas si quieren.", "ru": "Пользователи могут пропустить вопросы, если хотят.", - "it": "Gli utenti possono saltare le domande se vogliono." + "it": "Gli utenti possono saltare le domande se vogliono.", + "nl": "Gebruikers kunnen vragen overslaan als ze dat willen." }, "explain3": { "description": "Delete", @@ -3405,7 +3737,8 @@ "fr": "Si vous supprimez une question, elle sera toujours visible dans les appels d'embargo antérieurs.", "es": "Si elimina una pregunta, permanecerá visible en los apelantes de la gildia.", "ru": "Если удалите вопрос, он будет все еще видим в старых обращениях.", - "it": "Se si elimina una domanda, sarà ancora visibile nei precedenti appelli." + "it": "Se si elimina una domanda, sarà ancora visibile nei precedenti appelli.", + "nl": "Het verwijderen van een vraag zal nog steeds zichtbaar zijn in bestaande ban beroepen." }, "explain4": { "description": "Not configured", @@ -3415,7 +3748,8 @@ "fr": "Si vous n'avez pas de questions configurées, les utilisateurs ne pourront pas appeler d'embargo.", "es": "Si no tiene preguntas configuradas, los usuarios no podrán hacer apelantes.", "ru": "Если у вас нет вопросов, пользователи не смогут подать обращения.", - "it": "Se non hai domande configurate, gli utenti non potranno richiedere appelli." + "it": "Se non hai domande configurate, gli utenti non potranno richiedere appelli.", + "nl": "Gebruikers kunnen geen ban beroepen indienen als er geen vragen zijn geconfigureerd." }, "failedtoreorder": { "description": "Failed to reorder", @@ -3425,7 +3759,8 @@ "fr": "Échec de la réorganisation des questions", "es": "No se pudo reordenar las preguntas", "ru": "Не удалось переместить вопросы", - "it": "Impossibile riordinare le domande" + "it": "Impossibile riordinare le domande", + "nl": "Kan vragen niet opnieuw ordenen." }, "deleted": { "description": "Deleted", @@ -3435,7 +3770,8 @@ "fr": "Question supprimée", "es": "Pregunta eliminada", "ru": "Вопрос удален", - "it": "Domanda eliminata" + "it": "Domanda eliminata", + "nl": "Vraag verwijderd" }, "failedtodelete": { "description": "Failed to delete", @@ -3445,7 +3781,8 @@ "fr": "Échec de la suppression de la question", "es": "No se pudo eliminar la pregunta", "ru": "Не удалось удалить вопрос", - "it": "Impossibile eliminare la domanda" + "it": "Impossibile eliminare la domanda", + "nl": "Kan vraag niet verwijderen." }, "saved": { "description": "Saved", @@ -3455,7 +3792,8 @@ "fr": "Question enregistrée", "es": "Pregunta guardada", "ru": "Вопрос сохранен", - "it": "Domanda salvata" + "it": "Domanda salvata", + "nl": "Vraag opgeslagen" }, "failedtosave": { "description": "Failed to save", @@ -3465,7 +3803,8 @@ "fr": "Échec de l'enregistrement de la question", "es": "No se pudo guardar la pregunta", "ru": "Не удалось сохранить вопрос", - "it": "Impossibile salvare la domanda" + "it": "Impossibile salvare la domanda", + "nl": "Kan vraag niet opslaan." }, "editquestion": { "description": "Edit question", @@ -3475,7 +3814,8 @@ "fr": "Modifier la question", "es": "Editar pregunta", "ru": "Редактировать вопрос", - "it": "Modifica domanda" + "it": "Modifica domanda", + "nl": "Vraag bewerken" }, "question": { "description": "Question", @@ -3485,7 +3825,8 @@ "fr": "Question", "es": "Pregunta", "ru": "Вопрос", - "it": "Domanda" + "it": "Domanda", + "nl": "Vraag" }, "addquestion": { "description": "Add question", @@ -3495,7 +3836,8 @@ "fr": "Ajouter une question", "es": "Añadir pregunta", "ru": "Добавить вопрос", - "it": "Aggiungi domanda" + "it": "Aggiungi domanda", + "nl": "voeg vraag toe" } }, "appealview": { @@ -3507,7 +3849,8 @@ "fr": "Décision enregistrée", "es": "Decisión guardada", "ru": "Решение сохранено", - "it": "Decisione salvata" + "it": "Decisione salvata", + "nl": "Keuze opgeslagen" }, "noanswer": { "description": "No answer", @@ -3517,7 +3860,8 @@ "fr": "Pas de réponse", "es": "Sin respuesta", "ru": "Нет ответа", - "it": "Nessuna risposta" + "it": "Nessuna risposta", + "nl": "Geen antwoord" }, "failedtosave": { "description": "Failed to save", @@ -3527,7 +3871,8 @@ "fr": "Échec de l'enregistrement de la décision", "es": "No se pudo guardar la decisión", "ru": "Не удалось сохранить решение", - "it": "Impossibile salvare la decisione" + "it": "Impossibile salvare la decisione", + "nl": "Kan beslissing niet opslaan." }, "createdat": { "description": "Created at", @@ -3537,7 +3882,8 @@ "fr": "Créé le", "es": "Creado el", "ru": "Создано", - "it": "Creato il" + "it": "Creato il", + "nl": "Gemaakt op" }, "updatedat": { "description": "Updated at", @@ -3547,7 +3893,8 @@ "fr": "Mis à jour le", "es": "Actualizado el", "ru": "Обновлено", - "it": "Aggiornato il" + "it": "Aggiornato il", + "nl": "Bijgewerkt op" }, "decisionat": { "description": "Decision at", @@ -3557,7 +3904,8 @@ "fr": "Décision le", "es": "Decisión el", "ru": "Решение", - "it": "Decisione il" + "it": "Decisione il", + "nl": "Keuze op" }, "moderatorcomment": { "description": "Moderator comment", @@ -3567,7 +3915,8 @@ "fr": "Commentaire du modérateur", "es": "Comentario del moderador", "ru": "Комментарий модератора", - "it": "Commento del moderatore" + "it": "Commento del moderatore", + "nl": "Moderator opmerking" }, "newappeal": { "description": "New appeal", @@ -3577,7 +3926,8 @@ "fr": "Nouvel appel", "es": "Nuevo reclamo", "ru": "Новое обращение", - "it": "Nuovo appello" + "it": "Nuovo appello", + "nl": "Nieuw beroep" }, "newappealnever": { "description": "New appeal never", @@ -3587,7 +3937,8 @@ "fr": "L'utilisateur n'est jamais autorisé à créer un nouvel appel", "es": "El usuario nunca está permitido crear un nuevo reclamo", "ru": "Пользователь никогда не может создать новое обращение", - "it": "L'utente non può più creare un nuovo appello" + "it": "L'utente non può più creare un nuovo appello", + "nl": "Geen nieuwe beroepen kunnen worden gecreëerd door deze gebruiker!" }, "newappealat": { "description": "New appeal at", @@ -3597,7 +3948,8 @@ "fr": "L'utilisateur est autorisé à créer un nouvel appel à", "es": "El usuario está permitido crear un nuevo reclamo a", "ru": "Пользователь может создать новое обращение в", - "it": "L'utente può creare un nuovo appello il" + "it": "L'utente può creare un nuovo appello il", + "nl": "Gebruiker kan een nieuw beroep opmaken op" }, "edit": { "description": "Edit", @@ -3607,7 +3959,8 @@ "fr": "Modifier", "es": "Editar", "ru": "Редактировать", - "it": "Modifica" + "it": "Modifica", + "nl": "Bewerken" } }, "appealnew": { @@ -3619,7 +3972,8 @@ "fr": "Répondez aux questions pour compléter votre demande d'exclusion.", "es": "Responda a estas preguntas para completar su solicitud de exclusión.", "ru": "Ответьте на эти вопросы, чтобы завершить ваше обращение к бану.", - "it": "Rispondi a queste domande per completare il tuo appello al ban." + "it": "Rispondi a queste domande per completare il tuo appello al ban.", + "nl": "Beantwoord deze vragen om je ban-bezwaar te voltooien." }, "skip": { "description": "Skip", @@ -3629,7 +3983,8 @@ "fr": "Vous pouvez ignorer les questions si vous le souhaitez.", "es": "Puede saltar las preguntas si lo desea.", "ru": "Вы можете пропустить вопросы, если хотите.", - "it": "Puoi saltare le domande se vuoi." + "it": "Puoi saltare le domande se vuoi.", + "nl": "U kunt vragen overslaan als u dat wilt." }, "view": { "description": "View", @@ -3639,7 +3994,8 @@ "fr": "Vous pourrez consulter le statut de votre demande d'exclusion sur ce site toutes les fois.", "es": "Podrá ver el estado de su solicitud de exclusión en esta página web cada vez que lo desee.", "ru": "Вы сможете просмотреть статус вашего обращения к бану на этом сайте всегда.", - "it": "Potrai visualizzare lo stato del tuo appello al ban su questo sito ogni volta." + "it": "Potrai visualizzare lo stato del tuo appello al ban su questo sito ogni volta.", + "nl": "U kunt telkens de status van uw beroep op deze website bekijken." }, "saved": { "description": "Saved", @@ -3649,7 +4005,8 @@ "fr": "Votre demande d'exclusion a été enregistrée.", "es": "Su solicitud de exclusión ha sido guardada.", "ru": "Ваше обращение к бану было сохранено.", - "it": "Il tuo appello è stato salvato." + "it": "Il tuo appello è stato salvato.", + "nl": "Uw beroep is opgeslagen." }, "failedtosave": { "description": "Failed to save", @@ -3659,7 +4016,8 @@ "fr": "Votre demande d'exclusion n'a pas pu être enregistrée.", "es": "Su solicitud de exclusión no pudo ser guardada.", "ru": "Ваше обращение к бану не может быть сохранено.", - "it": "Il tuo appello non può essere salvato." + "it": "Il tuo appello non può essere salvato.", + "nl": "Uw beroep kon niet worden opgeslagen." }, "save": { "description": "Save", @@ -3669,7 +4027,8 @@ "fr": "Enregistrer", "es": "Guardar", "ru": "Сохранить", - "it": "Salva" + "it": "Salva", + "nl": "Opslaan" }, "answerplaceholder": { "description": "Answer placeholder", @@ -3679,7 +4038,8 @@ "fr": "Réponse", "es": "Respuesta", "ru": "Ответ", - "it": "Risposta" + "it": "Risposta", + "nl": "Antwoord" } }, "usernote": { @@ -3691,7 +4051,8 @@ "fr": "Créer une note utilisateur", "es": "Crear nota de usuario", "ru": "Создать пользовательскую заметку", - "it": "Crea nota utente" + "it": "Crea nota utente", + "nl": "Gebruikersnotitie aanmaken" }, "createusernotedescription": { "description": "Create usernote", @@ -3701,7 +4062,8 @@ "fr": "Description", "es": "Descripción", "ru": "Описание", - "it": "Descrizione" + "it": "Descrizione", + "nl": "Beschrijving" }, "member": { "description": "Member", @@ -3711,7 +4073,8 @@ "fr": "Membre", "es": "Miembro", "ru": "Участник", - "it": "Membro" + "it": "Membro", + "nl": "Lid" }, "nomembersfound": { "description": "No members found", @@ -3721,7 +4084,8 @@ "fr": "Aucun membre trouvé", "es": "No se encontraron miembros", "ru": "Участников не найдено", - "it": "Nessun membro trovato" + "it": "Nessun membro trovato", + "nl": "Geen leden gevonden" }, "usernotecreated": { "description": "Usernote created", @@ -3731,7 +4095,8 @@ "fr": "Note utilisateur créée", "es": "Nota de usuario creada", "ru": "Пользовательская заметка создана", - "it": "Nota utente creata" + "it": "Nota utente creata", + "nl": "Gebruikersnotitie aangemaakt" }, "usernotecreatefailed": { "description": "Failed to create usernote", @@ -3741,7 +4106,8 @@ "fr": "Échec de la création de la note utilisateur", "es": "No se pudo crear la nota de usuario", "ru": "Не удалось создать пользовательскую заметку", - "it": "Impossibile creare nota utente" + "it": "Impossibile creare nota utente", + "nl": "Gefaald bij het opmaken van een gebruikersnotitie" }, "usernoteupdated": { "description": "Usernote updated", @@ -3751,7 +4117,8 @@ "fr": "Note utilisateur mise à jour", "es": "Nota de usuario actualizada", "ru": "Пользовательская заметка обновлена", - "it": "Nota utente aggiornata" + "it": "Nota utente aggiornata", + "nl": "Gebruikersnotitie bijgewerkt" }, "usernotedeleted": { "description": "Usernote deleted", @@ -3761,7 +4128,8 @@ "fr": "Note utilisateur supprimée", "es": "Nota de usuario eliminada", "ru": "Пользовательская заметка удалена", - "it": "Nota utente eliminata" + "it": "Nota utente eliminata", + "nl": "Gebruikersnotitie verwijderd" }, "usernotedeletefailed": { "description": "Failed to delete usernote", @@ -3771,7 +4139,8 @@ "fr": "Échec de la suppression de la note utilisateur", "es": "No se pudo eliminar la nota de usuario", "ru": "Не удалось удалить пользовательскую заметку", - "it": "Impossibile eliminare nota utente" + "it": "Impossibile eliminare nota utente", + "nl": "" }, "nomatches": { "description": "No matches for search string found.", @@ -3781,7 +4150,8 @@ "fr": "Aucune note utilisateur ne correspond à votre recherche.", "es": "No se encontraron notas de usuario que coincidan con su búsqueda.", "ru": "Нет пользовательских заметок, соответствующих вашему поиску.", - "it": "Nessuna nota utente corrisponde alla tua ricerca." + "it": "Nessuna nota utente corrisponde alla tua ricerca.", + "nl": "Er zijn geen gebruikersnotities die overeenkomen met uw zoekopdracht!" }, "nomatchesdescription": { "description": "No matches for search string found.", @@ -3791,7 +4161,8 @@ "fr": "Il n'y a peut-être pas encore de notes utilisateur dans ce serveur. Vous pouvez en créer un en utilisant le bouton ci-dessus.", "es": "Puede que no haya notas de usuario todavía en este servidor. Puede crear una nota de usuario usando el botón de arriba.", "ru": "Возможно, в этом сервере еще нет пользовательских заметок. Вы можете создать пользовательскую заметку, используя кнопку выше.", - "it": "Potrebbe non essere ancora presente nessuna nota utente in questo server. Puoi crearne una usando il pulsante in alto." + "it": "Potrebbe non essere ancora presente nessuna nota utente in questo server. Puoi crearne una usando il pulsante in alto.", + "nl": "Er zijn mogelijk nog geen gebruikersnotities in deze server. Maak er een aan door op de knop hierboven te klikken." } }, "usermap": { @@ -3803,7 +4174,8 @@ "fr": "Créer une carte utilisateur", "es": "Crear mapa de usuario", "ru": "Создать пользовательскую карту", - "it": "Crea mappa utente" + "it": "Crea mappa utente", + "nl": "Gebruikerskaart aanmaken" }, "createusermapdescription": { "description": "usermap description", @@ -3813,7 +4185,8 @@ "fr": "Description", "es": "Descripción", "ru": "Описание", - "it": "Descrizione" + "it": "Descrizione", + "nl": "Beschrijving" }, "member": { "description": "Member", @@ -3823,7 +4196,8 @@ "fr": "Membre", "es": "Miembro", "ru": "Участник", - "it": "Membro" + "it": "Membro", + "nl": "Lid" }, "nomembersfound": { "description": "No members found", @@ -3833,7 +4207,8 @@ "fr": "Aucun membre trouvé", "es": "No se encontraron miembros", "ru": "Участников не найдено", - "it": "Nessun membro trovato" + "it": "Nessun membro trovato", + "nl": "Geen leden gevonden" }, "usermapcreated": { "description": "Usermap created", @@ -3843,7 +4218,8 @@ "fr": "Carte utilisateur créée", "es": "Mapa de usuario creado", "ru": "Пользовательская карта создана", - "it": "Mappa utente creata" + "it": "Mappa utente creata", + "nl": "Gebruikerskaart aangemaakt" }, "usermapcreatefailed": { "description": "Failed to create usermap", @@ -3853,7 +4229,8 @@ "fr": "Échec de la création de la carte utilisateur", "es": "No se pudo crear el mapa de usuario", "ru": "Не удалось создать пользовательскую карту", - "it": "Impossibile creare mappa utente" + "it": "Impossibile creare mappa utente", + "nl": "Gebruikerskaart kon niet worden aangemaakt" }, "usermapupdated": { "description": "usermap updated", @@ -3863,7 +4240,8 @@ "fr": "Carte utilisateur mise à jour", "es": "Mapa de usuario actualizado", "ru": "Пользовательская карта обновлена", - "it": "Mappa utente aggiornata" + "it": "Mappa utente aggiornata", + "nl": "Gebruikerskaart bijgewerkt" }, "usermapdeleted": { "description": "Usermap deleted", @@ -3873,7 +4251,8 @@ "fr": "Carte utilisateur supprimée", "es": "Mapa de usuario eliminado", "ru": "Пользовательская карта удалена", - "it": "Mappa utente eliminata" + "it": "Mappa utente eliminata", + "nl": "Gebruikerskaart verwijderd" }, "usermapdeletefailed": { "description": "Failed to delete usermap", @@ -3883,7 +4262,8 @@ "fr": "Échec de la suppression de la carte utilisateur", "es": "No se pudo eliminar el mapa de usuario", "ru": "Не удалось удалить пользовательскую карту", - "it": "Impossibile eliminare mappa utente" + "it": "Impossibile eliminare mappa utente", + "nl": "Gebruikerskaart kon niet worden verwijderd" }, "nomatches": { "description": "No matches for search string found.", @@ -3893,7 +4273,8 @@ "fr": "Aucune carte utilisateur ne correspond à votre recherche.", "es": "No se encontraron mapas de usuario que coincidan con su búsqueda.", "ru": "Нет пользовательских карт, соответствующих вашему поисковому запросу.", - "it": "Nessuna mappa utente corrisponde alla tua ricerca." + "it": "Nessuna mappa utente corrisponde alla tua ricerca.", + "nl": "Er zijn geen gebruikerskaarten gevonden die overeenkomen met uw zoekopdracht!" }, "nomatchesdescription": { "description": "No matches for search string found.", @@ -3903,7 +4284,8 @@ "fr": "Il n'y a peut-être pas encore de cartes utilisateur dans ce serveur. Vous pouvez en créer un en utilisant le bouton ci-dessus.", "es": "Puede que no haya mapas de usuario todavía en este servidor. Puede crear uno usando el botón de arriba.", "ru": "Возможно, в этом сервере еще нет пользовательских карт. Вы можете создать ее, используя кнопку выше.", - "it": "Potrebbe non esserci ancora nessuna mappa utente in questo server. Puoi crearne uno usando il pulsante in alto." + "it": "Potrebbe non esserci ancora nessuna mappa utente in questo server. Puoi crearne uno usando il pulsante in alto.", + "nl": "Er zijn geen gebruikerskaarten in deze gilde! Maak er een aan via de knop hierboven." } }, "messages": { @@ -3915,7 +4297,8 @@ "fr": "Créer un nouveau message", "es": "Crear un nuevo mensaje", "ru": "Создать новое сообщение", - "it": "Crea nuovo messaggio" + "it": "Crea nuovo messaggio", + "nl": "Nieuw bericht maken" }, "nomessages": { "description": "No results found.", @@ -3925,7 +4308,8 @@ "fr": "Aucun message trouvé.", "es": "No se encontraron mensajes.", "ru": "Сообщения не найдены.", - "it": "Nessun messaggio trovato." + "it": "Nessun messaggio trovato.", + "nl": "Geen resultaten gevonden!" }, "nomessagesdescription": { "description": "No messages found.", @@ -3935,7 +4319,8 @@ "fr": "Il n'y a peut-être pas encore de messages dans ce serveur. Vous pouvez en créer un en utilisant le bouton ci-dessus.", "es": "Puede que no haya mensajes todavía en este servidor. Puede crear uno usando el botón de arriba.", "ru": "Возможно, в этом сервере еще нет сообщений. Вы можете создать его, используя кнопку выше.", - "it": "Potrebbe non esserci ancora nessun messaggio in questo server. Puoi crearne uno usando il pulsante in alto." + "it": "Potrebbe non esserci ancora nessun messaggio in questo server. Puoi crearne uno usando il pulsante in alto.", + "nl": "Er zijn geen berichten gepland in deze server! Maak er een aan door op de knop hierboven te klikken." }, "title": { "description": "Title", @@ -3945,7 +4330,8 @@ "fr": "Titre", "es": "Título", "ru": "Название", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "channel": { "description": "Channel", @@ -3955,7 +4341,8 @@ "fr": "Canal", "es": "Canal", "ru": "Канал", - "it": "Canale" + "it": "Canale", + "nl": "Kanaal" }, "content": { "description": "Content", @@ -3965,7 +4352,8 @@ "fr": "Message", "es": "Mensaje", "ru": "Сообщение", - "it": "Messaggio" + "it": "Messaggio", + "nl": "bericht" }, "savemessage": { "description": "Save message", @@ -3975,7 +4363,8 @@ "fr": "Sauvegarder le message", "es": "Guardar mensaje", "ru": "Сохранить сообщение", - "it": "Salva messaggio" + "it": "Salva messaggio", + "nl": "Sla bericht op" }, "editmessage": { "description": "Edit message", @@ -3985,7 +4374,8 @@ "fr": "Modifier le message", "es": "Editar mensaje", "ru": "Редактировать сообщение", - "it": "Modifica messaggio" + "it": "Modifica messaggio", + "nl": "Bewerk bericht" }, "savedmessage": { "description": "Saved message", @@ -3995,7 +4385,8 @@ "fr": "Message sauvegardé", "es": "Mensaje guardado", "ru": "Сохраненное сообщение", - "it": "Messaggio salvato" + "it": "Messaggio salvato", + "nl": "opgeslagen bericht" }, "failedtosavemessage": { "description": "Failed to save message", @@ -4005,7 +4396,8 @@ "fr": "Échec de la sauvegarde du message", "es": "No se pudo guardar el mensaje", "ru": "Не удалось сохранить сообщение", - "it": "Impossibile salvare messaggio" + "it": "Impossibile salvare messaggio", + "nl": "Opslaan van bericht mislukt" }, "failedtoload": { "description": "Failed to load message", @@ -4015,7 +4407,8 @@ "fr": "Échec du chargement des messages", "es": "No se pudo cargar los mensajes", "ru": "Не удалось загрузить сообщения", - "it": "Impossibile caricare messaggi" + "it": "Impossibile caricare messaggi", + "nl": "Laden van berichten mislukt" }, "messagedeleted": { "description": "Message deleted", @@ -4025,7 +4418,8 @@ "fr": "Message supprimé", "es": "Mensaje eliminado", "ru": "Сообщение удалено", - "it": "Messaggio eliminato" + "it": "Messaggio eliminato", + "nl": "Bericht verwijderd" }, "failedtodelete": { "description": "Failed to delete message", @@ -4035,7 +4429,8 @@ "fr": "Impossible de supprimer le message", "es": "No se pudo eliminar el mensaje", "ru": "Не удалось удалить сообщение", - "it": "Impossibile eliminare il messaggio" + "it": "Impossibile eliminare il messaggio", + "nl": "Bericht kon niet worden verwijderd" } }, "motd": { @@ -4047,7 +4442,8 @@ "fr": "Message du jour", "es": "Mensaje del día", "ru": "Сообщение дня", - "it": "Messaggio del giorno" + "it": "Messaggio del giorno", + "nl": "Bericht van de dag" }, "explain": { "description": "Explaination of the message of the day", @@ -4057,7 +4453,8 @@ "fr": "Utilisez un message du jour pour épingler un message sur le tableau de bord des serveurs que tous les modérateurs verront.", "es": "Utilice un mensaje del día para fijar un mensaje en el panel de control de los servidores que todos los moderadores verán.", "ru": "Используйте сообщение дня, чтобы привязать сообщение на дашборде гильдии, которое все ваши модераторы будут видеть.", - "it": "Usa un MotD per fissare un messaggio sulla dashboard della gilda che tutti i moderatori vedranno." + "it": "Usa un MotD per fissare un messaggio sulla dashboard della gilda che tutti i moderatori vedranno.", + "nl": "Gebruik een MotD om een bericht vast te zetten op het dashboard van de server dat alle moderators zullen zien." }, "explain2": { "description": "Explaination of the message of the day", @@ -4067,7 +4464,8 @@ "fr": "Cela pourrait inclure des instructions sur la façon de formater des cas ou d'envoyer des images comme preuve.", "es": "Esto puede incluir instrucciones sobre cómo formatear casos o subir imágenes como prueba.", "ru": "Это может включать инструкции по форматированию дел или загрузке изображений как доказательства.", - "it": "Questo potrebbe includere istruzioni su come formattare casi o caricare immagini come prova." + "it": "Questo potrebbe includere istruzioni su come formattare casi o caricare immagini come prova.", + "nl": "Dit kan instructies bevatten over hoe je gevallen moet formatteren of afbeeldingen moet uploaden als bewijs." }, "noresult": { "description": "No result for search string found.", @@ -4077,7 +4475,8 @@ "fr": "Impossible de charger le message du jour.", "es": "No se pudo cargar el mensaje del día.", "ru": "Не удалось загрузить сообщение дня.", - "it": "Impossibile caricare il motd." + "it": "Impossibile caricare il motd.", + "nl": "Kan MotD niet laden." }, "enabled": { "description": "Is motd enabled?", @@ -4087,7 +4486,8 @@ "fr": "Activer le message du jour sur le tableau de bord de la guilde", "es": "Habilitar mensaje del día en el panel de control de la guilda", "ru": "Включить сообщение дня на дашборде гильдии", - "it": "Abilita motd nella dashboard della gilda" + "it": "Abilita motd nella dashboard della gilda", + "nl": "MotD inschakelen in serverdashboard" }, "message": { "description": "Message of the day", @@ -4097,7 +4497,8 @@ "fr": "Message du jour", "es": "Mensaje del día", "ru": "Сообщение дня", - "it": "Messaggio del giorno" + "it": "Messaggio del giorno", + "nl": "Bericht van de dag" }, "save": { "description": "Save the message of the day", @@ -4107,7 +4508,8 @@ "fr": "Enregistrer", "es": "Guardar", "ru": "Сохранить", - "it": "Salva" + "it": "Salva", + "nl": "Opslaan" }, "submitting": { "description": "Submitting message of the day", @@ -4117,7 +4519,8 @@ "fr": "Envoi...", "es": "Enviando...", "ru": "Отправка...", - "it": "Invio..." + "it": "Invio...", + "nl": "Bezig met verzenden..." }, "saved": { "description": "Message of the day saved", @@ -4127,7 +4530,8 @@ "fr": "Message du jour enregistré", "es": "Mensaje del día guardado", "ru": "Сообщение дня сохранено", - "it": "Messaggio del giorno salvato" + "it": "Messaggio del giorno salvato", + "nl": "Bericht van de dag is opgeslagen" }, "failedtosave": { "description": "Failed to save message of the day", @@ -4137,7 +4541,8 @@ "fr": "Impossible d'enregistrer le message du jour", "es": "No se pudo guardar el mensaje del día", "ru": "Не удалось сохранить сообщение дня", - "it": "Impossibile salvare il messaggio del giorno" + "it": "Impossibile salvare il messaggio del giorno", + "nl": "Kan bericht van de dag niet opslaan" } }, "auditlog": { @@ -4149,7 +4554,8 @@ "fr": "AuditLog", "es": "AuditLog", "ru": "AuditLog", - "it": "AuditLog" + "it": "AuditLog", + "nl": "AuditLog" }, "explain": { "description": "Explaination of the audit log", @@ -4159,7 +4565,8 @@ "fr": "Utilisez les auditlogs pour enregistrer certains événements dans votre guilde.", "es": "Utilice auditlogs para registrar ciertos eventos en su guilda.", "ru": "Используйте auditlogs для записи событий в вашей гильдии.", - "it": "Utilizza auditlogs per registrare alcuni eventi nella tua gilda." + "it": "Utilizza auditlogs per registrare alcuni eventi nella tua gilda.", + "nl": "Gebruik auditlogs om bepaalde gebeurtenissen in je gilde te loggen." }, "explain2": { "description": "Explaination of the audit log", @@ -4169,7 +4576,8 @@ "fr": "Sur certains événements, vous pouvez filtrer les événements basés sur des canaux ou des rôles.", "es": "En ciertos eventos, puede filtrar eventos basados en canales o roles.", "ru": "На определенных событиях вы можете фильтровать события, основанные на каналах или ролях.", - "it": "Su certi eventi puoi filtrare eventi basati su canali o ruoli." + "it": "Su certi eventi puoi filtrare eventi basati su canali o ruoli.", + "nl": "Op bepaalde gebeurtenissen kunt u filteren op basis van kanalen of rollen." }, "targetchannel": { "description": "Target channel", @@ -4179,7 +4587,8 @@ "fr": "Canal cible", "es": "Canal objetivo", "ru": "Целевой канал", - "it": "Canale di destinazione" + "it": "Canale di destinazione", + "nl": "Doelkanaal" }, "pingrole": { "description": "Ping role", @@ -4189,7 +4598,8 @@ "fr": "Rôle ping", "es": "Rol ping", "ru": "Роль пинга", - "it": "Ping ruolo" + "it": "Ping ruolo", + "nl": "Ping rol" }, "excluderoles": { "description": "Excluded roles", @@ -4199,7 +4609,8 @@ "fr": "Exclure les rôles", "es": "Excluir roles", "ru": "Исключить роли", - "it": "Escludere ruoli" + "it": "Escludere ruoli", + "nl": "Uitgesloten rollen" }, "excludechannels": { "description": "Excluded channels", @@ -4209,7 +4620,8 @@ "fr": "Exclure les canaux", "es": "Excluir canales", "ru": "Исключить каналы", - "it": "Escludere canali" + "it": "Escludere canali", + "nl": "Uitgesloten kanalen" }, "saved": { "description": "Audit log saved", @@ -4219,7 +4631,8 @@ "fr": "AuditLog enregistré", "es": "AuditLog guardado", "ru": "AuditLog сохранен", - "it": "AuditLog salvato" + "it": "AuditLog salvato", + "nl": "AuditLog opgeslagen" }, "failedtosave": { "description": "Failed to save audit log", @@ -4229,7 +4642,8 @@ "fr": "Impossible d'enregistrer l'auditlog", "es": "No se pudo guardar el auditlog", "ru": "Не удалось сохранить auditlog", - "it": "Impossibile salvare auditlog" + "it": "Impossibile salvare auditlog", + "nl": "Auditlogboek niet opgeslagen" } }, "automods": { @@ -4241,7 +4655,8 @@ "fr": "Configuration automod", "es": "Configuración automod", "ru": "Конфигурация автомодов", - "it": "Configurazione automods" + "it": "Configurazione automods", + "nl": "Automod configuratie" }, "explain": { "description": "Explaination of the auto mods", @@ -4251,7 +4666,8 @@ "fr": "Utilisez automods pour supprimer automatiquement des messages dans certains canaux ou punir les membres sur certains événements.", "es": "Utilice automods para eliminar automáticamente mensajes en canales o castigar a los miembros en eventos.", "ru": "Используйте автомоды для автоматического удаления сообщений в определенных каналах или наказать участников на определенных событиях.", - "it": "Utilizza automods per eliminare automaticamente i messaggi in determinati canali o punire i membri su determinati eventi." + "it": "Utilizza automods per eliminare automaticamente i messaggi in determinati canali o punire i membri su determinati eventi.", + "nl": "Gebruik automoderatie om automatisch berichten in bepaalde kanalen te verwijderen of leden te straffen voor bepaalde gebeurtenissen" }, "explain2": { "description": "Explaination of the auto mods", @@ -4261,7 +4677,8 @@ "fr": "Vous pouvez également définir des filtres pour chaque événement pour ajuster votre automod.", "es": "También puede definir filtros para cada evento para ajustar su automod.", "ru": "Вы также можете определить фильтры для каждого события, чтобы настроить вашу автомодерацию.", - "it": "È anche possibile definire dei filtri per ogni evento per regolare la moderazione automatica." + "it": "È anche possibile definire dei filtri per ogni evento per regolare la moderazione automatica.", + "nl": "U kunt ook filters definiëren voor elke gebeurtenis om uw automatisering te verfijnen." }, "timelimitfield": { "description": "Timelimit field", @@ -4271,7 +4688,8 @@ "fr": "Limite de temps (secondes)", "es": "Límite de tiempo (segundos)", "ru": "Временной лимит (секунды)", - "it": "Tempo limite (secondi)" + "it": "Tempo limite (secondi)", + "nl": "Tijdslimiet (seconden)" }, "limitfield": { "description": "Limit field", @@ -4281,7 +4699,8 @@ "fr": "Limite supérieure", "es": "Límite superior", "ru": "Верхний предел", - "it": "Limite superiore" + "it": "Limite superiore", + "nl": "Bovengrens" }, "config": { "description": "Configure automod", @@ -4291,7 +4710,8 @@ "fr": "Configuration", "es": "Configuración", "ru": "Конфигурация", - "it": "Configurazione" + "it": "Configurazione", + "nl": "Configuratie" }, "filter": { "description": "Filter", @@ -4301,7 +4721,8 @@ "fr": "Filtre", "es": "Filtro", "ru": "Фильтр", - "it": "Filtro" + "it": "Filtro", + "nl": "Filter" }, "filterchannels": { "description": "Filter channels", @@ -4311,7 +4732,8 @@ "fr": "Filtrer les canaux", "es": "Filtrar canales", "ru": "Фильтровать каналы", - "it": "Filtra canali" + "it": "Filtra canali", + "nl": "Filterkanalen" }, "filterroles": { "description": "Filter roles", @@ -4321,7 +4743,8 @@ "fr": "Filtrer les rôles", "es": "Filtrar roles", "ru": "Фильтровать роли", - "it": "Filtra ruoli" + "it": "Filtra ruoli", + "nl": "Filterrollen" }, "punishmentduration": { "description": "Punishment duration", @@ -4331,7 +4754,8 @@ "fr": "Durée en minutes", "es": "Duración en minutos", "ru": "Продолжительность наказания", - "it": "Durata in minuti" + "it": "Durata in minuti", + "nl": "Duur (minuten)" }, "action": { "description": "Action", @@ -4341,7 +4765,8 @@ "fr": "Action", "es": "Acción", "ru": "Действие", - "it": "Azione" + "it": "Azione", + "nl": "Actie" }, "saved": { "description": "Saved", @@ -4351,7 +4776,8 @@ "fr": "Configuration automod sauvegardée", "es": "Configuración de automod guardada", "ru": "Настройки автомода сохранены", - "it": "Configurazione automod salvata" + "it": "Configurazione automod salvata", + "nl": "Automod configuratie opgeslagen" }, "failedtosave": { "description": "Failed to save", @@ -4361,7 +4787,8 @@ "fr": "Échec de la sauvegarde de la configuration automod", "es": "No se pudo guardar la configuración de automod", "ru": "Не удалось сохранить настройки автомода", - "it": "Impossibile salvare la configurazione automod" + "it": "Impossibile salvare la configurazione automod", + "nl": "Kan automod-configuratie niet opslaan" }, "deactivated": { "description": "Deactivated", @@ -4371,7 +4798,8 @@ "fr": "Automod désactivé", "es": "Automod desactivado", "ru": "Автомод отключен", - "it": "Automod disattivato" + "it": "Automod disattivato", + "nl": "Automod gedeactiveerd" }, "failedtodeactivate": { "description": "Failed to deactivate", @@ -4381,7 +4809,8 @@ "fr": "Échec de la désactivation de automod", "es": "No se pudo desactivar automod", "ru": "Не удалось отключить автомод", - "it": "Impossibile disattivare automod" + "it": "Impossibile disattivare automod", + "nl": "Automod niet gedeactiveerd" }, "invites": { "details": { @@ -4392,7 +4821,8 @@ "fr": "Un message sur votre guilde correspond au modèle d'invitation. Les invitations à cette guilde seront ignorées.", "es": "Un mensaje en tu gremio coincide con el patrón de invitación. Se ignorarán las invitaciones a este gremio.", "ru": "Сообщение о вашей гильдии соответствует шаблону приглашения. Приглашения в эту гильдию будут проигнорированы.", - "it": "Un messaggio sulla tua gilda corrisponde al modello di invito. Gli inviti a questa gilda verranno ignorati." + "it": "Un messaggio sulla tua gilda corrisponde al modello di invito. Gli inviti a questa gilda verranno ignorati.", + "nl": "Een bericht op je gilde komt overeen met het uitnodigingspatroon. Uitnodigingen aan dit gilde worden genegeerd." }, "customwordfield": { "description": "", @@ -4402,7 +4832,8 @@ "fr": "Ignorer les guildes (entrez les identifiants divisés par des sauts de ligne)", "es": "Ignorar gremios (ingrese ID divididos por líneas nuevas)", "ru": "Игнорировать гильдии (введите идентификаторы, разделенные новой строкой)", - "it": "Ignora le gilde (inserisci gli ID divisi per newline)" + "it": "Ignora le gilde (inserisci gli ID divisi per newline)", + "nl": "Negeer gilden (voer ID's in gedeeld door newlines)" } }, "emotes": { @@ -4414,7 +4845,8 @@ "fr": "Un message sur votre guilde contient trop d'émoticônes.", "es": "Un mensaje en tu gremio contiene demasiados gestos.", "ru": "Сообщение о вашей гильдии содержит слишком много эмоций.", - "it": "Un messaggio sulla tua gilda contiene troppe emote." + "it": "Un messaggio sulla tua gilda contiene troppe emote.", + "nl": "Een bericht op je gilde bevat te veel emotes." } }, "mentions": { @@ -4426,7 +4858,8 @@ "fr": "Un message sur votre guilde contient trop de mentions.", "es": "Un mensaje en tu gremio contiene demasiadas menciones.", "ru": "Сообщение о вашей гильдии содержит слишком много упоминаний.", - "it": "Un messaggio sulla tua gilda contiene troppe menzioni." + "it": "Un messaggio sulla tua gilda contiene troppe menzioni.", + "nl": "Een bericht op je gilde bevat te veel vermeldingen." } }, "attachments": { @@ -4438,7 +4871,8 @@ "fr": "Un message sur votre guilde contient trop de pièces jointes.", "es": "Un mensaje en tu gremio contiene demasiados archivos adjuntos.", "ru": "Сообщение о вашей гильдии содержит слишком много вложений.", - "it": "Un messaggio sulla tua gilda contiene troppi allegati." + "it": "Un messaggio sulla tua gilda contiene troppi allegati.", + "nl": "Een bericht op je gilde bevat te veel bijlagen." } }, "embeds": { @@ -4450,7 +4884,8 @@ "fr": "Un message sur votre guilde contient trop d'intégrations.", "es": "Un mensaje en tu gremio contiene demasiadas incrustaciones.", "ru": "Сообщение о вашей гильдии содержит слишком много вставок.", - "it": "Un messaggio sulla tua gilda contiene troppi incorporamenti." + "it": "Un messaggio sulla tua gilda contiene troppi incorporamenti.", + "nl": "Een bericht op je gilde bevat te veel embeds." } }, "automoderations": { @@ -4462,7 +4897,8 @@ "fr": "Un utilisateur déclenche trop d'automodérations dans un laps de temps défini.", "es": "Un usuario desencadena demasiadas automovilizaciones en un período de tiempo definido.", "ru": "Пользователь запускает слишком много автоматических режимов за определенный промежуток времени.", - "it": "Un utente attiva troppe moderazioni automatiche in un intervallo di tempo definito." + "it": "Un utente attiva troppe moderazioni automatiche in un intervallo di tempo definito.", + "nl": "Een gebruiker triggert te veel automatiseringen in een bepaalde tijdspanne." } }, "customfilter": { @@ -4474,7 +4910,8 @@ "fr": "Filtre personnalisé", "es": "Filtro personalizado", "ru": "Пользовательский фильтр", - "it": "Filtro personalizzato" + "it": "Filtro personalizzato", + "nl": "Aangepaste filter" }, "details": { "description": "details of automod custom filter", @@ -4484,7 +4921,8 @@ "fr": "Un utilisateur utilise trop de mots définis dans votre liste.", "es": "Un usuario usa demasiadas palabras definidas en su lista.", "ru": "Пользователь использует слишком много слов, определенных в вашем списке.", - "it": "Un utente utilizza troppe parole definite nell'elenco." + "it": "Un utente utilizza troppe parole definite nell'elenco.", + "nl": "Een gebruiker gebruikt te veel woorden in uw lijst." }, "tooltip": { "description": "a tooltip with extra tips. Words are checked line by line case insensitive.", @@ -4494,7 +4932,8 @@ "fr": "Les mots sont vérifiés ligne par ligne sans tenir compte de la casse.", "es": "Las palabras se comprueban línea por línea sin distinción entre mayúsculas y minúsculas.", "ru": "Слова проверяются построчно без учета регистра.", - "it": "Le parole vengono controllate riga per riga senza distinzione tra maiuscole e minuscole." + "it": "Le parole vengono controllate riga per riga senza distinzione tra maiuscole e minuscole.", + "nl": "Woorden worden regel voor regel gecontroleerd op hoofdlettergevoeligheid." }, "linktext": { "description": "Example", @@ -4504,7 +4943,8 @@ "fr": "Exemple", "es": "Ejemplo", "ru": "Пример", - "it": "Esempio" + "it": "Esempio", + "nl": "Voorbeeld" }, "customwordfield": { "description": "", @@ -4514,7 +4954,8 @@ "fr": "Mots personnalisés (modèle regex divisé par une nouvelle ligne)", "es": "Palabras personalizadas (patrón de expresiones regulares dividido por nueva línea)", "ru": "Пользовательские слова (шаблон регулярного выражения, разделенный новой строкой)", - "it": "Parole personalizzate (modello regex diviso per newline)" + "it": "Parole personalizzate (modello regex diviso per newline)", + "nl": "Aangepaste woorden (regex-patroon gedeeld door nieuwe regel)" } }, "spam": { @@ -4526,7 +4967,8 @@ "fr": "Un utilisateur de votre guilde envoie trop de messages dans un laps de temps.", "es": "Un usuario de tu gremio envía demasiados mensajes en un lapso de tiempo.", "ru": "Пользователь вашей гильдии отправляет слишком много сообщений за промежуток времени.", - "it": "Un utente della tua gilda invia troppi messaggi in un intervallo di tempo." + "it": "Un utente della tua gilda invia troppi messaggi in un intervallo di tempo.", + "nl": "Een gebruiker van je gilde stuurt te veel berichten in een tijdspanne." }, "timelimitmessage": { "description": "custom field label for time limit. Time limit (seconds)", @@ -4536,7 +4978,8 @@ "fr": "Limite de temps (secondes)", "es": "Límite de tiempo (segundos)", "ru": "Лимит времени (секунды)", - "it": "Limite di tempo (secondi)" + "it": "Limite di tempo (secondi)", + "nl": "Tijdslimiet (seconden)" } }, "duplicatedchars": { @@ -4548,7 +4991,8 @@ "fr": "Un message sur votre guilde contient trop de caractères dupliqués.", "es": "Un mensaje en tu gremio contiene demasiados personajes duplicados.", "ru": "Сообщение о вашей гильдии содержит слишком много повторяющихся персонажей.", - "it": "Un messaggio sulla tua gilda contiene troppi caratteri duplicati." + "it": "Un messaggio sulla tua gilda contiene troppi caratteri duplicati.", + "nl": "Een bericht op je gilde bevat te veel ingewikkelde tekens." } }, "link": { @@ -4560,7 +5004,8 @@ "fr": "Un message sur votre guilde contient trop de liens.", "es": "Un mensaje en tu gremio contiene demasiados enlaces.", "ru": "Сообщение о вашей гильдии содержит слишком много ссылок.", - "it": "Un messaggio sulla tua gilda contiene troppi link." + "it": "Un messaggio sulla tua gilda contiene troppi link.", + "nl": "Een bericht over je gilde bevat te veel links." }, "customwordfield": { "description": "", @@ -4570,7 +5015,8 @@ "fr": "Ignorer les liens (entrer les modèles regex divisés par des nouvelles lignes)", "es": "Ignorar enlaces (ingresar patrones de expresiones regulares divididos por líneas nuevas)", "ru": "Игнорировать ссылки (введите шаблоны регулярных выражений, разделенные символами новой строки)", - "it": "Ignora collegamenti (inserisci modelli regex divisi per newline)" + "it": "Ignora collegamenti (inserisci modelli regex divisi per newline)", + "nl": "Links negeren (regexpatronen invoeren gedeeld door newlines)" }, "linktext": { "description": "Example", @@ -4580,7 +5026,8 @@ "fr": "Exemple", "es": "Ejemplo", "ru": "Пример", - "it": "Esempio" + "it": "Esempio", + "nl": "Voorbeeld" } }, "phishinglink": { @@ -4592,7 +5039,8 @@ "fr": "Un message sur votre guilde contient trop de liens de phishing.", "es": "Un mensaje en tu gremio contiene demasiados enlaces de phishing.", "ru": "Сообщение о вашей гильдии содержит слишком много фишинговых ссылок.", - "it": "Un messaggio sulla tua gilda contiene troppi link di phishing." + "it": "Un messaggio sulla tua gilda contiene troppi link di phishing.", + "nl": "Een bericht op je gilde bevat te veel phishing links." } } }, @@ -4605,7 +5053,8 @@ "fr": "Zalgo", "es": "Zalgo", "ru": "Zalgo", - "it": "Zalgo" + "it": "Zalgo", + "nl": "Zalgo" }, "explain": { "description": "", @@ -4615,7 +5064,8 @@ "fr": "Utilisez cette fonctionnalité pour renommer automatiquement les utilisateurs qui utilisent zalgo dans leur nom d'utilisateur ou leur pseudo.", "es": "Utiliza esta función para renombrar automáticamente a los usuarios que utilicen zalgo en su nombre de usuario o en su apodo.", "ru": "Используйте эту функцию для автоматического переименования пользователей, которые используют zalgo в их имени пользователя или никнейме.", - "it": "Usa questa funzione per rinominare automaticamente gli utenti che usano zalgo nel loro nome utente o nel loro nickname." + "it": "Usa questa funzione per rinominare automaticamente gli utenti che usano zalgo nel loro nome utente o nel loro nickname.", + "nl": "Gebruik deze functie om gebruikers die zalgo gebruiken in hun gebruikersnaam of nickname automatisch te hernoemen." }, "enable": { "description": "", @@ -4625,7 +5075,8 @@ "fr": "Activer la modération zalgo dans ce serveur", "es": "Habilitar la moderación zalgo en este servidor", "ru": "Включить модерацию zalgo в этой гильдии", - "it": "Abilita la moderazione zalgo in questa gilda" + "it": "Abilita la moderazione zalgo in questa gilda", + "nl": "Schakel zalgo moderatie in deze gilde in" }, "renamenormal": { "description": "", @@ -4635,7 +5086,8 @@ "fr": "Essaye de renommer les utilisateurs avec zalgo en texte normal qui ressemble à leur nom d'utilisateur", "es": "Intenta renombrar a los usuarios con zalgo a texto normal que sigue su nombre de usuario", "ru": "Попытайтесь переименовать пользователей с zalgo в нормальный текст, который все еще произносится как имя пользователя", - "it": "Prova a rinominare gli utenti con zalgo in testo normale che ancora suona come il loro nome utente" + "it": "Prova a rinominare gli utenti con zalgo in testo normale che ancora suona come il loro nome utente", + "nl": "Probeer gebruikers met zalgo te hernoemen naar normale tekst die nog steeds klinkt als hun gebruikersnaam" }, "renamefallback": { "description": "", @@ -4645,7 +5097,8 @@ "fr": "Utilisez cette chaîne comme option de renommage", "es": "Utiliza esta cadena como opción de renombrado", "ru": "Восстановление как опция переименования", - "it": "Rinomina in questo testo come opzione" + "it": "Rinomina in questo testo come opzione", + "nl": "Terugval naar deze string als hernoemingsoptie" }, "allowedpercentage": { "description": "", @@ -4655,7 +5108,8 @@ "fr": "Pourcentage autorisé de caractères zalgo dans un nom d'utilisateur ou un pseudo", "es": "Porcentaje permitido de caracteres zalgo en un nombre de usuario o un apodo", "ru": "Разрешенный процент залиго в имени пользователя или никнейме", - "it": "Percentuale consentita di caratteri zalgo in un nome utente o nickname" + "it": "Percentuale consentita di caratteri zalgo in un nome utente o nickname", + "nl": "Toegestaan percentage zalgo-tekens in een gebruikersnaam of bijnaam" }, "logtomodchannel": { "description": "", @@ -4665,7 +5119,8 @@ "fr": "Journaliser toutes les modérations zalgo dans le webhook interne", "es": "Registrar todas las moderaciones zalgo en el webhook interno", "ru": "Записывать все модерации zalgo в внутренний вебхук", - "it": "Registra tutte le moderazioni zalgo nel webhook interno" + "it": "Registra tutte le moderazioni zalgo nel webhook interno", + "nl": "Log alle zalgo moderaties naar de interne webhook" }, "simulate": { "description": "", @@ -4675,7 +5130,8 @@ "fr": "Simuler", "es": "Simular", "ru": "Симулировать", - "it": "Simula" + "it": "Simula", + "nl": "Simuleer" }, "simulateresults": { "description": "", @@ -4685,7 +5141,8 @@ "fr": "Résultats de la simulation", "es": "Resultados de la simulación", "ru": "Результаты симуляции", - "it": "Risultati della simulazione" + "it": "Risultati della simulazione", + "nl": "Simulatieresultaten" }, "noresult": { "description": "", @@ -4695,7 +5152,8 @@ "fr": "Échec du chargement de la configuration zalgo", "es": "No se pudo cargar la configuración zalgo", "ru": "Не удалось загрузить конфигурацию zalgo", - "it": "Impossibile caricare la configurazione zalgo" + "it": "Impossibile caricare la configurazione zalgo", + "nl": "Zalgo configuratie niet geladen" }, "save": { "description": "Save", @@ -4705,7 +5163,8 @@ "fr": "Enregistrer", "es": "Guardar", "ru": "Сохранить", - "it": "Salva" + "it": "Salva", + "nl": "Opslaan" }, "submitting": { "description": "Submitting", @@ -4715,7 +5174,8 @@ "fr": "Envoi...", "es": "Enviando...", "ru": "Отправка...", - "it": "Invio..." + "it": "Invio...", + "nl": "Bezig met verzenden..." }, "saved": { "description": "saved", @@ -4725,7 +5185,8 @@ "fr": "Configuration zalgo enregistrée", "es": "Configuración zalgo guardada", "ru": "Настройки zalgo сохранены", - "it": "Configurazione zalgo salvata" + "it": "Configurazione zalgo salvata", + "nl": "Zalgo config opgeslagen" }, "failedtosave": { @@ -4736,7 +5197,8 @@ "fr": "Échec de l'enregistrement de la configuration zalgo", "es": "No se pudo guardar la configuración zalgo", "ru": "Не удалось сохранить настройки zalgo", - "it": "Impossibile salvare la configurazione zalgo" + "it": "Impossibile salvare la configurazione zalgo", + "nl": "Mislukt om zalgo config op te slaan" } }, "config": { @@ -4748,7 +5210,8 @@ "fr": "Configuration de la guilde", "es": "Configuración de la hermandad", "ru": "Настройки гильдии", - "it": "Configurazione della gilda" + "it": "Configurazione della gilda", + "nl": "Gilde configuratie" }, "permissions": { "title": { @@ -4759,7 +5222,8 @@ "fr": "Permissions", "es": "Permisos", "ru": "Разрешения", - "it": "Permessi" + "it": "Permessi", + "nl": "Toestemming" }, "explain": { "description": "description of the permissions section", @@ -4769,7 +5233,8 @@ "fr": "Ici, vous pouvez définir les rôles qui auront accès à MASZ.", "es": "Aquí puedes definir qué roles tendrán acceso a MASZ.", "ru": "Здесь вы можете определить, какие роли имеют доступ к MASZ.", - "it": "Qui puoi definire quali ruoli avranno accesso a MASZ." + "it": "Qui puoi definire quali ruoli avranno accesso a MASZ.", + "nl": "Hier kunt u definiëren welke rollen verder toegang moeten hebben in MASZ." }, "adminroles": { "description": "description of the adminroles field", @@ -4779,7 +5244,8 @@ "fr": "Rôles d'administrateur", "es": "Roles de administrador", "ru": "Роли администратора", - "it": "Ruoli amministratore" + "it": "Ruoli amministratore", + "nl": "Admin rollen" }, "modroles": { "description": "description of the modroles field", @@ -4789,7 +5255,8 @@ "fr": "Rôles de modérateur", "es": "Roles de moderador", "ru": "Роли модератора", - "it": "Ruoli moderatore" + "it": "Ruoli moderatore", + "nl": "Moderator rollen" }, "appealafterxdays": { "description": "description of the appealafterxdays field", @@ -4799,7 +5266,8 @@ "fr": "Autoriser l'appel de bannissement après x jours", "es": "Permitir que los usuarios puedan presentar una reclamación de expulsión después de x días", "ru": "Разрешить обращение в бан после x дней", - "it": "Permetti reclamo banno dopo x giorni" + "it": "Permetti reclamo banno dopo x giorni", + "nl": "Beroep tegen verbanning toestaan ​​na x dagen" }, "strictpermissions": { "description": "description of the strictPermissions field", @@ -4809,7 +5277,8 @@ "fr": "Vérification stricte des permissions", "es": "Comprobación estricta de permisos", "ru": "Строгая проверка разрешений", - "it": "Controllo stretto dei permessi" + "it": "Controllo stretto dei permessi", + "nl": "Strikte toestemmingscontrole" }, "strictpermissionsexplained": { "description": "description of the strictPermissionsExplained field", @@ -4819,7 +5288,8 @@ "fr": "Si activé, les modérateurs doivent avoir un rôle avec la permission de bannir pour créer des cas de modération de bannissement", "es": "Si está activado, los moderadores necesitan tener un rol con permisos de expulsión para crear casos de moderación de expulsión", "ru": "Если включено, то модераторы должны иметь роль с разрешением на бан, чтобы создать модкейсы бана", - "it": "Se abilitato, i moderatori devono avere un ruolo con permessi di ban per creare casi di moderazione di ban" + "it": "Se abilitato, i moderatori devono avere un ruolo con permessi di ban per creare casi di moderazione di ban", + "nl": "Indien ingeschakeld, hebben moderators een discord rol met ban toestemming nodig om ban modcases te maken." } }, "mutedroles": { @@ -4831,7 +5301,8 @@ "fr": "Rôles muets", "es": "Roles silenciados", "ru": "Роли тихого", - "it": "Ruoli mutati" + "it": "Ruoli mutati", + "nl": "Gedempte rollen" }, "explain": { "description": "description of the mutedrole section", @@ -4841,7 +5312,8 @@ "fr": "Ici, vous pouvez définir les rôles qui seront utilisés pour rendre muets les utilisateurs.", "es": "Aquí puedes definir qué roles se usarán para silenciar a los usuarios.", "ru": "Здесь вы можете определить, какие роли будут использоваться для мута пользователей.", - "it": "Qui puoi definire quali ruoli saranno usati per mutare gli utenti." + "it": "Qui puoi definire quali ruoli saranno usati per mutare gli utenti.", + "nl": "Hier kunt u bepalen welke rollen moeten worden gebruikt om gebruikers te dempen." }, "explain2": { "description": "description of the mutedrole section", @@ -4851,7 +5323,8 @@ "fr": "Si aucun n'est défini, MASZ utilisera la fonctionnalité de timeout Discord.", "es": "Si no se define ninguno, MASZ usará la funcionalidad de timeout de Discord.", "ru": "Если ни одна не определена, MASZ будет использовать функциональность блокировки Discord.", - "it": "Se non è definito nessuno, MASZ userà la funzionalità timeout Discord." + "it": "Se non è definito nessuno, MASZ userà la funzionalità timeout Discord.", + "nl": "Als er geen zijn gedefinieerd, zal MASZ de time-out functionaliteit van Discord gebruiken." } }, "notifications": { @@ -4863,7 +5336,8 @@ "fr": "Notifications", "es": "Notificaciones", "ru": "Уведомления", - "it": "Notifiche" + "it": "Notifiche", + "nl": "Notificatie" }, "explain": { "description": "description of the notifications section", @@ -4873,7 +5347,8 @@ "fr": "Utilisez ces webhooks pour notifier vos utilisateurs ou vos membres de l'équipe sur les événements MASZ.", "es": "Utiliza estos webhooks para notificar a tus usuarios o a tus miembros del personal sobre eventos MASZ.", "ru": "Используйте эти вебхуки для уведомления пользователей или сотрудников о событиях MASZ.", - "it": "Usa questi webhooks per notificare gli utenti o i membri dello staff sugli eventi MASZ." + "it": "Usa questi webhooks per notificare gli utenti o i membri dello staff sugli eventi MASZ.", + "nl": "Gebruik deze webhooks om gebruikers of personeel op de hoogte te stellen van MASZ-evenementen" }, "internal": { "description": "description of the internal field", @@ -4883,7 +5358,8 @@ "fr": "Webhook interne", "es": "Webhook interno", "ru": "Внутренний вебхук", - "it": "Webhook interno" + "it": "Webhook interno", + "nl": "Interne webhook" }, "public": { "description": "description of the public field", @@ -4893,7 +5369,8 @@ "fr": "Webhook public", "es": "Webhook público", "ru": "Публичный вебхук", - "it": "Webhook pubblico" + "it": "Webhook pubblico", + "nl": "Openbare webhook" }, "invalid": { "description": "description of the invalid field", @@ -4903,7 +5380,8 @@ "fr": "Webhook invalide", "es": "Webhook inválido", "ru": "Неверный вебхук", - "it": "Webhook non valido" + "it": "Webhook non valido", + "nl": "Ongeldige webhook" } }, "information": { @@ -4915,7 +5393,8 @@ "fr": "Information", "es": "Información", "ru": "Информация", - "it": "Informazioni" + "it": "Informazioni", + "nl": "Informatie" }, "publicembedmode": { "description": "description of the publicembedmode field", @@ -4925,7 +5404,8 @@ "fr": "Mode d'intégration publique", "es": "Modo de integración pública", "ru": "Публичный режим встраивания", - "it": "Modalità di integrazione pubblica" + "it": "Modalità di integrazione pubblica", + "nl": "Openbare embed mode" }, "publicembedmodeexplained": { "description": "public embed mode explained", @@ -4935,7 +5415,8 @@ "fr": "Ce mode permet d'intégrer des informations détaillées lorsque vous liez des cas dans le discord. Cela rendra les informations privées comme le suspect, les punitions, etc. accessibles.", "es": "Este modo permite incrustar detalles cuando se vincula un caso en discord. Esto hará públicas las informaciones privadas como el sujeto, las sanciones, etc.", "ru": "Этот режим позволяет встраивать детальные вкладки при ссылке на преступление в дискорде. Это позволит открыть личную информацию, такую как подозреваемого, наказания и т.д.", - "it": "Questa modalità consente di incorporare dettagliati quando si collega un caso nel discord. Questo permetterà di divulgare informazioni private come il sospettato, le punizioni, ecc." + "it": "Questa modalità consente di incorporare dettagliati quando si collega un caso nel discord. Questo permetterà di divulgare informazioni private come il sospettato, le punizioni, ecc.", + "nl": "Deze modus maakt gedetailleerde embeds mogelijk bij het linken van modcases in discord. Dit zal privé informatie onthullen zoals de verdachte, straffen etc." }, "publishmod": { "description": "description of the publishmod field", @@ -4945,7 +5426,8 @@ "fr": "Publier les informations du modérateur", "es": "Publicar información del moderador", "ru": "Публиковать информацию о модераторе", - "it": "Pubblicare le informazioni del moderatore" + "it": "Pubblicare le informazioni del moderatore", + "nl": "Informatie over de moderator publiceren" }, "publishmodexplained": { "description": "details of publish moderator mode", @@ -4955,7 +5437,8 @@ "fr": "Un suspect pourra voir quel modérateur l'a puni.", "es": "Un sospechoso podrá ver qué moderador lo castigó.", "ru": "Подозреваемый сможет увидеть, какой модератор его наказал.", - "it": "Un sospetto sarà in grado di vedere quale moderatore lo ha punito." + "it": "Un sospetto sarà in grado di vedere quale moderatore lo ha punito.", + "nl": "Een verdachte zal kunnen zien welke moderator hem heeft gestraft." } }, "misc": { @@ -4967,7 +5450,8 @@ "fr": "Divers", "es": "Varios", "ru": "Разное", - "it": "Varie" + "it": "Varie", + "nl": "Divers" }, "whois": { "description": "description of the whois field", @@ -4977,7 +5461,8 @@ "fr": "Exécuter whois sur la présence d'un membre", "es": "Ejecutar whois en la presencia de un miembro", "ru": "Выполнять whois при присоединении пользователя", - "it": "Esegui whois sulla presenza di un membro" + "it": "Esegui whois sulla presenza di un membro", + "nl": "Voer whois uit op lid worden" }, "whoisexplained": { "description": "details of whois mode", @@ -4987,7 +5472,8 @@ "fr": "Envoie automatiquement des informations sur l'utilisateur rejoint à votre webhook interne.", "es": "Envía automáticamente información sobre el usuario unido a su webhook interno.", "ru": "Автоматически отправляет информацию о присоединенном пользователе на ваш внутренний веб-перехватчик.", - "it": "Invia automaticamente le informazioni sull'utente iscritto al tuo webhook interno." + "it": "Invia automaticamente le informazioni sull'utente iscritto al tuo webhook interno.", + "nl": "Stuurt automatisch informatie over de verbonden gebruiker naar uw interne webhook." }, "importbans": { "description": "import existing bans", @@ -4997,7 +5483,8 @@ "fr": "Importer les bannissements existants", "es": "Importar prohibiciones existentes", "ru": "Импортировать существующие баны", - "it": "Importa i bann esistenti" + "it": "Importa i bann esistenti", + "nl": "Invoer van bestaande verboden" }, "importbansexplained": { "description": "import bans explained", @@ -5007,7 +5494,8 @@ "fr": "Cela créera des cas pour chacun de vos bannissements existants. Cela peut prendre un certain temps.", "es": "Esto creará casos para cada uno de sus baneos existentes. Esto puede llevar un tiempo.", "ru": "Это создаст дела для каждого из ваших существующих банов. Это может занять некоторое время.", - "it": "Questo creerà casi per ciascuno dei tuoi bann esistenti. Questo potrebbe richiedere un po 'di tempo." + "it": "Questo creerà casi per ciascuno dei tuoi bann esistenti. Questo potrebbe richiedere un po 'di tempo.", + "nl": "Dit zal Zaken creëren voor elk van je bestaande bans. Dit kan even duren." }, "language": { "description": "description of the language field", @@ -5017,7 +5505,8 @@ "fr": "Langue", "es": "Idioma", "ru": "Язык", - "it": "Lingua" + "it": "Lingua", + "nl": "Taal" } }, "save": { @@ -5028,7 +5517,8 @@ "fr": "Sauvegarder", "es": "Guardar", "ru": "Сохранить", - "it": "Salva" + "it": "Salva", + "nl": "Opslaan" }, "submitting": { "description": "Submitting", @@ -5038,7 +5528,8 @@ "fr": "Soumission...", "es": "Enviando...", "ru": "Отправка...", - "it": "Invio..." + "it": "Invio...", + "nl": "Bezig met verzenden..." }, "saved": { "description": "Saved", @@ -5048,7 +5539,8 @@ "fr": "Sauvegardé", "es": "Guardado", "ru": "Сохранено", - "it": "Salvato" + "it": "Salvato", + "nl": "Opgeslagen" }, "failedtosave": { "description": "Failed to save", @@ -5058,7 +5550,8 @@ "fr": "Échec de la sauvegarde", "es": "Error al guardar", "ru": "Не удалось сохранить", - "it": "Salvataggio fallito" + "it": "Salvataggio fallito", + "nl": "Opslaan mislukt" }, "deleteguild": { "description": "description of the delete guild button", @@ -5068,7 +5561,8 @@ "fr": "Supprimer le serveur", "es": "Eliminar el servidor", "ru": "Удалить гильдию", - "it": "Elimina gilda" + "it": "Elimina gilda", + "nl": "Verwijder Gilde" }, "deleted": { "description": "Deleted", @@ -5078,7 +5572,8 @@ "fr": "Serveur supprimé", "es": "Servidor eliminado", "ru": "Гильдия удалена", - "it": "Gilda eliminata" + "it": "Gilda eliminata", + "nl": "Gilde verwijderd" }, "failedtodelete": { "description": "Failed to delete", @@ -5088,7 +5583,8 @@ "fr": "Échec de la suppression du serveur", "es": "Error al eliminar el servidor", "ru": "Не удалось удалить гильдию", - "it": "Impossibile eliminare gilda" + "it": "Impossibile eliminare gilda", + "nl": "Gefaald met verwijderen" }, "deleteconfirm": { "description": "description of the delete confirm button", @@ -5098,7 +5594,8 @@ "fr": "Confirmer la suppression", "es": "Confirmar eliminación", "ru": "Подтвердить удаление", - "it": "Conferma eliminazione" + "it": "Conferma eliminazione", + "nl": "Bevestig verwijdering" }, "deleteresources": { "description": "description of the delete resources button", @@ -5108,7 +5605,8 @@ "fr": "Supprimer toutes les données (infractions, configurations, événements, fichiers)", "es": "Eliminar todos los datos (infracciones, configuraciones, eventos, archivos)", "ru": "Удалить все данные (наказания, конфигурации, события, файлы)", - "it": "Elimina tutti i dati (infrazioni, configurazioni, eventi, file)" + "it": "Elimina tutti i dati (infrazioni, configurazioni, eventi, file)", + "nl": "Verwijder alle data (overtredingen, configuraties, gebeurtenis, bestanden)" }, "deleteundone": { "description": "description of the delete undone button", @@ -5118,7 +5616,8 @@ "fr": "Cette action n'est pas réversible. Le serveur est supprimé immédiatement.", "es": "Esta acción no es reversible. El servidor se elimina inmediatamente.", "ru": "Это действие необратимо. Гильдия удаляется немедленно.", - "it": "Questa azione non è reversibile. La gilda viene cancellata immediatamente." + "it": "Questa azione non è reversibile. La gilda viene cancellata immediatamente.", + "nl": "Deze actie is niet omkeerbaar. De gilde wordt onmiddellijk verwijderd." } } }, @@ -5132,7 +5631,8 @@ "fr": "Impossible de charger les paramètres", "es": "Error al cargar la configuración", "ru": "Не удалось загрузить настройки", - "it": "Impossibile caricare le impostazioni" + "it": "Impossibile caricare le impostazioni", + "nl": "" }, "title": { "description": "title of the settings section", @@ -5142,7 +5642,8 @@ "fr": "Paramètres", "es": "Configuración", "ru": "Настройки", - "it": "Impostazioni" + "it": "Impostazioni", + "nl": "Instellingen" }, "save": { "description": "description of the save button", @@ -5152,7 +5653,8 @@ "fr": "Sauvegarder", "es": "Guardar", "ru": "Сохранить", - "it": "Salva" + "it": "Salva", + "nl": "Opslaan" }, "submitting": { "description": "Submitting", @@ -5162,7 +5664,8 @@ "fr": "Soumission...", "es": "Enviando...", "ru": "Отправка...", - "it": "Invio..." + "it": "Invio...", + "nl": "Bezig met verzenden..." }, "failedtosave": { "description": "Failed to save", @@ -5172,7 +5675,8 @@ "fr": "Échec de la sauvegarde", "es": "Error al guardar", "ru": "Не удалось сохранить", - "it": "Salvataggio fallito" + "it": "Salvataggio fallito", + "nl": "Opslaan mislukt" }, "saved": { "description": "Saved", @@ -5182,7 +5686,8 @@ "fr": "Sauvegardé", "es": "Guardado", "ru": "Сохранено", - "it": "Salvato" + "it": "Salvato", + "nl": "Opgeslagen" }, "embed": { "title": { @@ -5193,7 +5698,8 @@ "fr": "Intégration", "es": "Integración", "ru": "Встраивание", - "it": "Incorporamento" + "it": "Incorporamento", + "nl": "Embed" }, "explained": { "description": "This setting will change the content of the embed when your MASZ instance is linked in Discord.", @@ -5203,7 +5709,8 @@ "fr": "Ce paramètre modifiera le contenu de l'encart lorsque votre instance MASZ est liée dans Discord.", "es": "Esta configuración cambiará el contenido del anuncio cuando tu instancia MASZ esté vinculada en Discord.", "ru": "Этот параметр изменит содержание встроенного контента, когда ваша страница MASZ будет привязана к Discord.", - "it": "Questa impostazione cambierà il contenuto dell'embed quando il tuo istanza MASZ è collegata in Discord." + "it": "Questa impostazione cambierà il contenuto dell'embed quando il tuo istanza MASZ è collegata in Discord.", + "nl": "Deze instelling verandert de inhoud van de embed wanneer uw MASZ-instantie is gekoppeld in Discord." }, "explained2": { "description": "Please note that this might take up to one hour to update in discord.", @@ -5213,7 +5720,8 @@ "fr": "Veuillez noter que cela peut prendre jusqu'à une heure pour mettre à jour.", "es": "Por favor tenga en cuenta que esto puede tomar hasta una hora para actualizar.", "ru": "Обратите внимание, что это может занять до одного часа для обновления.", - "it": "Si prega di notare che questo può richiedere fino a un'ora per aggiornare." + "it": "Si prega di notare che questo può richiedere fino a un'ora per aggiornare.", + "nl": "Houd er rekening mee dat het tot een uur kan duren om te updaten in discord." }, "titlefield": { "description": "title of the title field", @@ -5223,7 +5731,8 @@ "fr": "Titre", "es": "Título", "ru": "Заголовок", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "descriptionfield": { "description": "title of the description field", @@ -5233,7 +5742,8 @@ "fr": "Description", "es": "Descripción", "ru": "Описание", - "it": "Descrizione" + "it": "Descrizione", + "nl": "Beschrijving" }, "titleinvalid": { "description": "title of the invalid title error", @@ -5243,7 +5753,8 @@ "fr": "Le champ titre est obligatoire et doit être moins de 256 caractères.", "es": "El campo título es obligatorio y debe tener menos de 256 caracteres.", "ru": "Поле заголовка является обязательным и должно быть меньше чем 256 символов.", - "it": "Il campo titolo è obbligatorio e deve essere più corto di 256 caratteri." + "it": "Il campo titolo è obbligatorio e deve essere più corto di 256 caratteri.", + "nl": "Het titelveld is vereist en moet minder dan 256 tekens lang zijn." }, "descriptioninvalid": { "description": "title of the invalid description error", @@ -5253,7 +5764,8 @@ "fr": "Le champ description est obligatoire et doit être moins de 4096 caractères.", "es": "El campo descripción es obligatorio y debe tener menos de 4096 caracteres.", "ru": "Поле описания является обязательным и должно быть меньше чем 4096 символов.", - "it": "Il campo descrizione è obbligatorio e deve essere più corto di 4096 caratteri." + "it": "Il campo descrizione è obbligatorio e deve essere più corto di 4096 caratteri.", + "nl": "Het beschrijvingsveld is verplicht en moet minder dan 4096 tekens lang zijn." }, "iconfield": { "description": "This setting will show the application's icon in the embed when your MASZ instance is linked in Discord.", @@ -5263,7 +5775,8 @@ "fr": "Afficher l'icône de l'application dans l'encart.", "es": "Mostrar el icono de la aplicación en el anuncio.", "ru": "Показать иконку приложения в встроенном контенте, когда ваша страница MASZ будет привязана к Discord.", - "it": "Mostra l'icona dell'applicazione nell'embed quando il tuo istanza MASZ è collegata in Discord." + "it": "Mostra l'icona dell'applicazione nell'embed quando il tuo istanza MASZ è collegata in Discord.", + "nl": "Toon het pictogram van de applicatie in de embed." } }, "infrastructure": { @@ -5275,7 +5788,8 @@ "fr": "Infrastructure", "es": "Infraestructura", "ru": "Инфраструктура", - "it": "Infrastruttura" + "it": "Infrastruttura", + "nl": "Infrastructuur" }, "explained": { "description": "default language explained", @@ -5285,7 +5799,8 @@ "fr": "MASZ utilisera cette langue comme langue par défaut lorsque cela est possible. Cependant, il est possible que seule une version anglaise soit disponible pour certains textes. Les paramètres de guilde remplacent cette option.", "es": "MASZ utilizará este idioma como idioma predeterminado cuando sea posible. Sin embargo, es posible que solo una versión inglesa esté disponible para algunos textos. Los ajustes de la hermandad sobrescriben esta configuración.", "ru": "MASZ будет использовать этот язык по умолчанию, если это возможно. Однако, возможно, только английская версия доступна для некоторых текстов. Настройки гильдии перезаписывают этот параметр.", - "it": "MASZ userà questa lingua come lingua predefinita quando possibile. Tuttavia, è possibile che solo una versione inglese sia disponibile per alcuni testi. Le impostazioni della gilda sovrascrivono questa impostazione." + "it": "MASZ userà questa lingua come lingua predefinita quando possibile. Tuttavia, è possibile che solo una versione inglese sia disponibile per alcuni testi. Le impostazioni della gilda sovrascrivono questa impostazione.", + "nl": "MASZ gebruikt deze taal als de standaardtaal wanneer dat mogelijk is. Mogelijk is echter alleen een Engelse versie beschikbaar voor bepaalde teksten. Instellingen specifiek voor de server overschrijven deze instelling." }, "languagefield": { "description": "title of the language field", @@ -5295,7 +5810,8 @@ "fr": "Langue standard", "es": "Idioma predeterminado", "ru": "Стандартный язык", - "it": "Lingua predefinita" + "it": "Lingua predefinita", + "nl": "Standaardtaal" }, "explained2": { "description": "AuditlogWebhookurl explained", @@ -5305,7 +5821,8 @@ "fr": "Utilisez un webhook privé accessible uniquement pour les administrateurs du site, car il peut enregistrer des informations sensibles.", "es": "Utilice un webhook privado accesible solo para los administradores del sitio, ya que puede registrar información sensible.", "ru": "Используйте приватный вебхук, который доступен только для администраторов сайта, потому что он может записывать конфиденциальную информацию.", - "it": "Utilizzare un webhook privato accessibile solo per gli amministratori del sito, poiché può registrare informazioni sensibili." + "it": "Utilizzare un webhook privato accessibile solo per gli amministratori del sito, poiché può registrare informazioni sensibili.", + "nl": "Gebruik een privé-webhook die alleen toegankelijk is voor sitebeheerders, aangezien hier mogelijk gevoelige informatie in wordt gelogd." }, "webhookfield": { "description": "title of the webhook field", @@ -5315,7 +5832,8 @@ "fr": "URL du webhook d'audit", "es": "URL del webhook de auditoría", "ru": "URL вебхука аудита", - "it": "URL webhook audit" + "it": "URL webhook audit", + "nl": "Auditlog Webhook URL" }, "invalidwebhook": { "description": "invalid webhook error", @@ -5325,7 +5843,8 @@ "fr": "L'URL du webhook est invalide.", "es": "La URL del webhook no es válida.", "ru": "URL вебхука недействительна.", - "it": "L'URL webhook non è valido." + "it": "L'URL webhook non è valido.", + "nl": "De webhook URL is ongeldig." }, "explained3": { "description": "PublicFileMode explained", @@ -5335,7 +5854,8 @@ "fr": "Activez ceci pour autoriser l'accès public à tous les fichiers téléchargés.", "es": "Habilite esto para permitir el acceso público a todos los archivos subidos.", "ru": "Включите это, чтобы разрешить общий доступ ко всем загруженным файлам.", - "it": "Abilitare questo per consentire l'accesso pubblico a tutti i file caricati." + "it": "Abilitare questo per consentire l'accesso pubblico a tutti i file caricati.", + "nl": "Schakel dit in om openbare toegang tot alle geüploade bestanden toe te staan." }, "filemodefield": { "description": "title of the filemode field", @@ -5345,7 +5865,8 @@ "fr": "Mode de fichier public", "es": "Modo de archivo público", "ru": "Общий режим файла", - "it": "Modalità file pubblica" + "it": "Modalità file pubblica", + "nl": "Openbaar bestandsmodus" } } }, @@ -5358,7 +5879,8 @@ "fr": "Jetons", "es": "Fichas", "ru": "Токены", - "it": "Fogli" + "it": "Fogli", + "nl": "Tokens" }, "tabledescription": { "description": "description of the table", @@ -5368,7 +5890,8 @@ "fr": "En tant que administrateur du site, vous pouvez utiliser l'API MASZ pour implémenter vos propres scripts personnalisés et automatiser des choses sur MASZ. Créez un jeton ci-dessous pour vous authentifier contre l'API pendant que vous effectuez des requêtes Web. Incluez les jetons dans l'en-tête \"Authorization\" avec un préfixe \"Bearer \".", "es": "Como administrador de sitio, puedes usar la API MASZ para implementar tus propios scripts personalizados y automatizar cosas en MASZ. Crea una clave API debajo para autorizar a ti mismo contra la API mientras haces peticiones web. Incluye tokens en la cabecera \"Authorization\" con un prefijo \"Bearer \".", "ru": "Как администратор сайта, вы можете использовать методы API MASZ для реализации своих пользовательских скриптов и автоматизации всего на MASZ. Создайте ключ API ниже, чтобы авторизоваться против API при помощи запросов веб. Включите токены в заголовок \"Authorization\" с префиксом \"Bearer \".", - "it": "Come amministratore del sito, è possibile utilizzare le API MASZ per implementare i propri script personalizzati e automatizzare cose su MASZ. Crea una chiave API qui sotto per autenticarsi controllando l'API durante le richieste web. Includi i token nell'intestazione \"Authorization\" con un prefisso \"Bearer \"." + "it": "Come amministratore del sito, è possibile utilizzare le API MASZ per implementare i propri script personalizzati e automatizzare cose su MASZ. Crea una chiave API qui sotto per autenticarsi controllando l'API durante le richieste web. Includi i token nell'intestazione \"Authorization\" con un prefisso \"Bearer \".", + "nl": "Als sitebeheerder kunt u de MASZ API gebruiken om uw eigen aangepaste scripts te laten communiceren met MASZ en zaken te automatiseren. Maak hieronder een API-sleutel aan om uzelf te autoriseren voor de API bij het maken van webverzoeken. Voeg tokens toe aan de \"Authorization\" header met een \"Bearer\" voorvoegsel." }, "createnew": { "description": "description of the create new button", @@ -5378,7 +5901,8 @@ "fr": "Créer un nouveau jeton", "es": "Crear nueva ficha", "ru": "Создать новый токен", - "it": "Crea nuovo token" + "it": "Crea nuovo token", + "nl": "Maak nieuwe token aan" }, "documentation": { "description": "description of the documentation button", @@ -5388,7 +5912,8 @@ "fr": "Documentation", "es": "Documentación", "ru": "Документация", - "it": "Documentazione" + "it": "Documentazione", + "nl": "Documentatie" }, "support": { "description": "description of the support button", @@ -5398,7 +5923,8 @@ "fr": "Soutien", "es": "Apoyo", "ru": "Поддержка", - "it": "Supporto" + "it": "Supporto", + "nl": "Support" }, "deleteall": { "description": "description of the delete all button", @@ -5408,7 +5934,8 @@ "fr": "Supprimer tous les jetons", "es": "Eliminar todas las fichas", "ru": "Удалить все токены", - "it": "Elimina tutti i token" + "it": "Elimina tutti i token", + "nl": "Verwijder alle tokens" }, "delete": { "description": "description of the delete button", @@ -5418,7 +5945,8 @@ "fr": "Supprimer", "es": "Eliminar", "ru": "Удалить", - "it": "Elimina" + "it": "Elimina", + "nl": "Verwijder" }, "deleted": { "description": "description of the deleted message", @@ -5428,7 +5956,8 @@ "fr": "Jeton supprimé", "es": "Ficha eliminada", "ru": "Токен удален", - "it": "Token eliminato" + "it": "Token eliminato", + "nl": "Token verwijderd" }, "failedtodelete": { "description": "description of the failed to delete message", @@ -5438,7 +5967,8 @@ "fr": "Échec de la suppression", "es": "Error al eliminar", "ru": "Не удалось удалить", - "it": "Impossibile eliminare" + "it": "Impossibile eliminare", + "nl": "Verwijderen gefaald" }, "failedtoload": { "description": "description of the failed to load message", @@ -5448,7 +5978,8 @@ "fr": "Échec du chargement", "es": "Error al cargar", "ru": "Не удалось загрузить", - "it": "Impossibile caricare" + "it": "Impossibile caricare", + "nl": "Laden mislukt" }, "name": { "description": "name of the tokens section", @@ -5458,7 +5989,8 @@ "fr": "Nom", "es": "Nombre", "ru": "Имя", - "it": "Nome" + "it": "Nome", + "nl": "Naam" }, "createdat": { "description": "created at of the tokens section", @@ -5468,7 +6000,8 @@ "fr": "Créé le", "es": "Creado el", "ru": "Создано", - "it": "Creato il" + "it": "Creato il", + "nl": "Gemaakt op" }, "validuntil": { "description": "valid until of the tokens section", @@ -5478,7 +6011,8 @@ "fr": "Valide jusqu'au", "es": "Válido hasta", "ru": "Действителен до", - "it": "Valido fino al" + "it": "Valido fino al", + "nl": "Geldig tot" }, "action": { "description": "action of the tokens section", @@ -5488,7 +6022,8 @@ "fr": "Action", "es": "Acción", "ru": "Действие", - "it": "Azione" + "it": "Azione", + "nl": "Actie" }, "copy": { "description": "copy of the tokens section", @@ -5498,7 +6033,8 @@ "fr": "Copier", "es": "Copiar", "ru": "Копировать", - "it": "Copia" + "it": "Copia", + "nl": "Kopiëren" }, "cancel": { "description": "cancel of the tokens section", @@ -5508,7 +6044,8 @@ "fr": "Annuler", "es": "Cancelar", "ru": "Отменить", - "it": "Annulla" + "it": "Annulla", + "nl": "Annuleren" }, "powerful": { "description": "powerful of the tokens section", @@ -5518,7 +6055,8 @@ "fr": "Un clé API est très puissante et peut contrôler tout sur MASZ!", "es": "Una clave API es muy poderosa y puede controlar todo en MASZ!", "ru": "Ключ API очень мощный и может контролировать все на MASZ!", - "it": "Una API key è molto potente e può controllare tutto su MASZ!" + "it": "Una API key è molto potente e può controllare tutto su MASZ!", + "nl": "Een API-sleutel is zeer krachtig en kan alles op MASZ besturen!" }, "generate": { "description": "generate of the tokens section", @@ -5528,7 +6066,8 @@ "fr": "Générer", "es": "Generar", "ru": "Создать", - "it": "Genera" + "it": "Genera", + "nl": "Genereer" }, "unique": { "description": "unique of the tokens section", @@ -5538,7 +6077,8 @@ "fr": "Ceci est votre clé unique et elle ne peut pas être récupérée. Si vous perdez cette clé API, vous devrez la réinitialiser.", "es": "Esta es tu clave única y no se puede recuperar. Si pierdes esta clave API, tendrás que reiniciarla.", "ru": "Это ваш уникальный токен и он не может быть восстановлен. Если вы потеряете этот ключ API, вам придется его восстановить.", - "it": "Questo è il tuo token unico e non può essere ripristinato. Se perdi questa API key, dovrai ripristinarla." + "it": "Questo è il tuo token unico e non può essere ripristinato. Se perdi questa API key, dovrai ripristinarla.", + "nl": "Dit is uw unieke sleutel en deze is niet herstelbaar. Als u deze API-sleutel verliest, moet u deze opnieuw instellen." }, "onlyone": { "description": "onlyone of the tokens section", @@ -5548,7 +6088,8 @@ "fr": "Actuellement, vous ne pouvez créer qu'une clé API.", "es": "Actualmente solo puedes crear una clave API.", "ru": "В настоящее время вы можете создать только один токен.", - "it": "Attualmente puoi creare solo un token." + "it": "Attualmente puoi creare solo un token.", + "nl": "Momenteel kun je enkel één token aanmaken." } } }, @@ -5560,7 +6101,8 @@ "fr": "Erreur", "es": "Error", "ru": "Ошибка", - "it": "Errore" + "it": "Errore", + "nl": "Fout" }, "warns": { "description": "Warns", @@ -5570,7 +6112,8 @@ "fr": "Avertissements", "es": "Advertencias", "ru": "Предупреждения", - "it": "Avvertimenti" + "it": "Avvertimenti", + "nl": "Waarschuwingen" }, "mutes": { "description": "Mutes", @@ -5580,7 +6123,8 @@ "fr": "Mutes", "es": "Mutes", "ru": "Муты", - "it": "Mute" + "it": "Mute", + "nl": "Dempers" }, "kicks": { "description": "Kicks", @@ -5590,7 +6134,8 @@ "fr": "Expulsions", "es": "Expulsions", "ru": "Кики", - "it": "Kick" + "it": "Kick", + "nl": "Kicks" }, "bans": { "description": "Bans", @@ -5600,7 +6145,8 @@ "fr": "Bannissements", "es": "Bans", "ru": "Баны", - "it": "Ban" + "it": "Ban", + "nl": "Bans" }, "core": { "copiedtoclipboard": { @@ -5611,7 +6157,8 @@ "fr": "Copié dans le presse-papier", "es": "Copiado al portapapeles", "ru": "Скопировано в буфер обмена", - "it": "Copiato negli appunti" + "it": "Copiato negli appunti", + "nl": "Gekopieerd naar het klembord" }, "edit": { "description": "Edit", @@ -5621,7 +6168,8 @@ "fr": "Modifier", "es": "Editar", "ru": "Редактировать", - "it": "Modifica" + "it": "Modifica", + "nl": "Bijwerken" }, "delete": { "description": "Delete", @@ -5631,7 +6179,8 @@ "fr": "Supprimer", "es": "Eliminar", "ru": "Удалить", - "it": "Elimina" + "it": "Elimina", + "nl": "Verwijderen" }, "pagination": { "forwardtext": { @@ -5642,7 +6191,8 @@ "fr": "Page suivante", "es": "Página siguiente", "ru": "Следующая страница", - "it": "Pagina successiva" + "it": "Pagina successiva", + "nl": "Volgende pagina" }, "backwardtext": { "description": "Backward text", @@ -5652,7 +6202,8 @@ "fr": "Page précédente", "es": "Página anterior", "ru": "Предыдущая страница", - "it": "Pagina precedente" + "it": "Pagina precedente", + "nl": "Vorige pagina" }, "itemrangetext": { "description": "Item range text", @@ -5662,7 +6213,8 @@ "fr": "{min}-{max} de {total} éléments", "es": "{min}-{max} de {total} elementos", "ru": "{min}-{max} из {total} элементов", - "it": "{min}-{max} di {total} elementi" + "it": "{min}-{max} di {total} elementi", + "nl": "{min}-{max} van {total} items" }, "pagerangetext": { "description": "Page range text", @@ -5672,7 +6224,8 @@ "fr": "{de {total} page", "es": "de {total} página", "ru": "из {total} страницы", - "it": "di {total} pagina" + "it": "di {total} pagina", + "nl": "van {total} pagina" }, "pagerangetextplural": { "description": "Page range text", @@ -5682,7 +6235,8 @@ "fr": "{de {total} pages", "es": "de {total} páginas", "ru": "из {total} страниц", - "it": "di {total} pagine" + "it": "di {total} pagine", + "nl": "van {total} pagina's" } } }, @@ -5695,7 +6249,8 @@ "fr": "Comment aimez-vous MASZ?", "es": "¿Cómo te gusta MASZ?", "ru": "Как вам MASZ?", - "it": "Come ti piace MASZ?" + "it": "Come ti piace MASZ?", + "nl": "Wat vind je van MASZ?" }, "experience": { "description": "experience of the feedback section", @@ -5705,7 +6260,8 @@ "fr": "Évaluez votre expérience", "es": "Valora tu experiencia", "ru": "Оцените вашу опытность", - "it": "Valuta la tua esperienza" + "it": "Valuta la tua esperienza", + "nl": "Beoordeel je ervaring" }, "comment": { "description": "comment of the feedback section", @@ -5715,7 +6271,8 @@ "fr": "Laisser un commentaire (optionnel)", "es": "Dejar un comentario (opcional)", "ru": "Оставить комментарий (необязательно)", - "it": "Lascia un commento (opzionale)" + "it": "Lascia un commento (opzionale)", + "nl": "Laat een reactie achter (optioneel)" }, "commenttoolong": { "description": "commenttoolong of the feedback section", @@ -5725,7 +6282,8 @@ "fr": "Votre commentaire doit être de 4096 caractères ou moins", "es": "Tu comentario debe tener 4096 caracteres o menos", "ru": "Ваш комментарий должен быть 4096 символов или меньше", - "it": "Il tuo commento deve essere 4096 caratteri o meno" + "it": "Il tuo commento deve essere 4096 caratteri o meno", + "nl": "Je reactie moet 4096 tekens of minder zijn" }, "cancel": { "description": "cancel of the feedback section", @@ -5735,7 +6293,8 @@ "fr": "Annuler", "es": "Cancelar", "ru": "Отменить", - "it": "Annulla" + "it": "Annulla", + "nl": "Annuleren" }, "submit": { "description": "submit of the feedback section", @@ -5745,7 +6304,8 @@ "fr": "Soumettre", "es": "Enviar", "ru": "Отправить", - "it": "Invia" + "it": "Invia", + "nl": "Verzenden" }, "thanks": { "description": "thanks of the feedback section", @@ -5755,7 +6315,8 @@ "fr": "Merci pour votre avis!", "es": "¡Gracias por tu opinión!", "ru": "Спасибо за ваш отзыв!", - "it": "Grazie per il tuo feedback!" + "it": "Grazie per il tuo feedback!", + "nl": "Bedankt voor jouw feedback!" } }, "supportme": { @@ -5766,6 +6327,7 @@ "fr": "Soutenez-moi", "es": "Apoya", "ru": "Поддержите меня", - "it": "Supportami" + "it": "Supportami", + "nl": "Steun mij" } -} \ No newline at end of file +} From c36f8a449c39ba5b056154474f777c9b14fe65ef Mon Sep 17 00:00:00 2001 From: UponAnonymous Date: Fri, 21 Apr 2023 14:03:16 +0100 Subject: [PATCH 03/16] Updated backend_enum.json Added Dutch (NL) as a translation --- translations/backend_enum.json | 339 ++++++++++++++++++++++----------- 1 file changed, 229 insertions(+), 110 deletions(-) diff --git a/translations/backend_enum.json b/translations/backend_enum.json index 52170be05..ff84b8711 100644 --- a/translations/backend_enum.json +++ b/translations/backend_enum.json @@ -8,7 +8,8 @@ "fr": "Muet", "es": "Silencio", "ru": "Немой", - "it": "Muto" + "it": "Muto", + "nl": "Dempen" }, "Ban": { "description": "The word 'ban'", @@ -18,7 +19,8 @@ "fr": "Interdire", "es": "Prohibición", "ru": "Запретить", - "it": "Bandire" + "it": "Bandire", + "nl": "Ban" }, "Kick": { "description": "The word 'kick'", @@ -28,7 +30,8 @@ "fr": "Coup", "es": "Patear", "ru": "Пинать", - "it": "Calcio" + "it": "Calcio", + "nl": "Kick" }, "Warn": { "description": "The word 'warn'", @@ -38,7 +41,8 @@ "fr": "Avertir", "es": "Advertir", "ru": "Предупреждать", - "it": "Avvisare" + "it": "Avvisare", + "nl": "Waarschuwen" } }, "ViewPermission": { @@ -50,7 +54,8 @@ "fr": "Soi", "es": "Uno mismo", "ru": "Себя", - "it": "Se stesso" + "it": "Se stesso", + "nl": "Privé" }, "Guild": { "description": "A ressource with this permissions can only be seen by members of the guild. The word 'guild'.", @@ -60,7 +65,8 @@ "fr": "Guilde", "es": "Gremio", "ru": "Гильдия", - "it": "Gilda" + "it": "Gilda", + "nl": "Gilde" }, "Global": { "description": "A ressource with this permissions can be seen by everyone. The word 'global'.", @@ -70,7 +76,8 @@ "fr": "Global", "es": "Global", "ru": "Глобальный", - "it": "Globale" + "it": "Globale", + "nl": "Globaal" } }, "AutoModerationAction": { @@ -82,7 +89,8 @@ "fr": "Pas d'action", "es": "Ninguna acción", "ru": "Бездействие", - "it": "Nessuna azione" + "it": "Nessuna azione", + "nl": "Geen actie" }, "ContentDeleted": { "description": "The message is deleted. The word 'content deleted'.", @@ -92,7 +100,8 @@ "fr": "Contenu supprimé", "es": "Contenido eliminado", "ru": "Контент удален", - "it": "Contenuto eliminato" + "it": "Contenuto eliminato", + "nl": "Inhoud verwijderd" }, "CaseCreated": { "description": "A case is created. The word 'case created'.", @@ -102,7 +111,8 @@ "fr": "Cas créé", "es": "Caso creado", "ru": "Дело создано", - "it": "Caso creato" + "it": "Caso creato", + "nl": "Zaak aangemaakt" }, "ContentDeletedAndCaseCreated": { "description": "The message is deleted and a case is created. The word 'content deleted and case created'.", @@ -112,7 +122,8 @@ "fr": "Contenu supprimé et dossier créé", "es": "Contenido eliminado y caso creado", "ru": "Контент удален, а дело создано", - "it": "Contenuto eliminato e caso creato" + "it": "Contenuto eliminato e caso creato", + "nl": "Inhoud verwijderd en zaak aangemaakt" }, "Timeout": { "description": "The user is timed out. The word 'timeout'.", @@ -122,7 +133,8 @@ "fr": "Timeout", "es": "Timeout", "ru": "Таймаут", - "it": "Timeout" + "it": "Timeout", + "nl": "Timeout" } }, "AutoModerationType": { @@ -134,7 +146,8 @@ "fr": "Invitation publiée", "es": "Invitación publicada", "ru": "Приглашение опубликовано", - "it": "Invito pubblicato" + "it": "Invito pubblicato", + "nl": "Uitnodiging geplaatst" }, "TooManyEmotes": { "description": "A message with too many emotes is posted. The word 'too many emotes'.", @@ -144,7 +157,8 @@ "fr": "Trop d'émoticônes utilisées", "es": "Demasiados emotes usados", "ru": "Использовано слишком много эмоций", - "it": "Troppe emoticon usate" + "it": "Troppe emoticon usate", + "nl": "Te veel emoji's gebruikt" }, "TooManyMentions": { "description": "A message with too many mentions is posted. The word 'too many mentions'.", @@ -154,7 +168,8 @@ "fr": "Trop d'utilisateurs mentionnés", "es": "Demasiados usuarios mencionados", "ru": "Упомянуто слишком много пользователей", - "it": "Troppi utenti citati" + "it": "Troppi utenti citati", + "nl": "Te veel gebruikers vermeld" }, "TooManyAttachments": { "description": "A message with too many attachments is posted. The word 'too many attachments'.", @@ -164,7 +179,8 @@ "fr": "Trop de pièces jointes utilisées", "es": "Se han utilizado demasiados archivos adjuntos", "ru": "Использовано слишком много вложений", - "it": "Troppi allegati utilizzati" + "it": "Troppi allegati utilizzati", + "nl": "Te veel bijlagen gebruikt" }, "TooManyEmbeds": { "description": "A message with too many embeds is posted. The word 'too many embeds'.", @@ -174,7 +190,8 @@ "fr": "Trop d'intégrations utilisées", "es": "Se han utilizado demasiados elementos incrustados", "ru": "Использовано слишком много закладных", - "it": "Troppi incorporamenti utilizzati" + "it": "Troppi incorporamenti utilizzati", + "nl": "Te veel ingesloten inhoud gebruikt" }, "TooManyAutoModerations": { "description": "A user triggered too many automoderations. The word 'too many auto-moderations'.", @@ -184,7 +201,8 @@ "fr": "Trop de modérations automatiques", "es": "Demasiadas moderaciones automáticas", "ru": "Слишком много автоматических модераций", - "it": "Troppe moderazioni automatiche" + "it": "Troppe moderazioni automatiche", + "nl": "Te veel automatische moderaties" }, "CustomWordFilter": { "description": "A message with a custom word is posted. The word 'custom word'.", @@ -194,7 +212,8 @@ "fr": "Filtre de mots personnalisé déclenché", "es": "Filtro de palabras personalizado activado", "ru": "Пользовательский фильтр слов активирован", - "it": "Filtro parole personalizzato attivato" + "it": "Filtro parole personalizzato attivato", + "nl": "Aangepaste woordenfilter geactiveerd" }, "TooManyMessages": { "description": "A user posted too many messages. The word 'too many messages'.", @@ -204,7 +223,8 @@ "fr": "Trop de messages", "es": "Demasiados mensajes", "ru": "Слишком много сообщений", - "it": "Troppi messaggi" + "it": "Troppi messaggi", + "nl": "Te veel berichten" }, "TooManyDuplicatedCharacters": { "description": "A user posted a message with too many duplicated characters.", @@ -214,7 +234,8 @@ "fr": "Trop de caractères dupliqués utilisés", "es": "Se han utilizado demasiados caracteres duplicados", "ru": "Использовано слишком много повторяющихся символов", - "it": "Troppi caratteri duplicati utilizzati" + "it": "Troppi caratteri duplicati utilizzati", + "nl": "Te veel gedupliceerde karakters gebruikt" }, "TooManyLinks": { "description": "A user posted a message with too many links.", @@ -224,7 +245,8 @@ "fr": "Trop de liens utilisés", "es": "Se han utilizado demasiados enlaces", "ru": "Использовано слишком много ссылок", - "it": "Troppi link utilizzati" + "it": "Troppi link utilizzati", + "nl": "Te veel links gebruikt" }, "TooManyPhishingLinks": { "description": "A user posted a message with too many phishing links.", @@ -234,7 +256,8 @@ "fr": "Trop de liens de phishing utilisés", "es": "Se han utilizado demasiados enlaces de phishing", "ru": "Использовано слишком много ссылок на фишинг", - "it": "Troppi link di phishing utilizzati" + "it": "Troppi link di phishing utilizzati", + "nl": "Te veel phishing links gebruikt" } }, "APIError": { @@ -246,7 +269,8 @@ "fr": "Erreur inconnue", "es": "Error desconocido", "ru": "Неизвестная ошибка", - "it": "Errore sconosciuto" + "it": "Errore sconosciuto", + "nl": "Onbekende fout" }, "InvalidDiscordUser": { "description": "The user is not a valid discord user.", @@ -256,7 +280,8 @@ "fr": "Utilisateur discord invalide", "es": "Usuario de discordia no válido", "ru": "Недействительный пользователь Discord", - "it": "Utente discord non valido" + "it": "Utente discord non valido", + "nl": "Ongeldige Discord-gebruiker" }, "ProtectedModCaseSuspect": { "description": "This user is protected. Modcases cannot be created.", @@ -266,7 +291,8 @@ "fr": "L'utilisateur est protégé", "es": "El usuario está protegido", "ru": "Пользователь защищен", - "it": "L'utente è protetto" + "it": "L'utente è protetto", + "nl": "Gebruiker is beschermd" }, "ProtectedModCaseSuspectIsBot": { "description": "This user is protected. Modcases cannot be created.", @@ -276,7 +302,8 @@ "fr": "L'utilisateur est protégé. C'est un robot.", "es": "El usuario está protegido. El es un bot.", "ru": "Пользователь защищен. Он бот.", - "it": "L'utente è protetto. Lui è un bot." + "it": "L'utente è protetto. Lui è un bot.", + "nl": "Gebruiker is beschermd. Hij is een robot." }, "ProtectedModCaseSuspectIsSiteAdmin": { "description": "This user is protected. Modcases cannot be created.", @@ -286,7 +313,8 @@ "fr": "L'utilisateur est protégé. Il est administrateur du site.", "es": "El usuario está protegido. Es administrador de un sitio.", "ru": "Пользователь защищен. Он администратор сайта.", - "it": "L'utente è protetto. È un amministratore del sito." + "it": "L'utente è protetto. È un amministratore del sito.", + "nl": "Gebruiker is beschermd. Hij is een sitebeheerder." }, "ProtectedModCaseSuspectIsTeam": { "description": "This user is protected. Modcases cannot be created.", @@ -296,7 +324,8 @@ "fr": "L'utilisateur est protégé. Il est membre de l'équipe.", "es": "El usuario está protegido. Es un miembro del equipo.", "ru": "Пользователь защищен. Он член команды.", - "it": "L'utente è protetto. È un membro della squadra." + "it": "L'utente è protetto. È un membro della squadra.", + "nl": "Gebruiker is beschermd. Hij is een teamlid." }, "ResourceNotFound": { "description": "The resource could not be found.", @@ -306,7 +335,8 @@ "fr": "Ressource introuvable", "es": "Recurso no encontrado", "ru": "Ресурс не найден", - "it": "Risorsa non trovata" + "it": "Risorsa non trovata", + "nl": "Bron niet gevonden" }, "InvalidIdentity": { "description": "The identity is not valid.", @@ -316,7 +346,8 @@ "fr": "Identité invalide", "es": "Identidad inválida", "ru": "Неверная личность", - "it": "Identità non valida" + "it": "Identità non valida", + "nl": "Ongeldige identiteit" }, "GuildUnregistered": { "description": "The guild is not registered.", @@ -326,7 +357,8 @@ "fr": "La guilde n'est pas enregistrée", "es": "El gremio no está registrado", "ru": "Гильдия не зарегистрирована", - "it": "La gilda non è registrata" + "it": "La gilda non è registrata", + "nl": "Gilde is niet geregistreerd" }, "Unauthorized": { "description": "The user is not authorized.", @@ -336,7 +368,8 @@ "fr": "Non autorisé", "es": "No autorizado", "ru": "Неавторизованный", - "it": "non autorizzato" + "it": "non autorizzato", + "nl": "Onbevoegd" }, "GuildUndefinedMutedRoles": { "description": "The guild is not defined muted roles.", @@ -346,7 +379,8 @@ "fr": "La guilde n'a pas de rôle défini pour la punition muette.", "es": "El gremio no tiene roles definidos para el castigo mudo.", "ru": "У гильдии нет определенных ролей для немого наказания.", - "it": "La gilda non ha ruoli definiti per la punizione muta." + "it": "La gilda non ha ruoli definiti per la punizione muta.", + "nl": "Er zijn geen rollen gedefinieerd voor te dempen straffen in deze gilde" }, "ModCaseIsMarkedToBeDeleted": { "description": "The modcase is marked to be deleted.", @@ -356,7 +390,8 @@ "fr": "Modcase est marqué pour être supprimé", "es": "Modcase está marcado para ser eliminado", "ru": "Modcase отмечен для удаления", - "it": "Modcase è contrassegnato per essere eliminato" + "it": "Modcase è contrassegnato per essere eliminato", + "nl": "Modcase is gemarkeerd om te worden verwijderd" }, "ModCaseIsNotMarkedToBeDeleted": { "description": "The modcase is not marked to be deleted.", @@ -366,7 +401,8 @@ "fr": "Modcase n'est pas marqué pour être supprimé", "es": "Modcase no está marcado para ser eliminado", "ru": "Modcase не отмечен для удаления", - "it": "Modcase non è contrassegnato per essere eliminato" + "it": "Modcase non è contrassegnato per essere eliminato", + "nl": "Modcase is niet gemarkeerd om te worden verwijderd" }, "GuildAlreadyRegistered": { "description": "The guild is already registered.", @@ -376,7 +412,8 @@ "fr": "La guilde est déjà enregistrée", "es": "El gremio ya está registrado", "ru": "Гильдия уже зарегистрирована", - "it": "La gilda è già registrata" + "it": "La gilda è già registrata", + "nl": "Deze gilde is al geregistreerd" }, "NotAllowedInDemoMode": { "description": "This action is not allowed in demo mode.", @@ -386,7 +423,8 @@ "fr": "Cette action n'est pas autorisée en mode démo", "es": "Esta acción no está permitida en el modo de demostración.", "ru": "Это действие запрещено в демонстрационном режиме.", - "it": "Questa azione non è consentita in modalità demo" + "it": "Questa azione non è consentita in modalità demo", + "nl": "Deze actie is niet toegestaan in de demo-modus" }, "RoleNotFound": { "description": "The role could not be found.", @@ -396,7 +434,8 @@ "fr": "Rôle introuvable", "es": "Rol no encontrado", "ru": "Роль не найдена", - "it": "Ruolo non trovato" + "it": "Ruolo non trovato", + "nl": "Rol niet gevonden" }, "TokenCannotManageThisResource": { "description": "The token cannot manage this resource.", @@ -406,7 +445,8 @@ "fr": "Les jetons ne peuvent pas gérer cette ressource", "es": "Los tokens no pueden administrar este recurso", "ru": "Лексемы не могут управлять этим ресурсом", - "it": "I token non possono gestire questa risorsa" + "it": "I token non possono gestire questa risorsa", + "nl": "Tokens kunnen deze bron niet beheren" }, "TokenAlreadyRegistered": { "description": "The token is already registered.", @@ -416,7 +456,8 @@ "fr": "Le jeton est déjà enregistré", "es": "El token ya está registrado", "ru": "Токен уже зарегистрирован", - "it": "Il token è già registrato" + "it": "Il token è già registrato", + "nl": "Token is al geregistreerd" }, "CannotBeSameUser": { "description": "The user cannot be the same user.", @@ -426,7 +467,8 @@ "fr": "Les deux utilisateurs sont les mêmes.", "es": "Ambos usuarios son iguales.", "ru": "Оба пользователя одинаковые.", - "it": "Entrambi gli utenti sono gli stessi." + "it": "Entrambi gli utenti sono gli stessi.", + "nl": "Beide gebruikers zijn hetzelfde." }, "ResourceAlreadyExists": { "description": "The resource already exists.", @@ -436,7 +478,8 @@ "fr": "La ressource existe déjà", "es": "El recurso ya existe", "ru": "Ресурс уже существует", - "it": "La risorsa esiste già" + "it": "La risorsa esiste già", + "nl": "Bron bestaat al" }, "ModCaseDoesNotAllowComments": { "description": "The modcase does not allow comments.", @@ -446,7 +489,8 @@ "fr": "Les commentaires sont verrouillés pour ce modcase", "es": "Los comentarios están bloqueados para este modcase", "ru": "Комментарии заблокированы для этого мода", - "it": "I commenti sono bloccati per questo modcase" + "it": "I commenti sono bloccati per questo modcase", + "nl": "Reacties zijn vergrendeld voor deze modcase" }, "LastCommentAlreadyFromSuspect": { "description": "The last comment was already from the suspect.", @@ -456,7 +500,8 @@ "fr": "Le dernier commentaire était déjà du suspect.", "es": "El último comentario ya era del sospechoso.", "ru": "Последний комментарий уже был от подозреваемого.", - "it": "L'ultimo commento era già del sospettato." + "it": "L'ultimo commento era già del sospettato.", + "nl": "De laatste opmerking was al van de verdachte" }, "InvalidAutomoderationAction": { "description": "The automoderation action is not valid.", @@ -466,7 +511,8 @@ "fr": "Action de modération automatique non valide", "es": "Acción de automoderación no válida", "ru": "Недопустимое действие автомодерации", - "it": "Azione di moderazione automatica non valida" + "it": "Azione di moderazione automatica non valida", + "nl": "Ongeldige automoderatie actie" }, "InvalidAutomoderationType": { "description": "The automoderation type is not valid.", @@ -476,7 +522,8 @@ "fr": "Type d'automodération non valide", "es": "Tipo de automoderación no válido", "ru": "Неверный тип автомодерации.", - "it": "Tipo di moderazione automatica non valido" + "it": "Tipo di moderazione automatica non valido", + "nl": "Ongeldige automoderatie type" }, "TooManyTemplates": { "description": "The user has reached the max limit of templates.", @@ -486,7 +533,8 @@ "fr": "L'utilisateur a atteint la limite maximale de modèles", "es": "El usuario ha alcanzado el límite máximo de plantillas", "ru": "Пользователь достиг максимального предела шаблонов", - "it": "L'utente ha raggiunto il limite massimo di modelli" + "it": "L'utente ha raggiunto il limite massimo di modelli", + "nl": "De gebruiker heeft het maximale aantal sjablonen bereikt" }, "InvalidFilePath": { "description": "The file path is not valid.", @@ -496,7 +544,8 @@ "fr": "Chemin de fichier invalide", "es": "Ruta de archivo no válida", "ru": "Неверный путь к файлу", - "it": "Percorso file non valido" + "it": "Percorso file non valido", + "nl": "Ongeldig bestandspad" }, "NoGuildsRegistered": { "description": "There are no guilds registered.", @@ -506,7 +555,8 @@ "fr": "Il n'y a pas de guildes enregistrées", "es": "No hay gremios registrados", "ru": "Нет зарегистрированных гильдий", - "it": "Non ci sono gilde registrate" + "it": "Non ci sono gilde registrate", + "nl": "Er zijn geen gilde's geregistreerd" }, "OnlyUsableInAGuild": { "description": "This action is only usable in a guild.", @@ -516,7 +566,8 @@ "fr": "Cette action n'est utilisable que dans une guilde", "es": "Esta acción solo se puede usar en un gremio.", "ru": "Это действие доступно только в гильдии.", - "it": "Questa azione è utilizzabile solo in una gilda" + "it": "Questa azione è utilizzabile solo in una gilda", + "nl": "Deze actie kan enkel gebruikt worden in een gilde" }, "InvalidAuditLogEvent": { "description": "The auditlogevent type is not valid.", @@ -526,7 +577,8 @@ "fr": "Type d'événement auditlog non valide", "es": "Tipo de evento de auditoría no válido", "ru": "Неверный тип auditlogevent", - "it": "Tipo di evento auditlog non valido" + "it": "Tipo di evento auditlog non valido", + "nl": "Ongeldig auditlogevent type" }, "ProtectedScheduledMessage": { "description": "The scheduled message is protected and cannot be deleted.", @@ -536,7 +588,8 @@ "fr": "Le message planifié est protégé et ne peut pas être supprimé.", "es": "El mensaje programado está protegido y no se puede eliminar.", "ru": "Запланированное сообщение защищено и не может быть удалено.", - "it": "Il messaggio programmato è protetto e non può essere eliminato." + "it": "Il messaggio programmato è protetto e non può essere eliminato.", + "nl": "Het geplande bericht is beschermd en kan niet worden verwijderd." }, "InvalidDateForScheduledMessage": { "description": "the provided date is invalid (most likely in the past)", @@ -546,7 +599,8 @@ "fr": "La date d'exécution doit être au moins une minute dans le futur.", "es": "La fecha de ejecución debe ser al menos un minuto en el futuro.", "ru": "Дата выполнения должна быть не менее одной минуты в будущем.", - "it": "La data di esecuzione deve essere almeno un minuto nel futuro." + "it": "La data di esecuzione deve essere almeno un minuto nel futuro.", + "nl": "De uitvoeringsdatum moet minstens één minuut in de toekomst liggen." } }, "CaseCreationType": { @@ -558,7 +612,8 @@ "fr": "Défaut", "es": "Defecto", "ru": "Дефолт", - "it": "Predefinito" + "it": "Predefinito", + "nl": "Standaard" }, "AutoModeration": { "description": "Case is automoderated.", @@ -568,7 +623,8 @@ "fr": "Le cas est automodéré.", "es": "El caso está autoderado.", "ru": "Корпус автоматический.", - "it": "Il caso è moderato automaticamente." + "it": "Il caso è moderato automaticamente.", + "nl": "Zaak is automatisch gemodereerd" }, "Imported": { "description": "Case is imported.", @@ -578,7 +634,8 @@ "fr": "Le cas est importé.", "es": "El caso es importado.", "ru": "Корпус импортный.", - "it": "Il caso è importato." + "it": "Il caso è importato.", + "nl": "Zaak is geïmporteerd" }, "ByCommand": { "description": "Case created by command.", @@ -588,8 +645,9 @@ "fr": "Cas créé par commande.", "es": "Caso creado por comando.", "ru": "Дело создано командой.", - "it": "Caso creato da comando." - } + "it": "Caso creato da comando.", + "nl": "Zaak aangemaakt door opdracht." + } }, "Language": { "en": { @@ -600,7 +658,8 @@ "fr": "Anglais", "es": "inglés", "ru": "английский", - "it": "inglese" + "it": "inglese", + "nl": "Engels" }, "de": { "description": "the german language.", @@ -610,7 +669,8 @@ "fr": "Allemand", "es": "alemán", "ru": "Немецкий", - "it": "Tedesco" + "it": "Tedesco", + "nl": "Duits" }, "fr": { "description": "the french language.", @@ -620,7 +680,8 @@ "fr": "français", "es": "francés", "ru": "французкий язык", - "it": "francese" + "it": "francese", + "nl": "Frans" }, "es": { "description": "the spanish language.", @@ -630,7 +691,8 @@ "fr": "Espagnol", "es": "Español", "ru": "испанский", - "it": "spagnolo" + "it": "spagnolo", + "nl": "Spaans" }, "it": { "description": "the italian language.", @@ -640,7 +702,8 @@ "fr": "italien", "es": "italiano", "ru": "Итальянский", - "it": "italiano" + "it": "italiano", + "nl": "Italiaans" }, "at": { "description": "the austrian language.", @@ -650,7 +713,8 @@ "fr": "autrichien", "es": "austriaco", "ru": "Австрийский", - "it": "austriaco" + "it": "austriaco", + "nl": "Oostenrijks" }, "ru": { "description": "the russian language.", @@ -660,7 +724,19 @@ "fr": "Russe", "es": "Ruso", "ru": "Русский", - "it": "Russo" + "it": "Russo", + "nl": "Russisch" + }, + "nl": { + "description": "the dutch language.", + "en": "Dutch", + "de": "Niederländisch", + "at": "Niederländisch", + "fr": "Néerlandais", + "es": "Neerlandés", + "ru": "Голландский", + "it": "Olandese", + "nl": "Nederlands" } }, "AutoModerationChannelNotificationBehavior": { @@ -672,7 +748,8 @@ "fr": "Notification de chaîne", "es": "Notificación de canal", "ru": "Уведомление канала", - "it": "Notifica del canale" + "it": "Notifica del canale", + "nl": "Kanaalnotificatie" }, "SendNotificationAndDelete": { "description": "A notification is send and the message is deleted shortly after.", @@ -682,7 +759,8 @@ "fr": "Notification de chaîne temporaire", "es": "Notificación de canal temporal", "ru": "Уведомление о временном канале", - "it": "Notifica temporanea del canale" + "it": "Notifica temporanea del canale", + "nl": "Voorlopige kanaalnotificatie" }, "NoNotification": { "description": "No notification is send.", @@ -692,7 +770,8 @@ "fr": "Aucune notification de chaîne", "es": "Sin notificación de canal", "ru": "Уведомление о канале отсутствует", - "it": "Nessuna notifica del canale" + "it": "Nessuna notifica del canale", + "nl": "Geen kanaalnotificatie" } }, "EditStatus": { @@ -704,7 +783,8 @@ "fr": "Rien", "es": "Ninguna", "ru": "Никто", - "it": "Nessuno" + "it": "Nessuno", + "nl": "Geen" }, "Unedited": { "description": "The case is not edited.", @@ -714,7 +794,8 @@ "fr": "Non édité", "es": "No editado", "ru": "Не редактировалось", - "it": "Non modificato" + "it": "Non modificato", + "nl": "Niet aangepast" }, "Edited": { "description": "The case is edited.", @@ -724,7 +805,8 @@ "fr": "Édité", "es": "Editado", "ru": "Отредактировано", - "it": "Modificato" + "it": "Modificato", + "nl": "Aangepast" } }, "LockedCommentStatus": { @@ -736,7 +818,8 @@ "fr": "Rien", "es": "Ninguna", "ru": "Никто", - "it": "Nessuno" + "it": "Nessuno", + "nl": "Geen" }, "Locked": { "description": "The comment is locked.", @@ -746,7 +829,8 @@ "fr": "Fermé à clé", "es": "Bloqueado", "ru": "Заблокировано", - "it": "bloccato" + "it": "bloccato", + "nl": "Vergrendeld" }, "Unlocked": { "description": "The comment is unlocked.", @@ -756,7 +840,8 @@ "fr": "Débloqué", "es": "Desbloqueado", "ru": "Разблокирован", - "it": "sbloccato" + "it": "sbloccato", + "nl": "Ontgrendeld" } }, "MarkedToDeleteStatus": { @@ -768,7 +853,8 @@ "fr": "Rien", "es": "Ninguna", "ru": "Никто", - "it": "Nessuno" + "it": "Nessuno", + "nl": "Geen" }, "Marked": { "description": "The case is marked to delete.", @@ -778,7 +864,8 @@ "fr": "Marqué à supprimer", "es": "Marcado para eliminar", "ru": "Отмечено для удаления", - "it": "Contrassegnato per eliminare" + "it": "Contrassegnato per eliminare", + "nl": "Gemarkeerd om te verwijderen" }, "Unmarked": { "description": "The case is not marked to delete.", @@ -788,7 +875,8 @@ "fr": "Non marqué pour supprimer", "es": "No marcado para eliminar", "ru": "Не отмечен для удаления", - "it": "Non contrassegnato per l'eliminazione" + "it": "Non contrassegnato per l'eliminazione", + "nl": "Niet gemarkeerd om te verwijderen" } }, "PunishmentActiveStatus": { @@ -800,7 +888,8 @@ "fr": "Rien", "es": "Ninguna", "ru": "Никто", - "it": "Nessuno" + "it": "Nessuno", + "nl": "Geen" }, "Active": { "description": "The punishment is active.", @@ -810,7 +899,8 @@ "fr": "actif", "es": "Activo", "ru": "Активный", - "it": "Attivo" + "it": "Attivo", + "nl": "Actief" }, "Inactive": { "description": "The punishment is inactive.", @@ -820,7 +910,8 @@ "fr": "Inactif", "es": "Inactivo", "ru": "Неактивный", - "it": "Non attivo" + "it": "Non attivo", + "nl": "niet actief" } }, "GuildAuditLogEvent": { @@ -832,7 +923,8 @@ "fr": "Message envoyé", "es": "Mensaje enviado", "ru": "Сообщение отправлено", - "it": "Messaggio inviato" + "it": "Messaggio inviato", + "nl": "Bericht verzonden" }, "MessageUpdated": { "description": "A message was updated.", @@ -842,7 +934,8 @@ "fr": "Message mis à jour", "es": "Mensaje actualizado", "ru": "Сообщение обновлено", - "it": "Messaggio aggiornato" + "it": "Messaggio aggiornato", + "nl": "Bericht bijgewerkt" }, "MessageDeleted": { "description": "A message was deleted.", @@ -852,7 +945,8 @@ "fr": "Message supprimé", "es": "Mensaje borrado", "ru": "Сообщение удалено", - "it": "Messaggio cancellato" + "it": "Messaggio cancellato", + "nl": "Bericht verwijderd" }, "UsernameUpdated": { "description": "The username was updated.", @@ -862,7 +956,8 @@ "fr": "Nom d'utilisateur mis à jour", "es": "Nombre de usuario actualizado", "ru": "Имя пользователя обновлено", - "it": "Nome utente aggiornato" + "it": "Nome utente aggiornato", + "nl": "Gebruikersnaam bijgewerkt" }, "AvatarUpdated": { "description": "The avatar was updated.", @@ -872,7 +967,8 @@ "fr": "Avatar mis à jour", "es": "Avatar actualizado", "ru": "Аватар обновлен", - "it": "Avatar aggiornato" + "it": "Avatar aggiornato", + "nl": "Avatar bijgewerkt" }, "NicknameUpdated": { "description": "The nickname was updated.", @@ -882,7 +978,8 @@ "fr": "Pseudo mis à jour", "es": "Se actualizó el apodo", "ru": "Псевдоним обновлен", - "it": "Nickname aggiornato" + "it": "Nickname aggiornato", + "nl": "Nickame bijgewerkt" }, "MemberRolesUpdated": { "description": "The member roles were updated.", @@ -892,7 +989,8 @@ "fr": "Rôles des membres mis à jour", "es": "Se actualizaron las funciones de los miembros", "ru": "Роли участников обновлены", - "it": "Ruoli dei membri aggiornati" + "it": "Ruoli dei membri aggiornati", + "nl": "Lidrollen bijgewerkt" }, "MemberJoined": { "description": "A member joined the guild.", @@ -902,7 +1000,8 @@ "fr": "Membre rejoint", "es": "Miembro se unió", "ru": "Участник присоединился", - "it": "Membro iscritto" + "it": "Membro iscritto", + "nl": "Lid toegetreden" }, "MemberRemoved": { "description": "A member was removed from the guild.", @@ -912,7 +1011,8 @@ "fr": "Membre supprimé", "es": "Miembro eliminado", "ru": "Участник удален", - "it": "Membro rimosso" + "it": "Membro rimosso", + "nl": "Lid verwijderd" }, "BanAdded": { "description": "A member was banned from the guild.", @@ -922,7 +1022,8 @@ "fr": "Membre banni", "es": "Miembro prohibido", "ru": "Участник забанен", - "it": "Membro bannato" + "it": "Membro bannato", + "nl": "Lid geband" }, "BanRemoved": { "description": "A member was unbanned from the guild.", @@ -932,7 +1033,8 @@ "fr": "Membre non banni", "es": "Miembro no prohibido", "ru": "Участник разблокирован", - "it": "Membro non bannato" + "it": "Membro non bannato", + "nl": "Lid onbannen" }, "InviteCreated": { "description": "An invite was created.", @@ -942,7 +1044,8 @@ "fr": "Invitation créée", "es": "Invitación creada", "ru": "Приглашение создано", - "it": "Invito creato" + "it": "Invito creato", + "nl": "Uitnodiging aangemaakt" }, "InviteDeleted": { "description": "An invite was deleted.", @@ -952,7 +1055,8 @@ "fr": "Invitation supprimée", "es": "Invitación eliminada", "ru": "Приглашение удалено", - "it": "Invito cancellato" + "it": "Invito cancellato", + "nl": "Uitnodiging verwijderd" }, "ThreadCreated": { "description": "A thread was created.", @@ -962,7 +1066,8 @@ "fr": "Fil créé", "es": "Hilo creado", "ru": "Тема создана", - "it": "Discussione creata" + "it": "Discussione creata", + "nl": "Thread aangemaakt" }, "VoiceJoined": { "description": "A member joined a voice channel.", @@ -972,7 +1077,8 @@ "fr": "Membre rejoint le salon vocal", "es": "Miembro se unió al canal de voz", "ru": "Участник присоединился к голосовому каналу", - "it": "Membro entrato nel canale vocale" + "it": "Membro entrato nel canale vocale", + "nl": "Lid aangesloten bij spraakkanaal" }, "VoiceLeft": { "description": "A member left a voice channel.", @@ -982,7 +1088,8 @@ "fr": "Membre a quitté le salon vocal", "es": "Miembro dejó el canal de voz", "ru": "Участник покинул голосовой канал", - "it": "Membro uscito dal canale vocale" + "it": "Membro uscito dal canale vocale", + "nl": "Lid verliet spraakkanaal" }, "VoiceMoved": { "description": "A member moved to a different voice channel.", @@ -992,7 +1099,8 @@ "fr": "Membre a déplacé le salon vocal", "es": "Miembro movió al canal de voz", "ru": "Участник переместился в другой голосовой канал", - "it": "Membro spostato nel canale vocale" + "it": "Membro spostato nel canale vocale", + "nl": "Lid veranderde van spraakkanaal" }, "ReactionAdded": { "description": "A reaction was added to a message.", @@ -1002,7 +1110,8 @@ "fr": "Réaction ajoutée", "es": "Reacción añadida", "ru": "Реакция добавлена", - "it": "Risposta aggiunta" + "it": "Risposta aggiunta", + "nl": "Reactie toegevoegd" }, "ReactionRemoved": { "description": "A reaction was removed from a message.", @@ -1012,7 +1121,8 @@ "fr": "Réaction supprimée", "es": "Reacción eliminada", "ru": "Реакция удалена", - "it": "Risposta rimossa" + "it": "Risposta rimossa", + "nl": "Reactie verwijderd" } }, "ScheduledMessageFailureReason": { @@ -1024,7 +1134,8 @@ "fr": "Erreur inconnue", "es": "Error desconocido", "ru": "Неизвестная ошибка", - "it": "Errore sconosciuto" + "it": "Errore sconosciuto", + "nl": "Onbekende fout" }, "ChannelNotFound": { "description": "The channel was not found.", @@ -1034,7 +1145,8 @@ "fr": "Canal introuvable", "es": "Canal no encontrado", "ru": "Канал не найден", - "it": "Canale non trovato" + "it": "Canale non trovato", + "nl": "Kanaal niet gevonden" }, "InsufficientPermission": { "description": "The user does not have permission to send messages in the channel.", @@ -1044,7 +1156,8 @@ "fr": "Permission insuffisante", "es": "Permiso insuficiente", "ru": "Недостаточно прав", - "it": "Permessi insufficienti" + "it": "Permessi insufficienti", + "nl": "Onvoldoende toestemming" } }, "ScheduledMessageStatus": { @@ -1056,7 +1169,8 @@ "fr": "En attente", "es": "Pendiente", "ru": "Ожидается", - "it": "In attesa" + "it": "In attesa", + "nl": "In afwachting" }, "Sent": { "description": "The scheduled message was sent.", @@ -1066,7 +1180,8 @@ "fr": "Envoyé", "es": "Enviado", "ru": "Отправлено", - "it": "Inviato" + "it": "Inviato", + "nl": "Verzonden" }, "Failed": { "description": "The scheduled message failed to send.", @@ -1076,7 +1191,8 @@ "fr": "Échec", "es": "Falló", "ru": "Не удалось отправить", - "it": "Invio fallito" + "it": "Invio fallito", + "nl": "Gefaald" } }, "AppealStatus": { @@ -1088,7 +1204,8 @@ "fr": "En attente", "es": "Pendiente", "ru": "Ожидается", - "it": "In attesa" + "it": "In attesa", + "nl": "In afwachting" }, "Approved": { "description": "The appeal was approved.", @@ -1098,7 +1215,8 @@ "fr": "Approuvé", "es": "Aprobado", "ru": "Утвержден", - "it": "Approvato" + "it": "Approvato", + "nl": "Aanvaard" }, "Declined": { "description": "The appeal was declined.", @@ -1108,7 +1226,8 @@ "fr": "Refusé", "es": "Denegado", "ru": "Отклонен", - "it": "Rifiutato" + "it": "Rifiutato", + "nl": "Geweigerd" } } -} \ No newline at end of file +} From 6bddf3cdbb5a47b9edefa9c753a016b355bd7d0a Mon Sep 17 00:00:00 2001 From: UponAnonymous Date: Fri, 21 Apr 2023 14:03:39 +0100 Subject: [PATCH 04/16] Updated backend.json Added Dutch (NL) as a translation --- translations/backend.json | 1183 ++++++++++++++++++++++++------------- 1 file changed, 773 insertions(+), 410 deletions(-) diff --git a/translations/backend.json b/translations/backend.json index 00d0fd946..f2949de11 100644 --- a/translations/backend.json +++ b/translations/backend.json @@ -9,7 +9,8 @@ "fr": "Antiraid", "es": "Antiraid", "ru": "Антирайд", - "it": "Antiraid" + "it": "Antiraid", + "nl": "Antiraid" }, "Desc": { "description": "Timeout a specific user and delete all his messages in the last 2 hours.", @@ -19,7 +20,8 @@ "fr": "Mettez un utilisateur spécifique en sourdine et supprimez tous ses messages des 2 dernières heures.", "es": "Ponga en silencio a un usuario específico y elimine todos sus mensajes de las últimas 2 horas.", "ru": "Заглушите определенного пользователя и удалите все его сообщения за последние 2 часа.", - "it": "Disattiva un utente specifico e elimina tutti i suoi messaggi negli ultimi 2 ore." + "it": "Disattiva un utente specifico e elimina tutti i suoi messaggi negli ultimi 2 ore.", + "nl": "Timeout een specifieke gebruiker en verwijder al zijn berichten in de laatste 2 uur." }, "User": { "Name": { @@ -30,7 +32,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -40,7 +43,8 @@ "fr": "utilisateur à punir", "es": "usuario a castigar", "ru": "пользователь для наказания", - "it": "utente da punire" + "it": "utente da punire", + "nl": "te straffen gebruiker" } } }, @@ -53,7 +57,8 @@ "fr": "Avatar", "es": "Avatar", "ru": "Аватар", - "it": "Avatar" + "it": "Avatar", + "nl": "Avatar" }, "Desc": { "description": "Get the high resolution avatar of a user.", @@ -63,7 +68,8 @@ "fr": "Obtenez l'avatar haute résolution d'un utilisateur.", "es": "Obtenga el avatar de alta resolución de un usuario.", "ru": "Получите высокое разрешение аватара пользователя.", - "it": "Ottieni l'avatar ad alta risoluzione di un utente." + "it": "Ottieni l'avatar ad alta risoluzione di un utente.", + "nl": "Krijg de hoge resolutie avatar van een gebruiker" }, "User": { "Name": { @@ -74,7 +80,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -84,7 +91,8 @@ "fr": "Utilisateur dont vous souhaitez obtenir l'avatar", "es": "Usuario del que desea obtener el avatar", "ru": "Пользователь, аватар которого вы хотите получить", - "it": "Utente di cui si desidera ottenere l'avatar" + "it": "Utente di cui si desidera ottenere l'avatar", + "nl": "Gebruiker om de avatar van te nemen" } } }, @@ -97,7 +105,8 @@ "fr": "Bannir", "es": "Prohibir", "ru": "Запретить", - "it": "Bandire" + "it": "Bandire", + "nl": "Ban" }, "Desc": { "description": "Ban a user and create a modcase", @@ -107,7 +116,8 @@ "fr": "Bannir un utilisateur et créer un cas de modération", "es": "Prohibir a un usuario y crear un caso de moderación", "ru": "Запретить пользователя и создать модкейс", - "it": "Bandire un utente e creare un caso di moderazione" + "it": "Bandire un utente e creare un caso di moderazione", + "nl": "Ban een gebruiker en maak een modcase aan" }, "User": { "Name": { @@ -118,7 +128,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -128,7 +139,8 @@ "fr": "utilisateur à punir", "es": "usuario a castigar", "ru": "пользователь для наказания", - "it": "utente da punire" + "it": "utente da punire", + "nl": "gebruiker om te straffen" } }, "Title": { @@ -140,7 +152,8 @@ "fr": "Titre", "es": "Título", "ru": "Заголовок", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "Desc": { "description": "The description of the 'title' parameter", @@ -150,7 +163,8 @@ "fr": "Titre du cas de modération", "es": "Título del caso de moderación", "ru": "Заголовок модкейса", - "it": "Titolo del caso di moderazione" + "it": "Titolo del caso di moderazione", + "nl": "Titel van de modcase" } }, "Details": { @@ -162,7 +176,8 @@ "fr": "Détails", "es": "Detalles", "ru": "Детали", - "it": "Dettagli" + "it": "Dettagli", + "nl": "Details" }, "Desc": { "description": "The description of the 'details' parameter", @@ -172,7 +187,8 @@ "fr": "Détails du cas de modération", "es": "Detalles del caso de moderación", "ru": "Детали модкейса", - "it": "Dettagli del caso di moderazione" + "it": "Dettagli del caso di moderazione", + "nl": "Details van de modcase" } }, "hours": { @@ -184,7 +200,8 @@ "fr": "Heures", "es": "Horas", "ru": "Часы", - "it": "Ore" + "it": "Ore", + "nl": "Uur" }, "Desc": { "description": "The description of the 'hours' parameter", @@ -194,7 +211,8 @@ "fr": "Heures pour bannir l'utilisateur", "es": "Horas para prohibir al usuario", "ru": "Часы, чтобы запретить пользователю", - "it": "Ore per bandire l'utente" + "it": "Ore per bandire l'utente", + "nl": "Uur om de geruiker te verbannen" }, "None": { "Name": { @@ -205,7 +223,8 @@ "fr": "Illimité", "es": "Ilimitado", "ru": "Неограниченный", - "it": "Illimitato" + "it": "Illimitato", + "nl": "Oneindig" } }, "1 Hour": { @@ -217,7 +236,8 @@ "fr": "1 heure", "es": "1 hora", "ru": "1 час", - "it": "1 ora" + "it": "1 ora", + "nl": "1 Uur" } }, "1 Day": { @@ -229,7 +249,8 @@ "fr": "1 jour", "es": "1 día", "ru": "1 день", - "it": "1 giorno" + "it": "1 giorno", + "nl": "1 Dag" } }, "1 Week": { @@ -241,7 +262,8 @@ "fr": "1 semaine", "es": "1 semana", "ru": "1 неделя", - "it": "1 settimana" + "it": "1 settimana", + "nl": "1 Week" } }, "1 Month": { @@ -253,7 +275,8 @@ "fr": "1 mois", "es": "1 mes", "ru": "1 месяц", - "it": "1 mese" + "it": "1 mese", + "nl": "1 Maand" } } }, @@ -266,7 +289,8 @@ "fr": "DM", "es": "DM", "ru": "DM", - "it": "DM" + "it": "DM", + "nl": "DM" }, "Desc": { "description": "Whether to send a dm notification", @@ -276,7 +300,8 @@ "fr": "Si une notification DM doit être envoyée", "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", - "it": "Se inviare una notifica DM" + "it": "Se inviare una notifica DM", + "nl": "Of een DM-melding moet worden verzonden" } }, "public-notification": { @@ -288,7 +313,8 @@ "fr": "public", "es": "público", "ru": "общественный", - "it": "pubblico" + "it": "pubblico", + "nl": "openbaar" }, "Desc": { "description": "Whether to send a public notification", @@ -298,7 +324,8 @@ "fr": "Si une notification publique doit être envoyée", "es": "Si se debe enviar una notificación pública", "ru": "Отправлять ли общественное уведомление", - "it": "Se inviare una notifica pubblica" + "it": "Se inviare una notifica pubblica", + "nl": "Of een openbare melding moet worden verzonden" } }, "execute-punishment": { @@ -310,7 +337,8 @@ "fr": "exécuter", "es": "ejecutar", "ru": "выполнить", - "it": "eseguire" + "it": "eseguire", + "nl": "uitvoeren" }, "Desc": { "description": "Whether to execute the punishment", @@ -320,7 +348,8 @@ "fr": "Si la punition doit être exécutée", "es": "Si se debe ejecutar el castigo", "ru": "Выполнить ли наказание", - "it": "Se eseguire la punizione" + "it": "Se eseguire la punizione", + "nl": "Of de straf moet uitgevoerd worden" } } }, @@ -333,7 +362,8 @@ "fr": "Nettoyage", "es": "Limpieza", "ru": "Очистка", - "it": "Pulizia" + "it": "Pulizia", + "nl": "Opruimen" }, "Desc": { "description": "The description of the 'cleanup' command", @@ -343,7 +373,8 @@ "fr": "Nettoyez des données spécifiques du serveur et / ou de la chaîne.", "es": "Limpie datos específicos del servidor y / o del canal.", "ru": "Очистите определенные данные с сервера и / или канала.", - "it": "Pulisci dati specifici dal server e / o dal canale." + "it": "Pulisci dati specifici dal server e / o dal canale.", + "nl": "Ruim specifieke data van de server en/of kanaal op." }, "Mode": { "Name": { @@ -354,7 +385,8 @@ "fr": "mode", "es": "modo", "ru": "режим", - "it": "modo" + "it": "modo", + "nl": "modus" }, "Desc": { "description": "The description of the 'mode' argument", @@ -364,7 +396,8 @@ "fr": "les données que vous souhaitez supprimer", "es": "los datos que desea eliminar", "ru": "какие данные вы хотите удалить", - "it": "i dati che si desidera eliminare" + "it": "i dati che si desidera eliminare", + "nl": "welke data wenst u te verwijderen" } }, "Channel": { @@ -376,7 +409,8 @@ "fr": "canal", "es": "canal", "ru": "канал", - "it": "canale" + "it": "canale", + "nl": "kanaal" }, "Desc": { "description": "The description of the 'channel' argument", @@ -386,7 +420,8 @@ "fr": "où supprimer, par défaut sur le courant.", "es": "dónde eliminar, por defecto en el actual.", "ru": "куда удалять, по умолчанию - текущий.", - "it": "dove eliminare, di default corrente." + "it": "dove eliminare, di default corrente.", + "nl": "waar te verwijderen, staat standaard ingesteld op huidig." } }, "Count": { @@ -398,7 +433,8 @@ "fr": "compter", "es": "contar", "ru": "считать", - "it": "contare" + "it": "contare", + "nl": "tel" }, "Desc": { "description": "The description of the 'count' argument", @@ -408,7 +444,8 @@ "fr": "combien de messages supprimer, par défaut sur 100.", "es": "cuántos mensajes eliminar, por defecto en 100.", "ru": "сколько сообщений удалять, по умолчанию - 100.", - "it": "quanti messaggi eliminare, di default 100." + "it": "quanti messaggi eliminare, di default 100.", + "nl": "hoeveel berichten te verwijderen, standaard ingesteld op 100." } }, "User": { @@ -420,7 +457,8 @@ "fr": "utilisateur", "es": "usuario", "ru": "пользователь", - "it": "utente" + "it": "utente", + "nl": "gebruiker" }, "Desc": { "description": "The description of the 'user' argument", @@ -430,7 +468,8 @@ "fr": "filtre supplémentaire sur cet utilisateur", "es": "filtro adicional en este usuario", "ru": "дополнительный фильтр на этого пользователя", - "it": "filtro aggiuntivo su questo utente" + "it": "filtro aggiuntivo su questo utente", + "nl": "extra filter op deze gebruiker" } } }, @@ -443,7 +482,8 @@ "fr": "fonctionnalités", "es": "características", "ru": "особенности", - "it": "caratteristiche" + "it": "caratteristiche", + "nl": "functies" }, "Desc": { "description": "The description of the 'features' command", @@ -453,7 +493,8 @@ "fr": "Vérifie si d'autres configurations sont nécessaires pour utiliser les fonctionnalités de MASZ.", "es": "Comprueba si se necesita más configuración para usar las características de MASZ.", "ru": "Проверяет, нужна ли дополнительная конфигурация для использования функций MASZ.", - "it": "Controlla se è necessaria ulteriore configurazione per utilizzare le funzionalità di MASZ." + "it": "Controlla se è necessaria ulteriore configurazione per utilizzare le funzionalità di MASZ.", + "nl": "Bekijkt of verdere configuratie nodig is om gebruik te maken van MASZ functies." } }, "Github": { @@ -465,7 +506,8 @@ "fr": "github", "es": "github", "ru": "github", - "it": "github" + "it": "github", + "nl": "github" }, "Desc": { "description": "The description of the 'github' command", @@ -475,7 +517,8 @@ "fr": "Affiche le lien vers le référentiel github.", "es": "Muestra el enlace al repositorio de github.", "ru": "Отображает ссылку на репозиторий github.", - "it": "Mostra il link al repository github." + "it": "Mostra il link al repository github.", + "nl": "Toont de link naar de github-repository." } }, "Invite": { @@ -487,7 +530,8 @@ "fr": "inviter", "es": "invitar", "ru": "пригласить", - "it": "invitare" + "it": "invitare", + "nl": "uitnodigen" }, "Desc": { "description": "The description of the 'invite' command", @@ -497,7 +541,8 @@ "fr": "Comment inviter ce bot.", "es": "Cómo invitar a este bot.", "ru": "Как пригласить этого бота.", - "it": "Come invitare questo bot." + "it": "Come invitare questo bot.", + "nl": "Hoe nodig je deze bot uit." } }, "Kick": { @@ -509,7 +554,8 @@ "fr": "Expulser", "es": "Patada", "ru": "Кик", - "it": "Calcio" + "it": "Calcio", + "nl": "Kick" }, "Desc": { "description": "Kick a user and create a modcase", @@ -519,7 +565,8 @@ "fr": "Expulsez un utilisateur et créez un cas de modération", "es": "Expulsa a un usuario y crea un caso de moderación", "ru": "Выгнать пользователя и создать модкейс", - "it": "Espelli un utente e crea un caso di moderazione" + "it": "Espelli un utente e crea un caso di moderazione", + "nl": "Kick een gebruiker en maak een modcase aan" }, "User": { "Name": { @@ -530,7 +577,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -540,7 +588,8 @@ "fr": "utilisateur à punir", "es": "usuario a castigar", "ru": "пользователь для наказания", - "it": "utente da punire" + "it": "utente da punire", + "nl": "te straffen gebruiker" } }, "Title": { @@ -552,7 +601,8 @@ "fr": "Titre", "es": "Título", "ru": "Заголовок", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "Desc": { "description": "The description of the 'title' parameter", @@ -562,7 +612,8 @@ "fr": "Titre du cas de modération", "es": "Título del caso de moderación", "ru": "Заголовок модкейса", - "it": "Titolo del caso di moderazione" + "it": "Titolo del caso di moderazione", + "nl": "Titel van de modcase" } }, "Details": { @@ -574,7 +625,8 @@ "fr": "Détails", "es": "Detalles", "ru": "Детали", - "it": "Dettagli" + "it": "Dettagli", + "nl": "Details" }, "Desc": { "description": "The description of the 'details' parameter", @@ -584,7 +636,8 @@ "fr": "Détails du cas de modération", "es": "Detalles del caso de moderación", "ru": "Детали модкейса", - "it": "Dettagli del caso di moderazione" + "it": "Dettagli del caso di moderazione", + "nl": "Details van de modcase" } }, "dm-notification": { @@ -596,7 +649,8 @@ "fr": "DM", "es": "DM", "ru": "DM", - "it": "DM" + "it": "DM", + "nl": "DM" }, "Desc": { "description": "Whether to send a dm notification", @@ -606,7 +660,8 @@ "fr": "Si une notification DM doit être envoyée", "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", - "it": "Se inviare una notifica DM" + "it": "Se inviare una notifica DM", + "nl": "Of een DM-melding moet worden verzonden" } }, "public-notification": { @@ -618,7 +673,8 @@ "fr": "public", "es": "público", "ru": "общественный", - "it": "pubblico" + "it": "pubblico", + "nl": "openbaar" }, "Desc": { "description": "Whether to send a public notification", @@ -628,7 +684,8 @@ "fr": "Si une notification publique doit être envoyée", "es": "Si se debe enviar una notificación pública", "ru": "Отправлять ли общественное уведомление", - "it": "Se inviare una notifica pubblica" + "it": "Se inviare una notifica pubblica", + "nl": "Of een openbare melding moet worden verzonden" } }, "execute-punishment": { @@ -640,7 +697,8 @@ "fr": "exécuter", "es": "ejecutar", "ru": "выполнить", - "it": "eseguire" + "it": "eseguire", + "nl": "uitvoeren" }, "Desc": { "description": "Whether to execute the punishment", @@ -650,7 +708,8 @@ "fr": "Si la punition doit être exécutée", "es": "Si se debe ejecutar el castigo", "ru": "Выполнить ли наказание", - "it": "Se eseguire la punizione" + "it": "Se eseguire la punizione", + "nl": "Of de straf moet uitgevoerd worden" } } }, @@ -663,7 +722,8 @@ "fr": "Muet", "es": "Silenciar", "ru": "Заглушить", - "it": "Silenzia" + "it": "Silenzia", + "nl": "Dempen" }, "Desc": { "description": "Mute a user and create a modcase", @@ -673,7 +733,8 @@ "fr": "Muet un utilisateur et crée un cas de modération", "es": "Silencia a un usuario y crea un caso de moderación", "ru": "Заглушить пользователя и создать модкейс", - "it": "Silenzia un utente e crea un caso di moderazione" + "it": "Silenzia un utente e crea un caso di moderazione", + "nl": "Demp een gebruiker en maak een modcase aan" }, "User": { "Name": { @@ -684,7 +745,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -694,7 +756,8 @@ "fr": "utilisateur à punir", "es": "usuario a castigar", "ru": "пользователь для наказания", - "it": "utente da punire" + "it": "utente da punire", + "nl": "te straffen gebruiker" } }, "Title": { @@ -706,7 +769,8 @@ "fr": "Titre", "es": "Título", "ru": "Заголовок", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "Desc": { "description": "The description of the 'title' parameter", @@ -716,7 +780,8 @@ "fr": "Titre du cas de modération", "es": "Título del caso de moderación", "ru": "Заголовок модкейса", - "it": "Titolo del caso di moderazione" + "it": "Titolo del caso di moderazione", + "nl": "Titel van de modcase" } }, "Details": { @@ -728,7 +793,8 @@ "fr": "Détails", "es": "Detalles", "ru": "Детали", - "it": "Dettagli" + "it": "Dettagli", + "nl": "Details" }, "Desc": { "description": "The description of the 'details' parameter", @@ -738,7 +804,8 @@ "fr": "Détails du cas de modération", "es": "Detalles del caso de moderación", "ru": "Детали модкейса", - "it": "Dettagli del caso di moderazione" + "it": "Dettagli del caso di moderazione", + "nl": "Details van de modcase" } }, "hours": { @@ -750,7 +817,8 @@ "fr": "Heures", "es": "Horas", "ru": "Часы", - "it": "Ore" + "it": "Ore", + "nl": "Uur" }, "Desc": { "description": "The description of the 'hours' parameter", @@ -760,7 +828,8 @@ "fr": "Heures pour rendre muet l'utilisateur", "es": "Horas para silenciar al usuario", "ru": "Часы для заглушения пользователя", - "it": "Ore per silenziare l'utente" + "it": "Ore per silenziare l'utente", + "nl": "Uur om de gebruiker te dempen" }, "None": { "Name": { @@ -771,7 +840,8 @@ "fr": "Illimité", "es": "Ilimitado", "ru": "Неограниченный", - "it": "Illimitato" + "it": "Illimitato", + "nl": "oneindig" } }, "1 Hour": { @@ -783,7 +853,8 @@ "fr": "1 heure", "es": "1 hora", "ru": "1 час", - "it": "1 ora" + "it": "1 ora", + "nl": "1 Uur" } }, "1 Day": { @@ -795,7 +866,8 @@ "fr": "1 jour", "es": "1 día", "ru": "1 день", - "it": "1 giorno" + "it": "1 giorno", + "nl": "1 Dag" } }, "1 Week": { @@ -807,7 +879,8 @@ "fr": "1 semaine", "es": "1 semana", "ru": "1 неделя", - "it": "1 settimana" + "it": "1 settimana", + "nl": "1 Week" } }, "1 Month": { @@ -819,7 +892,8 @@ "fr": "1 mois", "es": "1 mes", "ru": "1 месяц", - "it": "1 mese" + "it": "1 mese", + "nl": "1 Maand" } } }, @@ -832,7 +906,8 @@ "fr": "DM", "es": "DM", "ru": "DM", - "it": "DM" + "it": "DM", + "nl": "DM" }, "Desc": { "description": "Whether to send a dm notification", @@ -842,7 +917,8 @@ "fr": "Si une notification DM doit être envoyée", "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", - "it": "Se inviare una notifica DM" + "it": "Se inviare una notifica DM", + "nl": "Of een DM-melding moet worden verzonden" } }, "public-notification": { @@ -854,7 +930,8 @@ "fr": "public", "es": "público", "ru": "общественный", - "it": "pubblico" + "it": "pubblico", + "nl": "openbaar" }, "Desc": { "description": "Whether to send a public notification", @@ -864,7 +941,8 @@ "fr": "Si une notification publique doit être envoyée", "es": "Si se debe enviar una notificación pública", "ru": "Отправлять ли общественное уведомление", - "it": "Se inviare una notifica pubblica" + "it": "Se inviare una notifica pubblica", + "nl": "Of een openbare melding moet worden verzonden" } }, "execute-punishment": { @@ -876,7 +954,8 @@ "fr": "exécuter", "es": "ejecutar", "ru": "выполнить", - "it": "eseguire" + "it": "eseguire", + "nl": "uitvoeren" }, "Desc": { "description": "Whether to execute the punishment", @@ -886,7 +965,8 @@ "fr": "Si la punition doit être exécutée", "es": "Si se debe ejecutar el castigo", "ru": "Выполнить ли наказание", - "it": "Se eseguire la punizione" + "it": "Se eseguire la punizione", + "nl": "Of de straf moet uitgevoerd worden" } } }, @@ -899,7 +979,8 @@ "fr": "Signaler aux", "es": "Reportar a los moderadores", "ru": "Сообщить модераторам", - "it": "Segnala ai moderatori" + "it": "Segnala ai moderatori", + "nl": "Rapporteer aan moderatoren" }, "Desc": { "description": "The description of the 'Report' command", @@ -909,7 +990,8 @@ "fr": "Signaler aux", "es": "Reportar a los moderadores", "ru": "Сообщить модераторам", - "it": "Segnala ai moderatori" + "it": "Segnala ai moderatori", + "nl": "Rapporteer aan moderatoren" } }, "Say": { @@ -921,7 +1003,8 @@ "fr": "Dire", "es": "Decir", "ru": "Сказать", - "it": "Dire" + "it": "Dire", + "nl": "Zeg" }, "Desc": { "description": "The description of the 'Say' command", @@ -931,7 +1014,8 @@ "fr": "Permet au bot d'envoyer un message.", "es": "Deja que el bot envíe un mensaje.", "ru": "Позволяет боту отправить сообщение.", - "it": "Permetti al bot di inviare un messaggio." + "it": "Permetti al bot di inviare un messaggio.", + "nl": "Laat de bot een bericht sturen." }, "Message": { "Name": { @@ -942,7 +1026,8 @@ "fr": "Message", "es": "Mensaje", "ru": "Сообщение", - "it": "Messaggio" + "it": "Messaggio", + "nl": "Bericht" }, "Desc": { "description": "The description of the 'Message' argument", @@ -952,7 +1037,8 @@ "fr": "Le message à envoyer.", "es": "El mensaje a enviar.", "ru": "Сообщение для отправки.", - "it": "Il messaggio da inviare." + "it": "Il messaggio da inviare.", + "nl": "Te verzenden bericht." } }, "Channel": { @@ -964,7 +1050,8 @@ "fr": "Canal", "es": "Canal", "ru": "Канал", - "it": "Canale" + "it": "Canale", + "nl": "Kanaal" }, "Desc": { "description": "The description of the 'Channel' argument", @@ -974,7 +1061,8 @@ "fr": "canal dans lequel écrire le message, par défaut actuel", "es": "canal en el que escribir el mensaje, predeterminado actual", "ru": "канал для записи сообщения, по умолчанию текущий", - "it": "canale in cui scrivere il messaggio, predefinito corrente" + "it": "canale in cui scrivere il messaggio, predefinito corrente", + "nl": "Kanaal om het bericht in te sturen, staat standaard ingesteld op huidig" } } }, @@ -987,7 +1075,8 @@ "fr": "Statut", "es": "Estado", "ru": "Статус", - "it": "Stato" + "it": "Stato", + "nl": "Status" }, "Desc": { "description": "The description of the 'Status' command", @@ -997,7 +1086,8 @@ "fr": "Voir l'état actuel de votre application.", "es": "Ver el estado actual de su aplicación.", "ru": "Посмотрите текущий статус вашего приложения.", - "it": "Vedi lo stato attuale della tua applicazione." + "it": "Vedi lo stato attuale della tua applicazione.", + "nl": "Bekijk de huidige status van uw aanvraag." } }, "Track": { @@ -1009,7 +1099,8 @@ "fr": "Piste", "es": "Pista", "ru": "Дорожка", - "it": "Traccia" + "it": "Traccia", + "nl": "Volgen" }, "Desc": { "description": "The description of the 'Track' command", @@ -1019,7 +1110,8 @@ "fr": "Suivez une invitation, son créateur et ses utilisateurs.", "es": "Rastree una invitación, su creador y sus usuarios.", "ru": "Отслеживайте приглашение, его создателя и его пользователей.", - "it": "Traccia un invito, il suo creatore e i suoi utenti." + "it": "Traccia un invito, il suo creatore e i suoi utenti.", + "nl": "Volg een uitnodiging, de maker en de gebruikers ervan." }, "Invite": { "Name": { @@ -1030,7 +1122,8 @@ "fr": "Inviter", "es": "Invitar", "ru": "Приглашать", - "it": "Invitare" + "it": "Invitare", + "nl": "Uitnodiging" }, "Desc": { "description": "The description of the 'Invite' argument", @@ -1040,7 +1133,8 @@ "fr": "Entrez soit le code d'invitation, soit l'URL", "es": "Ingrese el código de invitación o la URL", "ru": "Введите код приглашения или URL", - "it": "Inserisci il codice di invito o l'URL" + "it": "Inserisci il codice di invito o l'URL", + "nl": "Voeg de uitnodigingscode of de URL toe" } } }, @@ -1053,7 +1147,8 @@ "fr": "Débannir", "es": "Desbanear", "ru": "Разбанить", - "it": "Sbannare" + "it": "Sbannare", + "nl": "onbannen" }, "Desc": { "description": "The description of the 'Unban' command", @@ -1063,7 +1158,8 @@ "fr": "Débannir un utilisateur en désactivant tous ses modcases.", "es": "Desbanea a un usuario desactivando todos sus modcases.", "ru": "Разбаньте пользователя, отключив все его модкейсы.", - "it": "Sbanna un utente disattivando tutti i suoi modcase." + "it": "Sbanna un utente disattivando tutti i suoi modcase.", + "nl": "Maak een gebruiker weer actief door al zijn modcases te deactiveren." }, "User": { "Name": { @@ -1074,7 +1170,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'User' argument", @@ -1084,7 +1181,8 @@ "fr": "L'utilisateur à débannir", "es": "El usuario a desbanear", "ru": "Пользователь, которого нужно разбанить", - "it": "L'utente da sbannare" + "it": "L'utente da sbannare", + "nl": "De gebruiker die moet worden onbannen" } } }, @@ -1097,7 +1195,8 @@ "fr": "Démuter", "es": "Desmutear", "ru": "Размутить", - "it": "Smutare" + "it": "Smutare", + "nl": "Dempen opheffen" }, "Desc": { "description": "The description of the 'Unmute' command", @@ -1107,7 +1206,8 @@ "fr": "Débannir un utilisateur en désactivant tous ses modcases.", "es": "Desbanea a un usuario desactivando todos sus modcases.", "ru": "Разбаньте пользователя, отключив все его модкейсы.", - "it": "Sbanna un utente disattivando tutti i suoi modcase." + "it": "Sbanna un utente disattivando tutti i suoi modcase.", + "nl": "Dempen van een gebruiker ongedaan maken door al zijn modcases te deactiveren." }, "User": { "Name": { @@ -1118,7 +1218,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'User' argument", @@ -1128,7 +1229,8 @@ "fr": "L'utilisateur à débannir", "es": "El usuario a desbanear", "ru": "Пользователь, которого нужно разбанить", - "it": "L'utente da sbannare" + "it": "L'utente da sbannare", + "nl": "De gebruiker om te onbannen" } } }, @@ -1141,7 +1243,8 @@ "fr": "URL", "es": "URL", "ru": "URL", - "it": "URL" + "it": "URL", + "nl": "URL" }, "Desc": { "description": "The description of the 'URL' command", @@ -1151,7 +1254,8 @@ "fr": "Affiche l'URL sur laquelle MASZ est déployé.", "es": "Muestra la URL en la que se implementa MASZ.", "ru": "Отображает URL, на котором развернут MASZ.", - "it": "Mostra l'URL su cui è installato MASZ." + "it": "Mostra l'URL su cui è installato MASZ.", + "nl": "Geeft de URL weer waarop MASZ is geïmplementeerd." } }, "View": { @@ -1163,7 +1267,8 @@ "fr": "Voir", "es": "Ver", "ru": "Посмотреть", - "it": "Vedere" + "it": "Vedere", + "nl": "Bekijken" }, "Desc": { "description": "The description of the 'View' command", @@ -1173,7 +1278,8 @@ "fr": "Afficher un modcase.", "es": "Ver un modcase.", "ru": "Посмотреть модкейс.", - "it": "Visualizza un modcase." + "it": "Visualizza un modcase.", + "nl": "Bekijk een modcase" }, "Id": { "Name": { @@ -1184,7 +1290,8 @@ "fr": "Id", "es": "Id", "ru": "Id", - "it": "Id" + "it": "Id", + "nl": "Id" }, "Desc": { "description": "The description of the 'Id' argument", @@ -1194,7 +1301,8 @@ "fr": "L'identifiant du modcase à afficher.", "es": "El id del modcase a ver.", "ru": "Идентификатор просматриваемого модкейса.", - "it": "L'id del modcase da visualizzare." + "it": "L'id del modcase da visualizzare.", + "nl": "Het ID van de modcase om te bekijken." } }, "Guildid": { @@ -1206,7 +1314,8 @@ "fr": "Guildid", "es": "Guildid", "ru": "Guildid", - "it": "Guildid" + "it": "Guildid", + "nl": "Guildid" }, "Desc": { "description": "The description of the 'Guildid' argument", @@ -1216,7 +1325,8 @@ "fr": "L'identifiant de la guilde dans laquelle se trouve le modcase.", "es": "El id de la guilda en la que está el modcase.", "ru": "Идентификатор гильдии, в которой находится модкейс.", - "it": "L'id della gilda in cui si trova il modcase." + "it": "L'id della gilda in cui si trova il modcase.", + "nl": "De Id van de gilde waarin de modcase zich bevindt." } } }, @@ -1229,7 +1339,8 @@ "fr": "Avertir", "es": "Advertir", "ru": "Предупредить", - "it": "Avvertire" + "it": "Avvertire", + "nl": "Waarschuwen" }, "Desc": { "description": "Warn a user and create a modcase", @@ -1239,7 +1350,8 @@ "fr": "Avertir un utilisateur et créer un modcase", "es": "Advertir a un usuario y crear un modcase", "ru": "Предупредить пользователя и создать модкейс", - "it": "Avvertire un utente e creare un modcase" + "it": "Avvertire un utente e creare un modcase", + "nl": "Waarschuw een gebruiker en maak een modcase aan" }, "User": { "Name": { @@ -1250,7 +1362,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' parameter", @@ -1260,7 +1373,8 @@ "fr": "utilisateur à punir", "es": "usuario a castigar", "ru": "пользователь для наказания", - "it": "utente da punire" + "it": "utente da punire", + "nl": "Te straffen gebruiker" } }, "Title": { @@ -1272,7 +1386,8 @@ "fr": "Titre", "es": "Título", "ru": "Заголовок", - "it": "Titolo" + "it": "Titolo", + "nl": "Titel" }, "Desc": { "description": "The description of the 'title' parameter", @@ -1282,7 +1397,8 @@ "fr": "Titre du cas de modération", "es": "Título del caso de moderación", "ru": "Заголовок модкейса", - "it": "Titolo del caso di moderazione" + "it": "Titolo del caso di moderazione", + "nl": "Titel van de modcase" } }, "Details": { @@ -1294,7 +1410,8 @@ "fr": "Détails", "es": "Detalles", "ru": "Детали", - "it": "Dettagli" + "it": "Dettagli", + "nl": "Details" }, "Desc": { "description": "The description of the 'details' parameter", @@ -1304,7 +1421,8 @@ "fr": "Détails du cas de modération", "es": "Detalles del caso de moderación", "ru": "Детали модкейса", - "it": "Dettagli del caso di moderazione" + "it": "Dettagli del caso di moderazione", + "nl": "Details van de modcase" } }, "dm-notification": { @@ -1316,7 +1434,8 @@ "fr": "DM", "es": "DM", "ru": "DM", - "it": "DM" + "it": "DM", + "nl": "DM" }, "Desc": { "description": "Whether to send a dm notification", @@ -1326,7 +1445,8 @@ "fr": "Si une notification DM doit être envoyée", "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", - "it": "Se inviare una notifica DM" + "it": "Se inviare una notifica DM", + "nl": "Of een DM-melding moet worden verzonden" } }, "public-notification": { @@ -1338,7 +1458,8 @@ "fr": "public", "es": "público", "ru": "общественный", - "it": "pubblico" + "it": "pubblico", + "nl": "openbaar" }, "Desc": { "description": "Whether to send a public notification", @@ -1348,7 +1469,8 @@ "fr": "Si une notification publique doit être envoyée", "es": "Si se debe enviar una notificación pública", "ru": "Отправлять ли общественное уведомление", - "it": "Se inviare una notifica pubblica" + "it": "Se inviare una notifica pubblica", + "nl": "Of een openbare melding moet worden verzonden" } }, "execute-punishment": { @@ -1360,7 +1482,8 @@ "fr": "exécuter", "es": "ejecutar", "ru": "выполнить", - "it": "eseguire" + "it": "eseguire", + "nl": "uitvoeren" }, "Desc": { "description": "Whether to execute the punishment", @@ -1370,7 +1493,8 @@ "fr": "Si la punition doit être exécutée", "es": "Si se debe ejecutar el castigo", "ru": "Выполнить ли наказание", - "it": "Se eseguire la punizione" + "it": "Se eseguire la punizione", + "nl": "of de straf moet uitgevoerd worden" } } }, @@ -1383,7 +1507,8 @@ "fr": "Whois", "es": "Whois", "ru": "Whois", - "it": "Whois" + "it": "Whois", + "nl": "Whois" }, "Desc": { "description": "The description of the 'whois' command", @@ -1393,7 +1518,8 @@ "fr": "Affiche des informations sur un utilisateur", "es": "Muestra información sobre un usuario", "ru": "Показывает информацию о пользователе", - "it": "Mostra informazioni su un utente" + "it": "Mostra informazioni su un utente", + "nl": "Toont informatie over een gebruiker" }, "User": { "Name": { @@ -1404,7 +1530,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Desc": { "description": "The description of the 'user' argument", @@ -1414,7 +1541,8 @@ "fr": "Utilisateur pour afficher les informations", "es": "Usuario para mostrar información", "ru": "Пользователь для отображения информации", - "it": "Utente per mostrare le informazioni" + "it": "Utente per mostrare le informazioni", + "nl": "Gebruiker om informatie van te tonen" } } } @@ -1427,7 +1555,8 @@ "fr": "Caractéristiques", "es": "Características", "ru": "Функции", - "it": "Caratteristiche" + "it": "Caratteristiche", + "nl": "Functies" }, "Automoderation": { "description": "The word 'Automoderation'", @@ -1437,7 +1566,8 @@ "fr": "Automodération", "es": "Automoderación", "ru": "Автомобильная промышленность", - "it": "Automoderazione" + "it": "Automoderazione", + "nl": "Automatische moderatie" }, "Action": { "description": "The word 'Action'", @@ -1447,7 +1577,8 @@ "fr": "action", "es": "Acción", "ru": "Действие", - "it": "Azione" + "it": "Azione", + "nl": "Actie" }, "NotFound": { "description": "The word 'NotFound'", @@ -1457,7 +1588,8 @@ "fr": "Pas trouvé.", "es": "Extraviado.", "ru": "Не найден.", - "it": "Non trovato." + "it": "Non trovato.", + "nl": "Niet gevonden" }, "Author": { "description": "The word 'Author'", @@ -1467,7 +1599,8 @@ "fr": "Auteur", "es": "Autor", "ru": "Автор", - "it": "Autore" + "it": "Autore", + "nl": "Auteur" }, "MessageContent": { "description": "The word 'message content'", @@ -1477,7 +1610,8 @@ "fr": "Contenu du message", "es": "Contenido del mensaje", "ru": "Содержание сообщения", - "it": "Contenuto del messaggio" + "it": "Contenuto del messaggio", + "nl": "Berichtinhoud" }, "ViewDetailsOn": { "description": "you can view details on url", @@ -1490,7 +1624,8 @@ "fr": "Voir les détails sur : {url}", "es": "Ver detalles en: {url}", "ru": "Подробнее о: {url}", - "it": "Visualizza dettagli su: {url}" + "it": "Visualizza dettagli su: {url}", + "nl": "Bekijk details op: {url}" }, "Attachments": { "description": "The word 'attachments'", @@ -1500,7 +1635,8 @@ "fr": "Pièces jointes", "es": "Archivos adjuntos", "ru": "Вложения", - "it": "Allegati" + "it": "Allegati", + "nl": "Bijlagen" }, "Attachment": { "description": "The word 'attachment'", @@ -1510,7 +1646,8 @@ "fr": "Attachement", "es": "Adjunto", "ru": "Вложение", - "it": "allegato" + "it": "allegato", + "nl": "Bijlage" }, "AndXMore": { "description": "The word 'and x more'", @@ -1523,7 +1660,8 @@ "fr": "et {count} plus...", "es": "y {count} más ...", "ru": "и еще {count} ...", - "it": "e {count} altro..." + "it": "e {count} altro...", + "nl": "en nog {count}..." }, "Channel": { "description": "The word 'channel'", @@ -1533,7 +1671,8 @@ "fr": "Canaliser", "es": "Canal", "ru": "Канал", - "it": "Canale" + "it": "Canale", + "nl": "Kanaal" }, "SomethingWentWrong": { "description": "The word 'something went wrong.'", @@ -1543,7 +1682,8 @@ "fr": "Quelque chose s'est mal passé.", "es": "Algo salió mal.", "ru": "Что-то пошло не так.", - "it": "Qualcosa è andato storto." + "it": "Qualcosa è andato storto.", + "nl": "Er is iets misgegaan." }, "Code": { "description": "The word 'code'. like in 'the error code'", @@ -1553,7 +1693,8 @@ "fr": "Code", "es": "Código", "ru": "Код", - "it": "Codice" + "it": "Codice", + "nl": "Code" }, "LanguageWord": { "description": "The word 'language'", @@ -1563,7 +1704,8 @@ "fr": "Langue", "es": "Idioma", "ru": "Язык", - "it": "Lingua" + "it": "Lingua", + "nl": "Taal" }, "Timestamps": { "description": "The word 'timestamps'", @@ -1573,7 +1715,8 @@ "fr": "Horodatage", "es": "Marcas de tiempo", "ru": "Отметки времени", - "it": "Timestamp" + "it": "Timestamp", + "nl": "Tijdstempels" }, "Support": { "description": "The word 'support'", @@ -1583,7 +1726,8 @@ "fr": "Soutien", "es": "Apoyo", "ru": "Служба поддержки", - "it": "Supporto" + "it": "Supporto", + "nl": "Support" }, "Punishment": { "description": "The word 'punishment'", @@ -1593,7 +1737,8 @@ "fr": "Châtiment", "es": "Castigo", "ru": "Наказание", - "it": "Punizione" + "it": "Punizione", + "nl": "Straf" }, "Until": { "description": "The word 'until'", @@ -1603,7 +1748,8 @@ "fr": "jusqu'à", "es": "Hasta que", "ru": "до", - "it": "fino a" + "it": "fino a", + "nl": "Tot" }, "PunishmentUntil": { "description": "headline for a temporary punishment stating the timezone", @@ -1613,7 +1759,8 @@ "fr": "Puni jusqu'à", "es": "Castigado hasta", "ru": "Наказан до", - "it": "Punito fino a" + "it": "Punito fino a", + "nl": "Straf tot" }, "Description": { "description": "The word 'description'", @@ -1623,7 +1770,8 @@ "fr": "La description", "es": "Descripción", "ru": "Описание", - "it": "Descrizione" + "it": "Descrizione", + "nl": "Beschrijving" }, "Labels": { "description": "The word 'labels'", @@ -1633,7 +1781,8 @@ "fr": "Étiquettes", "es": "Etiquetas", "ru": "Этикетки", - "it": "etichette" + "it": "etichette", + "nl": "Labels" }, "Filename": { "description": "The word 'filename'. The name of a file", @@ -1643,7 +1792,8 @@ "fr": "Nom de fichier", "es": "Nombre del archivo", "ru": "Имя файла", - "it": "Nome del file" + "it": "Nome del file", + "nl": "Bestandnaam" }, "Message": { "description": "The word 'message'", @@ -1653,7 +1803,8 @@ "fr": "Un message", "es": "Mensaje", "ru": "Сообщение", - "it": "Messaggio" + "it": "Messaggio", + "nl": "Bericht" }, "UserNote": { "description": "The word 'usernote'. This is a feature to share hidden guild-wide notes of a user with other moderators.", @@ -1663,7 +1814,8 @@ "fr": "Note de l'utilisateur", "es": "UserNote", "ru": "UserNote", - "it": "Nota utente" + "it": "Nota utente", + "nl": "Gebruikersnotitie" }, "UserNotes": { "description": "The plural word 'usernote'. This is a feature to share hidden guild-wide notes of a user with other moderators.", @@ -1673,7 +1825,8 @@ "fr": "Notes de l'utilisateur", "es": "Notas de usuario", "ru": "UserNotes", - "it": "Note utente" + "it": "Note utente", + "nl": "Gebruikersnotities" }, "Cases": { "description": "The word 'cases'", @@ -1683,7 +1836,8 @@ "fr": "Cas", "es": "Casos", "ru": "Случаи", - "it": "casi" + "it": "casi", + "nl": "Zaken" }, "MotD": { "description": "The word 'motd'", @@ -1693,7 +1847,8 @@ "fr": "Le message du jour", "es": "Mensaje del día", "ru": "Послание дня", - "it": "Messaggio del giorno" + "it": "Messaggio del giorno", + "nl": "Bericht van de dag" }, "ActivePunishments": { "description": "The word 'active punishments'", @@ -1703,7 +1858,8 @@ "fr": "Punitions actives", "es": "Castigos activos", "ru": "Активные наказания", - "it": "punizioni attive" + "it": "punizioni attive", + "nl": "Actieve straffen" }, "UserMap": { "description": "The word 'usermap'. This is a feature to share hidden guild-wide connections of two users with other moderators.", @@ -1713,7 +1869,8 @@ "fr": "UserMap", "es": "UserMap", "ru": "UserMap", - "it": "Mappa utente" + "it": "Mappa utente", + "nl": "Gebruikersmap" }, "UserMaps": { "description": "The plural word 'usermaps'. This is a feature to share hidden guild-wide connections of two users with other moderators.", @@ -1723,7 +1880,8 @@ "fr": "UserMaps", "es": "UserMaps", "ru": "UserMaps", - "it": "Mappe utente" + "it": "Mappe utente", + "nl": "Gebruikersmappen" }, "UserMapBetween": { "description": "Describes a usermap between two users.", @@ -1736,7 +1894,8 @@ "fr": "UserMap entre <@{userMap.UserA}> et <@{userMap.UserB}>.", "es": "UserMap entre <@{userMap.UserA}> y <@{userMap.UserB}>.", "ru": "UserMap между <@{userMap.UserA}> и <@{userMap.UserB}>.", - "it": "UserMap tra <@{userMap.UserA}> e <@{userMap.UserB}>." + "it": "UserMap tra <@{userMap.UserA}> e <@{userMap.UserB}>.", + "nl": "Gebruikersmap tussen <@{userMap.UserA}> en <@{userMap.UserB}>." }, "Imported": { "description": "Case that has been imported", @@ -1746,7 +1905,8 @@ "fr": "Importé", "es": "Importado", "ru": "Импортный", - "it": "importato" + "it": "importato", + "nl": "Geïmporteerd" }, "ImportedFromExistingBans": { "description": "Case that has been imported from existing bans", @@ -1756,7 +1916,8 @@ "fr": "Importé à partir des interdictions existantes", "es": "Importado de prohibiciones existentes", "ru": "Импортировано из существующих банов", - "it": "Importato da divieti esistenti" + "it": "Importato da divieti esistenti", + "nl": "Geïmporteerd van bestaande bans" }, "Type": { "description": "The word 'type'", @@ -1766,7 +1927,8 @@ "fr": "Taper", "es": "Escribe", "ru": "Тип", - "it": "Tipo" + "it": "Tipo", + "nl": "Type" }, "Joined": { "description": "The word 'joined'", @@ -1776,7 +1938,8 @@ "fr": "Inscrit", "es": "Unido", "ru": "Присоединился", - "it": "Partecipato" + "it": "Partecipato", + "nl": "Toegetreden" }, "Registered": { "description": "The word 'registered'", @@ -1786,7 +1949,8 @@ "fr": "Inscrit", "es": "Registrado", "ru": "Зарегистрировано", - "it": "Registrato" + "it": "Registrato", + "nl": "Geregistreerd" }, "Notification": { "Modcase": { @@ -1802,7 +1966,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé.", "es": "Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан.", - "it": "È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator})." + "it": "È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", + "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator})." }, "Internal": { "description": "Webhook notification for modcase creation. This does disclose information about the moderator.", @@ -1816,7 +1981,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé par <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido creado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato creato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato creato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." } }, "Update": { @@ -1831,7 +1997,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour.", "es": "Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен.", - "it": "È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator})." + "it": "È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt." }, "Internal": { "description": "Webhook notification for modcase update. This does disclose information about the moderator.", @@ -1845,7 +2012,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." } }, "Delete": { @@ -1860,7 +2028,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé.", "es": "Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален.", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato." + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato.", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd." }, "Internal": { "description": "Webhook notification for modcase deletion. This does disclose information about the moderator.", @@ -1874,7 +2043,8 @@ "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." } }, "Comments": { @@ -1887,7 +2057,8 @@ "fr": "Commentaire créé", "es": "Comentario creado", "ru": "Комментарий создан", - "it": "Commento creato" + "it": "Commento creato", + "nl": "Reactie gemaakt" }, "Update": { "description": "A modcase comment has been updated.", @@ -1897,7 +2068,8 @@ "fr": "Commentaire mis à jour", "es": "Comentario actualizado", "ru": "Комментарий обновлен", - "it": "Commento aggiornato" + "it": "Commento aggiornato", + "nl": "Reactie bijgewerkt" }, "Delete": { "description": "A modcase comment has been deleted.", @@ -1907,7 +2079,8 @@ "fr": "Commentaire supprimé", "es": "Comentario borrado", "ru": "Комментарий удален", - "it": "Commento cancellato" + "it": "Commento cancellato", + "nl": "Reactie verwijderd" } }, "Create": { @@ -1921,7 +2094,8 @@ "fr": "Un **commentaire** a été créé par <@{actor.Id}>.", "es": "<@{actor.Id}> ha creado un **comentario**.", "ru": "**комментарий** был создан <@{actor.Id}>.", - "it": "Un **commento** è stato creato da <@{actor.Id}>." + "it": "Un **commento** è stato creato da <@{actor.Id}>.", + "nl": "Er is een **reactie** gemaakt door <@{actor.Id}>." }, "Update": { "description": "A modcase comment has been updated.", @@ -1934,7 +2108,8 @@ "fr": "Un **commentaire** a été mis à jour par <@{actor.Id}>.", "es": "<@{actor.Id}> ha actualizado un **comentario **.", "ru": "**комментарий ** был обновлен пользователем <@{actor.Id}>.", - "it": "Un **commento** è stato aggiornato da <@{actor.Id}>." + "it": "Un **commento** è stato aggiornato da <@{actor.Id}>.", + "nl": "Een **reactie** is bijgewerkt door <@{actor.Id}>." }, "Delete": { "description": "A modcase comment has been deleted.", @@ -1947,7 +2122,8 @@ "fr": "Un **commentaire** a été supprimé par <@{actor.Id}>.", "es": "<@{actor.Id}> ha eliminado un **comentario **.", "ru": "**комментарий** был удален <@{actor.Id}>.", - "it": "Un **commento** è stato eliminato da <@{actor.Id}>." + "it": "Un **commento** è stato eliminato da <@{actor.Id}>.", + "nl": "Een **reactie** is verwijderd door <@{actor.Id}>." } }, "File": { @@ -1962,7 +2138,8 @@ "fr": "Un **fichier** a été téléchargé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator} ha subido un **archivo**).", "ru": "**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "it": "Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + "nl": "Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." }, "Delete": { "description": "Webhook notification for modcase file deletion.", @@ -1975,7 +2152,8 @@ "fr": "Un **fichier** a été supprimé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha eliminado un **archivo**.", "ru": "**файл** был удален <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "it": "Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + "nl": "Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." }, "Update": { "description": "Webhook notification for modcase file update.", @@ -1988,7 +2166,8 @@ "fr": "Un **fichier** a été mis à jour par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha actualizado un **archivo**.", "ru": "**файл** был обновлен <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "it": "Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + "nl": "Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." } }, "DM": { @@ -2001,10 +2180,11 @@ "en": "The moderators of guild `{guild.Name}` have warned you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich verwarnt.\nFür weitere Informationen besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di verwoarnt.\nFia weitere Infos oda ein Entbannungsantrag schau bei {serviceBaseUrl} noch.", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont prévenu.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han advertido.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` вас предупредили.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno avvisato.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont prévenu.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han advertido.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` вас предупредили.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno avvisato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "De moderators van server `{guild.Name}` hebben je gewaarschuwd. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}" }, "Mute": { "Temp": { @@ -2017,10 +2197,11 @@ "en": "The moderators of guild `{guild.Name}` have temporarily muted you until {modCase.PunishedUntil.Value.ToDiscordTS()}.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich bis zum {modCase.PunishedUntil.Value.ToDiscordTS()} temporär stummgeschalten.\nFür weitere Informationen besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di bis am {modCase.PunishedUntil.Value.ToDiscordTS()} stummgschoit.\nFia weitere Infos schau bei {serviceBaseUrl} noch", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont temporairement mis en sourdine jusqu'à {modCase.PunishedUntil.Value.ToDiscordTS()}.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han silenciado temporalmente hasta {modCase.PunishedUntil.Value.ToDiscordTS ()}.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` временно отключили ваш звук до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno temporaneamente disattivato l'audio fino a {modCase.PunishedUntil.Value.ToDiscordTS()}.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont temporairement mis en sourdine jusqu'à {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han silenciado temporalmente hasta {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` временно отключили ваш звук до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno temporaneamente disattivato l'audio fino a {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "" }, "Perm": { "description": "DM notification for perm mute modcase. This does not disclose information about the moderator.", @@ -2031,10 +2212,11 @@ "en": "The moderators of guild `{guild.Name}` have muted you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich stummgeschalten.\nFür weitere Informationen besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di stummgschoit.\nFia weitere Infos schau bei {serviceBaseUrl} noch.", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont mis en sourdine.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han silenciado.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` отключили вас.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno disattivato.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont mis en sourdine.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han silenciado.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` отключили вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno disattivato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "De moderators van server `{guild.Name}` hebben je gedempt. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}" } }, "Ban": { @@ -2048,10 +2230,11 @@ "en": "The moderators of guild `{guild.Name}` have temporarily banned you until {modCase.PunishedUntil.Value.ToDiscordTS()}.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich bis zum {modCase.PunishedUntil.Value.ToDiscordTS()} temporär gebannt.\nFür weitere Informationen oder zum Einreichen eines Entbannungsantrags besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di bis am {modCase.PunishedUntil.Value.ToDiscordTS()} vom Serva ausgsperrt.\nFia weitere Infos schau bei {serviceBaseUrl} noch.", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont temporairement banni jusqu'à {modCase.PunishedUntil.Value.ToDiscordTS()}.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han baneado temporalmente hasta el {modCase.PunishedUntil.Value.ToDiscordTS ()}.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` временно заблокировали вас до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno temporaneamente bannato fino al {modCase.PunishedUntil.Value.ToDiscordTS()}.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont temporairement banni jusqu'à {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han baneado temporalmente hasta el {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` временно заблокировали вас до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno temporaneamente bannato fino al {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "De moderators van server `{guild.Name}` hebben je tijdelijk verbannen tot {modCase.PunishedUntil.Value.ToDiscordTS()}. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}" }, "Perm": { "description": "DM notification for perm ban modcase. This does not disclose information about the moderator.", @@ -2062,10 +2245,11 @@ "en": "The moderators of guild `{guild.Name}` have banned you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich gebannt.\nFür weitere Informationen oder zum Einreichen eines Entbannungsantrags besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di vom Serva ausgsperrt.\nFia weitere Infos schau bei {serviceBaseUrl} noch", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont banni.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han prohibido.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` забанили вас.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno bannato.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont banni.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han prohibido.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` забанили вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno bannato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "De moderators van server `{guild.Name}` hebben je verbannen. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}" } }, "Kick": { @@ -2077,10 +2261,11 @@ "en": "The moderators of guild `{guild.Name}` have kicked you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", "de": "Die Moderatoren von `{guild.Name}` haben dich kickt.\nFür weitere Informationen besuche {serviceBaseUrl}", "at": "Die Moderatoan vo `{guild.Name}` hom di rausgschmissn.\nFia weitere Infos schau bei {serviceBaseUrl} noch.", - "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont viré.\\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", - "es": "Los moderadores del gremio `{guild.Name}` te han pateado.\\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", - "ru": "Модераторы гильдии `{guild.Name}` выгнали вас.\\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", - "it": "I moderatori della gilda `{guild.Name}` ti hanno espulso.\\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}" + "fr": "Les modérateurs de la guilde `{guild.Name}` vous ont viré.\nPour plus d'informations ou pour une réhabilitation, visitez : {serviceBaseUrl}", + "es": "Los moderadores del gremio `{guild.Name}` te han pateado.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", + "ru": "Модераторы гильдии `{guild.Name}` выгнали вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", + "it": "I moderatori della gilda `{guild.Name}` ti hanno espulso.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + "nl": "De moderators van server `{guild.Name}` hebben je gekickt. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}" } } }, @@ -2093,7 +2278,8 @@ "fr": "Fichier téléchargé", "es": "Archivo subido", "ru": "Файл загружен", - "it": "File caricato" + "it": "File caricato", + "nl": "Bestand geüpload" }, "Delete": { "description": "A file has been deleted.", @@ -2103,7 +2289,8 @@ "fr": "Fichier supprimé", "es": "Archivo eliminado", "ru": "Файл удален", - "it": "File cancellato" + "it": "File cancellato", + "nl": "Bestand verwijderd" }, "Update": { "description": "A file has been updated.", @@ -2113,7 +2300,8 @@ "fr": "Fichier mis à jour", "es": "Archivo actualizado", "ru": "Файл обновлен", - "it": "File aggiornato" + "it": "File aggiornato", + "nl": "Bestand bijgewerkt" } }, "Appeals": { @@ -2128,7 +2316,8 @@ "fr": "Un **appel de bannissement** a été créé par <@{actorId}>.", "es": "Un **apelación de prohibición** ha sido creado por <@{actorId}>.", "ru": "Заявка на **бан** создана пользователем <@{actorId}>.", - "it": "Un **appello al ban** è stato creato da <@{actorId}>." + "it": "Un **appello al ban** è stato creato da <@{actorId}>.", + "nl": "Er is een **ban appeal** aangemaakt door <@{actorId}>." }, "Update": { "description": "A appeal has been updated.", @@ -2142,7 +2331,8 @@ "fr": "Un **appel de bannissement** pour <@{userId}> a été mis à jour par <@{actorId}>.", "es": "Un **apelación de prohibición** para <@{userId}> ha sido actualizado por <@{actorId}>.", "ru": "Заявка на **бан** для <@{userId}> была обновлена пользователем <@{actorId}>.", - "it": "Un **appello al ban** per <@{userId}> è stato aggiornato da <@{actorId}>." + "it": "Un **appello al ban** per <@{userId}> è stato aggiornato da <@{actorId}>.", + "nl": "Een **ban beroep** voor <@{userId}> is bijgewerkt door <@{actorId}>." }, "Status": { "description": "The word status", @@ -2152,7 +2342,8 @@ "fr": "Statut", "es": "Estado", "ru": "статус", - "it": "Stato" + "it": "Stato", + "nl": "Status" }, "Reason": { "description": "The word reason", @@ -2162,7 +2353,8 @@ "fr": "Raison", "es": "Razón", "ru": "причина", - "it": "Motivo" + "it": "Motivo", + "nl": "Reden" }, "Appeal": { "description": "The word appeal", @@ -2172,7 +2364,8 @@ "fr": "appel de bannissement", "es": "apelación de prohibición", "ru": "заявка на бан", - "it": "appello al ban" + "it": "appello al ban", + "nl": "Ban beroep" } }, "Register": { @@ -2184,17 +2377,19 @@ "fr": "Bienvenue à MASZ !", "es": "¡Bienvenido a MASZ!", "ru": "Добро пожаловать в МАСЗ!", - "it": "Benvenuto in MASZ!" + "it": "Benvenuto in MASZ!", + "nl": "Welkom bij MASZ!" }, "DescriptionThanks": { "description": "Thanks for registering.", "en": "Thanks for registering your guild.\nIn the following you will learn some useful tips for setting up and using **MASZ**.", "de": "Vielen Dank für deine Registrierung.\nHier sind ein paar nützliche Tipps zum Einrichten und Verwenden von **MASZ**.", "at": "Donksche fia dei Registrierung.\nDu siachst glei ei poar nützliche Tipps zum Eirichtn und Vawendn vo **MASZ**.", - "fr": "Merci d'avoir enregistré votre guilde.\\nDans ce qui suit, vous apprendrez quelques conseils utiles pour configurer et utiliser **MASZ**.", - "es": "Gracias por registrar tu gremio.\\nA continuación, aprenderá algunos consejos útiles para configurar y usar **MASZ**.", - "ru": "Спасибо за регистрацию вашей гильдии.\\nДалее вы получите несколько полезных советов по настройке и использованию **MASZ**.", - "it": "Grazie per aver registrato la tua gilda.\\nDi seguito imparerai alcuni suggerimenti utili per impostare e utilizzare **MASZ**." + "fr": "Merci d'avoir enregistré votre guilde.\nDans ce qui suit, vous apprendrez quelques conseils utiles pour configurer et utiliser **MASZ**.", + "es": "Gracias por registrar tu gremio.\nA continuación, aprenderá algunos consejos útiles para configurar y usar **MASZ**.", + "ru": "Спасибо за регистрацию вашей гильдии.\nДалее вы получите несколько полезных советов по настройке и использованию **MASZ**.", + "it": "Grazie per aver registrato la tua gilda.\nDi seguito imparerai alcuni suggerimenti utili per impostare e utilizzare **MASZ**.", + "nl": "Bedankt voor het registreren van je gilde. \nIn het volgende leer je een aantal nuttige tips voor het opzetten en gebruiken van **MASZ**." }, "UseFeaturesCommand": { "description": "Use the `features` command to see the features of MASZ.", @@ -2204,7 +2399,8 @@ "fr": "Utilisez la commande `/features` pour tester si votre configuration de guilde actuelle prend en charge toutes les fonctionnalités de **MASZ**.", "es": "Usa el comando `/ features` para probar si la configuración de tu gremio actual es compatible con todas las características de **MASZ**.", "ru": "Используйте команду `/ features`, чтобы проверить, поддерживает ли ваша текущая настройка гильдии все функции **MASZ**.", - "it": "Usa il comando `/features` per verificare se l'attuale configurazione della gilda supporta tutte le funzionalità di **MASZ**." + "it": "Usa il comando `/features` per verificare se l'attuale configurazione della gilda supporta tutte le funzionalità di **MASZ**.", + "nl": "Gebruik het `/features` commando om te testen of je huidige gilde setup alle features van **MASZ** ondersteunt." }, "DefaultLanguageUsed": { "description": "The default language is used for the guild.", @@ -2217,17 +2413,19 @@ "fr": "MASZ utilisera `{language}` comme langue par défaut pour cette guilde dans la mesure du possible.", "es": "MASZ usará `{language}` como idioma predeterminado para este gremio siempre que sea posible.", "ru": "MASZ будет использовать `{language}` как язык по умолчанию для этой гильдии, когда это возможно.", - "it": "MASZ utilizzerà `{language}` come lingua predefinita per questa gilda ogni volta che sarà possibile." + "it": "MASZ utilizzerà `{language}` come lingua predefinita per questa gilda ogni volta che sarà possibile.", + "nl": "" }, "ConfusingTimestamps": { "description": "The timestamps are confusing.", "en": "Timezones can be confusing.\nMASZ uses a Discord feature to display timestamps in the local timezone of your computer/phone.", "de": "Zeitzonen können kompliziert sein.\nMASZ verwendet Discords Zeitstempel um immer die lokale Zeitzone deines PCs/Smartphones zu verwenden.", "at": "De Zeitzonen kennan a weng schwer san.\nMASZ nutzt a Discord-Feature um Zeitstempl in da lokalen Zeitzon vo deim PC/Handy ozumzeign.", - "fr": "Les fuseaux horaires peuvent être déroutants.\\nMASZ utilise une fonction Discord pour afficher les horodatages dans le fuseau horaire local de votre ordinateur/téléphone.", - "es": "Las zonas horarias pueden resultar confusas.\\nMASZ usa una función de Discord para mostrar marcas de tiempo en la zona horaria local de su computadora / teléfono.", - "ru": "Часовые пояса могут сбивать с толку.\\nMASZ использует функцию Discord для отображения меток времени в местном часовом поясе вашего компьютера / телефона.", - "it": "I fusi orari possono creare confusione.\\nMASZ utilizza una funzione Discord per visualizzare i timestamp nel fuso orario locale del tuo computer/telefono." + "fr": "Les fuseaux horaires peuvent être déroutants.\nMASZ utilise une fonction Discord pour afficher les horodatages dans le fuseau horaire local de votre ordinateur/téléphone.", + "es": "Las zonas horarias pueden resultar confusas.\nMASZ usa una función de Discord para mostrar marcas de tiempo en la zona horaria local de su computadora / teléfono.", + "ru": "Часовые пояса могут сбивать с толку.\nMASZ использует функцию Discord для отображения меток времени в местном часовом поясе вашего компьютера / телефона.", + "it": "I fusi orari possono creare confusione.\nMASZ utilizza una funzione Discord per visualizzare i timestamp nel fuso orario locale del tuo computer/telefono.", + "nl": "Tijdzones kunnen verwarrend zijn. \nMASZ maakt gebruikt van een Discord functie om Tijdstempels in de lokale tijdzone te tonen van jouw computer/telefoon." }, "Support": { "description": "Support for MASZ is provided by the [MASZ Support Server](https://discord.gg/5zjpzw6h3S).", @@ -2237,7 +2435,8 @@ "fr": "Veuillez vous référer au [serveur de support MASZ] (https://discord.gg/5zjpzw6h3S) pour d'autres questions.", "es": "Consulte el [servidor de soporte MASZ] (https://discord.gg/5zjpzw6h3S) si tiene más preguntas.", "ru": "Дополнительные вопросы можно найти на [сервере поддержки MASZ] (https://discord.gg/5zjpzw6h3S).", - "it": "Fare riferimento al [Server di supporto MASZ] (https://discord.gg/5zjpzw6h3S) per ulteriori domande." + "it": "Fare riferimento al [Server di supporto MASZ] (https://discord.gg/5zjpzw6h3S) per ulteriori domande.", + "nl": "Raadpleeg [MASZ Support Server] (https://discord.gg/5zjpzw6h3S) voor verdere vragen." } }, "Automoderation": { @@ -2252,7 +2451,8 @@ "fr": "{user.Mention} a déclenché l'automodération.", "es": "{user.Mention} activó la automoderación.", "ru": "{user.Mention} запустил автомодерацию.", - "it": "{user.Mention} ha attivato la moderazione automatica." + "it": "{user.Mention} ha attivato la moderazione automatica.", + "nl": "{user.Mention} activeerde automatisering." }, "Case": { "description": "case description for automod event", @@ -2265,7 +2465,8 @@ "fr": "{user.Username}#{user.Discriminator} a déclenché la modération automatique.", "es": "{user.Username}#{user.Discriminator} desencadenó la automoderación.", "ru": "{user.Username}#{user.Discriminator} запускает автомодерацию.", - "it": "{user.Username}#{user.Discriminator} ha attivato la moderazione automatica." + "it": "{user.Username}#{user.Discriminator} ha attivato la moderazione automatica.", + "nl": "{user.Username}#{user.Discriminator} leidde tot automatisering." }, "DM": { "description": "DM description for automod event", @@ -2278,10 +2479,11 @@ "en": "Hi {user.Mention},\n\nYou triggered automoderation in {channel.Mention}.\nReason: {reason}\nAction: {action}", "de": "Hallo {user.Mention},\n\nDu hast gerade die Automoderation in {channel.Mention} ausgelöst.\nGrund: {reason}\nAktion: {action}", "at": "Servus {user.Mention},\n\nDu host de Automodaration in {channel.Mention} ausglest. Grund: {reason}\nAktion: {action}", - "fr": "Salut {user.Mention},\\n\\nVous avez déclenché l'automodération dans {channel.Mention}.\\nRaison : {reason}\\nAction : {action}", - "es": "Hola, {user.Mention}:\\n\\nActivó la automoderación en {channel.Mention}.\\nMotivo: {reason}\\nAcción: {action}", - "ru": "Привет, {user.Mention}!\\n\\nВы активировали автомодерацию в {channel.Mention}.\\nПричина: {reason}\\nДействие: {action}", - "it": "Ciao {user.Mention},\\n\\nHai attivato la moderazione automatica in {channel.Mention}.\\nMotivo: {reason}\\nAzione: {action}" + "fr": "Salut {user.Mention},\n\nVous avez déclenché l'automodération dans {channel.Mention}.\nRaison : {reason}\nAction : {action}", + "es": "Hola, {user.Mention}:\n\nActivó la automoderación en {channel.Mention}.\nMotivo: {reason}\nAcción: {action}", + "ru": "Привет, {user.Mention}!\n\nВы активировали автомодерацию в {channel.Mention}.\nПричина: {reason}\nДействие: {action}", + "it": "Ciao {user.Mention},\n\nHai attivato la moderazione automatica in {channel.Mention}.\nMotivo: {reason}\nAzione: {action}", + "nl": "Hallo {user.Mention},\n\nJe hebt de automatisering geactiveerd in {kanaal.Mention}.\nReason: {reason}\nAction: {action}" }, "Channel": { "description": "channel notification for automod event if message was deleted, should be oneline", @@ -2295,7 +2497,8 @@ "fr": "{user.Mention} vous avez déclenché l'automodération. Raison : {reason}. Votre message a été supprimé.", "es": "{user.Mention} has activado la automoderación. Razón: {reason}. Su mensaje ha sido eliminado.", "ru": "{user.Mention} вы запустили автомодерацию. Причина: {reason}. Ваше сообщение было удалено.", - "it": "{user.Mention} hai attivato la moderazione automatica. reason: {reason}. Il tuo messaggio è stato cancellato." + "it": "{user.Mention} hai attivato la moderazione automatica. reason: {reason}. Il tuo messaggio è stato cancellato.", + "nl": "{user.Mention} u heeft de automatisering geactiveerd. Reden: {reason}. Uw bericht is verwijderd." } }, "Motd": { @@ -2311,7 +2514,8 @@ "fr": "Le nouveau MotD a été créé par {actor.Mention}.", "es": "El nuevo MotD ha sido creado por {actor.Mention}.", "ru": "Новый MotD был создан {actor.Mention}.", - "it": "Il nuovo MotD è stato creato da {actor.Mention}." + "it": "Il nuovo MotD è stato creato da {actor.Mention}.", + "nl": "Nieuwe MotD is aangemaakt door {actor.Mention}." }, "Edited": { "description": "motd has been edited", @@ -2324,7 +2528,8 @@ "fr": "MotD a été édité par {actor.Mention}.", "es": "MotD ha sido editado por {actor.Mention}.", "ru": "MotD редактировал {actor.Mention}.", - "it": "MotD è stato modificato da {actor.Mention}." + "it": "MotD è stato modificato da {actor.Mention}.", + "nl": "MotD is bewerkt door {actor.Mention}." } }, "Show": { @@ -2335,7 +2540,8 @@ "fr": "Montrer", "es": "Show", "ru": "Показывать", - "it": "Spettacolo" + "it": "Spettacolo", + "nl": "Toon" } }, "AutomoderationConfig": { @@ -2352,7 +2558,8 @@ "fr": "Automodconfig créé pour {eventType} par {actor.Mention}.", "es": "Automodconfig creado para {eventType} por {actor.Mention}.", "ru": "Automodconfig, созданный для {eventType} пользователем {actor.Mention}.", - "it": "Automodconfig creato per {eventType} da {actor.Mention}." + "it": "Automodconfig creato per {eventType} da {actor.Mention}.", + "nl": "Automodconfiguratie gemaakt voor {eventType} door {actor.Mention}." }, "Update": { "description": "AutomoderationConfig updated", @@ -2366,7 +2573,8 @@ "fr": "Automodconfig mis à jour pour {eventType} par {actor.Mention}.", "es": "Automodconfig actualizado para {eventType} por {actor.Mention}.", "ru": "Automodconfig обновлен для {eventType} пользователем {actor.Mention}.", - "it": "Automodconfig aggiornato per {eventType} da {actor.Mention}." + "it": "Automodconfig aggiornato per {eventType} da {actor.Mention}.", + "nl": "Automodconfiguratie bijgewerkt voor {eventType} door {actor.Mention}." }, "Delete": { "description": "AutomoderationConfig deleted", @@ -2380,7 +2588,8 @@ "fr": "Automodconfig supprimé pour {eventType} par {actor.Mention}.", "es": "Automodconfig eliminado para {eventType} por {actor.Mention}.", "ru": "Automodconfig удален для {eventType} пользователем {actor.Mention}.", - "it": "Automodconfig eliminato per {eventType} da {actor.Mention}." + "it": "Automodconfig eliminato per {eventType} da {actor.Mention}.", + "nl": "Automodconfiguratie verwijderd voor {eventType} door {actor.Mention}." } }, "Limit": { @@ -2391,7 +2600,8 @@ "fr": "Limite", "es": "Límite", "ru": "Предел", - "it": "Limite" + "it": "Limite", + "nl": "Limiet" }, "TimeLimit": { "description": "AutomoderationConfig time limit", @@ -2401,7 +2611,8 @@ "fr": "Limite de temps", "es": "Límite de tiempo", "ru": "Лимит времени", - "it": "Limite di tempo" + "it": "Limite di tempo", + "nl": "Tijdsbeperking" }, "Ignored": { "Roles": { @@ -2412,7 +2623,8 @@ "fr": "Rôles ignorés", "es": "Roles ignorados", "ru": "Игнорируемые роли", - "it": "Ruoli ignorati" + "it": "Ruoli ignorati", + "nl": "Genegeerde rollen" }, "Channels": { "description": "Ignored channels in automod config", @@ -2422,7 +2634,8 @@ "fr": "Canaux ignorés", "es": "Canales ignorados", "ru": "Игнорируемые каналы", - "it": "Canali ignorati" + "it": "Canali ignorati", + "nl": "Genegeerde kanalen" } }, "Duration": { @@ -2433,7 +2646,8 @@ "fr": "Durée", "es": "Duración", "ru": "Продолжительность", - "it": "Durata" + "it": "Durata", + "nl": "Duur" }, "DeleteMessage": { "description": "Delete message after automod action", @@ -2443,7 +2657,8 @@ "fr": "Supprimer le message", "es": "Borrar mensaje", "ru": "Удаленное сообщение", - "it": "Cancella il messaggio" + "it": "Cancella il messaggio", + "nl": "Verwijder bericht" }, "SendPublic": { "description": "Send public message after automod action", @@ -2453,7 +2668,8 @@ "fr": "Envoyer une notification publique", "es": "Enviar notificación pública", "ru": "Отправить публичное уведомление", - "it": "Invia notifica pubblica" + "it": "Invia notifica pubblica", + "nl": "Verzend openbare notificatie" }, "SendDM": { "description": "Send DM message after automod action", @@ -2463,7 +2679,8 @@ "fr": "Envoyer une notification DM", "es": "Enviar notificación DM", "ru": "Отправить уведомление в прямом эфире", - "it": "Invia notifica DM" + "it": "Invia notifica DM", + "nl": "Verzend DM notificatie" } }, "AutoWhois": { @@ -2480,7 +2697,8 @@ "fr": "{user.Mention} (enregistré {registered.ToDiscordTS()}) rejoint avec l'invitation `{invite}`.", "es": "{user.Mention} (registrado {registered.ToDiscordTS ()}) se unió con la invitación `{invite}`.", "ru": "{user.Mention} (зарегистрированный {registered.ToDiscordTS ()}) присоединился с приглашением `{invite}`.", - "it": "{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito con l'invito `{invite}`." + "it": "{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito con l'invito `{invite}`.", + "nl": "{user.Mention} (geregistreerd {registered.ToDiscordTS()}) is lid geworden met uitnodiging `{invite}`." }, "JoinWithAndFrom": { "description": "A user joined with invite x from user y", @@ -2497,7 +2715,8 @@ "fr": "{user.Mention} (enregistré {registered.ToDiscordTS()}) rejoint avec invite `{invite}` (créé {createdAt.ToDiscordTS()}) par <@{by}>.", "es": "{user.Mention} (registrado {registered.ToDiscordTS()}) se unió con la invitación `{invite}` (creado {createdAt.ToDiscordTS()}) por <@{by}>.", "ru": "{user.Mention} (зарегистрированный {registered.ToDiscordTS()}) присоединился с помощью приглашения `{invite}` (created {createdAt.ToDiscordTS()}) пользователем <@{by}>.", - "it": "{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito all'invito `{invite}` (creato {createdAt.ToDiscordTS()}) da <@{by}>." + "it": "{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito all'invito `{invite}` (creato {createdAt.ToDiscordTS()}) da <@{by}>.", + "nl": "{user.Mention} (geregistreerd {registered.ToDiscordTS()}) is lid geworden met uitnodiging `{invite}` (gemaakt op {createdAt.ToDiscordTS()}) door <@{by}>." } }, "DiscordAuditLog": { @@ -2515,7 +2734,8 @@ "fr": "Punition pour ModCase #{caseId} par le modérateur {modId} exécutée : \\\"{reason}\\\"", "es": "Castigo por ModCase # {caseId} por el moderador {modId} ejecutado: \\\"{reason} \\\"", "ru": "Наказание за ModCase # {caseId} модератором {modId} выполнено: \\\"{reason} \\\"", - "it": "Punizione per ModCase #{caseId} eseguita dal moderatore {modId}: \\\"{reason}\\\"" + "it": "Punizione per ModCase #{caseId} eseguita dal moderatore {modId}: \\\"{reason}\\\"", + "nl": "Straf voor ModCase #{caseId} uitgevoerd door moderator {modId}: \\\"{reason}\\\"." }, "ExecuteAutomod": { "description": "Audit log header reason for executed punishment.", @@ -2528,7 +2748,8 @@ "fr": "Punition pour Automod {autoModEvent} exécutée.", "es": "Castigo para Automod {autoModEvent} ejecutado.", "ru": "Наказание за Automod {autoModEvent} выполнено.", - "it": "Punizione per Automod {autoModEvent} eseguita." + "it": "Punizione per Automod {autoModEvent} eseguita.", + "nl": "Straf voor Automod {autoModEvent} uitgevoerd." }, "Undone": { "description": "Audit log header reason for executed punishment.", @@ -2542,7 +2763,8 @@ "fr": "Punition pour ModCase #{caseId} annulée : \\\"{reason}\\\"", "es": "Castigo por ModCase # {caseId} deshecho: \\\"{reason} \\\"", "ru": "Наказание за ModCase # {caseId} отменено: \\\"{reason} \\\"", - "it": "Punizione per ModCase #{caseId} annullata: \\\"{reason}\\\"" + "it": "Punizione per ModCase #{caseId} annullata: \\\"{reason}\\\"", + "nl": "Straf voor ModCase #{caseId} ongedaan gemaakt: \\\"{reason}\\\"." }, "AppealApproved": { "description": "Audit log header reason for executed punishment.", @@ -2556,7 +2778,8 @@ "fr": "Appel de bannissement #{appealId} approuvé : \\\"{reason}\\\"", "es": "Solicitud de prohibición # {appealId} aprobada: \\\"{reason} \\\"", "ru": "Обжалование забанения # {appealId} одобрено: \\\"{reason} \\\"", - "it": "Appello per Ban Appeal #{appealId} approvato: \\\"{reason}\\\"" + "it": "Appello per Ban Appeal #{appealId} approvato: \\\"{reason}\\\"", + "nl": "Ban-beroep #{appealId} goedgekeurd: \\\"{reason}\\\"." } } }, @@ -2574,7 +2797,8 @@ "fr": "Le journal d'audit au niveau de la guilde pour l'événement `{eventName}` a été mis en place par {actor.Mention}.", "es": "{actor.Mention} ha configurado el registro de auditoría a nivel de gremio para el evento `{eventName}`.", "ru": "Журнал аудита на уровне гильдии для события `{eventName}` был создан {actor.Mention}.", - "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato impostato da {actor.Mention}." + "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato impostato da {actor.Mention}.", + "nl": "Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is opgezet door {actor.Mention}." }, "Update": { "description": "A guild-level audit log has been edited.", @@ -2588,7 +2812,8 @@ "fr": "Le journal d'audit au niveau de la guilde pour l'événement `{eventName}` a été modifié par {actor.Mention}.", "es": "{actor.Mention} ha editado el registro de auditoría a nivel de gremio para el evento `{eventName}`.", "ru": "Журнал аудита на уровне гильдии для события `{eventName}` отредактировал {actor.Mention}.", - "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato modificato da {actor.Mention}." + "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato modificato da {actor.Mention}.", + "nl": "Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is bewerkt door {actor.Mention}." }, "Delete": { "description": "A guild-level audit log has been deleted.", @@ -2602,7 +2827,8 @@ "fr": "Le journal d'audit au niveau de la guilde pour l'événement `{eventName}` a été supprimé par {actor.Mention}.", "es": "{actor.Mention} ha eliminado el registro de auditoría a nivel de hermandad para el evento `{eventName}`.", "ru": "Журнал аудита на уровне гильдии для события `{eventName}` был удален {actor.Mention}.", - "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato eliminato da {actor.Mention}." + "it": "Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato eliminato da {actor.Mention}.", + "nl": "Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is verwijderd door {actor.Mention}." } }, "MentionRoles": { @@ -2613,7 +2839,8 @@ "fr": "Mentionner le(s) rôle(s)", "es": "Mencionar rol (s)", "ru": "Упоминание ролей", - "it": "Menzione ruolo/i" + "it": "Menzione ruolo/i", + "nl": "Noem rol(len)" }, "ExcludeRoles": { "description": "Select to exclude certain roles", @@ -2623,7 +2850,8 @@ "fr": "Exclure les rôles", "es": "Excluir roles", "ru": "Исключить роли", - "it": "Escludi ruoli" + "it": "Escludi ruoli", + "nl": "Uitgezonderde rollen" }, "ExcludeChannels": { "description": "Select to exclude certain channels", @@ -2633,7 +2861,8 @@ "fr": "Exclure les chaînes", "es": "Excluir canales", "ru": "Исключить каналы", - "it": "Escludi canali" + "it": "Escludi canali", + "nl": "Uitgesloten kanalen" }, "Title": { "description": "title", @@ -2643,7 +2872,8 @@ "fr": "Journal d'audit au niveau de la guilde", "es": "Registro de auditoría a nivel de gremio", "ru": "Журнал аудита на уровне гильдии", - "it": "Registro di controllo a livello di gilda" + "it": "Registro di controllo a livello di gilda", + "nl": "Auditlogboek op gilde niveau" } }, "Zalgo": { @@ -2659,7 +2889,8 @@ "fr": "L'utilisateur <@{id}> a été renommé de '{oldName}' à '{newName}'.", "es": "El usuario <@{id}> ha sido renombrado de '{oldName}' a '{newName}'.", "ru": "Пользователь <@{id}> был переименован '{oldName}' на '{newName}'.", - "it": "L'utente <@{id}> è stato rinominato da '{oldName}' a '{newName}'." + "it": "L'utente <@{id}> è stato rinominato da '{oldName}' a '{newName}'.", + "nl": "Gebruiker <@{id}> is hernoemd van '{oldName}' naar '{newName}'." } }, "Cmd": { @@ -2671,7 +2902,8 @@ "fr": "Seuls les canaux de texte sont autorisés.", "es": "Solo se permiten canales de texto.", "ru": "Разрешены только текстовые каналы.", - "it": "Sono consentiti solo canali di testo." + "it": "Sono consentiti solo canali di testo.", + "nl": "Alleen tekstkanalen zijn toegestaan." }, "CannotViewOrDeleteInChannel": { "description": "Bot cannot view or delete messages in this channel.", @@ -2681,7 +2913,8 @@ "fr": "Je ne suis pas autorisé à afficher ou supprimer les messages de cette chaîne !", "es": "¡No puedo ver ni borrar mensajes en este canal!", "ru": "Мне не разрешено просматривать или удалять сообщения на этом канале!", - "it": "Non sono autorizzato a visualizzare o eliminare i messaggi in questo canale!" + "it": "Non sono autorizzato a visualizzare o eliminare i messaggi in questo canale!", + "nl": "Ik mag geen berichten bekijken of verwijderen in dit kanaal!" }, "GetAvatarURL": { "description": "Returns the avatar url of the chosen user.", @@ -2691,7 +2924,8 @@ "fr": "l'URL d'avatar", "es": "URL de avatar", "ru": "URL аватара", - "it": "l'URL dell'avatar" + "it": "l'URL dell'avatar", + "nl": "Avatar-URL" }, "UserID": { "description": "User ID", @@ -2701,7 +2935,8 @@ "fr": "Identifiant d'utilisateur", "es": "User ID", "ru": "ID пользователя", - "it": "ID utente" + "it": "ID utente", + "nl": "Gebruikers-ID" }, "CannotFindChannel": { "description": "Cannot find channel.", @@ -2711,7 +2946,8 @@ "fr": "Impossible de trouver la chaîne.", "es": "No se puede encontrar el canal.", "ru": "Не могу найти канал.", - "it": "Impossibile trovare il canale." + "it": "Impossibile trovare il canale.", + "nl": "Kan kanaal niet vinden." }, "NoWebhookConfigured": { "description": "No webhook configured.", @@ -2721,7 +2957,8 @@ "fr": "Cette guilde n'a pas configuré de webhook pour les notifications internes.", "es": "Este gremio no tiene configurado ningún webhook para notificaciones internas.", "ru": "У этой гильдии нет настроенного веб-перехватчика для внутренних уведомлений.", - "it": "Questa gilda non ha webhook per le notifiche interne configurate." + "it": "Questa gilda non ha webhook per le notifiche interne configurate.", + "nl": "Dit gilde heeft geen webhook geconfigureerd voor interne meldingen." }, "Cleanup": { "description": "Cleanup response", @@ -2735,7 +2972,8 @@ "fr": "{count} messages supprimés dans {channel.Mention}.", "es": "Se eliminaron {count} mensajes en {channel.Mention}.", "ru": "Удалено {count} сообщений в {channel.Mention}.", - "it": "Eliminati {count} messaggi in {channel.Mention}." + "it": "Eliminati {count} messaggi in {channel.Mention}.", + "nl": "{count} berichten verwijderd in {channel.Mention}." }, "Antiraid": { "description": "antiraid response", @@ -2748,7 +2986,8 @@ "fr": "{count} messages supprimés.", "es": "Se eliminaron {count} mensajes.", "ru": "Удалено {count} сообщений.", - "it": "Eliminati {count} messaggi." + "it": "Eliminati {count} messaggi.", + "nl": "{count} berichten verwijderd." }, "Features": { "KickPermission": { @@ -2760,7 +2999,8 @@ "fr": "Autorisation de kick accordée.", "es": "Permiso de patada concedido.", "ru": "Разрешение на удар предоставлено.", - "it": "Autorizzazione calci concessa." + "it": "Autorizzazione calci concessa.", + "nl": "Kick-toestemming verleend." }, "NotGranted": { "description": "Kick permission not granted.", @@ -2770,7 +3010,8 @@ "fr": "L'autorisation de kick n'est pas accordée.", "es": "Permiso de patada no concedido.", "ru": "Разрешение на удар не предоставлено.", - "it": "Autorizzazione calcio non concessa." + "it": "Autorizzazione calcio non concessa.", + "nl": "Kick-toestemming niet verleend." } }, "BanPermission": { @@ -2782,7 +3023,8 @@ "fr": "Autorisation d'interdiction accordée.", "es": "Prohibición concedida.", "ru": "Получено разрешение на запрет.", - "it": "Autorizzazione al divieto concessa." + "it": "Autorizzazione al divieto concessa.", + "nl": "Ban-toestemming verleend." }, "NotGranted": { "description": "Ban permission not granted.", @@ -2792,7 +3034,8 @@ "fr": "Autorisation d'interdiction non accordée.", "es": "Prohibir permiso no concedido.", "ru": "Разрешение на запрет не предоставлено.", - "it": "Autorizzazione al divieto non concessa." + "it": "Autorizzazione al divieto non concessa.", + "nl": "Ban-toestemming niet verleend." } }, "ManageRolePermission": { @@ -2804,7 +3047,8 @@ "fr": "Gérer l'autorisation de rôle accordée.", "es": "Administrar el permiso de función otorgado.", "ru": "Разрешение на управление ролью предоставлено.", - "it": "Gestire l'autorizzazione del ruolo concessa." + "it": "Gestire l'autorizzazione del ruolo concessa.", + "nl": "Toestemming voor rol beheren verleend." }, "NotGranted": { "description": "Manage role permission not granted.", @@ -2814,7 +3058,8 @@ "fr": "L'autorisation de gestion du rôle n'est pas accordée.", "es": "Administrar el permiso de función no concedido.", "ru": "Не предоставлено разрешение на управление ролью.", - "it": "Autorizzazione di gestione del ruolo non concessa." + "it": "Autorizzazione di gestione del ruolo non concessa.", + "nl": "Toestemming voor rol beheren niet verleend." } }, "MutedRole": { @@ -2826,7 +3071,8 @@ "fr": "Rôle muet défini.", "es": "Función silenciada definida.", "ru": "Определена приглушенная роль.", - "it": "Ruolo disattivato definito." + "it": "Ruolo disattivato definito.", + "nl": "Gedempte rol gedefinieerd." }, "DefinedButTooHigh": { "description": "Muted role defined but too high in role hierarchy.", @@ -2836,7 +3082,8 @@ "fr": "Rôle en sourdine défini mais trop élevé dans la hiérarchie des rôles.", "es": "Función silenciada definida pero demasiado alta en la jerarquía de funciones.", "ru": "Определена приглушенная роль, но иерархия ролей слишком высока.", - "it": "Ruolo disattivato definito ma troppo alto nella gerarchia dei ruoli." + "it": "Ruolo disattivato definito ma troppo alto nella gerarchia dei ruoli.", + "nl": "Gedempte rol gedefinieerd maar te hoog in rollenhiërarchie." }, "DefinedButInvalid": { "description": "Muted role defined but invalid.", @@ -2846,7 +3093,8 @@ "fr": "Rôle muet défini mais invalide.", "es": "Función silenciada definida pero no válida.", "ru": "Роль без звука определена, но недействительна.", - "it": "Ruolo disattivato definito ma non valido." + "it": "Ruolo disattivato definito ma non valido.", + "nl": "Gedempte rol gedefinieerd maar ongeldig." }, "Undefined": { "description": "Muted role undefined.", @@ -2856,7 +3104,8 @@ "fr": "Rôle en sourdine non défini.", "es": "Rol silenciado indefinido.", "ru": "Отключенная роль не определена.", - "it": "Ruolo disattivato non definito." + "it": "Ruolo disattivato non definito.", + "nl": "Gedempte rol niet gedefinieerd." } }, "PunishmentExecution": { @@ -2867,7 +3116,8 @@ "fr": "Exécution de la peine", "es": "Ejecución del castigo", "ru": "Казнь", - "it": "Esecuzione della punizione" + "it": "Esecuzione della punizione", + "nl": "Uitvoering van de straf" }, "PunishmentExecutionDescription": { "description": "Punishment execution description", @@ -2877,7 +3127,8 @@ "fr": "Laissez MASZ gérer les punitions (par exemple, tempbans, muets, etc.).", "es": "Deje que MASZ maneje los castigos (por ejemplo, tempbans, mudos, etc.).", "ru": "Позвольте MASZ заниматься наказаниями (например, временным запретом, отключением звука и т. Д.).", - "it": "Lascia che MASZ gestisca le punizioni (ad esempio tempban, mute, ecc.)." + "it": "Lascia che MASZ gestisca le punizioni (ad esempio tempban, mute, ecc.).", + "nl": "Laat MASZ straffen afhandelen (bijv. Tempbans, mutes, etc.)." }, "UnbanRequests": { "description": "Unban requests", @@ -2887,7 +3138,8 @@ "fr": "Annuler l'interdiction des demandes", "es": "Solicitudes de anulación de la prohibición", "ru": "Запросы на разблокировку", - "it": "Riattiva richieste" + "it": "Riattiva richieste", + "nl": "Unban verzoeken" }, "UnbanRequestsDescription": { "Granted": { @@ -2898,17 +3150,19 @@ "fr": "Permet aux membres bannis de voir leurs cas et de les commenter pour les demandes de déban.", "es": "Permite a los miembros prohibidos ver sus casos y comentarlos para las solicitudes de deshabilitación.", "ru": "Позволяет заблокированным участникам просматривать свои дела и комментировать их для запросов на разблокировку.", - "it": "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban." + "it": "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban.", + "nl": "Laat gebande gerbruikers toe om hun zaken te zien en erop te reageren voor unban verzoeken." }, "NotGranted": { "description": "Unban requests description", "en": "Allows banned members to see their cases and comment on it for unban requests.\nGrant this bot the ban permission to use this feature.", "de": "Erlaubt Gebannten MASZ aufzurufen, sich ihre Fälle anzusehen und diese sie zu kommentieren.\nErteile MASZ die Bann-Berechtigung, um diese Funktion zu nutzen.", "at": "Erlaubt ausgsperrtn MASZ aufzurufa, sich ernane Fälle ozumschaun und de zum kommentian. \nErteil dem Bot die Ban-Berechtigung, um de Funktion nutza zu kenna.", - "fr": "Permet aux membres bannis de voir leurs cas et de les commenter pour les demandes de déban.\\nAccordez à ce bot l'autorisation d'interdire l'utilisation de cette fonctionnalité.", - "es": "Permite a los miembros prohibidos ver sus casos y comentarlos para las solicitudes de deshabilitación.\\nOtorga a este bot el permiso de prohibición para usar esta función.", - "ru": "Позволяет заблокированным участникам просматривать свои дела и комментировать их для запросов на разблокировку.\\nПредоставьте этому боту разрешение на использование этой функции.", - "it": "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban.\\nConcedi a questo bot il permesso di ban per utilizzare questa funzione." + "fr": "Permet aux membres bannis de voir leurs cas et de les commenter pour les demandes de déban.\nAccordez à ce bot l'autorisation d'interdire l'utilisation de cette fonctionnalité.", + "es": "Permite a los miembros prohibidos ver sus casos y comentarlos para las solicitudes de deshabilitación.\nOtorga a este bot el permiso de prohibición para usar esta función.", + "ru": "Позволяет заблокированным участникам просматривать свои дела и комментировать их для запросов на разблокировку.\nПредоставьте этому боту разрешение на использование этой функции.", + "it": "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban.\nConcedi a questo bot il permesso di ban per utilizzare questa funzione.", + "nl": "Laat gebande gerbruikers toe om hun zaken te zien en erop te reageren voor unban verzoeken.\nGeef deze bot toestemming om deze functie te gebruiken." } }, "ReportCommand": { @@ -2919,7 +3173,8 @@ "fr": "Commande de rapport", "es": "Comando de informe", "ru": "Команда отчета", - "it": "Comando di rapporto" + "it": "Comando di rapporto", + "nl": "Opdracht rapporteren" }, "ReportCommandDescription": { "Granted": { @@ -2930,17 +3185,19 @@ "fr": "Permet aux membres de signaler des messages.", "es": "Permite a los miembros informar mensajes.", "ru": "Позволяет участникам сообщать о сообщениях.", - "it": "Consente ai membri di segnalare i messaggi." + "it": "Consente ai membri di segnalare i messaggi.", + "nl": "Geef toestemming aan gebruikers om berichten te rapporteren." }, "NotGranted": { "description": "Unban requests description", "en": "Allows members to report messages.\nDefine a internal staff webhook to use this feature.", "de": "Erlaubt Mitgliedern, Nachrichten zu melden.\nDefiniere einen internen Webhook, um diese Funktion zu nutzen.", "at": "Erlaub Mitglieda, Nochrichtn zum mödn. \nDefinia an internen Webook, um de Funktion nutzn zum kennan.", - "fr": "Permet aux membres de signaler des messages.\\nDéfinissez un webhook interne pour le personnel pour utiliser cette fonctionnalité.", - "es": "Permite a los miembros informar mensajes.\\nDefina un webhook de personal interno para utilizar esta función.", - "ru": "Позволяет участникам сообщать о сообщениях.\\nОпределите внутренний веб-перехватчик персонала, чтобы использовать эту функцию.", - "it": "Consente ai membri di segnalare i messaggi.\\nDefinire un webhook personale interno per utilizzare questa funzione." + "fr": "Permet aux membres de signaler des messages.\nDéfinissez un webhook interne pour le personnel pour utiliser cette fonctionnalité.", + "es": "Permite a los miembros informar mensajes.\nDefina un webhook de personal interno para utilizar esta función.", + "ru": "Позволяет участникам сообщать о сообщениях.\nОпределите внутренний веб-перехватчик персонала, чтобы использовать эту функцию.", + "it": "Consente ai membri di segnalare i messaggi.\nDefinire un webhook personale interno per utilizzare questa funzione.", + "nl": "Geef toestemming aan gebruikers om berichten te rapporteren.\nDefinieer een interne personeelswebhook om deze functie te gebruiken." } }, "InviteTracking": { @@ -2951,7 +3208,8 @@ "fr": "Suivi des invitations", "es": "Seguimiento de invitaciones", "ru": "Отслеживание приглашений", - "it": "Invita il monitoraggio" + "it": "Invita il monitoraggio", + "nl": "Uitnodiging volgen" }, "InviteTrackingDescription": { "Granted": { @@ -2962,17 +3220,19 @@ "fr": "Permet MASZ de suivre les nouveaux membres invite utilisent.", "es": "Permite a MASZ realizar un seguimiento de las invitaciones que están utilizando los nuevos miembros.", "ru": "Позволяет MASZ отслеживать приглашения, которые используют новые участники.", - "it": "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri." + "it": "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri.", + "nl": "Hiermee kan MASZ de uitnodigingen bijhouden die nieuwe leden gebruiken." }, "NotGranted": { "description": "Unban requests description", "en": "Allows MASZ to track the invites new members are using.\nGrant this bot the manage guild permission to use this feature.", "de": "Erlaubt MASZ, die Einladungen neuer Mitglieder zu verfolgen.\nErteile diesem Bot die Server-Verwalten-Berechtigung, um diese Funktion zu nutzen.", "at": "Erlaubt MASZ, de Eiladungen vo neichn Mitglieda zu verfoign.\nErteil dem Bot die Verwoitn-Gilden-Berechtigung, um de Funktion nutzn zu kenna.", - "fr": "Permet à MASZ de suivre les invitations que les nouveaux membres utilisent.\\nAccordez à ce bot l'autorisation de gestion de guilde pour utiliser cette fonctionnalité.", - "es": "Permite a MASZ realizar un seguimiento de las invitaciones que están utilizando los nuevos miembros.\\nOtorga a este bot el permiso de gestión del gremio para usar esta función.", - "ru": "Позволяет MASZ отслеживать приглашения, которые используют новые участники.\\nПредоставьте этому боту разрешение на управление гильдией на использование этой функции.", - "it": "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri.\\nConcedi a questo bot il permesso di gestione della gilda per utilizzare questa funzione." + "fr": "Permet à MASZ de suivre les invitations que les nouveaux membres utilisent.\nAccordez à ce bot l'autorisation de gestion de guilde pour utiliser cette fonctionnalité.", + "es": "Permite a MASZ realizar un seguimiento de las invitaciones que están utilizando los nuevos miembros.\nOtorga a este bot el permiso de gestión del gremio para usar esta función.", + "ru": "Позволяет MASZ отслеживать приглашения, которые используют новые участники.\nПредоставьте этому боту разрешение на управление гильдией на использование этой функции.", + "it": "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri.\nConcedi a questo bot il permesso di gestione della gilda per utilizzare questa funzione.", + "nl": "Hiermee kan MASZ de uitnodigingen bijhouden die nieuwe leden gebruiken.\nGeef deze bot de machtiging gilde beheren om deze functie te gebruiken." } }, "SupportAllFeatures": { @@ -2983,7 +3243,8 @@ "fr": "Votre bot sur cette guilde est correctement configuré.", "es": "Tu bot en este gremio está configurado correctamente.", "ru": "Ваш бот в этой гильдии настроен правильно.", - "it": "Il tuo bot in questa gilda è configurato correttamente." + "it": "Il tuo bot in questa gilda è configurato correttamente.", + "nl": "Jouw bot op deze gilde is correct geconfigureerd." }, "SupportAllFeaturesDesc": { "description": "Support all features description", @@ -2993,7 +3254,8 @@ "fr": "Toutes les fonctionnalités de MASZ peuvent être utilisées.", "es": "Se pueden utilizar todas las funciones de MASZ.", "ru": "Можно использовать все возможности MASZ.", - "it": "Tutte le funzionalità di MASZ possono essere utilizzate." + "it": "Tutte le funzionalità di MASZ possono essere utilizzate.", + "nl": "Alle functies van MASZ kunnen gebruikt worden." }, "MissingFeatures": { "description": "Missing features", @@ -3003,7 +3265,8 @@ "fr": "Il y a des fonctionnalités de MASZ que vous ne pouvez pas utiliser pour le moment.", "es": "Hay funciones de MASZ que no puede utilizar en este momento.", "ru": "Есть функции MASZ, которые вы не можете использовать прямо сейчас.", - "it": "Ci sono funzionalità di MASZ che non puoi usare in questo momento." + "it": "Ci sono funzionalità di MASZ che non puoi usare in questo momento.", + "nl": "Er zijn functies van MASZ die u momenteel niet kunt gebruiken." } }, "Invite": { @@ -3011,10 +3274,11 @@ "en": "You will have to host your own instance of MASZ on your server or pc.\nCheck out https://github.com/zaanposni/discord-masz#hosting", "de": "Du musst deine eigene Instanz von MASZ auf deinem Server oder PC hosten.\nSchau dir https://github.com/zaanposni/discord-masz#hosting an", "at": "Du muast dei eignane Inszanz vo MASZ auf deim Serva oda PC hosn.\nSchau da https://github.com/zaanposni/discord-masz#hosting o", - "fr": "Vous devrez héberger votre propre instance de MASZ sur votre serveur ou votre PC.\\nCommander https://github.com/zaanposni/discord-masz#hosting", - "es": "Tendrá que alojar su propia instancia de MASZ en su servidor o PC.\\nPagar https://github.com/zaanposni/discord-masz#hosting", - "ru": "Вам нужно будет разместить свой собственный экземпляр MASZ на вашем сервере или компьютере.\\nОформить заказ https://github.com/zaanposni/discord-masz#hosting", - "it": "Dovrai ospitare la tua istanza di MASZ sul tuo server o PC.\\nAcquista https://github.com/zaanposni/discord-masz#hosting" + "fr": "Vous devrez héberger votre propre instance de MASZ sur votre serveur ou votre PC.\nCommander https://github.com/zaanposni/discord-masz#hosting", + "es": "Tendrá que alojar su propia instancia de MASZ en su servidor o PC.\nPagar https://github.com/zaanposni/discord-masz#hosting", + "ru": "Вам нужно будет разместить свой собственный экземпляр MASZ на вашем сервере или компьютере.\nОформить заказ https://github.com/zaanposni/discord-masz#hosting", + "it": "Dovrai ospitare la tua istanza di MASZ sul tuo server o PC.\nAcquista https://github.com/zaanposni/discord-masz#hosting", + "nl": "U zult uw eigen instantie van MASZ op uw server of pc moeten hosten.\nBekijk https://github.com/zaanposni/discord-masz#hosting" }, "Punish": { "description": "Case created with link", @@ -3028,7 +3292,8 @@ "fr": "Cas `#{caseId}` créé : {caseLink}", "es": "Caso `# {caseId}` creado: {caseLink}", "ru": "Обращение `# {caseId}` создано: {caseLink}", - "it": "Caso `#{caseId}` creato: {caseLink}" + "it": "Caso `#{caseId}` creato: {caseLink}", + "nl": "Zaak `#{caseId}` aangemaakt: {caseLink}" }, "Register": { "description": "Register a new guild", @@ -3041,7 +3306,8 @@ "fr": "Un administrateur de site peut enregistrer une guilde à l'adresse : {url}", "es": "Un administrador de sitio puede registrar un gremio en: {url}", "ru": "Администратор сайта может зарегистрировать гильдию по адресу: {url}", - "it": "Un amministratore del sito può registrare una gilda su: {url}" + "it": "Un amministratore del sito può registrare una gilda su: {url}", + "nl": "Een sitebeheerder kan een gilde registreren op: {url}" }, "Report": { "Failed": { @@ -3052,7 +3318,8 @@ "fr": "Échec de l'envoi de la notification interne aux modérateurs pour la commande de rapport.", "es": "No se pudo enviar una notificación interna a los moderadores para el comando de informe.", "ru": "Не удалось отправить внутреннее уведомление модераторам для команды отчета.", - "it": "Impossibile inviare una notifica interna ai moderatori per il comando di segnalazione." + "it": "Impossibile inviare una notifica interna ai moderatori per il comando di segnalazione.", + "nl": "Kan geen interne melding naar moderators sturen voor rapportopdracht." }, "Sent": { "description": "Report sent", @@ -3062,7 +3329,8 @@ "fr": "Rapport envoyé.", "es": "Reporte enviado.", "ru": "Отчет отправлен.", - "it": "Rapporto inviato." + "it": "Rapporto inviato.", + "nl": "Rapport verzonden" }, "Content": { "description": "Report content", @@ -3074,10 +3342,11 @@ "en": "{user.Mention} reported a message from {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", "de": "{user.Mention} meldete eine Nachricht von {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", "at": "{user.Mention} mödet a Nochricht vo {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", - "fr": "{user.Mention} a signalé un message de {message.Author.Mention} dans {channel.Mention}.\\n{message.GetJumpUrl()}", - "es": "{user.Mention} informó un mensaje de {message.Author.Mention} en {channel.Mention}.\\n{message.GetJumpUrl()}", - "ru": "{user.Mention} сообщил о сообщении от {message.Author.Mention} в {channel.Mention}.\\n{message.GetJumpUrl()}", - "it": "{user.Mention} ha segnalato un messaggio da {message.Author.Mention} in {channel.Mention}.\\n{message.GetJumpUrl()}" + "fr": "{user.Mention} a signalé un message de {message.Author.Mention} dans {channel.Mention}.\n{message.GetJumpUrl()}", + "es": "{user.Mention} informó un mensaje de {message.Author.Mention} en {channel.Mention}.\n{message.GetJumpUrl()}", + "ru": "{user.Mention} сообщил о сообщении от {message.Author.Mention} в {channel.Mention}.\n{message.GetJumpUrl()}", + "it": "{user.Mention} ha segnalato un messaggio da {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", + "nl": "{user.Mention} heeft een bericht van {message.Author.Mention} in {channel.Mention} gerapporteerd.\n{message.GetJumpUrl()}" } }, "Say": { @@ -3089,7 +3358,8 @@ "fr": "Échec de l'envoi du message", "es": "No se pudo enviar el mensaje", "ru": "Не удалось отправить сообщение", - "it": "Impossibile inviare il messaggio" + "it": "Impossibile inviare il messaggio", + "nl": "Bericht versturen mislukt" }, "Sent": { "description": "Send message", @@ -3099,7 +3369,8 @@ "fr": "Message envoyé.", "es": "Mensaje enviado.", "ru": "Сообщение отправлено.", - "it": "Messaggio inviato." + "it": "Messaggio inviato.", + "nl": "Bericht verstuurd." }, "SentMod": { "description": "internal notification on say command", @@ -3111,10 +3382,11 @@ "en": "{user.Mention} used the say command in {channel.Mention}.\n{message.GetJumpUrl()}", "de": "{user.Mention} verwendete den Say-Befehl in {channel.Mention}.\n{message.GetJumpUrl()}", "at": "{user.Mention} vawendete den Say-Befehl in {channel.Mention}.\n{message.GetJumpUrl()}", - "fr": "{user.Mention} a utilisé la commande « dire » dans{channel.Mention}.\\n{message.GetJumpUrl()}", - "es": "{user.Mention} usó el comando «decir» en {channel.Mention}.\\n{message.GetJumpUrl()}", - "ru": "{user.Mention} использовал команду «сказать» в {channel.Mention}.\\n{message.GetJumpUrl()}", - "it": "{user.Mention} ha usato il comando \\\"dire\\\" in {channel.Mention}.\\n{message.GetJumpUrl()}" + "fr": "{user.Mention} a utilisé la commande dans{channel.Mention}.\n{message.GetJumpUrl()}", + "es": "{user.Mention} usó el comando en {channel.Mention}.\n{message.GetJumpUrl()}", + "ru": "{user.Mention} использовал команду в {channel.Mention}.\n{message.GetJumpUrl()}", + "it": "{user.Mention} ha usato il comando in {channel.Mention}.\n{message.GetJumpUrl()}", + "nl": "{user.Mention} heeft het zeg commando gebruikt in {channel.Mention}.\n{message.GetJumpUrl()}" } }, "Track": { @@ -3126,7 +3398,8 @@ "fr": "L'invitation n'est pas de cette guilde.", "es": "La invitación no es de este gremio.", "ru": "Приглашение не из этой гильдии.", - "it": "L'invito non è di questa gilda." + "it": "L'invito non è di questa gilda.", + "nl": "De uitnodiging is niet van deze gilde." }, "CannotFindInvite": { "description": "Cannot find invite", @@ -3136,7 +3409,8 @@ "fr": "Impossible de trouver l'invitation dans la base de données ou dans cette guilde.", "es": "No se pudo encontrar la invitación en la base de datos o en este gremio.", "ru": "Не удалось найти инвайт в базе данных или в этой гильдии.", - "it": "Impossibile trovare l'invito nel database o in questa gilda." + "it": "Impossibile trovare l'invito nel database o in questa gilda.", + "nl": "Kon uitnodiging niet vinden in de database of op deze gilde." }, "FailedToFetchInvite": { "description": "Failed to fetch invite", @@ -3146,7 +3420,8 @@ "fr": "Échec de la récupération de l'invitation.", "es": "No se pudo recuperar la invitación.", "ru": "Не удалось получить приглашение.", - "it": "Impossibile recuperare l'invito." + "it": "Impossibile recuperare l'invito.", + "nl": "Kon de uitnodiging niet ophalen." }, "CreatedAt": { "description": "Created at", @@ -3160,7 +3435,8 @@ "fr": "`{inviteCode}` créé à {createdAt.ToDiscordTS()}.", "es": "`{inviteCode}` creado en {createdAt.ToDiscordTS ()}.", "ru": "`{inviteCode}` создан в {createdAt.ToDiscordTS ()}.", - "it": "`{inviteCode}` creato su {createdAt.ToDiscordTS()}." + "it": "`{inviteCode}` creato su {createdAt.ToDiscordTS()}.", + "nl": "`{inviteCode}` gemaakt op {createdAt.ToDiscordTS()}." }, "CreatedBy": { "description": "Created by", @@ -3174,7 +3450,8 @@ "fr": "`{inviteCode}` créé par {createdBy.Mention}.", "es": "`{inviteCode}` creado por {createdBy.Mention}.", "ru": "`{inviteCode}` создан {createdBy.Mention}.", - "it": "`{inviteCode}` creato da {createdBy.Mention}." + "it": "`{inviteCode}` creato da {createdBy.Mention}.", + "nl": "`{inviteCode}` gemaakt door {createdBy.Mention}." }, "CreatedByAt": { "description": "Created by", @@ -3189,7 +3466,8 @@ "fr": "`{inviteCode}` créé par {createdBy.Mention} à {createdAt.ToDiscordTS()}.", "es": "`{inviteCode}` creado por {createdBy.Mention} en {createdAt.ToDiscordTS ()}.", "ru": "`{inviteCode}` создан {createdBy.Mention} в {createdAt.ToDiscordTS ()}.", - "it": "`{inviteCode}` creato da {createdBy.Mention} su {createdAt.ToDiscordTS()}." + "it": "`{inviteCode}` creato da {createdBy.Mention} su {createdAt.ToDiscordTS()}.", + "nl": "{inviteCode} gecreëerd door {createdBy.Mention} op {createdAt.ToDiscordTS()}." }, "NotTrackedYet": { "description": "Not tracked yet", @@ -3199,7 +3477,8 @@ "fr": "Cette invitation n'a pas encore été suivie par MASZ.", "es": "MASZ aún no ha realizado el seguimiento de esta invitación.", "ru": "Это приглашение еще не отслежено MASZ.", - "it": "Questo invito non è stato ancora monitorato da MASZ." + "it": "Questo invito non è stato ancora monitorato da MASZ.", + "nl": "Deze uitnodiging is nog niet gevolgd door MASZ." }, "UsedBy": { "description": "Used by", @@ -3212,7 +3491,8 @@ "fr": "Utilisé par [{count}]", "es": "Usado por [{count}]", "ru": "Используется [{count}]", - "it": "Utilizzato da [{count}]" + "it": "Utilizzato da [{count}]", + "nl": "Gebruikt door [{count}]" } }, "View": { @@ -3224,7 +3504,8 @@ "fr": "Veuillez spécifier un identifiant de guilde valide.", "es": "Por favor, especifique un guildid válido.", "ru": "Укажите действующего гильдида.", - "it": "Si prega di specificare un ID gilda valido." + "it": "Si prega di specificare un ID gilda valido.", + "nl": "Gelieve een geldige guildid te specifiëren." }, "NotAllowedToView": { "description": "Not allowed to view", @@ -3234,7 +3515,8 @@ "fr": "Vous n'êtes pas autorisé à voir ce cas.", "es": "No se le permite ver este caso.", "ru": "Вам не разрешено просматривать это дело.", - "it": "Non sei autorizzato a visualizzare questo caso." + "it": "Non sei autorizzato a visualizzare questo caso.", + "nl": "U bent niet gemachtigd om deze zaak te bekijken." } }, "Whois": { @@ -3249,7 +3531,8 @@ "fr": "Invitation utilisée `{inviteCode}`.", "es": "Invitación usada `{inviteCode}`.", "ru": "Использовал инвайт `{inviteCode}`.", - "it": "Invito usato `{inviteCode}`." + "it": "Invito usato `{inviteCode}`.", + "nl": "Gebruikte uitnodiging `{inviteCode}`." }, "InviteBy": { "description": "Invite by", @@ -3262,7 +3545,8 @@ "fr": "Par <@{user}>.", "es": "Por <@{user}>.", "ru": "Автор <@{user}>.", - "it": "Da <@{user}>." + "it": "Da <@{user}>.", + "nl": "Door <@{user}>." }, "NoCases": { "description": "No cases", @@ -3272,7 +3556,8 @@ "fr": "Il n'y a pas de cas pour cet utilisateur.", "es": "No hay casos para este usuario.", "ru": "Для этого пользователя нет случаев.", - "it": "Non ci sono casi per questo utente." + "it": "Non ci sono casi per questo utente.", + "nl": "Er zijn geen zaken voor deze gebruiker." } }, "Undo": { @@ -3285,7 +3570,8 @@ "fr": "Résultat", "es": "Resultado", "ru": "Результат", - "it": "Risultato" + "it": "Risultato", + "nl": "Resultaat" }, "Waiting": { "description": "Waiting for approval", @@ -3295,7 +3581,8 @@ "fr": "En attente d'approbation.", "es": "A la espera de la aprobación.", "ru": "Ожидание подтверждения.", - "it": "In attesa di approvazione." + "it": "In attesa di approvazione.", + "nl": "Wachten op goedkeuring." }, "Timedout": { "description": "Timed out", @@ -3305,7 +3592,8 @@ "fr": "Fin du temps", "es": "Caducado", "ru": "Время вышло", - "it": "Fuori tempo" + "it": "Fuori tempo", + "nl": "Tijd verstreken." }, "Canceled": { "description": "cancel button to disapprove", @@ -3315,7 +3603,8 @@ "fr": "Annulé", "es": "Cancelado", "ru": "Отменено", - "it": "Annullato" + "it": "Annullato", + "nl": "Geannuleerd." } }, "PublicNotification": { @@ -3327,7 +3616,8 @@ "fr": "Avis public", "es": "Notificación pública", "ru": "Публичное уведомление", - "it": "Notifica pubblica" + "it": "Notifica pubblica", + "nl": "Openbare kennisgeving." }, "Description": { "description": "Public notification description", @@ -3337,7 +3627,8 @@ "fr": "Envoyer une notification publique ?", "es": "¿Enviar una notificación pública?", "ru": "Отправить публичное уведомление?", - "it": "Inviare una notifica pubblica?" + "it": "Inviare una notifica pubblica?", + "nl": "Een openbare kennisgeving versturen?" } }, "Buttons": { @@ -3349,7 +3640,8 @@ "fr": "Annuler", "es": "Cancelar", "ru": "Отмена", - "it": "Annulla" + "it": "Annulla", + "nl": "Annuleer" }, "PublicNotification": { "description": "public notification button", @@ -3359,7 +3651,8 @@ "fr": "Avis public", "es": "Notificación pública", "ru": "Публичное уведомление", - "it": "Notifica pubblica" + "it": "Notifica pubblica", + "nl": "Openbare kennisgeving." }, "NoPublicNotification": { "description": "no public notification button", @@ -3369,7 +3662,8 @@ "fr": "Aucune notification publique", "es": "Sin notificación pública", "ru": "Нет публичного уведомления", - "it": "Nessuna notifica pubblica" + "it": "Nessuna notifica pubblica", + "nl": "Geen openbare notificatie" } }, "CreatedAt": { @@ -3380,7 +3674,8 @@ "fr": "Créé à.", "es": "Creado en.", "ru": "Создано в.", - "it": "Creato a." + "it": "Creato a.", + "nl": "Gemaakt bij." }, "NoCases": { "description": "No active modcases have been found.", @@ -3390,7 +3685,8 @@ "fr": "Aucun modcase actif n'a été trouvé.", "es": "No se han encontrado casos de modulación activos.", "ru": "Активных модкейсов не обнаружено.", - "it": "Nessun modcase attivo è stato trovato." + "it": "Nessun modcase attivo è stato trovato.", + "nl": "Er zijn geen actieve moderatiezaken gevonden." }, "Unmute": { "FoundXCases": { @@ -3404,7 +3700,8 @@ "fr": "`{caseCount}` cas actifs trouvés. Voulez-vous les désactiver ou les supprimer tous pour réactiver le son de l'utilisateur ?", "es": "Se encontraron casos activos `{caseCount}`. ¿Quieres desactivarlos o eliminarlos todos para dejar de silenciar al usuario?", "ru": "Обнаружены активные обращения `{caseCount}`. Вы хотите деактивировать или удалить их все, чтобы включить микрофон для пользователя?", - "it": "Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riattivare l'audio dell'utente?" + "it": "Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riattivare l'audio dell'utente?", + "nl": "{caseCount} actieve zaken gevonden. Wil je ze allemaal deactiveren of verwijderen om de gebruiker te dempen?" }, "Result": { "Deleted": { @@ -3415,7 +3712,8 @@ "fr": "Muets supprimés", "es": "Silenciados eliminados", "ru": "Без звука удалено", - "it": "Disattiva audio cancellato" + "it": "Disattiva audio cancellato", + "nl": "Dempen verwijderd" }, "Deactivated": { "description": "someone approved", @@ -3425,7 +3723,8 @@ "fr": "Muet désactivé", "es": "Silencios desactivados", "ru": "Отключение звука отключено", - "it": "Mute disattivate" + "it": "Mute disattivate", + "nl": "Dempen gedeactiveerd." } }, "Buttons": { @@ -3437,7 +3736,8 @@ "fr": "Supprimer les sourdines", "es": "Eliminar silencios", "ru": "Удалить отключение звука", - "it": "Elimina mute" + "it": "Elimina mute", + "nl": "Dempen verwijderen." }, "Deactivate": { "description": "Unban button to approve", @@ -3447,7 +3747,8 @@ "fr": "Désactiver les sourdines", "es": "Silenciar desactivados", "ru": "Отключить отключение звука", - "it": "Disattiva sordina" + "it": "Disattiva sordina", + "nl": "Deactiveer Dempen" } } }, @@ -3463,7 +3764,8 @@ "fr": "`{caseCount}` cas actifs trouvés. Voulez-vous les désactiver ou les supprimer tous pour annuler l'interdiction de l'utilisateur ?", "es": "Se encontraron casos activos `{caseCount}`. ¿Quieres desactivarlos o eliminarlos todos para desbloquear al usuario?", "ru": "Обнаружены активные обращения `{caseCount}`. Вы хотите деактивировать или удалить их все, чтобы разблокировать пользователя?", - "it": "Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riabilitare l'utente?" + "it": "Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riabilitare l'utente?", + "nl": "{caseCount} actieve zaken gevonden. Wil je ze allemaal deactiveren of verwijderen om de gebruiker te unbannen?" }, "Result": { "Deleted": { @@ -3474,7 +3776,8 @@ "fr": "Interdictions supprimées", "es": "Prohibiciones eliminadas", "ru": "Баны удалены", - "it": "Divieti cancellati" + "it": "Divieti cancellati", + "nl": "Bans verwijderd." }, "Deactivated": { "description": "someone approved", @@ -3484,7 +3787,8 @@ "fr": "Interdictions désactivées", "es": "Prohibiciones desactivadas", "ru": "Баны отключены", - "it": "Divieti disattivati" + "it": "Divieti disattivati", + "nl": "Bans gedeactiveerd" } }, "Buttons": { @@ -3496,17 +3800,19 @@ "fr": "Supprimer les bannissements", "es": "Eliminar prohibiciones", "ru": "Удалить баны", - "it": "Elimina ban" + "it": "Elimina ban", + "nl": "Verwijder bans" }, "Deactivate": { "description": "Unban button to approve", - "en": "Deativate Bans", + "en": "Deactivate Bans", "de": "Banns deaktivieren", "at": "Sperrungen deaktivian", "fr": "Désactiver les interdictions", "es": "Prohibiciones de desactivación", "ru": "Деактивировать баны", - "it": "Divieti di disattivazione" + "it": "Divieti di disattivazione", + "nl": "Bans deactiveren." } } } @@ -3520,7 +3826,8 @@ "fr": "Statut", "es": "Estado", "ru": "Статус", - "it": "Stato" + "it": "Stato", + "nl": "Status" }, "Bot": { "description": "bot status", @@ -3530,7 +3837,8 @@ "fr": "Bot", "es": "Bot", "ru": "Бот", - "it": "Bot" + "it": "Bot", + "nl": "Bot" }, "Database": { "description": "database status", @@ -3540,7 +3848,8 @@ "fr": "Base de données", "es": "Base de datos", "ru": "База данных", - "it": "Database" + "it": "Database", + "nl": "Databank" }, "InternalCache": { "description": "internal cache status", @@ -3550,7 +3859,8 @@ "fr": "Cache interne", "es": "Cache interno", "ru": "Внутренний кеш", - "it": "Cache interno" + "it": "Cache interno", + "nl": "Interne cache" }, "CurrentlyLoggedIn": { "description": "currently logged in users", @@ -3560,7 +3870,8 @@ "fr": "Utilisateurs actuellement connectés", "es": "Usuarios actualmente conectados", "ru": "Пользователи, в настоящее время в системе", - "it": "Utenti attualmente collegati" + "it": "Utenti attualmente collegati", + "nl": "Momenteel ingelogd in gebruikers" }, "LastDisconnectAt": { "description": "last disconnect at", @@ -3573,7 +3884,8 @@ "fr": "Dernière déconnexion à {time}.", "es": "Última desconexión en {time}.", "ru": "Последнее отключение: {time}.", - "it": "Ultima disconnessione a {time}." + "it": "Ultima disconnessione a {time}.", + "nl": "Laatste keer verbroken om {time}." } }, "Evidence": { @@ -3585,7 +3897,8 @@ "fr": "Impossible d'enregistrer la preuve.", "es": "No se pudo registrar la evidencia.", "ru": "Не удалось зарегистрировать доказательство.", - "it": "Impossibile registrare la prova." + "it": "Impossibile registrare la prova.", + "nl": "Kan geen bewijs registreren." }, "Created": { "description": "Response sent to moderator on evidence creation success", @@ -3595,7 +3908,8 @@ "fr": "Preuve enregistrée avec succès", "es": "Evidencia registrada con éxito", "ru": "Доказательство успешно зарегистрировано", - "it": "Prova registrata con successo" + "it": "Prova registrata con successo", + "nl": "Bewijs succesvol geregistreerd." } } }, @@ -3608,7 +3922,8 @@ "fr": "Canaliser", "es": "Canal", "ru": "Канал", - "it": "Canale" + "it": "Canale", + "nl": "Kanaal" }, "ChannelBefore": { "description": "Channel before", @@ -3618,7 +3933,8 @@ "fr": "Canaliser avant", "es": "Canal antes", "ru": "Канал до", - "it": "Canale prima" + "it": "Canale prima", + "nl": "Kanaal voor" }, "ChannelAfter": { "description": "Channel after", @@ -3628,7 +3944,8 @@ "fr": "Canaliser après", "es": "Canal después", "ru": "Канал после", - "it": "Canale dopo" + "it": "Canale dopo", + "nl": "Kanaal na" }, "ChannelId": { "description": "ChannelId", @@ -3638,7 +3955,8 @@ "fr": "Identifiant de la chaine", "es": "Canal ID", "ru": "ChannelId", - "it": "Canale ID" + "it": "Canale ID", + "nl": "KanaalID" }, "ID": { "description": "ID", @@ -3648,7 +3966,8 @@ "fr": "identifiant", "es": "IDENTIFICACIÓN", "ru": "Я БЫ", - "it": "ID" + "it": "ID", + "nl": "ID" }, "Message": { "description": "Message", @@ -3658,7 +3977,8 @@ "fr": "Message", "es": "Mensaje", "ru": "Сообщение", - "it": "Messaggio" + "it": "Messaggio", + "nl": "Bericht" }, "UserID": { "description": "User ID", @@ -3668,7 +3988,8 @@ "fr": "Identifiant d'utilisateur", "es": "User ID", "ru": "ID пользователя", - "it": "ID utente" + "it": "ID utente", + "nl": "Gebruikers-ID" }, "User": { "description": "User", @@ -3678,7 +3999,8 @@ "fr": "Utilisateur", "es": "Usuario", "ru": "Пользователь", - "it": "Utente" + "it": "Utente", + "nl": "Gebruiker" }, "Emote": { "description": "Emote", @@ -3688,7 +4010,8 @@ "fr": "Émoticône", "es": "Emoción", "ru": "Эмоция", - "it": "Emote" + "it": "Emote", + "nl": "Emoticon" }, "Author": { "description": "Author", @@ -3698,7 +4021,8 @@ "fr": "Auteur", "es": "Autor", "ru": "Автор", - "it": "Autore" + "it": "Autore", + "nl": "Auteur" }, "Created": { "description": "Created", @@ -3708,7 +4032,8 @@ "fr": "Créé", "es": "Creado", "ru": "Созданный", - "it": "Creato" + "it": "Creato", + "nl": "Gemaakt" }, "CouldNotFetch": { "description": "Could not fetch", @@ -3718,7 +4043,8 @@ "fr": "Impossible de récupérer.", "es": "No se pudo recuperar.", "ru": "Не удалось получить.", - "it": "Impossibile recuperare." + "it": "Impossibile recuperare.", + "nl": "Kon niet ophalen." }, "NotFoundInCache": { "description": "NotFoundInCache", @@ -3728,7 +4054,8 @@ "fr": "Informations non mises en cache.", "es": "Información no almacenada en caché.", "ru": "Информация не кешируется.", - "it": "Informazioni non memorizzate nella cache." + "it": "Informazioni non memorizzate nella cache.", + "nl": "Informatie niet in cache." }, "Old": { "description": "Old", @@ -3738,7 +4065,8 @@ "fr": "Ancien", "es": "Viejo", "ru": "Старый", - "it": "Vecchio" + "it": "Vecchio", + "nl": "Oud" }, "New": { "description": "New", @@ -3748,7 +4076,8 @@ "fr": "Nouveau", "es": "Nuevo", "ru": "Новый", - "it": "Nuovo" + "it": "Nuovo", + "nl": "Nieuw" }, "Empty": { "description": "Empty", @@ -3758,7 +4087,8 @@ "fr": "Vide", "es": "Vacío", "ru": "Пустой", - "it": "Vuoto" + "it": "Vuoto", + "nl": "Leeg" }, "MessageSent": { "Title": { @@ -3769,7 +4099,8 @@ "fr": "Message envoyé", "es": "Mensaje enviado", "ru": "Сообщение отправлено", - "it": "Messaggio inviato" + "it": "Messaggio inviato", + "nl": "Bericht Verzonden" }, "Content": { "description": "Content", @@ -3779,7 +4110,8 @@ "fr": "Teneur", "es": "Contenido", "ru": "Содержание", - "it": "Contenuto" + "it": "Contenuto", + "nl": "Inhoud" } }, "MessageUpdated": { @@ -3791,7 +4123,8 @@ "fr": "Message modifié", "es": "Mensaje editado", "ru": "Сообщение отредактировано", - "it": "Messaggio modificato" + "it": "Messaggio modificato", + "nl": "Bericht bewerkt" }, "ContentBefore": { "description": "Content", @@ -3801,7 +4134,8 @@ "fr": "Avant", "es": "Antes", "ru": "До", - "it": "Prima" + "it": "Prima", + "nl": "Voor" }, "ContentNew": { "description": "Content", @@ -3811,7 +4145,8 @@ "fr": "Nouveau", "es": "Nuevo", "ru": "Новый", - "it": "Nuovo" + "it": "Nuovo", + "nl": "Nieuw" }, "Pinned": { "description": "Pinned", @@ -3821,7 +4156,8 @@ "fr": "Épinglé", "es": "Fijado", "ru": "Закрепленный", - "it": "In evidenza" + "it": "In evidenza", + "nl": "Vastgezet" } }, "MessageDeleted": { @@ -3833,7 +4169,8 @@ "fr": "Message supprimé", "es": "Mensaje borrado", "ru": "Сообщение удалено", - "it": "Messaggio cancellato" + "it": "Messaggio cancellato", + "nl": "Bericht verwijderd" }, "Content": { "description": "Content", @@ -3843,7 +4180,8 @@ "fr": "Teneur", "es": "Contenido", "ru": "Содержание", - "it": "Contenuto" + "it": "Contenuto", + "nl": "Inhoud" } }, "BanAdded": { @@ -3855,7 +4193,8 @@ "fr": "Utilisateur banni", "es": "Usuario baneado", "ru": "Пользователь забанен", - "it": "Utente bannato" + "it": "Utente bannato", + "nl": "Gebruiker verbannen" } }, "BanRemoved": { @@ -3867,7 +4206,8 @@ "fr": "Utilisateur non banni", "es": "Usuario no prohibido", "ru": "Пользователь разблокирован", - "it": "Utente non bannato" + "it": "Utente non bannato", + "nl": "Gebruiker unbanned" } }, "InviteCreated": { @@ -3879,7 +4219,8 @@ "fr": "Invitation créée", "es": "Invitación creada", "ru": "Приглашение создано", - "it": "Invito creato" + "it": "Invito creato", + "nl": "uitnodiging aangemaakt" }, "URL": { "description": "URL", @@ -3889,7 +4230,8 @@ "fr": "URL", "es": "URL", "ru": "URL", - "it": "URL" + "it": "URL", + "nl": "URL" }, "MaxUses": { "description": "Max uses", @@ -3899,7 +4241,8 @@ "fr": "Utilisations maximales", "es": "Usos máximos", "ru": "Макс использует", - "it": "Usi massimi" + "it": "Usi massimi", + "nl": "Maximale gebruiken" }, "Expiration": { "description": "Expiration", @@ -3909,7 +4252,8 @@ "fr": "Date d'expiration", "es": "Fecha de caducidad", "ru": "Срок хранения", - "it": "Data di scadenza" + "it": "Data di scadenza", + "nl": "Vervaldatum" }, "TargetChannel": { "description": "Target channel", @@ -3919,7 +4263,8 @@ "fr": "Canal cible", "es": "Canal objetivo", "ru": "Целевой канал", - "it": "Canale di destinazione" + "it": "Canale di destinazione", + "nl": "Doelkanaal" } }, "InviteDeleted": { @@ -3931,7 +4276,8 @@ "fr": "Invitation supprimée", "es": "Invitación eliminada", "ru": "Приглашение удалено", - "it": "Invito cancellato" + "it": "Invito cancellato", + "nl": "uitnodiging verwijderd" } }, "MemberJoined": { @@ -3943,7 +4289,8 @@ "fr": "Membre rejoint", "es": "Miembro se unió", "ru": "Участник присоединился", - "it": "Membro iscritto" + "it": "Membro iscritto", + "nl": "Lid is toegetreden" }, "Registered": { "description": "Registered", @@ -3953,7 +4300,8 @@ "fr": "Inscrit", "es": "Registrado", "ru": "Зарегистрировано", - "it": "Registrato" + "it": "Registrato", + "nl": "Geregistreerd" } }, "MemberRemoved": { @@ -3965,7 +4313,8 @@ "fr": "Membre supprimé", "es": "Miembro eliminado", "ru": "Участник удален", - "it": "Membro rimosso" + "it": "Membro rimosso", + "nl": "Lid verwijderd" } }, "ThreadCreated": { @@ -3977,7 +4326,8 @@ "fr": "Fil créé", "es": "Hilo creado", "ru": "Тема создана", - "it": "Discussione creata" + "it": "Discussione creata", + "nl": "Thread gemaakt" }, "Parent": { "description": "Parent channel of this thread", @@ -3987,7 +4337,8 @@ "fr": "Parent", "es": "Padre", "ru": "Родитель", - "it": "Genitore" + "it": "Genitore", + "nl": "Ouder" }, "Creator": { "description": "Creator", @@ -3997,7 +4348,8 @@ "fr": "Créateur", "es": "Creador", "ru": "Создатель", - "it": "Creatore" + "it": "Creatore", + "nl": "Maker" } }, "UsernameUpdated": { @@ -4009,7 +4361,8 @@ "fr": "Nom d'utilisateur mis à jour", "es": "Nombre de usuario actualizado", "ru": "Имя пользователя обновлено", - "it": "Nome utente aggiornato" + "it": "Nome utente aggiornato", + "nl": "Gebruikersnaam bijgewerkt" } }, "AvatarUpdated": { @@ -4021,7 +4374,8 @@ "fr": "Avatar mis à jour", "es": "Avatar actualizado", "ru": "Аватар обновлен", - "it": "Avatar aggiornato" + "it": "Avatar aggiornato", + "nl": "Avatar bijgewerkt" } }, "NicknameUpdated": { @@ -4033,7 +4387,8 @@ "fr": "Pseudo mis à jour", "es": "Se actualizó el apodo", "ru": "Псевдоним обновлен", - "it": "Nickname aggiornato" + "it": "Nickname aggiornato", + "nl": "Bijnaam bijgewerkt" } }, "RolesUpdated": { @@ -4045,7 +4400,8 @@ "fr": "Rôles mis à jour", "es": "Funciones actualizadas", "ru": "Роли обновлены", - "it": "Ruoli aggiornati" + "it": "Ruoli aggiornati", + "nl": "Rollen bijgewerkt" }, "Added": { "description": "Added", @@ -4055,7 +4411,8 @@ "fr": "Ajoutée", "es": "Adicional", "ru": "Добавлен", - "it": "Aggiunto" + "it": "Aggiunto", + "nl": "Toegevoegd" }, "Removed": { "description": "Removed", @@ -4065,7 +4422,8 @@ "fr": "Supprimé", "es": "Remoto", "ru": "Удаленный", - "it": "RIMOSSO" + "it": "RIMOSSO", + "nl": "Verwijderd" } }, "ReactionAdded": { @@ -4077,7 +4435,8 @@ "fr": "Réaction ajoutée", "es": "Reacción añadida", "ru": "Реакция добавлена", - "it": "Risposta aggiunta" + "it": "Risposta aggiunta", + "nl": "Reactie toegevoegd" } }, "ReactionRemoved": { @@ -4089,7 +4448,8 @@ "fr": "Réaction supprimée", "es": "Reacción eliminada", "ru": "Реакция удалена", - "it": "Risposta rimossa" + "it": "Risposta rimossa", + "nl": "Reactie verwijderd" } }, "VoiceJoined": { @@ -4101,7 +4461,8 @@ "fr": "Canal vocal rejoint", "es": "Canal de voz unido", "ru": "Голосовой канал присоединился", - "it": "Canale vocale unito" + "it": "Canale vocale unito", + "nl": "Spraakkanaal is toegetreden" } }, "VoiceLeft": { @@ -4113,7 +4474,8 @@ "fr": "Canal vocal quitté", "es": "Canal de voz abandonado", "ru": "Голосовой канал покинул", - "it": "Canale vocale lasciato" + "it": "Canale vocale lasciato", + "nl": "Spraakkanaal links" } }, "VoiceMoved": { @@ -4125,8 +4487,9 @@ "fr": "Canal vocal changé", "es": "Canal de voz cambiado", "ru": "Переключен голосовой канал", - "it": "Canale vocale cambiato" + "it": "Canale vocale cambiato", + "nl": "Gewisseld spraakkanaal" } } } -} \ No newline at end of file +} From 5086b8a8e8451123df51e893b950dedd92e02fca Mon Sep 17 00:00:00 2001 From: UponAnonymous Date: Fri, 21 Apr 2023 14:04:25 +0100 Subject: [PATCH 05/16] Update supported_languages.json Added Dutch (NL) as a translation --- translations/supported_languages.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/translations/supported_languages.json b/translations/supported_languages.json index 5a33066e0..c3cce4e0f 100644 --- a/translations/supported_languages.json +++ b/translations/supported_languages.json @@ -33,5 +33,10 @@ "name": "Russian", "nativeName": "русский", "supported": 100 + }, + "nl": { + "name": "Dutch", + "nativeName": "Nederlands", + "supported": 100 } -} \ No newline at end of file +} From fdbc7c05881f123c55c5894d0a8226927e81e332 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 21 Apr 2023 16:41:09 +0200 Subject: [PATCH 06/16] added metadata for new dutch translation, minor translation fixes --- README.md | 2 +- .../api/v1/Enums/LanguageEnumController.cs | 3 +- backend/MASZ/Enums/LanguageEnum.cs | 3 +- backend/MASZ/Utils/LocaleHelper.cs | 4 + backend/MASZ/Utils/Translation.cs | 492 +++++++++- nginx/masz-svelte/hashbuild.py | 3 +- nginx/masz-svelte/public/i18n/at.json | 3 +- nginx/masz-svelte/public/i18n/de.json | 3 +- nginx/masz-svelte/public/i18n/en.json | 3 +- nginx/masz-svelte/public/i18n/es.json | 3 +- nginx/masz-svelte/public/i18n/fr.json | 3 +- nginx/masz-svelte/public/i18n/it.json | 3 +- nginx/masz-svelte/public/i18n/nl.js | 75 ++ nginx/masz-svelte/public/i18n/nl.json | 855 ++++++++++++++++++ nginx/masz-svelte/public/i18n/ru.json | 3 +- nginx/masz-svelte/src/App.svelte | 3 + nginx/masz-svelte/src/config.ts | 10 + .../src/services/enums/Language.ts | 4 + translations/backend.json | 12 +- translations/supported_languages.json | 2 +- 20 files changed, 1466 insertions(+), 23 deletions(-) create mode 100644 nginx/masz-svelte/public/i18n/nl.js create mode 100644 nginx/masz-svelte/public/i18n/nl.json diff --git a/README.md b/README.md index a7ceb64f8..943649378 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ![LatestVersion](https://maszindex.zaanposni.com/api/v1/views/version/current/readme?) [![https://github.com/users/zaanposni/packages/container/package/masz_backend](https://img.shields.io/badge/using-docker-blue?style=for-the-badge)](https://github.com/users/zaanposni/packages/container/package/masz_backend) [![https://discord.gg/5zjpzw6h3S](https://img.shields.io/discord/779262870016884756?logo=discord&style=for-the-badge)](https://discord.gg/5zjpzw6h3S) -[![SupportedLanguages](https://img.shields.io/badge/translated-7%20languages-brightgreen?style=for-the-badge)](https://github.com/zaanposni/discord-masz/blob/master/translations/supported_languages.json) +[![SupportedLanguages](https://img.shields.io/badge/translated-8%20languages-brightgreen?style=for-the-badge)](https://github.com/zaanposni/discord-masz/blob/master/translations/supported_languages.json) ⭐ **Infractions and managed (temporary) punishments** - to moderate your server\ ⭐ **Quicksearch** - to reliably search for any infractions or notes a user has\ diff --git a/backend/MASZ/Controllers/api/v1/Enums/LanguageEnumController.cs b/backend/MASZ/Controllers/api/v1/Enums/LanguageEnumController.cs index b07dbcee2..0ccea53d8 100644 --- a/backend/MASZ/Controllers/api/v1/Enums/LanguageEnumController.cs +++ b/backend/MASZ/Controllers/api/v1/Enums/LanguageEnumController.cs @@ -25,7 +25,8 @@ public IActionResult LanguageEnum([FromQuery] Language? language = null) EnumDto.Create((int) Language.es, _translator.T().Enum(Language.es)), EnumDto.Create((int) Language.it, _translator.T().Enum(Language.it)), EnumDto.Create((int) Language.at, _translator.T().Enum(Language.at)), - EnumDto.Create((int) Language.ru, _translator.T().Enum(Language.ru)) + EnumDto.Create((int) Language.ru, _translator.T().Enum(Language.ru)), + EnumDto.Create((int) Language.nl, _translator.T().Enum(Language.nl)) }); } } diff --git a/backend/MASZ/Enums/LanguageEnum.cs b/backend/MASZ/Enums/LanguageEnum.cs index db8f1e2bc..f66ece4dc 100644 --- a/backend/MASZ/Enums/LanguageEnum.cs +++ b/backend/MASZ/Enums/LanguageEnum.cs @@ -8,6 +8,7 @@ public enum Language es, it, at, - ru + ru, + nl, } } \ No newline at end of file diff --git a/backend/MASZ/Utils/LocaleHelper.cs b/backend/MASZ/Utils/LocaleHelper.cs index 7e674fce9..ab6c634cf 100644 --- a/backend/MASZ/Utils/LocaleHelper.cs +++ b/backend/MASZ/Utils/LocaleHelper.cs @@ -25,6 +25,8 @@ public class LocaleHelper return Language.at; case "ru": return Language.ru; + case "nl": + return Language.nl; default: return null; } @@ -48,6 +50,8 @@ public static string[] MASZLocaleToDiscordLocals(Language language) return new string[] { "de" }; // discord does not have austria locale case Language.ru: return new string[] { "ru" }; + case Language.nl: + return new string[] { "nl" }; default: return new string[] { }; } diff --git a/backend/MASZ/Utils/Translation.cs b/backend/MASZ/Utils/Translation.cs index a5bd485fd..ef149e3f8 100644 --- a/backend/MASZ/Utils/Translation.cs +++ b/backend/MASZ/Utils/Translation.cs @@ -26,6 +26,7 @@ public string CommandsAntiraidName() Language.es => "Antiraid", Language.ru => "Антирайд", Language.it => "Antiraid", + Language.nl => "Antiraid", _ => "Antiraid", }; } @@ -39,6 +40,7 @@ public string CommandsAntiraidDesc() Language.es => "Ponga en silencio a un usuario específico y elimine todos sus mensajes de las últimas 2 horas.", Language.ru => "Заглушите определенного пользователя и удалите все его сообщения за последние 2 часа.", Language.it => "Disattiva un utente specifico e elimina tutti i suoi messaggi negli ultimi 2 ore.", + Language.nl => "Timeout een specifieke gebruiker en verwijder al zijn berichten in de laatste 2 uur.", _ => "Timeout a specific user and delete all his messages in the last 2 hours.", }; } @@ -52,6 +54,7 @@ public string CommandsAntiraidUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -65,6 +68,7 @@ public string CommandsAntiraidUserDesc() Language.es => "usuario a castigar", Language.ru => "пользователь для наказания", Language.it => "utente da punire", + Language.nl => "te straffen gebruiker", _ => "user to punish", }; } @@ -78,6 +82,7 @@ public string CommandsAvatarName() Language.es => "Avatar", Language.ru => "Аватар", Language.it => "Avatar", + Language.nl => "Avatar", _ => "Avatar", }; } @@ -91,6 +96,7 @@ public string CommandsAvatarDesc() Language.es => "Obtenga el avatar de alta resolución de un usuario.", Language.ru => "Получите высокое разрешение аватара пользователя.", Language.it => "Ottieni l'avatar ad alta risoluzione di un utente.", + Language.nl => "Krijg de hoge resolutie avatar van een gebruiker", _ => "Get the high resolution avatar of a user.", }; } @@ -104,6 +110,7 @@ public string CommandsAvatarUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -117,6 +124,7 @@ public string CommandsAvatarUserDesc() Language.es => "Usuario del que desea obtener el avatar", Language.ru => "Пользователь, аватар которого вы хотите получить", Language.it => "Utente di cui si desidera ottenere l'avatar", + Language.nl => "Gebruiker om de avatar van te nemen", _ => "User to get the avatar from", }; } @@ -130,6 +138,7 @@ public string CommandsBanName() Language.es => "Prohibir", Language.ru => "Запретить", Language.it => "Bandire", + Language.nl => "Ban", _ => "Ban", }; } @@ -143,6 +152,7 @@ public string CommandsBanDesc() Language.es => "Prohibir a un usuario y crear un caso de moderación", Language.ru => "Запретить пользователя и создать модкейс", Language.it => "Bandire un utente e creare un caso di moderazione", + Language.nl => "Ban een gebruiker en maak een modcase aan", _ => "Ban a user and create a modcase", }; } @@ -156,6 +166,7 @@ public string CommandsBanUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -169,6 +180,7 @@ public string CommandsBanUserDesc() Language.es => "usuario a castigar", Language.ru => "пользователь для наказания", Language.it => "utente da punire", + Language.nl => "gebruiker om te straffen", _ => "user to punish", }; } @@ -182,6 +194,7 @@ public string CommandsBanTitleName() Language.es => "Título", Language.ru => "Заголовок", Language.it => "Titolo", + Language.nl => "Titel", _ => "Title", }; } @@ -195,6 +208,7 @@ public string CommandsBanTitleDesc() Language.es => "Título del caso de moderación", Language.ru => "Заголовок модкейса", Language.it => "Titolo del caso di moderazione", + Language.nl => "Titel van de modcase", _ => "Title of the modcase", }; } @@ -208,6 +222,7 @@ public string CommandsBanDetailsName() Language.es => "Detalles", Language.ru => "Детали", Language.it => "Dettagli", + Language.nl => "Details", _ => "Details", }; } @@ -221,6 +236,7 @@ public string CommandsBanDetailsDesc() Language.es => "Detalles del caso de moderación", Language.ru => "Детали модкейса", Language.it => "Dettagli del caso di moderazione", + Language.nl => "Details van de modcase", _ => "Details of the modcase", }; } @@ -234,6 +250,7 @@ public string CommandsBanhoursName() Language.es => "Horas", Language.ru => "Часы", Language.it => "Ore", + Language.nl => "Uur", _ => "Hours", }; } @@ -247,6 +264,7 @@ public string CommandsBanhoursDesc() Language.es => "Horas para prohibir al usuario", Language.ru => "Часы, чтобы запретить пользователю", Language.it => "Ore per bandire l'utente", + Language.nl => "Uur om de geruiker te verbannen", _ => "Hours to ban the user", }; } @@ -260,6 +278,7 @@ public string CommandsBanhoursNoneName() Language.es => "Ilimitado", Language.ru => "Неограниченный", Language.it => "Illimitato", + Language.nl => "Oneindig", _ => "Unlimited", }; } @@ -273,6 +292,7 @@ public string CommandsBanhours1_HourName() Language.es => "1 hora", Language.ru => "1 час", Language.it => "1 ora", + Language.nl => "1 Uur", _ => "1 Hour", }; } @@ -286,6 +306,7 @@ public string CommandsBanhours1_DayName() Language.es => "1 día", Language.ru => "1 день", Language.it => "1 giorno", + Language.nl => "1 Dag", _ => "1 Day", }; } @@ -299,6 +320,7 @@ public string CommandsBanhours1_WeekName() Language.es => "1 semana", Language.ru => "1 неделя", Language.it => "1 settimana", + Language.nl => "1 Week", _ => "1 Week", }; } @@ -312,6 +334,7 @@ public string CommandsBanhours1_MonthName() Language.es => "1 mes", Language.ru => "1 месяц", Language.it => "1 mese", + Language.nl => "1 Maand", _ => "1 Month", }; } @@ -325,6 +348,7 @@ public string CommandsBandm_notificationName() Language.es => "DM", Language.ru => "DM", Language.it => "DM", + Language.nl => "DM", _ => "DM", }; } @@ -338,6 +362,7 @@ public string CommandsBandm_notificationDesc() Language.es => "Si se debe enviar una notificación DM", Language.ru => "Отправлять ли уведомление DM", Language.it => "Se inviare una notifica DM", + Language.nl => "Of een DM melding moet worden verzonden", _ => "Whether to send a dm notification", }; } @@ -351,6 +376,7 @@ public string CommandsBanpublic_notificationName() Language.es => "público", Language.ru => "общественный", Language.it => "pubblico", + Language.nl => "openbaar", _ => "public", }; } @@ -364,6 +390,7 @@ public string CommandsBanpublic_notificationDesc() Language.es => "Si se debe enviar una notificación pública", Language.ru => "Отправлять ли общественное уведомление", Language.it => "Se inviare una notifica pubblica", + Language.nl => "Of een openbare melding moet worden verzonden", _ => "Whether to send a public notification", }; } @@ -377,6 +404,7 @@ public string CommandsBanexecute_punishmentName() Language.es => "ejecutar", Language.ru => "выполнить", Language.it => "eseguire", + Language.nl => "uitvoeren", _ => "execute", }; } @@ -390,6 +418,7 @@ public string CommandsBanexecute_punishmentDesc() Language.es => "Si se debe ejecutar el castigo", Language.ru => "Выполнить ли наказание", Language.it => "Se eseguire la punizione", + Language.nl => "Of de straf moet uitgevoerd worden", _ => "Whether to execute the punishment", }; } @@ -403,6 +432,7 @@ public string CommandsCleanupName() Language.es => "Limpieza", Language.ru => "Очистка", Language.it => "Pulizia", + Language.nl => "Opruimen", _ => "Cleanup", }; } @@ -416,6 +446,7 @@ public string CommandsCleanupDesc() Language.es => "Limpie datos específicos del servidor y / o del canal.", Language.ru => "Очистите определенные данные с сервера и / или канала.", Language.it => "Pulisci dati specifici dal server e / o dal canale.", + Language.nl => "Ruim specifieke data van de server en/of kanaal op.", _ => "Cleanup specific data from the server and/or channel.", }; } @@ -429,6 +460,7 @@ public string CommandsCleanupModeName() Language.es => "modo", Language.ru => "режим", Language.it => "modo", + Language.nl => "modus", _ => "mode", }; } @@ -442,6 +474,7 @@ public string CommandsCleanupModeDesc() Language.es => "los datos que desea eliminar", Language.ru => "какие данные вы хотите удалить", Language.it => "i dati che si desidera eliminare", + Language.nl => "welke data wenst u te verwijderen", _ => "which data you want to delete", }; } @@ -455,6 +488,7 @@ public string CommandsCleanupChannelName() Language.es => "canal", Language.ru => "канал", Language.it => "canale", + Language.nl => "kanaal", _ => "channel", }; } @@ -468,6 +502,7 @@ public string CommandsCleanupChannelDesc() Language.es => "dónde eliminar, por defecto en el actual.", Language.ru => "куда удалять, по умолчанию - текущий.", Language.it => "dove eliminare, di default corrente.", + Language.nl => "waar te verwijderen, staat standaard ingesteld op huidig.", _ => "where to delete, defaults to current.", }; } @@ -481,6 +516,7 @@ public string CommandsCleanupCountName() Language.es => "contar", Language.ru => "считать", Language.it => "contare", + Language.nl => "tel", _ => "count", }; } @@ -494,6 +530,7 @@ public string CommandsCleanupCountDesc() Language.es => "cuántos mensajes eliminar, por defecto en 100.", Language.ru => "сколько сообщений удалять, по умолчанию - 100.", Language.it => "quanti messaggi eliminare, di default 100.", + Language.nl => "hoeveel berichten te verwijderen, standaard ingesteld op 100.", _ => "how many messages to delete, defaults to 100.", }; } @@ -507,6 +544,7 @@ public string CommandsCleanupUserName() Language.es => "usuario", Language.ru => "пользователь", Language.it => "utente", + Language.nl => "gebruiker", _ => "user", }; } @@ -520,6 +558,7 @@ public string CommandsCleanupUserDesc() Language.es => "filtro adicional en este usuario", Language.ru => "дополнительный фильтр на этого пользователя", Language.it => "filtro aggiuntivo su questo utente", + Language.nl => "extra filter op deze gebruiker", _ => "additional filter on this user", }; } @@ -533,6 +572,7 @@ public string CommandsFeaturesName() Language.es => "características", Language.ru => "особенности", Language.it => "caratteristiche", + Language.nl => "functies", _ => "features", }; } @@ -546,6 +586,7 @@ public string CommandsFeaturesDesc() Language.es => "Comprueba si se necesita más configuración para usar las características de MASZ.", Language.ru => "Проверяет, нужна ли дополнительная конфигурация для использования функций MASZ.", Language.it => "Controlla se è necessaria ulteriore configurazione per utilizzare le funzionalità di MASZ.", + Language.nl => "Bekijkt of verdere configuratie nodig is om gebruik te maken van MASZ functies.", _ => "Checks if further configuration is needed to use MASZ features.", }; } @@ -559,6 +600,7 @@ public string CommandsGithubName() Language.es => "github", Language.ru => "github", Language.it => "github", + Language.nl => "github", _ => "github", }; } @@ -572,6 +614,7 @@ public string CommandsGithubDesc() Language.es => "Muestra el enlace al repositorio de github.", Language.ru => "Отображает ссылку на репозиторий github.", Language.it => "Mostra il link al repository github.", + Language.nl => "Toont de link naar de github-repository.", _ => "Displays the link to the github repository.", }; } @@ -585,6 +628,7 @@ public string CommandsInviteName() Language.es => "invitar", Language.ru => "пригласить", Language.it => "invitare", + Language.nl => "uitnodigen", _ => "invite", }; } @@ -598,6 +642,7 @@ public string CommandsInviteDesc() Language.es => "Cómo invitar a este bot.", Language.ru => "Как пригласить этого бота.", Language.it => "Come invitare questo bot.", + Language.nl => "Hoe nodig je deze bot uit.", _ => "How to invite this bot.", }; } @@ -611,6 +656,7 @@ public string CommandsKickName() Language.es => "Patada", Language.ru => "Кик", Language.it => "Calcio", + Language.nl => "Kick", _ => "Kick", }; } @@ -624,6 +670,7 @@ public string CommandsKickDesc() Language.es => "Expulsa a un usuario y crea un caso de moderación", Language.ru => "Выгнать пользователя и создать модкейс", Language.it => "Espelli un utente e crea un caso di moderazione", + Language.nl => "Kick een gebruiker en maak een modcase aan", _ => "Kick a user and create a modcase", }; } @@ -637,6 +684,7 @@ public string CommandsKickUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -650,6 +698,7 @@ public string CommandsKickUserDesc() Language.es => "usuario a castigar", Language.ru => "пользователь для наказания", Language.it => "utente da punire", + Language.nl => "te straffen gebruiker", _ => "user to punish", }; } @@ -663,6 +712,7 @@ public string CommandsKickTitleName() Language.es => "Título", Language.ru => "Заголовок", Language.it => "Titolo", + Language.nl => "Titel", _ => "Title", }; } @@ -676,6 +726,7 @@ public string CommandsKickTitleDesc() Language.es => "Título del caso de moderación", Language.ru => "Заголовок модкейса", Language.it => "Titolo del caso di moderazione", + Language.nl => "Titel van de modcase", _ => "Title of the modcase", }; } @@ -689,6 +740,7 @@ public string CommandsKickDetailsName() Language.es => "Detalles", Language.ru => "Детали", Language.it => "Dettagli", + Language.nl => "Details", _ => "Details", }; } @@ -702,6 +754,7 @@ public string CommandsKickDetailsDesc() Language.es => "Detalles del caso de moderación", Language.ru => "Детали модкейса", Language.it => "Dettagli del caso di moderazione", + Language.nl => "Details van de modcase", _ => "Details of the modcase", }; } @@ -715,6 +768,7 @@ public string CommandsKickdm_notificationName() Language.es => "DM", Language.ru => "DM", Language.it => "DM", + Language.nl => "DM", _ => "DM", }; } @@ -728,6 +782,7 @@ public string CommandsKickdm_notificationDesc() Language.es => "Si se debe enviar una notificación DM", Language.ru => "Отправлять ли уведомление DM", Language.it => "Se inviare una notifica DM", + Language.nl => "Of een DM melding moet worden verzonden", _ => "Whether to send a dm notification", }; } @@ -741,6 +796,7 @@ public string CommandsKickpublic_notificationName() Language.es => "público", Language.ru => "общественный", Language.it => "pubblico", + Language.nl => "openbaar", _ => "public", }; } @@ -754,6 +810,7 @@ public string CommandsKickpublic_notificationDesc() Language.es => "Si se debe enviar una notificación pública", Language.ru => "Отправлять ли общественное уведомление", Language.it => "Se inviare una notifica pubblica", + Language.nl => "Of een openbare melding moet worden verzonden", _ => "Whether to send a public notification", }; } @@ -767,6 +824,7 @@ public string CommandsKickexecute_punishmentName() Language.es => "ejecutar", Language.ru => "выполнить", Language.it => "eseguire", + Language.nl => "uitvoeren", _ => "execute", }; } @@ -780,6 +838,7 @@ public string CommandsKickexecute_punishmentDesc() Language.es => "Si se debe ejecutar el castigo", Language.ru => "Выполнить ли наказание", Language.it => "Se eseguire la punizione", + Language.nl => "Of de straf moet uitgevoerd worden", _ => "Whether to execute the punishment", }; } @@ -793,6 +852,7 @@ public string CommandsMuteName() Language.es => "Silenciar", Language.ru => "Заглушить", Language.it => "Silenzia", + Language.nl => "Dempen", _ => "Mute", }; } @@ -806,6 +866,7 @@ public string CommandsMuteDesc() Language.es => "Silencia a un usuario y crea un caso de moderación", Language.ru => "Заглушить пользователя и создать модкейс", Language.it => "Silenzia un utente e crea un caso di moderazione", + Language.nl => "Demp een gebruiker en maak een modcase aan", _ => "Mute a user and create a modcase", }; } @@ -819,6 +880,7 @@ public string CommandsMuteUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -832,6 +894,7 @@ public string CommandsMuteUserDesc() Language.es => "usuario a castigar", Language.ru => "пользователь для наказания", Language.it => "utente da punire", + Language.nl => "te straffen gebruiker", _ => "user to punish", }; } @@ -845,6 +908,7 @@ public string CommandsMuteTitleName() Language.es => "Título", Language.ru => "Заголовок", Language.it => "Titolo", + Language.nl => "Titel", _ => "Title", }; } @@ -858,6 +922,7 @@ public string CommandsMuteTitleDesc() Language.es => "Título del caso de moderación", Language.ru => "Заголовок модкейса", Language.it => "Titolo del caso di moderazione", + Language.nl => "Titel van de modcase", _ => "Title of the modcase", }; } @@ -871,6 +936,7 @@ public string CommandsMuteDetailsName() Language.es => "Detalles", Language.ru => "Детали", Language.it => "Dettagli", + Language.nl => "Details", _ => "Details", }; } @@ -884,6 +950,7 @@ public string CommandsMuteDetailsDesc() Language.es => "Detalles del caso de moderación", Language.ru => "Детали модкейса", Language.it => "Dettagli del caso di moderazione", + Language.nl => "Details van de modcase", _ => "Details of the modcase", }; } @@ -897,6 +964,7 @@ public string CommandsMutehoursName() Language.es => "Horas", Language.ru => "Часы", Language.it => "Ore", + Language.nl => "Uur", _ => "Hours", }; } @@ -910,6 +978,7 @@ public string CommandsMutehoursDesc() Language.es => "Horas para silenciar al usuario", Language.ru => "Часы для заглушения пользователя", Language.it => "Ore per silenziare l'utente", + Language.nl => "Uur om de gebruiker te dempen", _ => "Hours to mute the user", }; } @@ -923,6 +992,7 @@ public string CommandsMutehoursNoneName() Language.es => "Ilimitado", Language.ru => "Неограниченный", Language.it => "Illimitato", + Language.nl => "oneindig", _ => "Unlimited", }; } @@ -936,6 +1006,7 @@ public string CommandsMutehours1_HourName() Language.es => "1 hora", Language.ru => "1 час", Language.it => "1 ora", + Language.nl => "1 Uur", _ => "1 Hour", }; } @@ -949,6 +1020,7 @@ public string CommandsMutehours1_DayName() Language.es => "1 día", Language.ru => "1 день", Language.it => "1 giorno", + Language.nl => "1 Dag", _ => "1 Day", }; } @@ -962,6 +1034,7 @@ public string CommandsMutehours1_WeekName() Language.es => "1 semana", Language.ru => "1 неделя", Language.it => "1 settimana", + Language.nl => "1 Week", _ => "1 Week", }; } @@ -975,6 +1048,7 @@ public string CommandsMutehours1_MonthName() Language.es => "1 mes", Language.ru => "1 месяц", Language.it => "1 mese", + Language.nl => "1 Maand", _ => "1 Month", }; } @@ -988,6 +1062,7 @@ public string CommandsMutedm_notificationName() Language.es => "DM", Language.ru => "DM", Language.it => "DM", + Language.nl => "DM", _ => "DM", }; } @@ -1001,6 +1076,7 @@ public string CommandsMutedm_notificationDesc() Language.es => "Si se debe enviar una notificación DM", Language.ru => "Отправлять ли уведомление DM", Language.it => "Se inviare una notifica DM", + Language.nl => "Of een DM melding moet worden verzonden", _ => "Whether to send a dm notification", }; } @@ -1014,6 +1090,7 @@ public string CommandsMutepublic_notificationName() Language.es => "público", Language.ru => "общественный", Language.it => "pubblico", + Language.nl => "openbaar", _ => "public", }; } @@ -1027,6 +1104,7 @@ public string CommandsMutepublic_notificationDesc() Language.es => "Si se debe enviar una notificación pública", Language.ru => "Отправлять ли общественное уведомление", Language.it => "Se inviare una notifica pubblica", + Language.nl => "Of een openbare melding moet worden verzonden", _ => "Whether to send a public notification", }; } @@ -1040,6 +1118,7 @@ public string CommandsMuteexecute_punishmentName() Language.es => "ejecutar", Language.ru => "выполнить", Language.it => "eseguire", + Language.nl => "uitvoeren", _ => "execute", }; } @@ -1053,6 +1132,7 @@ public string CommandsMuteexecute_punishmentDesc() Language.es => "Si se debe ejecutar el castigo", Language.ru => "Выполнить ли наказание", Language.it => "Se eseguire la punizione", + Language.nl => "Of de straf moet uitgevoerd worden", _ => "Whether to execute the punishment", }; } @@ -1066,6 +1146,7 @@ public string CommandsReportName() Language.es => "Reportar a los moderadores", Language.ru => "Сообщить модераторам", Language.it => "Segnala ai moderatori", + Language.nl => "Rapporteer aan moderatoren", _ => "Report to moderators", }; } @@ -1079,6 +1160,7 @@ public string CommandsReportDesc() Language.es => "Reportar a los moderadores", Language.ru => "Сообщить модераторам", Language.it => "Segnala ai moderatori", + Language.nl => "Rapporteer aan moderatoren", _ => "Report to moderators", }; } @@ -1092,6 +1174,7 @@ public string CommandsSayName() Language.es => "Decir", Language.ru => "Сказать", Language.it => "Dire", + Language.nl => "Zeg", _ => "Say", }; } @@ -1105,6 +1188,7 @@ public string CommandsSayDesc() Language.es => "Deja que el bot envíe un mensaje.", Language.ru => "Позволяет боту отправить сообщение.", Language.it => "Permetti al bot di inviare un messaggio.", + Language.nl => "Laat de bot een bericht sturen.", _ => "Let the bot send a message.", }; } @@ -1118,6 +1202,7 @@ public string CommandsSayMessageName() Language.es => "Mensaje", Language.ru => "Сообщение", Language.it => "Messaggio", + Language.nl => "Bericht", _ => "Message", }; } @@ -1131,6 +1216,7 @@ public string CommandsSayMessageDesc() Language.es => "El mensaje a enviar.", Language.ru => "Сообщение для отправки.", Language.it => "Il messaggio da inviare.", + Language.nl => "Te verzenden bericht.", _ => "The message to send.", }; } @@ -1144,6 +1230,7 @@ public string CommandsSayChannelName() Language.es => "Canal", Language.ru => "Канал", Language.it => "Canale", + Language.nl => "Kanaal", _ => "Channel", }; } @@ -1157,6 +1244,7 @@ public string CommandsSayChannelDesc() Language.es => "canal en el que escribir el mensaje, predeterminado actual", Language.ru => "канал для записи сообщения, по умолчанию текущий", Language.it => "canale in cui scrivere il messaggio, predefinito corrente", + Language.nl => "Kanaal om het bericht in te sturen, staat standaard ingesteld op huidig", _ => "channel to write the message in, defaults to current", }; } @@ -1170,6 +1258,7 @@ public string CommandsStatusName() Language.es => "Estado", Language.ru => "Статус", Language.it => "Stato", + Language.nl => "Status", _ => "Status", }; } @@ -1183,6 +1272,7 @@ public string CommandsStatusDesc() Language.es => "Ver el estado actual de su aplicación.", Language.ru => "Посмотрите текущий статус вашего приложения.", Language.it => "Vedi lo stato attuale della tua applicazione.", + Language.nl => "Bekijk de huidige status van uw aanvraag.", _ => "See the current status of your application.", }; } @@ -1196,6 +1286,7 @@ public string CommandsTrackName() Language.es => "Pista", Language.ru => "Дорожка", Language.it => "Traccia", + Language.nl => "Volgen", _ => "Track", }; } @@ -1209,6 +1300,7 @@ public string CommandsTrackDesc() Language.es => "Rastree una invitación, su creador y sus usuarios.", Language.ru => "Отслеживайте приглашение, его создателя и его пользователей.", Language.it => "Traccia un invito, il suo creatore e i suoi utenti.", + Language.nl => "Volg een uitnodiging, de maker en de gebruikers ervan.", _ => "Track an invite, its creator and its users.", }; } @@ -1222,6 +1314,7 @@ public string CommandsTrackInviteName() Language.es => "Invitar", Language.ru => "Приглашать", Language.it => "Invitare", + Language.nl => "Uitnodiging", _ => "Invite", }; } @@ -1235,6 +1328,7 @@ public string CommandsTrackInviteDesc() Language.es => "Ingrese el código de invitación o la URL", Language.ru => "Введите код приглашения или URL", Language.it => "Inserisci il codice di invito o l'URL", + Language.nl => "Voeg de uitnodigingscode of de URL toe", _ => "Either enter the invite code or the url", }; } @@ -1248,6 +1342,7 @@ public string CommandsUnbanName() Language.es => "Desbanear", Language.ru => "Разбанить", Language.it => "Sbannare", + Language.nl => "onbannen", _ => "Unban", }; } @@ -1261,6 +1356,7 @@ public string CommandsUnbanDesc() Language.es => "Desbanea a un usuario desactivando todos sus modcases.", Language.ru => "Разбаньте пользователя, отключив все его модкейсы.", Language.it => "Sbanna un utente disattivando tutti i suoi modcase.", + Language.nl => "Maak een gebruiker weer actief door al zijn modcases te deactiveren.", _ => "Unban a user by deactivating all his modcases.", }; } @@ -1274,6 +1370,7 @@ public string CommandsUnbanUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -1287,6 +1384,7 @@ public string CommandsUnbanUserDesc() Language.es => "El usuario a desbanear", Language.ru => "Пользователь, которого нужно разбанить", Language.it => "L'utente da sbannare", + Language.nl => "De gebruiker die moet worden onbannen", _ => "The user to unban", }; } @@ -1300,6 +1398,7 @@ public string CommandsUnmuteName() Language.es => "Desmutear", Language.ru => "Размутить", Language.it => "Smutare", + Language.nl => "Dempenopheffen", _ => "Unmute", }; } @@ -1313,6 +1412,7 @@ public string CommandsUnmuteDesc() Language.es => "Desbanea a un usuario desactivando todos sus modcases.", Language.ru => "Разбаньте пользователя, отключив все его модкейсы.", Language.it => "Sbanna un utente disattivando tutti i suoi modcase.", + Language.nl => "Dempen van een gebruiker ongedaan maken door al zijn modcases te deactiveren.", _ => "Unmute a user by deactivating all his modcases.", }; } @@ -1326,6 +1426,7 @@ public string CommandsUnmuteUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -1339,6 +1440,7 @@ public string CommandsUnmuteUserDesc() Language.es => "El usuario a desbanear", Language.ru => "Пользователь, которого нужно разбанить", Language.it => "L'utente da sbannare", + Language.nl => "De gebruiker om te onbannen", _ => "The user to unban", }; } @@ -1352,6 +1454,7 @@ public string CommandsUrlName() Language.es => "URL", Language.ru => "URL", Language.it => "URL", + Language.nl => "URL", _ => "URL", }; } @@ -1365,6 +1468,7 @@ public string CommandsUrlDesc() Language.es => "Muestra la URL en la que se implementa MASZ.", Language.ru => "Отображает URL, на котором развернут MASZ.", Language.it => "Mostra l'URL su cui è installato MASZ.", + Language.nl => "Geeft de URL weer waarop MASZ is geimplementeerd.", _ => "Displays the URL MASZ is deployed on.", }; } @@ -1378,6 +1482,7 @@ public string CommandsViewName() Language.es => "Ver", Language.ru => "Посмотреть", Language.it => "Vedere", + Language.nl => "Bekijken", _ => "View", }; } @@ -1391,6 +1496,7 @@ public string CommandsViewDesc() Language.es => "Ver un modcase.", Language.ru => "Посмотреть модкейс.", Language.it => "Visualizza un modcase.", + Language.nl => "Bekijk een modcase", _ => "View a modcase.", }; } @@ -1404,6 +1510,7 @@ public string CommandsViewIdName() Language.es => "Id", Language.ru => "Id", Language.it => "Id", + Language.nl => "Id", _ => "Id", }; } @@ -1417,6 +1524,7 @@ public string CommandsViewIdDesc() Language.es => "El id del modcase a ver.", Language.ru => "Идентификатор просматриваемого модкейса.", Language.it => "L'id del modcase da visualizzare.", + Language.nl => "Het ID van de modcase om te bekijken.", _ => "The id of the modcase to view.", }; } @@ -1430,6 +1538,7 @@ public string CommandsViewGuildidName() Language.es => "Guildid", Language.ru => "Guildid", Language.it => "Guildid", + Language.nl => "Guildid", _ => "Guildid", }; } @@ -1443,6 +1552,7 @@ public string CommandsViewGuildidDesc() Language.es => "El id de la guilda en la que está el modcase.", Language.ru => "Идентификатор гильдии, в которой находится модкейс.", Language.it => "L'id della gilda in cui si trova il modcase.", + Language.nl => "De Id van de gilde waarin de modcase zich bevindt.", _ => "The id of the guild the modcase is in.", }; } @@ -1456,6 +1566,7 @@ public string CommandsWarnName() Language.es => "Advertir", Language.ru => "Предупредить", Language.it => "Avvertire", + Language.nl => "Waarschuwen", _ => "Warn", }; } @@ -1469,6 +1580,7 @@ public string CommandsWarnDesc() Language.es => "Advertir a un usuario y crear un modcase", Language.ru => "Предупредить пользователя и создать модкейс", Language.it => "Avvertire un utente e creare un modcase", + Language.nl => "Waarschuw een gebruiker en maak een modcase aan", _ => "Warn a user and create a modcase", }; } @@ -1482,6 +1594,7 @@ public string CommandsWarnUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -1495,6 +1608,7 @@ public string CommandsWarnUserDesc() Language.es => "usuario a castigar", Language.ru => "пользователь для наказания", Language.it => "utente da punire", + Language.nl => "Te straffen gebruiker", _ => "user to punish", }; } @@ -1508,6 +1622,7 @@ public string CommandsWarnTitleName() Language.es => "Título", Language.ru => "Заголовок", Language.it => "Titolo", + Language.nl => "Titel", _ => "Title", }; } @@ -1521,6 +1636,7 @@ public string CommandsWarnTitleDesc() Language.es => "Título del caso de moderación", Language.ru => "Заголовок модкейса", Language.it => "Titolo del caso di moderazione", + Language.nl => "Titel van de modcase", _ => "Title of the modcase", }; } @@ -1534,6 +1650,7 @@ public string CommandsWarnDetailsName() Language.es => "Detalles", Language.ru => "Детали", Language.it => "Dettagli", + Language.nl => "Details", _ => "Details", }; } @@ -1547,6 +1664,7 @@ public string CommandsWarnDetailsDesc() Language.es => "Detalles del caso de moderación", Language.ru => "Детали модкейса", Language.it => "Dettagli del caso di moderazione", + Language.nl => "Details van de modcase", _ => "Details of the modcase", }; } @@ -1560,6 +1678,7 @@ public string CommandsWarndm_notificationName() Language.es => "DM", Language.ru => "DM", Language.it => "DM", + Language.nl => "DM", _ => "DM", }; } @@ -1573,6 +1692,7 @@ public string CommandsWarndm_notificationDesc() Language.es => "Si se debe enviar una notificación DM", Language.ru => "Отправлять ли уведомление DM", Language.it => "Se inviare una notifica DM", + Language.nl => "Of een DM-melding moet worden verzonden", _ => "Whether to send a dm notification", }; } @@ -1586,6 +1706,7 @@ public string CommandsWarnpublic_notificationName() Language.es => "público", Language.ru => "общественный", Language.it => "pubblico", + Language.nl => "openbaar", _ => "public", }; } @@ -1599,6 +1720,7 @@ public string CommandsWarnpublic_notificationDesc() Language.es => "Si se debe enviar una notificación pública", Language.ru => "Отправлять ли общественное уведомление", Language.it => "Se inviare una notifica pubblica", + Language.nl => "Of een openbare melding moet worden verzonden", _ => "Whether to send a public notification", }; } @@ -1612,6 +1734,7 @@ public string CommandsWarnexecute_punishmentName() Language.es => "ejecutar", Language.ru => "выполнить", Language.it => "eseguire", + Language.nl => "uitvoeren", _ => "execute", }; } @@ -1625,6 +1748,7 @@ public string CommandsWarnexecute_punishmentDesc() Language.es => "Si se debe ejecutar el castigo", Language.ru => "Выполнить ли наказание", Language.it => "Se eseguire la punizione", + Language.nl => "of de straf moet uitgevoerd worden", _ => "Whether to execute the punishment", }; } @@ -1638,6 +1762,7 @@ public string CommandsWhoisName() Language.es => "Whois", Language.ru => "Whois", Language.it => "Whois", + Language.nl => "Whois", _ => "Whois", }; } @@ -1651,6 +1776,7 @@ public string CommandsWhoisDesc() Language.es => "Muestra información sobre un usuario", Language.ru => "Показывает информацию о пользователе", Language.it => "Mostra informazioni su un utente", + Language.nl => "Toont informatie over een gebruiker", _ => "Shows information about a user", }; } @@ -1664,6 +1790,7 @@ public string CommandsWhoisUserName() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -1677,6 +1804,7 @@ public string CommandsWhoisUserDesc() Language.es => "Usuario para mostrar información", Language.ru => "Пользователь для отображения информации", Language.it => "Utente per mostrare le informazioni", + Language.nl => "Gebruiker om informatie van te tonen", _ => "User to show information for", }; } @@ -1690,6 +1818,7 @@ public string Features() Language.es => "Características", Language.ru => "Функции", Language.it => "Caratteristiche", + Language.nl => "Functies", _ => "Features", }; } @@ -1703,6 +1832,7 @@ public string Automoderation() Language.es => "Automoderación", Language.ru => "Автомобильная промышленность", Language.it => "Automoderazione", + Language.nl => "Automatische moderatie", _ => "Automoderation", }; } @@ -1716,6 +1846,7 @@ public string Action() Language.es => "Acción", Language.ru => "Действие", Language.it => "Azione", + Language.nl => "Actie", _ => "Action", }; } @@ -1729,6 +1860,7 @@ public string NotFound() Language.es => "Extraviado.", Language.ru => "Не найден.", Language.it => "Non trovato.", + Language.nl => "Niet gevonden", _ => "Not found.", }; } @@ -1742,6 +1874,7 @@ public string Author() Language.es => "Autor", Language.ru => "Автор", Language.it => "Autore", + Language.nl => "Auteur", _ => "Author", }; } @@ -1755,6 +1888,7 @@ public string MessageContent() Language.es => "Contenido del mensaje", Language.ru => "Содержание сообщения", Language.it => "Contenuto del messaggio", + Language.nl => "Berichtinhoud", _ => "Message content", }; } @@ -1768,6 +1902,7 @@ public string ViewDetailsOn(string url) Language.es => $"Ver detalles en: {url}", Language.ru => $"Подробнее о: {url}", Language.it => $"Visualizza dettagli su: {url}", + Language.nl => $"Bekijk details op: {url}", _ => $"View details on: {url}", }; } @@ -1781,6 +1916,7 @@ public string Attachments() Language.es => "Archivos adjuntos", Language.ru => "Вложения", Language.it => "Allegati", + Language.nl => "Bijlagen", _ => "Attachments", }; } @@ -1794,6 +1930,7 @@ public string Attachment() Language.es => "Adjunto", Language.ru => "Вложение", Language.it => "allegato", + Language.nl => "Bijlage", _ => "Attachment", }; } @@ -1807,6 +1944,7 @@ public string AndXMore(int count) Language.es => $"y {count} más ...", Language.ru => $"и еще {count} ...", Language.it => $"e {count} altro...", + Language.nl => $"en nog {count}...", _ => $"and {count} more...", }; } @@ -1820,6 +1958,7 @@ public string Channel() Language.es => "Canal", Language.ru => "Канал", Language.it => "Canale", + Language.nl => "Kanaal", _ => "Channel", }; } @@ -1833,6 +1972,7 @@ public string SomethingWentWrong() Language.es => "Algo salió mal.", Language.ru => "Что-то пошло не так.", Language.it => "Qualcosa è andato storto.", + Language.nl => "Er is iets misgegaan.", _ => "Something went wrong.", }; } @@ -1846,6 +1986,7 @@ public string Code() Language.es => "Código", Language.ru => "Код", Language.it => "Codice", + Language.nl => "Code", _ => "Code", }; } @@ -1859,6 +2000,7 @@ public string LanguageWord() Language.es => "Idioma", Language.ru => "Язык", Language.it => "Lingua", + Language.nl => "Taal", _ => "Language", }; } @@ -1872,6 +2014,7 @@ public string Timestamps() Language.es => "Marcas de tiempo", Language.ru => "Отметки времени", Language.it => "Timestamp", + Language.nl => "Tijdstempels", _ => "Timestamps", }; } @@ -1885,6 +2028,7 @@ public string Support() Language.es => "Apoyo", Language.ru => "Служба поддержки", Language.it => "Supporto", + Language.nl => "Support", _ => "Support", }; } @@ -1898,6 +2042,7 @@ public string Punishment() Language.es => "Castigo", Language.ru => "Наказание", Language.it => "Punizione", + Language.nl => "Straf", _ => "Punishment", }; } @@ -1911,6 +2056,7 @@ public string Until() Language.es => "Hasta que", Language.ru => "до", Language.it => "fino a", + Language.nl => "Tot", _ => "until", }; } @@ -1924,6 +2070,7 @@ public string PunishmentUntil() Language.es => "Castigado hasta", Language.ru => "Наказан до", Language.it => "Punito fino a", + Language.nl => "Straf tot", _ => "Punished until", }; } @@ -1937,6 +2084,7 @@ public string Description() Language.es => "Descripción", Language.ru => "Описание", Language.it => "Descrizione", + Language.nl => "Beschrijving", _ => "Description", }; } @@ -1950,6 +2098,7 @@ public string Labels() Language.es => "Etiquetas", Language.ru => "Этикетки", Language.it => "etichette", + Language.nl => "Labels", _ => "Labels", }; } @@ -1963,6 +2112,7 @@ public string Filename() Language.es => "Nombre del archivo", Language.ru => "Имя файла", Language.it => "Nome del file", + Language.nl => "Bestandnaam", _ => "Filename", }; } @@ -1976,6 +2126,7 @@ public string Message() Language.es => "Mensaje", Language.ru => "Сообщение", Language.it => "Messaggio", + Language.nl => "Bericht", _ => "Message", }; } @@ -1989,6 +2140,7 @@ public string UserNote() Language.es => "UserNote", Language.ru => "UserNote", Language.it => "Nota utente", + Language.nl => "Gebruikersnotitie", _ => "UserNote", }; } @@ -2002,6 +2154,7 @@ public string UserNotes() Language.es => "Notas de usuario", Language.ru => "UserNotes", Language.it => "Note utente", + Language.nl => "Gebruikersnotities", _ => "UserNotes", }; } @@ -2015,6 +2168,7 @@ public string Cases() Language.es => "Casos", Language.ru => "Случаи", Language.it => "casi", + Language.nl => "Zaken", _ => "Cases", }; } @@ -2028,6 +2182,7 @@ public string MotD() Language.es => "Mensaje del día", Language.ru => "Послание дня", Language.it => "Messaggio del giorno", + Language.nl => "Bericht van de dag", _ => "Message of the Day", }; } @@ -2041,6 +2196,7 @@ public string ActivePunishments() Language.es => "Castigos activos", Language.ru => "Активные наказания", Language.it => "punizioni attive", + Language.nl => "Actieve straffen", _ => "Active punishments", }; } @@ -2054,6 +2210,7 @@ public string UserMap() Language.es => "UserMap", Language.ru => "UserMap", Language.it => "Mappa utente", + Language.nl => "Gebruikersmap", _ => "UserMap", }; } @@ -2067,6 +2224,7 @@ public string UserMaps() Language.es => "UserMaps", Language.ru => "UserMaps", Language.it => "Mappe utente", + Language.nl => "Gebruikersmappen", _ => "UserMaps", }; } @@ -2080,6 +2238,7 @@ public string UserMapBetween(MASZ.Models.UserMapping userMap) Language.es => $"UserMap entre <@{userMap.UserA}> y <@{userMap.UserB}>.", Language.ru => $"UserMap между <@{userMap.UserA}> и <@{userMap.UserB}>.", Language.it => $"UserMap tra <@{userMap.UserA}> e <@{userMap.UserB}>.", + Language.nl => $"Gebruikersmap tussen <@{userMap.UserA}> en <@{userMap.UserB}>.", _ => $"UserMap between <@{userMap.UserA}> and <@{userMap.UserB}>.", }; } @@ -2093,6 +2252,7 @@ public string Imported() Language.es => "Importado", Language.ru => "Импортный", Language.it => "importato", + Language.nl => "Geïmporteerd", _ => "Imported", }; } @@ -2106,6 +2266,7 @@ public string ImportedFromExistingBans() Language.es => "Importado de prohibiciones existentes", Language.ru => "Импортировано из существующих банов", Language.it => "Importato da divieti esistenti", + Language.nl => "Geïmporteerd van bestaande bans", _ => "Imported from existing bans", }; } @@ -2119,6 +2280,7 @@ public string Type() Language.es => "Escribe", Language.ru => "Тип", Language.it => "Tipo", + Language.nl => "Type", _ => "Type", }; } @@ -2132,6 +2294,7 @@ public string Joined() Language.es => "Unido", Language.ru => "Присоединился", Language.it => "Partecipato", + Language.nl => "Toegetreden", _ => "Joined", }; } @@ -2145,6 +2308,7 @@ public string Registered() Language.es => "Registrado", Language.ru => "Зарегистрировано", Language.it => "Registrato", + Language.nl => "Geregistreerd", _ => "Registered", }; } @@ -2158,6 +2322,7 @@ public string NotificationModcaseCreatePublic(ModCase modCase) Language.es => $"Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан.", Language.it => $"È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", + Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created.", }; } @@ -2171,6 +2336,7 @@ public string NotificationModcaseCreateInternal(ModCase modCase, IUser moderator Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido creado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato creato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", }; } @@ -2184,6 +2350,7 @@ public string NotificationModcaseUpdatePublic(ModCase modCase) Language.es => $"Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен.", Language.it => $"È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt.", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated.", }; } @@ -2197,6 +2364,7 @@ public string NotificationModcaseUpdateInternal(ModCase modCase, IUser moderator Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", }; } @@ -2210,6 +2378,7 @@ public string NotificationModcaseDeletePublic(ModCase modCase) Language.es => $"Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален.", Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato.", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd.", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted.", }; } @@ -2223,6 +2392,7 @@ public string NotificationModcaseDeleteInternal(ModCase modCase, IUser moderator Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", }; } @@ -2236,6 +2406,7 @@ public string NotificationModcaseCommentsShortCreate() Language.es => "Comentario creado", Language.ru => "Комментарий создан", Language.it => "Commento creato", + Language.nl => "Reactie gemaakt", _ => "Comment created", }; } @@ -2249,6 +2420,7 @@ public string NotificationModcaseCommentsShortUpdate() Language.es => "Comentario actualizado", Language.ru => "Комментарий обновлен", Language.it => "Commento aggiornato", + Language.nl => "Reactie bijgewerkt", _ => "Comment updated", }; } @@ -2262,6 +2434,7 @@ public string NotificationModcaseCommentsShortDelete() Language.es => "Comentario borrado", Language.ru => "Комментарий удален", Language.it => "Commento cancellato", + Language.nl => "Reactie verwijderd", _ => "Comment deleted", }; } @@ -2275,6 +2448,7 @@ public string NotificationModcaseCommentsCreate(IUser actor) Language.es => $"<@{actor.Id}> ha creado un **comentario**.", Language.ru => $"**комментарий** был создан <@{actor.Id}>.", Language.it => $"Un **commento** è stato creato da <@{actor.Id}>.", + Language.nl => $"Er is een **reactie** gemaakt door <@{actor.Id}>.", _ => $"A **comment** has been created by <@{actor.Id}>.", }; } @@ -2288,6 +2462,7 @@ public string NotificationModcaseCommentsUpdate(IUser actor) Language.es => $"<@{actor.Id}> ha actualizado un **comentario **.", Language.ru => $"**комментарий ** был обновлен пользователем <@{actor.Id}>.", Language.it => $"Un **commento** è stato aggiornato da <@{actor.Id}>.", + Language.nl => $"Een **reactie** is bijgewerkt door <@{actor.Id}>.", _ => $"A **comment** has been updated by <@{actor.Id}>.", }; } @@ -2301,6 +2476,7 @@ public string NotificationModcaseCommentsDelete(IUser actor) Language.es => $"<@{actor.Id}> ha eliminado un **comentario **.", Language.ru => $"**комментарий** был удален <@{actor.Id}>.", Language.it => $"Un **commento** è stato eliminato da <@{actor.Id}>.", + Language.nl => $"Een **reactie** is verwijderd door <@{actor.Id}>.", _ => $"A **comment** has been deleted by <@{actor.Id}>.", }; } @@ -2314,6 +2490,7 @@ public string NotificationModcaseFileCreate(IUser actor) Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator} ha subido un **archivo**).", Language.ru => $"**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", Language.it => $"Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.nl => $"Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", _ => $"A **file** has been uploaded by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", }; } @@ -2327,6 +2504,7 @@ public string NotificationModcaseFileDelete(IUser actor) Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha eliminado un **archivo**.", Language.ru => $"**файл** был удален <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", Language.it => $"Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.nl => $"Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", _ => $"A **file** has been deleted by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", }; } @@ -2340,6 +2518,7 @@ public string NotificationModcaseFileUpdate(IUser actor) Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha actualizado un **archivo**.", Language.ru => $"**файл** был обновлен <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", Language.it => $"Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.nl => $"Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", _ => $"A **file** has been updated by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", }; } @@ -2353,6 +2532,7 @@ public string NotificationModcaseDMWarn(IGuild guild, string serviceBaseUrl) Language.es => $"Los moderadores del gremio `{guild.Name}` te han advertido.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` вас предупредили.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno avvisato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"De moderators van server `{guild.Name}` hebben je gewaarschuwd. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}", _ => $"The moderators of guild `{guild.Name}` have warned you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2366,6 +2546,7 @@ public string NotificationModcaseDMMuteTemp(ModCase modCase, IGuild guild, strin Language.es => $"Los moderadores del gremio `{guild.Name}` te han silenciado temporalmente hasta {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` временно отключили ваш звук до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno temporaneamente disattivato l'audio fino a {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"", _ => $"The moderators of guild `{guild.Name}` have temporarily muted you until {modCase.PunishedUntil.Value.ToDiscordTS()}.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2379,6 +2560,7 @@ public string NotificationModcaseDMMutePerm(IGuild guild, string serviceBaseUrl) Language.es => $"Los moderadores del gremio `{guild.Name}` te han silenciado.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` отключили вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno disattivato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"De moderators van server `{guild.Name}` hebben je gedempt. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}", _ => $"The moderators of guild `{guild.Name}` have muted you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2392,6 +2574,7 @@ public string NotificationModcaseDMBanTemp(ModCase modCase, IGuild guild, string Language.es => $"Los moderadores del gremio `{guild.Name}` te han baneado temporalmente hasta el {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` временно заблокировали вас до {modCase.PunishedUntil.Value.ToDiscordTS ()}.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno temporaneamente bannato fino al {modCase.PunishedUntil.Value.ToDiscordTS()}.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"De moderators van server `{guild.Name}` hebben je tijdelijk verbannen tot {modCase.PunishedUntil.Value.ToDiscordTS()}. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}", _ => $"The moderators of guild `{guild.Name}` have temporarily banned you until {modCase.PunishedUntil.Value.ToDiscordTS()}.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2405,6 +2588,7 @@ public string NotificationModcaseDMBanPerm(IGuild guild, string serviceBaseUrl) Language.es => $"Los moderadores del gremio `{guild.Name}` te han prohibido.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` забанили вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno bannato.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"De moderators van server `{guild.Name}` hebben je verbannen. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}", _ => $"The moderators of guild `{guild.Name}` have banned you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2418,6 +2602,7 @@ public string NotificationModcaseDMKick(IGuild guild, string serviceBaseUrl) Language.es => $"Los moderadores del gremio `{guild.Name}` te han pateado.\nPara obtener más información o rehabilitación, visite: {serviceBaseUrl}", Language.ru => $"Модераторы гильдии `{guild.Name}` выгнали вас.\nДля получения дополнительной информации или реабилитации посетите: {serviceBaseUrl}", Language.it => $"I moderatori della gilda `{guild.Name}` ti hanno espulso.\nPer maggiori informazioni o visita riabilitativa: {serviceBaseUrl}", + Language.nl => $"De moderators van server `{guild.Name}` hebben je gekickt. \nVoor meer informatie of rehabilitatie bezoek: {serviceBaseUrl}", _ => $"The moderators of guild `{guild.Name}` have kicked you.\nFor more information or rehabilitation visit: {serviceBaseUrl}", }; } @@ -2431,6 +2616,7 @@ public string NotificationFilesCreate() Language.es => "Archivo subido", Language.ru => "Файл загружен", Language.it => "File caricato", + Language.nl => "Bestand geüpload", _ => "File uploaded", }; } @@ -2444,6 +2630,7 @@ public string NotificationFilesDelete() Language.es => "Archivo eliminado", Language.ru => "Файл удален", Language.it => "File cancellato", + Language.nl => "Bestand verwijderd", _ => "File deleted", }; } @@ -2457,6 +2644,7 @@ public string NotificationFilesUpdate() Language.es => "Archivo actualizado", Language.ru => "Файл обновлен", Language.it => "File aggiornato", + Language.nl => "Bestand bijgewerkt", _ => "File updated", }; } @@ -2470,6 +2658,7 @@ public string NotificationAppealsCreate(ulong actorId) Language.es => $"Un **apelación de prohibición** ha sido creado por <@{actorId}>.", Language.ru => $"Заявка на **бан** создана пользователем <@{actorId}>.", Language.it => $"Un **appello al ban** è stato creato da <@{actorId}>.", + Language.nl => $"Er is een **ban appeal** aangemaakt door <@{actorId}>.", _ => $"A **ban appeal** has been created by <@{actorId}>.", }; } @@ -2483,6 +2672,7 @@ public string NotificationAppealsUpdate(ulong userId, ulong actorId) Language.es => $"Un **apelación de prohibición** para <@{userId}> ha sido actualizado por <@{actorId}>.", Language.ru => $"Заявка на **бан** для <@{userId}> была обновлена пользователем <@{actorId}>.", Language.it => $"Un **appello al ban** per <@{userId}> è stato aggiornato da <@{actorId}>.", + Language.nl => $"Een **ban beroep** voor <@{userId}> is bijgewerkt door <@{actorId}>.", _ => $"A **ban appeal** for <@{userId}> has been updated by <@{actorId}>.", }; } @@ -2496,6 +2686,7 @@ public string NotificationAppealsStatus() Language.es => "Estado", Language.ru => "статус", Language.it => "Stato", + Language.nl => "Status", _ => "Status", }; } @@ -2509,6 +2700,7 @@ public string NotificationAppealsReason() Language.es => "Razón", Language.ru => "причина", Language.it => "Motivo", + Language.nl => "Reden", _ => "Reason", }; } @@ -2522,6 +2714,7 @@ public string NotificationAppealsAppeal() Language.es => "apelación de prohibición", Language.ru => "заявка на бан", Language.it => "appello al ban", + Language.nl => "Ban beroep", _ => "Ban appeal", }; } @@ -2535,6 +2728,7 @@ public string NotificationRegisterWelcomeToMASZ() Language.es => "¡Bienvenido a MASZ!", Language.ru => "Добро пожаловать в МАСЗ!", Language.it => "Benvenuto in MASZ!", + Language.nl => "Welkom bij MASZ!", _ => "Welcome to MASZ!", }; } @@ -2548,6 +2742,7 @@ public string NotificationRegisterDescriptionThanks() Language.es => "Gracias por registrar tu gremio.\nA continuación, aprenderá algunos consejos útiles para configurar y usar **MASZ**.", Language.ru => "Спасибо за регистрацию вашей гильдии.\nДалее вы получите несколько полезных советов по настройке и использованию **MASZ**.", Language.it => "Grazie per aver registrato la tua gilda.\nDi seguito imparerai alcuni suggerimenti utili per impostare e utilizzare **MASZ**.", + Language.nl => "Bedankt voor het registreren van je gilde. \nIn het volgende leer je een aantal nuttige tips voor het opzetten en gebruiken van **MASZ**.", _ => "Thanks for registering your guild.\nIn the following you will learn some useful tips for setting up and using **MASZ**.", }; } @@ -2561,6 +2756,7 @@ public string NotificationRegisterUseFeaturesCommand() Language.es => "Usa el comando `/ features` para probar si la configuración de tu gremio actual es compatible con todas las características de **MASZ**.", Language.ru => "Используйте команду `/ features`, чтобы проверить, поддерживает ли ваша текущая настройка гильдии все функции **MASZ**.", Language.it => "Usa il comando `/features` per verificare se l'attuale configurazione della gilda supporta tutte le funzionalità di **MASZ**.", + Language.nl => "Gebruik het `/features` commando om te testen of je huidige gilde setup alle features van **MASZ** ondersteunt.", _ => "Use the `/features` command to test if your current guild setup supports all features of **MASZ**.", }; } @@ -2574,6 +2770,7 @@ public string NotificationRegisterDefaultLanguageUsed(string language) Language.es => $"MASZ usará `{language}` como idioma predeterminado para este gremio siempre que sea posible.", Language.ru => $"MASZ будет использовать `{language}` как язык по умолчанию для этой гильдии, когда это возможно.", Language.it => $"MASZ utilizzerà `{language}` come lingua predefinita per questa gilda ogni volta che sarà possibile.", + Language.nl => $"", _ => $"MASZ will use `{language}` as default language for this guild whenever possible.", }; } @@ -2587,6 +2784,7 @@ public string NotificationRegisterConfusingTimestamps() Language.es => "Las zonas horarias pueden resultar confusas.\nMASZ usa una función de Discord para mostrar marcas de tiempo en la zona horaria local de su computadora / teléfono.", Language.ru => "Часовые пояса могут сбивать с толку.\nMASZ использует функцию Discord для отображения меток времени в местном часовом поясе вашего компьютера / телефона.", Language.it => "I fusi orari possono creare confusione.\nMASZ utilizza una funzione Discord per visualizzare i timestamp nel fuso orario locale del tuo computer/telefono.", + Language.nl => "Tijdzones kunnen verwarrend zijn. \nMASZ maakt gebruikt van een Discord functie om Tijdstempels in de lokale tijdzone te tonen van jouw computer/telefoon.", _ => "Timezones can be confusing.\nMASZ uses a Discord feature to display timestamps in the local timezone of your computer/phone.", }; } @@ -2600,6 +2798,7 @@ public string NotificationRegisterSupport() Language.es => "Consulte el [servidor de soporte MASZ] (https://discord.gg/5zjpzw6h3S) si tiene más preguntas.", Language.ru => "Дополнительные вопросы можно найти на [сервере поддержки MASZ] (https://discord.gg/5zjpzw6h3S).", Language.it => "Fare riferimento al [Server di supporto MASZ] (https://discord.gg/5zjpzw6h3S) per ulteriori domande.", + Language.nl => "Raadpleeg [MASZ Support Server] (https://discord.gg/5zjpzw6h3S) voor verdere vragen.", _ => "Please refer to the [MASZ Support Server](https://discord.gg/5zjpzw6h3S) for further questions.", }; } @@ -2613,6 +2812,7 @@ public string NotificationAutomoderationInternal(IUser user) Language.es => $"{user.Mention} activó la automoderación.", Language.ru => $"{user.Mention} запустил автомодерацию.", Language.it => $"{user.Mention} ha attivato la moderazione automatica.", + Language.nl => $"{user.Mention} activeerde automatisering.", _ => $"{user.Mention} triggered automoderation.", }; } @@ -2626,6 +2826,7 @@ public string NotificationAutomoderationCase(IUser user) Language.es => $"{user.Username}#{user.Discriminator} desencadenó la automoderación.", Language.ru => $"{user.Username}#{user.Discriminator} запускает автомодерацию.", Language.it => $"{user.Username}#{user.Discriminator} ha attivato la moderazione automatica.", + Language.nl => $"{user.Username}#{user.Discriminator} leidde tot automatisering.", _ => $"{user.Username}#{user.Discriminator} triggered automoderation.", }; } @@ -2639,6 +2840,7 @@ public string NotificationAutomoderationDM(IUser user, IMentionable channel, str Language.es => $"Hola, {user.Mention}:\n\nActivó la automoderación en {channel.Mention}.\nMotivo: {reason}\nAcción: {action}", Language.ru => $"Привет, {user.Mention}!\n\nВы активировали автомодерацию в {channel.Mention}.\nПричина: {reason}\nДействие: {action}", Language.it => $"Ciao {user.Mention},\n\nHai attivato la moderazione automatica in {channel.Mention}.\nMotivo: {reason}\nAzione: {action}", + Language.nl => $"Hallo {user.Mention},\n\nJe hebt de automatisering geactiveerd in {channel.Mention}.\nReason: {reason}\nAction: {action}", _ => $"Hi {user.Mention},\n\nYou triggered automoderation in {channel.Mention}.\nReason: {reason}\nAction: {action}", }; } @@ -2652,6 +2854,7 @@ public string NotificationAutomoderationChannel(IUser user, string reason) Language.es => $"{user.Mention} has activado la automoderación. Razón: {reason}. Su mensaje ha sido eliminado.", Language.ru => $"{user.Mention} вы запустили автомодерацию. Причина: {reason}. Ваше сообщение было удалено.", Language.it => $"{user.Mention} hai attivato la moderazione automatica. reason: {reason}. Il tuo messaggio è stato cancellato.", + Language.nl => $"{user.Mention} u heeft de automatisering geactiveerd. Reden: {reason}. Uw bericht is verwijderd.", _ => $"{user.Mention} you triggered automoderation. Reason: {reason}. Your message has been deleted.", }; } @@ -2665,6 +2868,7 @@ public string NotificationMotdInternalCreate(IUser actor) Language.es => $"El nuevo MotD ha sido creado por {actor.Mention}.", Language.ru => $"Новый MotD был создан {actor.Mention}.", Language.it => $"Il nuovo MotD è stato creato da {actor.Mention}.", + Language.nl => $"Nieuwe MotD is aangemaakt door {actor.Mention}.", _ => $"New MotD has been created by {actor.Mention}.", }; } @@ -2678,6 +2882,7 @@ public string NotificationMotdInternalEdited(IUser actor) Language.es => $"MotD ha sido editado por {actor.Mention}.", Language.ru => $"MotD редактировал {actor.Mention}.", Language.it => $"MotD è stato modificato da {actor.Mention}.", + Language.nl => $"MotD is bewerkt door {actor.Mention}.", _ => $"MotD has been edited by {actor.Mention}.", }; } @@ -2691,6 +2896,7 @@ public string NotificationMotdShow() Language.es => "Show", Language.ru => "Показывать", Language.it => "Spettacolo", + Language.nl => "Toon", _ => "Show", }; } @@ -2704,6 +2910,7 @@ public string NotificationAutomoderationConfigInternalCreate(string eventType, I Language.es => $"Automodconfig creado para {eventType} por {actor.Mention}.", Language.ru => $"Automodconfig, созданный для {eventType} пользователем {actor.Mention}.", Language.it => $"Automodconfig creato per {eventType} da {actor.Mention}.", + Language.nl => $"Automodconfiguratie gemaakt voor {eventType} door {actor.Mention}.", _ => $"Automodconfig created for {eventType} by {actor.Mention}.", }; } @@ -2717,6 +2924,7 @@ public string NotificationAutomoderationConfigInternalUpdate(string eventType, I Language.es => $"Automodconfig actualizado para {eventType} por {actor.Mention}.", Language.ru => $"Automodconfig обновлен для {eventType} пользователем {actor.Mention}.", Language.it => $"Automodconfig aggiornato per {eventType} da {actor.Mention}.", + Language.nl => $"Automodconfiguratie bijgewerkt voor {eventType} door {actor.Mention}.", _ => $"Automodconfig updated for {eventType} by {actor.Mention}.", }; } @@ -2730,6 +2938,7 @@ public string NotificationAutomoderationConfigInternalDelete(string eventType, I Language.es => $"Automodconfig eliminado para {eventType} por {actor.Mention}.", Language.ru => $"Automodconfig удален для {eventType} пользователем {actor.Mention}.", Language.it => $"Automodconfig eliminato per {eventType} da {actor.Mention}.", + Language.nl => $"Automodconfiguratie verwijderd voor {eventType} door {actor.Mention}.", _ => $"Automodconfig deleted for {eventType} by {actor.Mention}.", }; } @@ -2743,6 +2952,7 @@ public string NotificationAutomoderationConfigLimit() Language.es => "Límite", Language.ru => "Предел", Language.it => "Limite", + Language.nl => "Limiet", _ => "Limit", }; } @@ -2756,6 +2966,7 @@ public string NotificationAutomoderationConfigTimeLimit() Language.es => "Límite de tiempo", Language.ru => "Лимит времени", Language.it => "Limite di tempo", + Language.nl => "Tijdsbeperking", _ => "Time limit", }; } @@ -2769,6 +2980,7 @@ public string NotificationAutomoderationConfigIgnoredRoles() Language.es => "Roles ignorados", Language.ru => "Игнорируемые роли", Language.it => "Ruoli ignorati", + Language.nl => "Genegeerde rollen", _ => "Ignored roles", }; } @@ -2782,6 +2994,7 @@ public string NotificationAutomoderationConfigIgnoredChannels() Language.es => "Canales ignorados", Language.ru => "Игнорируемые каналы", Language.it => "Canali ignorati", + Language.nl => "Genegeerde kanalen", _ => "Ignored channels", }; } @@ -2795,6 +3008,7 @@ public string NotificationAutomoderationConfigDuration() Language.es => "Duración", Language.ru => "Продолжительность", Language.it => "Durata", + Language.nl => "Duur", _ => "Duration", }; } @@ -2808,6 +3022,7 @@ public string NotificationAutomoderationConfigDeleteMessage() Language.es => "Borrar mensaje", Language.ru => "Удаленное сообщение", Language.it => "Cancella il messaggio", + Language.nl => "Verwijder bericht", _ => "Delete message", }; } @@ -2821,6 +3036,7 @@ public string NotificationAutomoderationConfigSendPublic() Language.es => "Enviar notificación pública", Language.ru => "Отправить публичное уведомление", Language.it => "Invia notifica pubblica", + Language.nl => "Verzend openbare notificatie", _ => "Send public notification", }; } @@ -2834,6 +3050,7 @@ public string NotificationAutomoderationConfigSendDM() Language.es => "Enviar notificación DM", Language.ru => "Отправить уведомление в прямом эфире", Language.it => "Invia notifica DM", + Language.nl => "Verzend DM notificatie", _ => "Send DM notification", }; } @@ -2847,6 +3064,7 @@ public string NotificationAutoWhoisJoinWith(IUser user, DateTime registered, str Language.es => $"{user.Mention} (registrado {registered.ToDiscordTS ()}) se unió con la invitación `{invite}`.", Language.ru => $"{user.Mention} (зарегистрированный {registered.ToDiscordTS ()}) присоединился с приглашением `{invite}`.", Language.it => $"{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito con l'invito `{invite}`.", + Language.nl => $"{user.Mention} (geregistreerd {registered.ToDiscordTS()}) is lid geworden met uitnodiging `{invite}`.", _ => $"{user.Mention} (registered {registered.ToDiscordTS()}) joined with invite `{invite}`.", }; } @@ -2860,6 +3078,7 @@ public string NotificationAutoWhoisJoinWithAndFrom(IUser user, ulong by, DateTim Language.es => $"{user.Mention} (registrado {registered.ToDiscordTS()}) se unió con la invitación `{invite}` (creado {createdAt.ToDiscordTS()}) por <@{by}>.", Language.ru => $"{user.Mention} (зарегистрированный {registered.ToDiscordTS()}) присоединился с помощью приглашения `{invite}` (created {createdAt.ToDiscordTS()}) пользователем <@{by}>.", Language.it => $"{user.Mention} (registrato {registered.ToDiscordTS()}) si è unito all'invito `{invite}` (creato {createdAt.ToDiscordTS()}) da <@{by}>.", + Language.nl => $"{user.Mention} (geregistreerd {registered.ToDiscordTS()}) is lid geworden met uitnodiging `{invite}` (gemaakt op {createdAt.ToDiscordTS()}) door <@{by}>.", _ => $"{user.Mention} (registered {registered.ToDiscordTS()}) joined with invite `{invite}` (created {createdAt.ToDiscordTS()}) by <@{by}>.", }; } @@ -2873,6 +3092,7 @@ public string NotificationDiscordAuditLogPunishmentsExecute(int caseId, ulong mo Language.es => $"Castigo por ModCase # {caseId} por el moderador {modId} ejecutado: \"{reason} \"", Language.ru => $"Наказание за ModCase # {caseId} модератором {modId} выполнено: \"{reason} \"", Language.it => $"Punizione per ModCase #{caseId} eseguita dal moderatore {modId}: \"{reason}\"", + Language.nl => $"Straf voor ModCase #{caseId} uitgevoerd door moderator {modId}: \"{reason}\".", _ => $"Punishment for ModCase #{caseId} by moderator {modId} executed: \"{reason}\"", }; } @@ -2886,6 +3106,7 @@ public string NotificationDiscordAuditLogPunishmentsExecuteAutomod(string autoMo Language.es => $"Castigo para Automod {autoModEvent} ejecutado.", Language.ru => $"Наказание за Automod {autoModEvent} выполнено.", Language.it => $"Punizione per Automod {autoModEvent} eseguita.", + Language.nl => $"Straf voor Automod {autoModEvent} uitgevoerd.", _ => $"Punishment for Automod {autoModEvent} executed.", }; } @@ -2899,6 +3120,7 @@ public string NotificationDiscordAuditLogPunishmentsUndone(int caseId, string re Language.es => $"Castigo por ModCase # {caseId} deshecho: \"{reason} \"", Language.ru => $"Наказание за ModCase # {caseId} отменено: \"{reason} \"", Language.it => $"Punizione per ModCase #{caseId} annullata: \"{reason}\"", + Language.nl => $"Straf voor ModCase #{caseId} ongedaan gemaakt: \"{reason}\".", _ => $"Punishment for ModCase #{caseId} undone: \"{reason}\"", }; } @@ -2912,6 +3134,7 @@ public string NotificationDiscordAuditLogPunishmentsAppealApproved(int appealId, Language.es => $"Solicitud de prohibición # {appealId} aprobada: \"{reason} \"", Language.ru => $"Обжалование забанения # {appealId} одобрено: \"{reason} \"", Language.it => $"Appello per Ban Appeal #{appealId} approvato: \"{reason}\"", + Language.nl => $"Ban-beroep #{appealId} goedgekeurd: \"{reason}\".", _ => $"Ban Appeal #{appealId} approved: \"{reason}\"", }; } @@ -2925,6 +3148,7 @@ public string NotificationGuildAuditLogInternalCreate(string eventName, IUser ac Language.es => $"{actor.Mention} ha configurado el registro de auditoría a nivel de gremio para el evento `{eventName}`.", Language.ru => $"Журнал аудита на уровне гильдии для события `{eventName}` был создан {actor.Mention}.", Language.it => $"Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato impostato da {actor.Mention}.", + Language.nl => $"Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is opgezet door {actor.Mention}.", _ => $"Guild-level audit log for event `{eventName}` has been set up by {actor.Mention}.", }; } @@ -2938,6 +3162,7 @@ public string NotificationGuildAuditLogInternalUpdate(string eventName, IUser ac Language.es => $"{actor.Mention} ha editado el registro de auditoría a nivel de gremio para el evento `{eventName}`.", Language.ru => $"Журнал аудита на уровне гильдии для события `{eventName}` отредактировал {actor.Mention}.", Language.it => $"Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato modificato da {actor.Mention}.", + Language.nl => $"Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is bewerkt door {actor.Mention}.", _ => $"Guild-level audit log for event `{eventName}` has been edited by {actor.Mention}.", }; } @@ -2951,6 +3176,7 @@ public string NotificationGuildAuditLogInternalDelete(string eventName, IUser ac Language.es => $"{actor.Mention} ha eliminado el registro de auditoría a nivel de hermandad para el evento `{eventName}`.", Language.ru => $"Журнал аудита на уровне гильдии для события `{eventName}` был удален {actor.Mention}.", Language.it => $"Il registro di controllo a livello di gilda per l'evento `{eventName}` è stato eliminato da {actor.Mention}.", + Language.nl => $"Auditlogboek op gilde niveau voor gebeurtenis `{eventName}` is verwijderd door {actor.Mention}.", _ => $"Guild-level audit log for event `{eventName}` has been deleted by {actor.Mention}.", }; } @@ -2964,6 +3190,7 @@ public string NotificationGuildAuditLogMentionRoles() Language.es => "Mencionar rol (s)", Language.ru => "Упоминание ролей", Language.it => "Menzione ruolo/i", + Language.nl => "Noem rol(len)", _ => "Mention role(s)", }; } @@ -2977,6 +3204,7 @@ public string NotificationGuildAuditLogExcludeRoles() Language.es => "Excluir roles", Language.ru => "Исключить роли", Language.it => "Escludi ruoli", + Language.nl => "Uitgezonderde rollen", _ => "Exclude roles", }; } @@ -2990,6 +3218,7 @@ public string NotificationGuildAuditLogExcludeChannels() Language.es => "Excluir canales", Language.ru => "Исключить каналы", Language.it => "Escludi canali", + Language.nl => "Uitgesloten kanalen", _ => "Exclude channels", }; } @@ -3003,6 +3232,7 @@ public string NotificationGuildAuditLogTitle() Language.es => "Registro de auditoría a nivel de gremio", Language.ru => "Журнал аудита на уровне гильдии", Language.it => "Registro di controllo a livello di gilda", + Language.nl => "Auditlogboek op gilde niveau", _ => "Guild-level audit log", }; } @@ -3016,6 +3246,7 @@ public string NotificationZalgo(ulong id, string oldName, string newName) Language.es => $"El usuario <@{id}> ha sido renombrado de '{oldName}' a '{newName}'.", Language.ru => $"Пользователь <@{id}> был переименован '{oldName}' на '{newName}'.", Language.it => $"L'utente <@{id}> è stato rinominato da '{oldName}' a '{newName}'.", + Language.nl => $"Gebruiker <@{id}> is hernoemd van '{oldName}' naar '{newName}'.", _ => $"User <@{id}> has been renamed from '{oldName}' to '{newName}'.", }; } @@ -3029,6 +3260,7 @@ public string CmdOnlyTextChannel() Language.es => "Solo se permiten canales de texto.", Language.ru => "Разрешены только текстовые каналы.", Language.it => "Sono consentiti solo canali di testo.", + Language.nl => "Alleen tekstkanalen zijn toegestaan.", _ => "Only text channels are allowed.", }; } @@ -3042,6 +3274,7 @@ public string CmdCannotViewOrDeleteInChannel() Language.es => "¡No puedo ver ni borrar mensajes en este canal!", Language.ru => "Мне не разрешено просматривать или удалять сообщения на этом канале!", Language.it => "Non sono autorizzato a visualizzare o eliminare i messaggi in questo canale!", + Language.nl => "Ik mag geen berichten bekijken of verwijderen in dit kanaal!", _ => "I'm not allowed to view or delete messages in this channel!", }; } @@ -3055,6 +3288,7 @@ public string CmdGetAvatarURL() Language.es => "URL de avatar", Language.ru => "URL аватара", Language.it => "l'URL dell'avatar", + Language.nl => "Avatar-URL", _ => "Avatar URL", }; } @@ -3068,6 +3302,7 @@ public string CmdUserID() Language.es => "User ID", Language.ru => "ID пользователя", Language.it => "ID utente", + Language.nl => "Gebruikers-ID", _ => "User ID", }; } @@ -3081,6 +3316,7 @@ public string CmdCannotFindChannel() Language.es => "No se puede encontrar el canal.", Language.ru => "Не могу найти канал.", Language.it => "Impossibile trovare il canale.", + Language.nl => "Kan kanaal niet vinden.", _ => "Cannot find channel.", }; } @@ -3094,6 +3330,7 @@ public string CmdNoWebhookConfigured() Language.es => "Este gremio no tiene configurado ningún webhook para notificaciones internas.", Language.ru => "У этой гильдии нет настроенного веб-перехватчика для внутренних уведомлений.", Language.it => "Questa gilda non ha webhook per le notifiche interne configurate.", + Language.nl => "Dit gilde heeft geen webhook geconfigureerd voor interne meldingen.", _ => "This guild has no webhook for internal notifications configured.", }; } @@ -3107,6 +3344,7 @@ public string CmdCleanup(int count, IMentionable channel) Language.es => $"Se eliminaron {count} mensajes en {channel.Mention}.", Language.ru => $"Удалено {count} сообщений в {channel.Mention}.", Language.it => $"Eliminati {count} messaggi in {channel.Mention}.", + Language.nl => $"{count} berichten verwijderd in {channel.Mention}.", _ => $"Deleted {count} messages in {channel.Mention}.", }; } @@ -3120,6 +3358,7 @@ public string CmdAntiraid(int count) Language.es => $"Se eliminaron {count} mensajes.", Language.ru => $"Удалено {count} сообщений.", Language.it => $"Eliminati {count} messaggi.", + Language.nl => $"{count} berichten verwijderd.", _ => $"Deleted {count} messages.", }; } @@ -3133,6 +3372,7 @@ public string CmdFeaturesKickPermissionGranted() Language.es => "Permiso de patada concedido.", Language.ru => "Разрешение на удар предоставлено.", Language.it => "Autorizzazione calci concessa.", + Language.nl => "Kick-toestemming verleend.", _ => "Kick permission granted.", }; } @@ -3146,6 +3386,7 @@ public string CmdFeaturesKickPermissionNotGranted() Language.es => "Permiso de patada no concedido.", Language.ru => "Разрешение на удар не предоставлено.", Language.it => "Autorizzazione calcio non concessa.", + Language.nl => "Kick-toestemming niet verleend.", _ => "Kick permission not granted.", }; } @@ -3159,6 +3400,7 @@ public string CmdFeaturesBanPermissionGranted() Language.es => "Prohibición concedida.", Language.ru => "Получено разрешение на запрет.", Language.it => "Autorizzazione al divieto concessa.", + Language.nl => "Ban-toestemming verleend.", _ => "Ban permission granted.", }; } @@ -3172,6 +3414,7 @@ public string CmdFeaturesBanPermissionNotGranted() Language.es => "Prohibir permiso no concedido.", Language.ru => "Разрешение на запрет не предоставлено.", Language.it => "Autorizzazione al divieto non concessa.", + Language.nl => "Ban-toestemming niet verleend.", _ => "Ban permission not granted.", }; } @@ -3185,6 +3428,7 @@ public string CmdFeaturesManageRolePermissionGranted() Language.es => "Administrar el permiso de función otorgado.", Language.ru => "Разрешение на управление ролью предоставлено.", Language.it => "Gestire l'autorizzazione del ruolo concessa.", + Language.nl => "Toestemming voor rol beheren verleend.", _ => "Manage role permission granted.", }; } @@ -3198,6 +3442,7 @@ public string CmdFeaturesManageRolePermissionNotGranted() Language.es => "Administrar el permiso de función no concedido.", Language.ru => "Не предоставлено разрешение на управление ролью.", Language.it => "Autorizzazione di gestione del ruolo non concessa.", + Language.nl => "Toestemming voor rol beheren niet verleend.", _ => "Manage role permission not granted.", }; } @@ -3211,6 +3456,7 @@ public string CmdFeaturesMutedRoleDefined() Language.es => "Función silenciada definida.", Language.ru => "Определена приглушенная роль.", Language.it => "Ruolo disattivato definito.", + Language.nl => "Gedempte rol gedefinieerd.", _ => "Muted role defined.", }; } @@ -3224,6 +3470,7 @@ public string CmdFeaturesMutedRoleDefinedButTooHigh() Language.es => "Función silenciada definida pero demasiado alta en la jerarquía de funciones.", Language.ru => "Определена приглушенная роль, но иерархия ролей слишком высока.", Language.it => "Ruolo disattivato definito ma troppo alto nella gerarchia dei ruoli.", + Language.nl => "Gedempte rol gedefinieerd maar te hoog in rollenhiërarchie.", _ => "Muted role defined but too high in role hierarchy.", }; } @@ -3237,6 +3484,7 @@ public string CmdFeaturesMutedRoleDefinedButInvalid() Language.es => "Función silenciada definida pero no válida.", Language.ru => "Роль без звука определена, но недействительна.", Language.it => "Ruolo disattivato definito ma non valido.", + Language.nl => "Gedempte rol gedefinieerd maar ongeldig.", _ => "Muted role defined but invalid.", }; } @@ -3250,6 +3498,7 @@ public string CmdFeaturesMutedRoleUndefined() Language.es => "Rol silenciado indefinido.", Language.ru => "Отключенная роль не определена.", Language.it => "Ruolo disattivato non definito.", + Language.nl => "Gedempte rol niet gedefinieerd.", _ => "Muted role undefined.", }; } @@ -3263,6 +3512,7 @@ public string CmdFeaturesPunishmentExecution() Language.es => "Ejecución del castigo", Language.ru => "Казнь", Language.it => "Esecuzione della punizione", + Language.nl => "Uitvoering van de straf", _ => "Punishment execution", }; } @@ -3276,6 +3526,7 @@ public string CmdFeaturesPunishmentExecutionDescription() Language.es => "Deje que MASZ maneje los castigos (por ejemplo, tempbans, mudos, etc.).", Language.ru => "Позвольте MASZ заниматься наказаниями (например, временным запретом, отключением звука и т. Д.).", Language.it => "Lascia che MASZ gestisca le punizioni (ad esempio tempban, mute, ecc.).", + Language.nl => "Laat MASZ straffen afhandelen (bijv. Tempbans, mutes, etc.).", _ => "Let MASZ handle punishments (e.g. tempbans, mutes, etc.).", }; } @@ -3289,6 +3540,7 @@ public string CmdFeaturesUnbanRequests() Language.es => "Solicitudes de anulación de la prohibición", Language.ru => "Запросы на разблокировку", Language.it => "Riattiva richieste", + Language.nl => "Unban verzoeken", _ => "Unban requests", }; } @@ -3302,6 +3554,7 @@ public string CmdFeaturesUnbanRequestsDescriptionGranted() Language.es => "Permite a los miembros prohibidos ver sus casos y comentarlos para las solicitudes de deshabilitación.", Language.ru => "Позволяет заблокированным участникам просматривать свои дела и комментировать их для запросов на разблокировку.", Language.it => "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban.", + Language.nl => "Laat gebande gerbruikers toe om hun zaken te zien en erop te reageren voor unban verzoeken.", _ => "Allows banned members to see their cases and comment on it for unban requests.", }; } @@ -3315,6 +3568,7 @@ public string CmdFeaturesUnbanRequestsDescriptionNotGranted() Language.es => "Permite a los miembros prohibidos ver sus casos y comentarlos para las solicitudes de deshabilitación.\nOtorga a este bot el permiso de prohibición para usar esta función.", Language.ru => "Позволяет заблокированным участникам просматривать свои дела и комментировать их для запросов на разблокировку.\nПредоставьте этому боту разрешение на использование этой функции.", Language.it => "Consente ai membri bannati di vedere i loro casi e commentarli per le richieste di sban.\nConcedi a questo bot il permesso di ban per utilizzare questa funzione.", + Language.nl => "Laat gebande gerbruikers toe om hun zaken te zien en erop te reageren voor unban verzoeken.\nGeef deze bot toestemming om deze functie te gebruiken.", _ => "Allows banned members to see their cases and comment on it for unban requests.\nGrant this bot the ban permission to use this feature.", }; } @@ -3328,6 +3582,7 @@ public string CmdFeaturesReportCommand() Language.es => "Comando de informe", Language.ru => "Команда отчета", Language.it => "Comando di rapporto", + Language.nl => "Opdracht rapporteren", _ => "Report command", }; } @@ -3341,6 +3596,7 @@ public string CmdFeaturesReportCommandDescriptionGranted() Language.es => "Permite a los miembros informar mensajes.", Language.ru => "Позволяет участникам сообщать о сообщениях.", Language.it => "Consente ai membri di segnalare i messaggi.", + Language.nl => "Geef toestemming aan gebruikers om berichten te rapporteren.", _ => "Allows members to report messages.", }; } @@ -3354,6 +3610,7 @@ public string CmdFeaturesReportCommandDescriptionNotGranted() Language.es => "Permite a los miembros informar mensajes.\nDefina un webhook de personal interno para utilizar esta función.", Language.ru => "Позволяет участникам сообщать о сообщениях.\nОпределите внутренний веб-перехватчик персонала, чтобы использовать эту функцию.", Language.it => "Consente ai membri di segnalare i messaggi.\nDefinire un webhook personale interno per utilizzare questa funzione.", + Language.nl => "Geef toestemming aan gebruikers om berichten te rapporteren.\nDefinieer een interne personeelswebhook om deze functie te gebruiken.", _ => "Allows members to report messages.\nDefine a internal staff webhook to use this feature.", }; } @@ -3367,6 +3624,7 @@ public string CmdFeaturesInviteTracking() Language.es => "Seguimiento de invitaciones", Language.ru => "Отслеживание приглашений", Language.it => "Invita il monitoraggio", + Language.nl => "Uitnodiging volgen", _ => "Invite tracking", }; } @@ -3380,6 +3638,7 @@ public string CmdFeaturesInviteTrackingDescriptionGranted() Language.es => "Permite a MASZ realizar un seguimiento de las invitaciones que están utilizando los nuevos miembros.", Language.ru => "Позволяет MASZ отслеживать приглашения, которые используют новые участники.", Language.it => "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri.", + Language.nl => "Hiermee kan MASZ de uitnodigingen bijhouden die nieuwe leden gebruiken.", _ => "Allows MASZ to track the invites new members are using.", }; } @@ -3393,6 +3652,7 @@ public string CmdFeaturesInviteTrackingDescriptionNotGranted() Language.es => "Permite a MASZ realizar un seguimiento de las invitaciones que están utilizando los nuevos miembros.\nOtorga a este bot el permiso de gestión del gremio para usar esta función.", Language.ru => "Позволяет MASZ отслеживать приглашения, которые используют новые участники.\nПредоставьте этому боту разрешение на управление гильдией на использование этой функции.", Language.it => "Consente a MASZ di tenere traccia degli inviti utilizzati dai nuovi membri.\nConcedi a questo bot il permesso di gestione della gilda per utilizzare questa funzione.", + Language.nl => "Hiermee kan MASZ de uitnodigingen bijhouden die nieuwe leden gebruiken.\nGeef deze bot de machtiging gilde beheren om deze functie te gebruiken.", _ => "Allows MASZ to track the invites new members are using.\nGrant this bot the manage guild permission to use this feature.", }; } @@ -3406,6 +3666,7 @@ public string CmdFeaturesSupportAllFeatures() Language.es => "Tu bot en este gremio está configurado correctamente.", Language.ru => "Ваш бот в этой гильдии настроен правильно.", Language.it => "Il tuo bot in questa gilda è configurato correttamente.", + Language.nl => "Jouw bot op deze gilde is correct geconfigureerd.", _ => "Your bot on this guild is configured correctly.", }; } @@ -3419,6 +3680,7 @@ public string CmdFeaturesSupportAllFeaturesDesc() Language.es => "Se pueden utilizar todas las funciones de MASZ.", Language.ru => "Можно использовать все возможности MASZ.", Language.it => "Tutte le funzionalità di MASZ possono essere utilizzate.", + Language.nl => "Alle functies van MASZ kunnen gebruikt worden.", _ => "All features of MASZ can be used.", }; } @@ -3432,6 +3694,7 @@ public string CmdFeaturesMissingFeatures() Language.es => "Hay funciones de MASZ que no puede utilizar en este momento.", Language.ru => "Есть функции MASZ, которые вы не можете использовать прямо сейчас.", Language.it => "Ci sono funzionalità di MASZ che non puoi usare in questo momento.", + Language.nl => "Er zijn functies van MASZ die u momenteel niet kunt gebruiken.", _ => "There are features of MASZ that you cannot use right now.", }; } @@ -3445,6 +3708,7 @@ public string CmdInvite() Language.es => "Tendrá que alojar su propia instancia de MASZ en su servidor o PC.\nPagar https://github.com/zaanposni/discord-masz#hosting", Language.ru => "Вам нужно будет разместить свой собственный экземпляр MASZ на вашем сервере или компьютере.\nОформить заказ https://github.com/zaanposni/discord-masz#hosting", Language.it => "Dovrai ospitare la tua istanza di MASZ sul tuo server o PC.\nAcquista https://github.com/zaanposni/discord-masz#hosting", + Language.nl => "U zult uw eigen instantie van MASZ op uw server of pc moeten hosten.\nBekijk https://github.com/zaanposni/discord-masz#hosting", _ => "You will have to host your own instance of MASZ on your server or pc.\nCheck out https://github.com/zaanposni/discord-masz#hosting", }; } @@ -3458,6 +3722,7 @@ public string CmdPunish(int caseId, string caseLink) Language.es => $"Caso `# {caseId}` creado: {caseLink}", Language.ru => $"Обращение `# {caseId}` создано: {caseLink}", Language.it => $"Caso `#{caseId}` creato: {caseLink}", + Language.nl => $"Zaak `#{caseId}` aangemaakt: {caseLink}", _ => $"Case `#{caseId}` created: {caseLink}", }; } @@ -3471,6 +3736,7 @@ public string CmdRegister(string url) Language.es => $"Un administrador de sitio puede registrar un gremio en: {url}", Language.ru => $"Администратор сайта может зарегистрировать гильдию по адресу: {url}", Language.it => $"Un amministratore del sito può registrare una gilda su: {url}", + Language.nl => $"Een sitebeheerder kan een gilde registreren op: {url}", _ => $"A siteadmin can register a guild at: {url}", }; } @@ -3484,6 +3750,7 @@ public string CmdReportFailed() Language.es => "No se pudo enviar una notificación interna a los moderadores para el comando de informe.", Language.ru => "Не удалось отправить внутреннее уведомление модераторам для команды отчета.", Language.it => "Impossibile inviare una notifica interna ai moderatori per il comando di segnalazione.", + Language.nl => "Kan geen interne melding naar moderators sturen voor rapportopdracht.", _ => "Failed to send internal notification to moderators for report command.", }; } @@ -3497,6 +3764,7 @@ public string CmdReportSent() Language.es => "Reporte enviado.", Language.ru => "Отчет отправлен.", Language.it => "Rapporto inviato.", + Language.nl => "Rapport verzonden", _ => "Report sent.", }; } @@ -3510,6 +3778,7 @@ public string CmdReportContent(IUser user, IMessage message, IMentionable channe Language.es => $"{user.Mention} informó un mensaje de {message.Author.Mention} en {channel.Mention}.\n{message.GetJumpUrl()}", Language.ru => $"{user.Mention} сообщил о сообщении от {message.Author.Mention} в {channel.Mention}.\n{message.GetJumpUrl()}", Language.it => $"{user.Mention} ha segnalato un messaggio da {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", + Language.nl => $"{user.Mention} heeft een bericht van {message.Author.Mention} in {channel.Mention} gerapporteerd.\n{message.GetJumpUrl()}", _ => $"{user.Mention} reported a message from {message.Author.Mention} in {channel.Mention}.\n{message.GetJumpUrl()}", }; } @@ -3523,6 +3792,7 @@ public string CmdSayFailed() Language.es => "No se pudo enviar el mensaje", Language.ru => "Не удалось отправить сообщение", Language.it => "Impossibile inviare il messaggio", + Language.nl => "Bericht versturen mislukt", _ => "Failed to send message", }; } @@ -3536,6 +3806,7 @@ public string CmdSaySent() Language.es => "Mensaje enviado.", Language.ru => "Сообщение отправлено.", Language.it => "Messaggio inviato.", + Language.nl => "Bericht verstuurd.", _ => "Message sent.", }; } @@ -3545,10 +3816,11 @@ public string CmdSaySentMod(IUser user, IUserMessage message, IMentionable chann { Language.de => $"{user.Mention} verwendete den Say-Befehl in {channel.Mention}.\n{message.GetJumpUrl()}", Language.at => $"{user.Mention} vawendete den Say-Befehl in {channel.Mention}.\n{message.GetJumpUrl()}", - Language.fr => $"{user.Mention} a utilisé la commande « dire » dans{channel.Mention}.\n{message.GetJumpUrl()}", - Language.es => $"{user.Mention} usó el comando «decir» en {channel.Mention}.\n{message.GetJumpUrl()}", - Language.ru => $"{user.Mention} использовал команду «сказать» в {channel.Mention}.\n{message.GetJumpUrl()}", - Language.it => $"{user.Mention} ha usato il comando \"dire\" in {channel.Mention}.\n{message.GetJumpUrl()}", + Language.fr => $"{user.Mention} a utilisé la commande dans{channel.Mention}.\n{message.GetJumpUrl()}", + Language.es => $"{user.Mention} usó el comando en {channel.Mention}.\n{message.GetJumpUrl()}", + Language.ru => $"{user.Mention} использовал команду в {channel.Mention}.\n{message.GetJumpUrl()}", + Language.it => $"{user.Mention} ha usato il comando in {channel.Mention}.\n{message.GetJumpUrl()}", + Language.nl => $"{user.Mention} heeft het zeg commando gebruikt in {channel.Mention}.\n{message.GetJumpUrl()}", _ => $"{user.Mention} used the say command in {channel.Mention}.\n{message.GetJumpUrl()}", }; } @@ -3562,6 +3834,7 @@ public string CmdTrackInviteNotFromThisGuild() Language.es => "La invitación no es de este gremio.", Language.ru => "Приглашение не из этой гильдии.", Language.it => "L'invito non è di questa gilda.", + Language.nl => "De uitnodiging is niet van deze gilde.", _ => "The invite is not from this guild.", }; } @@ -3575,6 +3848,7 @@ public string CmdTrackCannotFindInvite() Language.es => "No se pudo encontrar la invitación en la base de datos o en este gremio.", Language.ru => "Не удалось найти инвайт в базе данных или в этой гильдии.", Language.it => "Impossibile trovare l'invito nel database o in questa gilda.", + Language.nl => "Kon uitnodiging niet vinden in de database of op deze gilde.", _ => "Could not find invite in database or in this guild.", }; } @@ -3588,6 +3862,7 @@ public string CmdTrackFailedToFetchInvite() Language.es => "No se pudo recuperar la invitación.", Language.ru => "Не удалось получить приглашение.", Language.it => "Impossibile recuperare l'invito.", + Language.nl => "Kon de uitnodiging niet ophalen.", _ => "Failed to fetch invite.", }; } @@ -3601,6 +3876,7 @@ public string CmdTrackCreatedAt(string inviteCode, DateTime createdAt) Language.es => $"`{inviteCode}` creado en {createdAt.ToDiscordTS ()}.", Language.ru => $"`{inviteCode}` создан в {createdAt.ToDiscordTS ()}.", Language.it => $"`{inviteCode}` creato su {createdAt.ToDiscordTS()}.", + Language.nl => $"`{inviteCode}` gemaakt op {createdAt.ToDiscordTS()}.", _ => $"`{inviteCode}` created at {createdAt.ToDiscordTS()}.", }; } @@ -3614,6 +3890,7 @@ public string CmdTrackCreatedBy(string inviteCode, IUser createdBy) Language.es => $"`{inviteCode}` creado por {createdBy.Mention}.", Language.ru => $"`{inviteCode}` создан {createdBy.Mention}.", Language.it => $"`{inviteCode}` creato da {createdBy.Mention}.", + Language.nl => $"`{inviteCode}` gemaakt door {createdBy.Mention}.", _ => $"`{inviteCode}` created by {createdBy.Mention}.", }; } @@ -3627,6 +3904,7 @@ public string CmdTrackCreatedByAt(string inviteCode, IUser createdBy, DateTime c Language.es => $"`{inviteCode}` creado por {createdBy.Mention} en {createdAt.ToDiscordTS ()}.", Language.ru => $"`{inviteCode}` создан {createdBy.Mention} в {createdAt.ToDiscordTS ()}.", Language.it => $"`{inviteCode}` creato da {createdBy.Mention} su {createdAt.ToDiscordTS()}.", + Language.nl => $"{inviteCode} gecreëerd door {createdBy.Mention} op {createdAt.ToDiscordTS()}.", _ => $"`{inviteCode}` created by {createdBy.Mention} at {createdAt.ToDiscordTS()}.", }; } @@ -3640,6 +3918,7 @@ public string CmdTrackNotTrackedYet() Language.es => "MASZ aún no ha realizado el seguimiento de esta invitación.", Language.ru => "Это приглашение еще не отслежено MASZ.", Language.it => "Questo invito non è stato ancora monitorato da MASZ.", + Language.nl => "Deze uitnodiging is nog niet gevolgd door MASZ.", _ => "This invite has not been tracked by MASZ yet.", }; } @@ -3653,6 +3932,7 @@ public string CmdTrackUsedBy(int count) Language.es => $"Usado por [{count}]", Language.ru => $"Используется [{count}]", Language.it => $"Utilizzato da [{count}]", + Language.nl => $"Gebruikt door [{count}]", _ => $"Used by [{count}]", }; } @@ -3666,6 +3946,7 @@ public string CmdViewInvalidGuildId() Language.es => "Por favor, especifique un guildid válido.", Language.ru => "Укажите действующего гильдида.", Language.it => "Si prega di specificare un ID gilda valido.", + Language.nl => "Gelieve een geldige guildid te specifiëren.", _ => "Please specify a valid guildid.", }; } @@ -3679,6 +3960,7 @@ public string CmdViewNotAllowedToView() Language.es => "No se le permite ver este caso.", Language.ru => "Вам не разрешено просматривать это дело.", Language.it => "Non sei autorizzato a visualizzare questo caso.", + Language.nl => "U bent niet gemachtigd om deze zaak te bekijken.", _ => "You are not allowed to view this case.", }; } @@ -3692,6 +3974,7 @@ public string CmdWhoisUsedInvite(string inviteCode) Language.es => $"Invitación usada `{inviteCode}`.", Language.ru => $"Использовал инвайт `{inviteCode}`.", Language.it => $"Invito usato `{inviteCode}`.", + Language.nl => $"Gebruikte uitnodiging `{inviteCode}`.", _ => $"Used invite `{inviteCode}`.", }; } @@ -3705,6 +3988,7 @@ public string CmdWhoisInviteBy(ulong user) Language.es => $"Por <@{user}>.", Language.ru => $"Автор <@{user}>.", Language.it => $"Da <@{user}>.", + Language.nl => $"Door <@{user}>.", _ => $"By <@{user}>.", }; } @@ -3718,6 +4002,7 @@ public string CmdWhoisNoCases() Language.es => "No hay casos para este usuario.", Language.ru => "Для этого пользователя нет случаев.", Language.it => "Non ci sono casi per questo utente.", + Language.nl => "Er zijn geen zaken voor deze gebruiker.", _ => "There are no cases for this user.", }; } @@ -3731,6 +4016,7 @@ public string CmdUndoResultTitle() Language.es => "Resultado", Language.ru => "Результат", Language.it => "Risultato", + Language.nl => "Resultaat", _ => "Result", }; } @@ -3744,6 +4030,7 @@ public string CmdUndoResultWaiting() Language.es => "A la espera de la aprobación.", Language.ru => "Ожидание подтверждения.", Language.it => "In attesa di approvazione.", + Language.nl => "Wachten op goedkeuring.", _ => "Waiting for approval.", }; } @@ -3757,6 +4044,7 @@ public string CmdUndoResultTimedout() Language.es => "Caducado", Language.ru => "Время вышло", Language.it => "Fuori tempo", + Language.nl => "Tijd verstreken.", _ => "Timed out", }; } @@ -3770,6 +4058,7 @@ public string CmdUndoResultCanceled() Language.es => "Cancelado", Language.ru => "Отменено", Language.it => "Annullato", + Language.nl => "Geannuleerd.", _ => "Canceled", }; } @@ -3783,6 +4072,7 @@ public string CmdUndoPublicNotificationTitle() Language.es => "Notificación pública", Language.ru => "Публичное уведомление", Language.it => "Notifica pubblica", + Language.nl => "Openbare kennisgeving.", _ => "Public notification", }; } @@ -3796,6 +4086,7 @@ public string CmdUndoPublicNotificationDescription() Language.es => "¿Enviar una notificación pública?", Language.ru => "Отправить публичное уведомление?", Language.it => "Inviare una notifica pubblica?", + Language.nl => "Een openbare kennisgeving versturen?", _ => "Send a public notification?", }; } @@ -3809,6 +4100,7 @@ public string CmdUndoButtonsCancel() Language.es => "Cancelar", Language.ru => "Отмена", Language.it => "Annulla", + Language.nl => "Annuleer", _ => "Cancel", }; } @@ -3822,6 +4114,7 @@ public string CmdUndoButtonsPublicNotification() Language.es => "Notificación pública", Language.ru => "Публичное уведомление", Language.it => "Notifica pubblica", + Language.nl => "Openbare kennisgeving.", _ => "Public notification", }; } @@ -3835,6 +4128,7 @@ public string CmdUndoButtonsNoPublicNotification() Language.es => "Sin notificación pública", Language.ru => "Нет публичного уведомления", Language.it => "Nessuna notifica pubblica", + Language.nl => "Geen openbare notificatie", _ => "No public notification", }; } @@ -3848,6 +4142,7 @@ public string CmdUndoCreatedAt() Language.es => "Creado en.", Language.ru => "Создано в.", Language.it => "Creato a.", + Language.nl => "Gemaakt bij.", _ => "Created at.", }; } @@ -3861,6 +4156,7 @@ public string CmdUndoNoCases() Language.es => "No se han encontrado casos de modulación activos.", Language.ru => "Активных модкейсов не обнаружено.", Language.it => "Nessun modcase attivo è stato trovato.", + Language.nl => "Er zijn geen actieve moderatiezaken gevonden.", _ => "No active modcases have been found.", }; } @@ -3874,6 +4170,7 @@ public string CmdUndoUnmuteFoundXCases(int caseCount) Language.es => $"Se encontraron casos activos `{caseCount}`. ¿Quieres desactivarlos o eliminarlos todos para dejar de silenciar al usuario?", Language.ru => $"Обнаружены активные обращения `{caseCount}`. Вы хотите деактивировать или удалить их все, чтобы включить микрофон для пользователя?", Language.it => $"Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riattivare l'audio dell'utente?", + Language.nl => $"{caseCount} actieve zaken gevonden. Wil je ze allemaal deactiveren of verwijderen om de gebruiker te dempen?", _ => $"Found `{caseCount}` active cases. Do you want to deactivate or delete all of them to unmute the user?", }; } @@ -3887,6 +4184,7 @@ public string CmdUndoUnmuteResultDeleted() Language.es => "Silenciados eliminados", Language.ru => "Без звука удалено", Language.it => "Disattiva audio cancellato", + Language.nl => "Dempen verwijderd", _ => "Mutes deleted", }; } @@ -3900,6 +4198,7 @@ public string CmdUndoUnmuteResultDeactivated() Language.es => "Silencios desactivados", Language.ru => "Отключение звука отключено", Language.it => "Mute disattivate", + Language.nl => "Dempen gedeactiveerd.", _ => "Mutes deactivated", }; } @@ -3913,6 +4212,7 @@ public string CmdUndoUnmuteButtonsDelete() Language.es => "Eliminar silencios", Language.ru => "Удалить отключение звука", Language.it => "Elimina mute", + Language.nl => "Dempen verwijderen.", _ => "Delete Mutes", }; } @@ -3926,6 +4226,7 @@ public string CmdUndoUnmuteButtonsDeactivate() Language.es => "Silenciar desactivados", Language.ru => "Отключить отключение звука", Language.it => "Disattiva sordina", + Language.nl => "Deactiveer Dempen", _ => "Deativate Mutes", }; } @@ -3939,6 +4240,7 @@ public string CmdUndoUnbanFoundXCases(int caseCount) Language.es => $"Se encontraron casos activos `{caseCount}`. ¿Quieres desactivarlos o eliminarlos todos para desbloquear al usuario?", Language.ru => $"Обнаружены активные обращения `{caseCount}`. Вы хотите деактивировать или удалить их все, чтобы разблокировать пользователя?", Language.it => $"Trovati casi attivi di `{caseCount}`. Vuoi disattivarli o eliminarli tutti per riabilitare l'utente?", + Language.nl => $"{caseCount} actieve zaken gevonden. Wil je ze allemaal deactiveren of verwijderen om de gebruiker te unbannen?", _ => $"Found `{caseCount}` active cases. Do you want to deactivate or delete all of them to unban the user?", }; } @@ -3952,6 +4254,7 @@ public string CmdUndoUnbanResultDeleted() Language.es => "Prohibiciones eliminadas", Language.ru => "Баны удалены", Language.it => "Divieti cancellati", + Language.nl => "Bans verwijderd.", _ => "Bans deleted", }; } @@ -3965,6 +4268,7 @@ public string CmdUndoUnbanResultDeactivated() Language.es => "Prohibiciones desactivadas", Language.ru => "Баны отключены", Language.it => "Divieti disattivati", + Language.nl => "Bans gedeactiveerd", _ => "Bans deactivated", }; } @@ -3978,6 +4282,7 @@ public string CmdUndoUnbanButtonsDelete() Language.es => "Eliminar prohibiciones", Language.ru => "Удалить баны", Language.it => "Elimina ban", + Language.nl => "Verwijder bans", _ => "Delete Bans", }; } @@ -3991,7 +4296,8 @@ public string CmdUndoUnbanButtonsDeactivate() Language.es => "Prohibiciones de desactivación", Language.ru => "Деактивировать баны", Language.it => "Divieti di disattivazione", - _ => "Deativate Bans", + Language.nl => "Bans deactiveren.", + _ => "Deactivate Bans", }; } public string CmdStatusTitle() @@ -4004,6 +4310,7 @@ public string CmdStatusTitle() Language.es => "Estado", Language.ru => "Статус", Language.it => "Stato", + Language.nl => "Status", _ => "Status", }; } @@ -4017,6 +4324,7 @@ public string CmdStatusBot() Language.es => "Bot", Language.ru => "Бот", Language.it => "Bot", + Language.nl => "Bot", _ => "Bot", }; } @@ -4030,6 +4338,7 @@ public string CmdStatusDatabase() Language.es => "Base de datos", Language.ru => "База данных", Language.it => "Database", + Language.nl => "Databank", _ => "Database", }; } @@ -4043,6 +4352,7 @@ public string CmdStatusInternalCache() Language.es => "Cache interno", Language.ru => "Внутренний кеш", Language.it => "Cache interno", + Language.nl => "Interne cache", _ => "Internal Cache", }; } @@ -4056,6 +4366,7 @@ public string CmdStatusCurrentlyLoggedIn() Language.es => "Usuarios actualmente conectados", Language.ru => "Пользователи, в настоящее время в системе", Language.it => "Utenti attualmente collegati", + Language.nl => "Momenteel ingelogd in gebruikers", _ => "Currently logged in users", }; } @@ -4069,6 +4380,7 @@ public string CmdStatusLastDisconnectAt(string time) Language.es => $"Última desconexión en {time}.", Language.ru => $"Последнее отключение: {time}.", Language.it => $"Ultima disconnessione a {time}.", + Language.nl => $"Laatste keer verbroken om {time}.", _ => $"Experienced last disconnect at {time}.", }; } @@ -4082,6 +4394,7 @@ public string CmdEvidenceFailed() Language.es => "No se pudo registrar la evidencia.", Language.ru => "Не удалось зарегистрировать доказательство.", Language.it => "Impossibile registrare la prova.", + Language.nl => "Kan geen bewijs registreren.", _ => "Failed to register evidence.", }; } @@ -4095,6 +4408,7 @@ public string CmdEvidenceCreated() Language.es => "Evidencia registrada con éxito", Language.ru => "Доказательство успешно зарегистрировано", Language.it => "Prova registrata con successo", + Language.nl => "Bewijs succesvol geregistreerd.", _ => "Successfully registered evidence", }; } @@ -4108,6 +4422,7 @@ public string GuildAuditLogChannel() Language.es => "Canal", Language.ru => "Канал", Language.it => "Canale", + Language.nl => "Kanaal", _ => "Channel", }; } @@ -4121,6 +4436,7 @@ public string GuildAuditLogChannelBefore() Language.es => "Canal antes", Language.ru => "Канал до", Language.it => "Canale prima", + Language.nl => "Kanaal voor", _ => "Channel before", }; } @@ -4134,6 +4450,7 @@ public string GuildAuditLogChannelAfter() Language.es => "Canal después", Language.ru => "Канал после", Language.it => "Canale dopo", + Language.nl => "Kanaal na", _ => "Channel after", }; } @@ -4147,6 +4464,7 @@ public string GuildAuditLogChannelId() Language.es => "Canal ID", Language.ru => "ChannelId", Language.it => "Canale ID", + Language.nl => "KanaalID", _ => "ChannelId", }; } @@ -4160,6 +4478,7 @@ public string GuildAuditLogID() Language.es => "IDENTIFICACIÓN", Language.ru => "Я БЫ", Language.it => "ID", + Language.nl => "ID", _ => "ID", }; } @@ -4173,6 +4492,7 @@ public string GuildAuditLogMessage() Language.es => "Mensaje", Language.ru => "Сообщение", Language.it => "Messaggio", + Language.nl => "Bericht", _ => "Message", }; } @@ -4186,6 +4506,7 @@ public string GuildAuditLogUserID() Language.es => "User ID", Language.ru => "ID пользователя", Language.it => "ID utente", + Language.nl => "Gebruikers-ID", _ => "User ID", }; } @@ -4199,6 +4520,7 @@ public string GuildAuditLogUser() Language.es => "Usuario", Language.ru => "Пользователь", Language.it => "Utente", + Language.nl => "Gebruiker", _ => "User", }; } @@ -4212,6 +4534,7 @@ public string GuildAuditLogEmote() Language.es => "Emoción", Language.ru => "Эмоция", Language.it => "Emote", + Language.nl => "Emoticon", _ => "Emote", }; } @@ -4225,6 +4548,7 @@ public string GuildAuditLogAuthor() Language.es => "Autor", Language.ru => "Автор", Language.it => "Autore", + Language.nl => "Auteur", _ => "Author", }; } @@ -4238,6 +4562,7 @@ public string GuildAuditLogCreated() Language.es => "Creado", Language.ru => "Созданный", Language.it => "Creato", + Language.nl => "Gemaakt", _ => "Created", }; } @@ -4251,6 +4576,7 @@ public string GuildAuditLogCouldNotFetch() Language.es => "No se pudo recuperar.", Language.ru => "Не удалось получить.", Language.it => "Impossibile recuperare.", + Language.nl => "Kon niet ophalen.", _ => "Could not fetch.", }; } @@ -4264,6 +4590,7 @@ public string GuildAuditLogNotFoundInCache() Language.es => "Información no almacenada en caché.", Language.ru => "Информация не кешируется.", Language.it => "Informazioni non memorizzate nella cache.", + Language.nl => "Informatie niet in cache.", _ => "Information not cached.", }; } @@ -4277,6 +4604,7 @@ public string GuildAuditLogOld() Language.es => "Viejo", Language.ru => "Старый", Language.it => "Vecchio", + Language.nl => "Oud", _ => "Old", }; } @@ -4290,6 +4618,7 @@ public string GuildAuditLogNew() Language.es => "Nuevo", Language.ru => "Новый", Language.it => "Nuovo", + Language.nl => "Nieuw", _ => "New", }; } @@ -4303,6 +4632,7 @@ public string GuildAuditLogEmpty() Language.es => "Vacío", Language.ru => "Пустой", Language.it => "Vuoto", + Language.nl => "Leeg", _ => "Empty", }; } @@ -4316,6 +4646,7 @@ public string GuildAuditLogMessageSentTitle() Language.es => "Mensaje enviado", Language.ru => "Сообщение отправлено", Language.it => "Messaggio inviato", + Language.nl => "Bericht Verzonden", _ => "Message sent", }; } @@ -4329,6 +4660,7 @@ public string GuildAuditLogMessageSentContent() Language.es => "Contenido", Language.ru => "Содержание", Language.it => "Contenuto", + Language.nl => "Inhoud", _ => "Content", }; } @@ -4342,6 +4674,7 @@ public string GuildAuditLogMessageUpdatedTitle() Language.es => "Mensaje editado", Language.ru => "Сообщение отредактировано", Language.it => "Messaggio modificato", + Language.nl => "Bericht bewerkt", _ => "Message edited", }; } @@ -4355,6 +4688,7 @@ public string GuildAuditLogMessageUpdatedContentBefore() Language.es => "Antes", Language.ru => "До", Language.it => "Prima", + Language.nl => "Voor", _ => "Before", }; } @@ -4368,6 +4702,7 @@ public string GuildAuditLogMessageUpdatedContentNew() Language.es => "Nuevo", Language.ru => "Новый", Language.it => "Nuovo", + Language.nl => "Nieuw", _ => "New", }; } @@ -4381,6 +4716,7 @@ public string GuildAuditLogMessageUpdatedPinned() Language.es => "Fijado", Language.ru => "Закрепленный", Language.it => "In evidenza", + Language.nl => "Vastgezet", _ => "Pinned", }; } @@ -4394,6 +4730,7 @@ public string GuildAuditLogMessageDeletedTitle() Language.es => "Mensaje borrado", Language.ru => "Сообщение удалено", Language.it => "Messaggio cancellato", + Language.nl => "Bericht verwijderd", _ => "Message deleted", }; } @@ -4407,6 +4744,7 @@ public string GuildAuditLogMessageDeletedContent() Language.es => "Contenido", Language.ru => "Содержание", Language.it => "Contenuto", + Language.nl => "Inhoud", _ => "Content", }; } @@ -4420,6 +4758,7 @@ public string GuildAuditLogBanAddedTitle() Language.es => "Usuario baneado", Language.ru => "Пользователь забанен", Language.it => "Utente bannato", + Language.nl => "Gebruiker verbannen", _ => "User banned", }; } @@ -4433,6 +4772,7 @@ public string GuildAuditLogBanRemovedTitle() Language.es => "Usuario no prohibido", Language.ru => "Пользователь разблокирован", Language.it => "Utente non bannato", + Language.nl => "Gebruiker unbanned", _ => "User unbanned", }; } @@ -4446,6 +4786,7 @@ public string GuildAuditLogInviteCreatedTitle() Language.es => "Invitación creada", Language.ru => "Приглашение создано", Language.it => "Invito creato", + Language.nl => "uitnodiging aangemaakt", _ => "Invite created", }; } @@ -4459,6 +4800,7 @@ public string GuildAuditLogInviteCreatedURL() Language.es => "URL", Language.ru => "URL", Language.it => "URL", + Language.nl => "URL", _ => "URL", }; } @@ -4472,6 +4814,7 @@ public string GuildAuditLogInviteCreatedMaxUses() Language.es => "Usos máximos", Language.ru => "Макс использует", Language.it => "Usi massimi", + Language.nl => "Maximale gebruiken", _ => "Max uses", }; } @@ -4485,6 +4828,7 @@ public string GuildAuditLogInviteCreatedExpiration() Language.es => "Fecha de caducidad", Language.ru => "Срок хранения", Language.it => "Data di scadenza", + Language.nl => "Vervaldatum", _ => "Expiration date", }; } @@ -4498,6 +4842,7 @@ public string GuildAuditLogInviteCreatedTargetChannel() Language.es => "Canal objetivo", Language.ru => "Целевой канал", Language.it => "Canale di destinazione", + Language.nl => "Doelkanaal", _ => "Target channel", }; } @@ -4511,6 +4856,7 @@ public string GuildAuditLogInviteDeletedTitle() Language.es => "Invitación eliminada", Language.ru => "Приглашение удалено", Language.it => "Invito cancellato", + Language.nl => "uitnodiging verwijderd", _ => "Invite deleted", }; } @@ -4524,6 +4870,7 @@ public string GuildAuditLogMemberJoinedTitle() Language.es => "Miembro se unió", Language.ru => "Участник присоединился", Language.it => "Membro iscritto", + Language.nl => "Lid is toegetreden", _ => "Member joined", }; } @@ -4537,6 +4884,7 @@ public string GuildAuditLogMemberJoinedRegistered() Language.es => "Registrado", Language.ru => "Зарегистрировано", Language.it => "Registrato", + Language.nl => "Geregistreerd", _ => "Registered", }; } @@ -4550,6 +4898,7 @@ public string GuildAuditLogMemberRemovedTitle() Language.es => "Miembro eliminado", Language.ru => "Участник удален", Language.it => "Membro rimosso", + Language.nl => "Lid verwijderd", _ => "Member removed", }; } @@ -4563,6 +4912,7 @@ public string GuildAuditLogThreadCreatedTitle() Language.es => "Hilo creado", Language.ru => "Тема создана", Language.it => "Discussione creata", + Language.nl => "Thread gemaakt", _ => "Thread created", }; } @@ -4576,6 +4926,7 @@ public string GuildAuditLogThreadCreatedParent() Language.es => "Padre", Language.ru => "Родитель", Language.it => "Genitore", + Language.nl => "Ouder", _ => "Parent", }; } @@ -4589,6 +4940,7 @@ public string GuildAuditLogThreadCreatedCreator() Language.es => "Creador", Language.ru => "Создатель", Language.it => "Creatore", + Language.nl => "Maker", _ => "Creator", }; } @@ -4602,6 +4954,7 @@ public string GuildAuditLogUsernameUpdatedTitle() Language.es => "Nombre de usuario actualizado", Language.ru => "Имя пользователя обновлено", Language.it => "Nome utente aggiornato", + Language.nl => "Gebruikersnaam bijgewerkt", _ => "Username updated", }; } @@ -4615,6 +4968,7 @@ public string GuildAuditLogAvatarUpdatedTitle() Language.es => "Avatar actualizado", Language.ru => "Аватар обновлен", Language.it => "Avatar aggiornato", + Language.nl => "Avatar bijgewerkt", _ => "Avatar updated", }; } @@ -4628,6 +4982,7 @@ public string GuildAuditLogNicknameUpdatedTitle() Language.es => "Se actualizó el apodo", Language.ru => "Псевдоним обновлен", Language.it => "Nickname aggiornato", + Language.nl => "Bijnaam bijgewerkt", _ => "Nickname updated", }; } @@ -4641,6 +4996,7 @@ public string GuildAuditLogRolesUpdatedTitle() Language.es => "Funciones actualizadas", Language.ru => "Роли обновлены", Language.it => "Ruoli aggiornati", + Language.nl => "Rollen bijgewerkt", _ => "Roles updated", }; } @@ -4654,6 +5010,7 @@ public string GuildAuditLogRolesUpdatedAdded() Language.es => "Adicional", Language.ru => "Добавлен", Language.it => "Aggiunto", + Language.nl => "Toegevoegd", _ => "Added", }; } @@ -4667,6 +5024,7 @@ public string GuildAuditLogRolesUpdatedRemoved() Language.es => "Remoto", Language.ru => "Удаленный", Language.it => "RIMOSSO", + Language.nl => "Verwijderd", _ => "Removed", }; } @@ -4680,6 +5038,7 @@ public string GuildAuditLogReactionAddedTitle() Language.es => "Reacción añadida", Language.ru => "Реакция добавлена", Language.it => "Risposta aggiunta", + Language.nl => "Reactie toegevoegd", _ => "Reaction added", }; } @@ -4693,6 +5052,7 @@ public string GuildAuditLogReactionRemovedTitle() Language.es => "Reacción eliminada", Language.ru => "Реакция удалена", Language.it => "Risposta rimossa", + Language.nl => "Reactie verwijderd", _ => "Reaction removed", }; } @@ -4706,6 +5066,7 @@ public string GuildAuditLogVoiceJoinedTitle() Language.es => "Canal de voz unido", Language.ru => "Голосовой канал присоединился", Language.it => "Canale vocale unito", + Language.nl => "Spraakkanaal is toegetreden", _ => "Voicechannel joined", }; } @@ -4719,6 +5080,7 @@ public string GuildAuditLogVoiceLeftTitle() Language.es => "Canal de voz abandonado", Language.ru => "Голосовой канал покинул", Language.it => "Canale vocale lasciato", + Language.nl => "Spraakkanaal links", _ => "Voicechannel left", }; } @@ -4732,6 +5094,7 @@ public string GuildAuditLogVoiceMovedTitle() Language.es => "Canal de voz cambiado", Language.ru => "Переключен голосовой канал", Language.it => "Canale vocale cambiato", + Language.nl => "Gewisseld spraakkanaal", _ => "Switched voicechannel", }; } @@ -5060,6 +5423,7 @@ public string Enum(PunishmentType enumValue) Language.es => "Silencio", Language.ru => "Немой", Language.it => "Muto", + Language.nl => "Dempen", _ => "Mute", }, PunishmentType.Ban => PreferredLanguage switch @@ -5070,6 +5434,7 @@ public string Enum(PunishmentType enumValue) Language.es => "Prohibición", Language.ru => "Запретить", Language.it => "Bandire", + Language.nl => "Ban", _ => "Ban", }, PunishmentType.Kick => PreferredLanguage switch @@ -5080,6 +5445,7 @@ public string Enum(PunishmentType enumValue) Language.es => "Patear", Language.ru => "Пинать", Language.it => "Calcio", + Language.nl => "Kick", _ => "Kick", }, PunishmentType.Warn => PreferredLanguage switch @@ -5090,6 +5456,7 @@ public string Enum(PunishmentType enumValue) Language.es => "Advertir", Language.ru => "Предупреждать", Language.it => "Avvisare", + Language.nl => "Waarschuwen", _ => "Warn", }, _ => "Unknown", @@ -5107,6 +5474,7 @@ public string Enum(ViewPermission enumValue) Language.es => "Uno mismo", Language.ru => "Себя", Language.it => "Se stesso", + Language.nl => "Privé", _ => "Self", }, ViewPermission.Guild => PreferredLanguage switch @@ -5117,6 +5485,7 @@ public string Enum(ViewPermission enumValue) Language.es => "Gremio", Language.ru => "Гильдия", Language.it => "Gilda", + Language.nl => "Gilde", _ => "Guild", }, ViewPermission.Global => PreferredLanguage switch @@ -5127,6 +5496,7 @@ public string Enum(ViewPermission enumValue) Language.es => "Global", Language.ru => "Глобальный", Language.it => "Globale", + Language.nl => "Globaal", _ => "Global", }, _ => "Unknown", @@ -5144,6 +5514,7 @@ public string Enum(AutoModerationAction enumValue) Language.es => "Ninguna acción", Language.ru => "Бездействие", Language.it => "Nessuna azione", + Language.nl => "Geen actie", _ => "No action", }, AutoModerationAction.ContentDeleted => PreferredLanguage switch @@ -5154,6 +5525,7 @@ public string Enum(AutoModerationAction enumValue) Language.es => "Contenido eliminado", Language.ru => "Контент удален", Language.it => "Contenuto eliminato", + Language.nl => "Inhoud verwijderd", _ => "Content deleted", }, AutoModerationAction.CaseCreated => PreferredLanguage switch @@ -5164,6 +5536,7 @@ public string Enum(AutoModerationAction enumValue) Language.es => "Caso creado", Language.ru => "Дело создано", Language.it => "Caso creato", + Language.nl => "Zaak aangemaakt", _ => "Case created", }, AutoModerationAction.ContentDeletedAndCaseCreated => PreferredLanguage switch @@ -5174,6 +5547,7 @@ public string Enum(AutoModerationAction enumValue) Language.es => "Contenido eliminado y caso creado", Language.ru => "Контент удален, а дело создано", Language.it => "Contenuto eliminato e caso creato", + Language.nl => "Inhoud verwijderd en zaak aangemaakt", _ => "Content deleted and case created", }, AutoModerationAction.Timeout => PreferredLanguage switch @@ -5184,6 +5558,7 @@ public string Enum(AutoModerationAction enumValue) Language.es => "Timeout", Language.ru => "Таймаут", Language.it => "Timeout", + Language.nl => "Timeout", _ => "Timeout", }, _ => "Unknown", @@ -5201,6 +5576,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Invitación publicada", Language.ru => "Приглашение опубликовано", Language.it => "Invito pubblicato", + Language.nl => "Uitnodiging geplaatst", _ => "Invite posted", }, AutoModerationType.TooManyEmotes => PreferredLanguage switch @@ -5211,6 +5587,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Demasiados emotes usados", Language.ru => "Использовано слишком много эмоций", Language.it => "Troppe emoticon usate", + Language.nl => "Te veel emoji's gebruikt", _ => "Too many emotes used", }, AutoModerationType.TooManyMentions => PreferredLanguage switch @@ -5221,6 +5598,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Demasiados usuarios mencionados", Language.ru => "Упомянуто слишком много пользователей", Language.it => "Troppi utenti citati", + Language.nl => "Te veel gebruikers vermeld", _ => "Too many users mentioned", }, AutoModerationType.TooManyAttachments => PreferredLanguage switch @@ -5231,6 +5609,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Se han utilizado demasiados archivos adjuntos", Language.ru => "Использовано слишком много вложений", Language.it => "Troppi allegati utilizzati", + Language.nl => "Te veel bijlagen gebruikt", _ => "Too many attachments used", }, AutoModerationType.TooManyEmbeds => PreferredLanguage switch @@ -5241,6 +5620,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Se han utilizado demasiados elementos incrustados", Language.ru => "Использовано слишком много закладных", Language.it => "Troppi incorporamenti utilizzati", + Language.nl => "Te veel ingesloten inhoud gebruikt", _ => "Too many embeds used", }, AutoModerationType.TooManyAutoModerations => PreferredLanguage switch @@ -5251,6 +5631,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Demasiadas moderaciones automáticas", Language.ru => "Слишком много автоматических модераций", Language.it => "Troppe moderazioni automatiche", + Language.nl => "Te veel automatische moderaties", _ => "Too many auto-moderations", }, AutoModerationType.CustomWordFilter => PreferredLanguage switch @@ -5261,6 +5642,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Filtro de palabras personalizado activado", Language.ru => "Пользовательский фильтр слов активирован", Language.it => "Filtro parole personalizzato attivato", + Language.nl => "Aangepaste woordenfilter geactiveerd", _ => "Custom wordfilter triggered", }, AutoModerationType.TooManyMessages => PreferredLanguage switch @@ -5271,6 +5653,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Demasiados mensajes", Language.ru => "Слишком много сообщений", Language.it => "Troppi messaggi", + Language.nl => "Te veel berichten", _ => "Too many messages", }, AutoModerationType.TooManyDuplicatedCharacters => PreferredLanguage switch @@ -5281,6 +5664,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Se han utilizado demasiados caracteres duplicados", Language.ru => "Использовано слишком много повторяющихся символов", Language.it => "Troppi caratteri duplicati utilizzati", + Language.nl => "Te veel gedupliceerde karakters gebruikt", _ => "Too many duplicated characters used", }, AutoModerationType.TooManyLinks => PreferredLanguage switch @@ -5291,6 +5675,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Se han utilizado demasiados enlaces", Language.ru => "Использовано слишком много ссылок", Language.it => "Troppi link utilizzati", + Language.nl => "Te veel links gebruikt", _ => "Too many links used", }, AutoModerationType.TooManyPhishingLinks => PreferredLanguage switch @@ -5301,6 +5686,7 @@ public string Enum(AutoModerationType enumValue) Language.es => "Se han utilizado demasiados enlaces de phishing", Language.ru => "Использовано слишком много ссылок на фишинг", Language.it => "Troppi link di phishing utilizzati", + Language.nl => "Te veel phishing links gebruikt", _ => "Too many phishing links used", }, _ => "Unknown", @@ -5318,6 +5704,7 @@ public string Enum(APIError enumValue) Language.es => "Error desconocido", Language.ru => "Неизвестная ошибка", Language.it => "Errore sconosciuto", + Language.nl => "Onbekende fout", _ => "Unknown error", }, APIError.InvalidDiscordUser => PreferredLanguage switch @@ -5328,6 +5715,7 @@ public string Enum(APIError enumValue) Language.es => "Usuario de discordia no válido", Language.ru => "Недействительный пользователь Discord", Language.it => "Utente discord non valido", + Language.nl => "Ongeldige Discord-gebruiker", _ => "Invalid discord user", }, APIError.ProtectedModCaseSuspect => PreferredLanguage switch @@ -5338,6 +5726,7 @@ public string Enum(APIError enumValue) Language.es => "El usuario está protegido", Language.ru => "Пользователь защищен", Language.it => "L'utente è protetto", + Language.nl => "Gebruiker is beschermd", _ => "User is protected", }, APIError.ProtectedModCaseSuspectIsBot => PreferredLanguage switch @@ -5348,6 +5737,7 @@ public string Enum(APIError enumValue) Language.es => "El usuario está protegido. El es un bot.", Language.ru => "Пользователь защищен. Он бот.", Language.it => "L'utente è protetto. Lui è un bot.", + Language.nl => "Gebruiker is beschermd. Hij is een robot.", _ => "User is protected. He is a bot.", }, APIError.ProtectedModCaseSuspectIsSiteAdmin => PreferredLanguage switch @@ -5358,6 +5748,7 @@ public string Enum(APIError enumValue) Language.es => "El usuario está protegido. Es administrador de un sitio.", Language.ru => "Пользователь защищен. Он администратор сайта.", Language.it => "L'utente è protetto. È un amministratore del sito.", + Language.nl => "Gebruiker is beschermd. Hij is een sitebeheerder.", _ => "User is protected. He is a site admin.", }, APIError.ProtectedModCaseSuspectIsTeam => PreferredLanguage switch @@ -5368,6 +5759,7 @@ public string Enum(APIError enumValue) Language.es => "El usuario está protegido. Es un miembro del equipo.", Language.ru => "Пользователь защищен. Он член команды.", Language.it => "L'utente è protetto. È un membro della squadra.", + Language.nl => "Gebruiker is beschermd. Hij is een teamlid.", _ => "User is protected. He is a team member.", }, APIError.ResourceNotFound => PreferredLanguage switch @@ -5378,6 +5770,7 @@ public string Enum(APIError enumValue) Language.es => "Recurso no encontrado", Language.ru => "Ресурс не найден", Language.it => "Risorsa non trovata", + Language.nl => "Bron niet gevonden", _ => "Resource not found", }, APIError.InvalidIdentity => PreferredLanguage switch @@ -5388,6 +5781,7 @@ public string Enum(APIError enumValue) Language.es => "Identidad inválida", Language.ru => "Неверная личность", Language.it => "Identità non valida", + Language.nl => "Ongeldige identiteit", _ => "Invalid identity", }, APIError.GuildUnregistered => PreferredLanguage switch @@ -5398,6 +5792,7 @@ public string Enum(APIError enumValue) Language.es => "El gremio no está registrado", Language.ru => "Гильдия не зарегистрирована", Language.it => "La gilda non è registrata", + Language.nl => "Gilde is niet geregistreerd", _ => "Guild is not registered", }, APIError.Unauthorized => PreferredLanguage switch @@ -5408,6 +5803,7 @@ public string Enum(APIError enumValue) Language.es => "No autorizado", Language.ru => "Неавторизованный", Language.it => "non autorizzato", + Language.nl => "Onbevoegd", _ => "Unauthorized", }, APIError.GuildUndefinedMutedRoles => PreferredLanguage switch @@ -5418,6 +5814,7 @@ public string Enum(APIError enumValue) Language.es => "El gremio no tiene roles definidos para el castigo mudo.", Language.ru => "У гильдии нет определенных ролей для немого наказания.", Language.it => "La gilda non ha ruoli definiti per la punizione muta.", + Language.nl => "Er zijn geen rollen gedefinieerd voor te dempen straffen in deze gilde", _ => "Guild has no roles for mute punishment defined.", }, APIError.ModCaseIsMarkedToBeDeleted => PreferredLanguage switch @@ -5428,6 +5825,7 @@ public string Enum(APIError enumValue) Language.es => "Modcase está marcado para ser eliminado", Language.ru => "Modcase отмечен для удаления", Language.it => "Modcase è contrassegnato per essere eliminato", + Language.nl => "Modcase is gemarkeerd om te worden verwijderd", _ => "Modcase is marked to be deleted", }, APIError.ModCaseIsNotMarkedToBeDeleted => PreferredLanguage switch @@ -5438,6 +5836,7 @@ public string Enum(APIError enumValue) Language.es => "Modcase no está marcado para ser eliminado", Language.ru => "Modcase не отмечен для удаления", Language.it => "Modcase non è contrassegnato per essere eliminato", + Language.nl => "Modcase is niet gemarkeerd om te worden verwijderd", _ => "Modcase is not marked to be deleted", }, APIError.GuildAlreadyRegistered => PreferredLanguage switch @@ -5448,6 +5847,7 @@ public string Enum(APIError enumValue) Language.es => "El gremio ya está registrado", Language.ru => "Гильдия уже зарегистрирована", Language.it => "La gilda è già registrata", + Language.nl => "Deze gilde is al geregistreerd", _ => "Guild is already registered", }, APIError.NotAllowedInDemoMode => PreferredLanguage switch @@ -5458,6 +5858,7 @@ public string Enum(APIError enumValue) Language.es => "Esta acción no está permitida en el modo de demostración.", Language.ru => "Это действие запрещено в демонстрационном режиме.", Language.it => "Questa azione non è consentita in modalità demo", + Language.nl => "Deze actie is niet toegestaan in de demo-modus", _ => "This action is not allowed in demo mode", }, APIError.RoleNotFound => PreferredLanguage switch @@ -5468,6 +5869,7 @@ public string Enum(APIError enumValue) Language.es => "Rol no encontrado", Language.ru => "Роль не найдена", Language.it => "Ruolo non trovato", + Language.nl => "Rol niet gevonden", _ => "Role not found", }, APIError.TokenCannotManageThisResource => PreferredLanguage switch @@ -5478,6 +5880,7 @@ public string Enum(APIError enumValue) Language.es => "Los tokens no pueden administrar este recurso", Language.ru => "Лексемы не могут управлять этим ресурсом", Language.it => "I token non possono gestire questa risorsa", + Language.nl => "Tokens kunnen deze bron niet beheren", _ => "Tokens cannot manage this resource", }, APIError.TokenAlreadyRegistered => PreferredLanguage switch @@ -5488,6 +5891,7 @@ public string Enum(APIError enumValue) Language.es => "El token ya está registrado", Language.ru => "Токен уже зарегистрирован", Language.it => "Il token è già registrato", + Language.nl => "Token is al geregistreerd", _ => "Token is already registered", }, APIError.CannotBeSameUser => PreferredLanguage switch @@ -5498,6 +5902,7 @@ public string Enum(APIError enumValue) Language.es => "Ambos usuarios son iguales.", Language.ru => "Оба пользователя одинаковые.", Language.it => "Entrambi gli utenti sono gli stessi.", + Language.nl => "Beide gebruikers zijn hetzelfde.", _ => "Both users are the same.", }, APIError.ResourceAlreadyExists => PreferredLanguage switch @@ -5508,6 +5913,7 @@ public string Enum(APIError enumValue) Language.es => "El recurso ya existe", Language.ru => "Ресурс уже существует", Language.it => "La risorsa esiste già", + Language.nl => "Bron bestaat al", _ => "Resource already exists", }, APIError.ModCaseDoesNotAllowComments => PreferredLanguage switch @@ -5518,6 +5924,7 @@ public string Enum(APIError enumValue) Language.es => "Los comentarios están bloqueados para este modcase", Language.ru => "Комментарии заблокированы для этого мода", Language.it => "I commenti sono bloccati per questo modcase", + Language.nl => "Reacties zijn vergrendeld voor deze modcase", _ => "Comments are locked for this modcase", }, APIError.LastCommentAlreadyFromSuspect => PreferredLanguage switch @@ -5528,6 +5935,7 @@ public string Enum(APIError enumValue) Language.es => "El último comentario ya era del sospechoso.", Language.ru => "Последний комментарий уже был от подозреваемого.", Language.it => "L'ultimo commento era già del sospettato.", + Language.nl => "De laatste opmerking was al van de verdachte", _ => "The last comment was already from the suspect.", }, APIError.InvalidAutomoderationAction => PreferredLanguage switch @@ -5538,6 +5946,7 @@ public string Enum(APIError enumValue) Language.es => "Acción de automoderación no válida", Language.ru => "Недопустимое действие автомодерации", Language.it => "Azione di moderazione automatica non valida", + Language.nl => "Ongeldige automoderatie actie", _ => "Invalid automoderation action", }, APIError.InvalidAutomoderationType => PreferredLanguage switch @@ -5548,6 +5957,7 @@ public string Enum(APIError enumValue) Language.es => "Tipo de automoderación no válido", Language.ru => "Неверный тип автомодерации.", Language.it => "Tipo di moderazione automatica non valido", + Language.nl => "Ongeldige automoderatie type", _ => "Invalid automoderation type", }, APIError.TooManyTemplates => PreferredLanguage switch @@ -5558,6 +5968,7 @@ public string Enum(APIError enumValue) Language.es => "El usuario ha alcanzado el límite máximo de plantillas", Language.ru => "Пользователь достиг максимального предела шаблонов", Language.it => "L'utente ha raggiunto il limite massimo di modelli", + Language.nl => "De gebruiker heeft het maximale aantal sjablonen bereikt", _ => "User has reached the max limit of templates", }, APIError.InvalidFilePath => PreferredLanguage switch @@ -5568,6 +5979,7 @@ public string Enum(APIError enumValue) Language.es => "Ruta de archivo no válida", Language.ru => "Неверный путь к файлу", Language.it => "Percorso file non valido", + Language.nl => "Ongeldig bestandspad", _ => "Invalid file path", }, APIError.NoGuildsRegistered => PreferredLanguage switch @@ -5578,6 +5990,7 @@ public string Enum(APIError enumValue) Language.es => "No hay gremios registrados", Language.ru => "Нет зарегистрированных гильдий", Language.it => "Non ci sono gilde registrate", + Language.nl => "Er zijn geen gilde's geregistreerd", _ => "There are no guilds registered", }, APIError.OnlyUsableInAGuild => PreferredLanguage switch @@ -5588,6 +6001,7 @@ public string Enum(APIError enumValue) Language.es => "Esta acción solo se puede usar en un gremio.", Language.ru => "Это действие доступно только в гильдии.", Language.it => "Questa azione è utilizzabile solo in una gilda", + Language.nl => "Deze actie kan enkel gebruikt worden in een gilde", _ => "This action is only usable in a guild", }, APIError.InvalidAuditLogEvent => PreferredLanguage switch @@ -5598,6 +6012,7 @@ public string Enum(APIError enumValue) Language.es => "Tipo de evento de auditoría no válido", Language.ru => "Неверный тип auditlogevent", Language.it => "Tipo di evento auditlog non valido", + Language.nl => "Ongeldig auditlogevent type", _ => "Invalid auditlogevent type", }, APIError.ProtectedScheduledMessage => PreferredLanguage switch @@ -5608,6 +6023,7 @@ public string Enum(APIError enumValue) Language.es => "El mensaje programado está protegido y no se puede eliminar.", Language.ru => "Запланированное сообщение защищено и не может быть удалено.", Language.it => "Il messaggio programmato è protetto e non può essere eliminato.", + Language.nl => "Het geplande bericht is beschermd en kan niet worden verwijderd.", _ => "The scheduled message is protected and cannot be deleted.", }, APIError.InvalidDateForScheduledMessage => PreferredLanguage switch @@ -5618,6 +6034,7 @@ public string Enum(APIError enumValue) Language.es => "La fecha de ejecución debe ser al menos un minuto en el futuro.", Language.ru => "Дата выполнения должна быть не менее одной минуты в будущем.", Language.it => "La data di esecuzione deve essere almeno un minuto nel futuro.", + Language.nl => "De uitvoeringsdatum moet minstens één minuut in de toekomst liggen.", _ => "The execution date has to be at least one minute in the future.", }, _ => "Unknown", @@ -5635,6 +6052,7 @@ public string Enum(CaseCreationType enumValue) Language.es => "Defecto", Language.ru => "Дефолт", Language.it => "Predefinito", + Language.nl => "Standaard", _ => "Default", }, CaseCreationType.AutoModeration => PreferredLanguage switch @@ -5645,6 +6063,7 @@ public string Enum(CaseCreationType enumValue) Language.es => "El caso está autoderado.", Language.ru => "Корпус автоматический.", Language.it => "Il caso è moderato automaticamente.", + Language.nl => "Zaak is automatisch gemodereerd", _ => "Case is automoderated.", }, CaseCreationType.Imported => PreferredLanguage switch @@ -5655,6 +6074,7 @@ public string Enum(CaseCreationType enumValue) Language.es => "El caso es importado.", Language.ru => "Корпус импортный.", Language.it => "Il caso è importato.", + Language.nl => "Zaak is geïmporteerd", _ => "Case is imported.", }, CaseCreationType.ByCommand => PreferredLanguage switch @@ -5665,6 +6085,7 @@ public string Enum(CaseCreationType enumValue) Language.es => "Caso creado por comando.", Language.ru => "Дело создано командой.", Language.it => "Caso creato da comando.", + Language.nl => "Zaak aangemaakt door opdracht.", _ => "Case created by command.", }, _ => "Unknown", @@ -5682,6 +6103,7 @@ public string Enum(Language enumValue) Language.es => "inglés", Language.ru => "английский", Language.it => "inglese", + Language.nl => "Engels", _ => "English", }, Language.de => PreferredLanguage switch @@ -5692,6 +6114,7 @@ public string Enum(Language enumValue) Language.es => "alemán", Language.ru => "Немецкий", Language.it => "Tedesco", + Language.nl => "Duits", _ => "German", }, Language.fr => PreferredLanguage switch @@ -5702,6 +6125,7 @@ public string Enum(Language enumValue) Language.es => "francés", Language.ru => "французкий язык", Language.it => "francese", + Language.nl => "Frans", _ => "French", }, Language.es => PreferredLanguage switch @@ -5712,6 +6136,7 @@ public string Enum(Language enumValue) Language.es => "Español", Language.ru => "испанский", Language.it => "spagnolo", + Language.nl => "Spaans", _ => "Spanish", }, Language.it => PreferredLanguage switch @@ -5722,6 +6147,7 @@ public string Enum(Language enumValue) Language.es => "italiano", Language.ru => "Итальянский", Language.it => "italiano", + Language.nl => "Italiaans", _ => "Italian", }, Language.at => PreferredLanguage switch @@ -5732,6 +6158,7 @@ public string Enum(Language enumValue) Language.es => "austriaco", Language.ru => "Австрийский", Language.it => "austriaco", + Language.nl => "Oostenrijks", _ => "Austrian", }, Language.ru => PreferredLanguage switch @@ -5742,8 +6169,20 @@ public string Enum(Language enumValue) Language.es => "Ruso", Language.ru => "Русский", Language.it => "Russo", + Language.nl => "Russisch", _ => "Russian", }, + Language.nl => PreferredLanguage switch + { + Language.de => "Niederländisch", + Language.at => "Niederländisch", + Language.fr => "Néerlandais", + Language.es => "Neerlandés", + Language.ru => "Голландский", + Language.it => "Olandese", + Language.nl => "Nederlands", + _ => "Dutch", + }, _ => "Unknown", }; } @@ -5759,6 +6198,7 @@ public string Enum(AutoModerationChannelNotificationBehavior enumValue) Language.es => "Notificación de canal", Language.ru => "Уведомление канала", Language.it => "Notifica del canale", + Language.nl => "Kanaalnotificatie", _ => "Channel notification", }, AutoModerationChannelNotificationBehavior.SendNotificationAndDelete => PreferredLanguage switch @@ -5769,6 +6209,7 @@ public string Enum(AutoModerationChannelNotificationBehavior enumValue) Language.es => "Notificación de canal temporal", Language.ru => "Уведомление о временном канале", Language.it => "Notifica temporanea del canale", + Language.nl => "Voorlopige kanaalnotificatie", _ => "Temporary channel notification", }, AutoModerationChannelNotificationBehavior.NoNotification => PreferredLanguage switch @@ -5779,6 +6220,7 @@ public string Enum(AutoModerationChannelNotificationBehavior enumValue) Language.es => "Sin notificación de canal", Language.ru => "Уведомление о канале отсутствует", Language.it => "Nessuna notifica del canale", + Language.nl => "Geen kanaalnotificatie", _ => "No channel notification", }, _ => "Unknown", @@ -5796,6 +6238,7 @@ public string Enum(EditStatus enumValue) Language.es => "Ninguna", Language.ru => "Никто", Language.it => "Nessuno", + Language.nl => "Geen", _ => "None", }, EditStatus.Unedited => PreferredLanguage switch @@ -5806,6 +6249,7 @@ public string Enum(EditStatus enumValue) Language.es => "No editado", Language.ru => "Не редактировалось", Language.it => "Non modificato", + Language.nl => "Niet aangepast", _ => "Not edited", }, EditStatus.Edited => PreferredLanguage switch @@ -5816,6 +6260,7 @@ public string Enum(EditStatus enumValue) Language.es => "Editado", Language.ru => "Отредактировано", Language.it => "Modificato", + Language.nl => "Aangepast", _ => "Edited", }, _ => "Unknown", @@ -5833,6 +6278,7 @@ public string Enum(LockedCommentStatus enumValue) Language.es => "Ninguna", Language.ru => "Никто", Language.it => "Nessuno", + Language.nl => "Geen", _ => "None", }, LockedCommentStatus.Locked => PreferredLanguage switch @@ -5843,6 +6289,7 @@ public string Enum(LockedCommentStatus enumValue) Language.es => "Bloqueado", Language.ru => "Заблокировано", Language.it => "bloccato", + Language.nl => "Vergrendeld", _ => "Locked", }, LockedCommentStatus.Unlocked => PreferredLanguage switch @@ -5853,6 +6300,7 @@ public string Enum(LockedCommentStatus enumValue) Language.es => "Desbloqueado", Language.ru => "Разблокирован", Language.it => "sbloccato", + Language.nl => "Ontgrendeld", _ => "Unlocked", }, _ => "Unknown", @@ -5870,6 +6318,7 @@ public string Enum(MarkedToDeleteStatus enumValue) Language.es => "Ninguna", Language.ru => "Никто", Language.it => "Nessuno", + Language.nl => "Geen", _ => "None", }, MarkedToDeleteStatus.Marked => PreferredLanguage switch @@ -5880,6 +6329,7 @@ public string Enum(MarkedToDeleteStatus enumValue) Language.es => "Marcado para eliminar", Language.ru => "Отмечено для удаления", Language.it => "Contrassegnato per eliminare", + Language.nl => "Gemarkeerd om te verwijderen", _ => "Marked to delete", }, MarkedToDeleteStatus.Unmarked => PreferredLanguage switch @@ -5890,6 +6340,7 @@ public string Enum(MarkedToDeleteStatus enumValue) Language.es => "No marcado para eliminar", Language.ru => "Не отмечен для удаления", Language.it => "Non contrassegnato per l'eliminazione", + Language.nl => "Niet gemarkeerd om te verwijderen", _ => "Not marked to delete", }, _ => "Unknown", @@ -5907,6 +6358,7 @@ public string Enum(PunishmentActiveStatus enumValue) Language.es => "Ninguna", Language.ru => "Никто", Language.it => "Nessuno", + Language.nl => "Geen", _ => "None", }, PunishmentActiveStatus.Active => PreferredLanguage switch @@ -5917,6 +6369,7 @@ public string Enum(PunishmentActiveStatus enumValue) Language.es => "Activo", Language.ru => "Активный", Language.it => "Attivo", + Language.nl => "Actief", _ => "Active", }, PunishmentActiveStatus.Inactive => PreferredLanguage switch @@ -5927,6 +6380,7 @@ public string Enum(PunishmentActiveStatus enumValue) Language.es => "Inactivo", Language.ru => "Неактивный", Language.it => "Non attivo", + Language.nl => "niet actief", _ => "Inactive", }, _ => "Unknown", @@ -5944,6 +6398,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Mensaje enviado", Language.ru => "Сообщение отправлено", Language.it => "Messaggio inviato", + Language.nl => "Bericht verzonden", _ => "Message sent", }, GuildAuditLogEvent.MessageUpdated => PreferredLanguage switch @@ -5954,6 +6409,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Mensaje actualizado", Language.ru => "Сообщение обновлено", Language.it => "Messaggio aggiornato", + Language.nl => "Bericht bijgewerkt", _ => "Message updated", }, GuildAuditLogEvent.MessageDeleted => PreferredLanguage switch @@ -5964,6 +6420,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Mensaje borrado", Language.ru => "Сообщение удалено", Language.it => "Messaggio cancellato", + Language.nl => "Bericht verwijderd", _ => "Message deleted", }, GuildAuditLogEvent.UsernameUpdated => PreferredLanguage switch @@ -5974,6 +6431,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Nombre de usuario actualizado", Language.ru => "Имя пользователя обновлено", Language.it => "Nome utente aggiornato", + Language.nl => "Gebruikersnaam bijgewerkt", _ => "Username updated", }, GuildAuditLogEvent.AvatarUpdated => PreferredLanguage switch @@ -5984,6 +6442,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Avatar actualizado", Language.ru => "Аватар обновлен", Language.it => "Avatar aggiornato", + Language.nl => "Avatar bijgewerkt", _ => "Avatar updated", }, GuildAuditLogEvent.NicknameUpdated => PreferredLanguage switch @@ -5994,6 +6453,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Se actualizó el apodo", Language.ru => "Псевдоним обновлен", Language.it => "Nickname aggiornato", + Language.nl => "Nickame bijgewerkt", _ => "Nickname updated", }, GuildAuditLogEvent.MemberRolesUpdated => PreferredLanguage switch @@ -6004,6 +6464,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Se actualizaron las funciones de los miembros", Language.ru => "Роли участников обновлены", Language.it => "Ruoli dei membri aggiornati", + Language.nl => "Lidrollen bijgewerkt", _ => "Member roles updated", }, GuildAuditLogEvent.MemberJoined => PreferredLanguage switch @@ -6014,6 +6475,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro se unió", Language.ru => "Участник присоединился", Language.it => "Membro iscritto", + Language.nl => "Lid toegetreden", _ => "Member joined", }, GuildAuditLogEvent.MemberRemoved => PreferredLanguage switch @@ -6024,6 +6486,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro eliminado", Language.ru => "Участник удален", Language.it => "Membro rimosso", + Language.nl => "Lid verwijderd", _ => "Member removed", }, GuildAuditLogEvent.BanAdded => PreferredLanguage switch @@ -6034,6 +6497,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro prohibido", Language.ru => "Участник забанен", Language.it => "Membro bannato", + Language.nl => "Lid geband", _ => "Member banned", }, GuildAuditLogEvent.BanRemoved => PreferredLanguage switch @@ -6044,6 +6508,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro no prohibido", Language.ru => "Участник разблокирован", Language.it => "Membro non bannato", + Language.nl => "Lid onbannen", _ => "Member unbanned", }, GuildAuditLogEvent.InviteCreated => PreferredLanguage switch @@ -6054,6 +6519,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Invitación creada", Language.ru => "Приглашение создано", Language.it => "Invito creato", + Language.nl => "Uitnodiging aangemaakt", _ => "Invite created", }, GuildAuditLogEvent.InviteDeleted => PreferredLanguage switch @@ -6064,6 +6530,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Invitación eliminada", Language.ru => "Приглашение удалено", Language.it => "Invito cancellato", + Language.nl => "Uitnodiging verwijderd", _ => "Invite deleted", }, GuildAuditLogEvent.ThreadCreated => PreferredLanguage switch @@ -6074,6 +6541,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Hilo creado", Language.ru => "Тема создана", Language.it => "Discussione creata", + Language.nl => "Thread aangemaakt", _ => "Thread created", }, GuildAuditLogEvent.VoiceJoined => PreferredLanguage switch @@ -6084,6 +6552,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro se unió al canal de voz", Language.ru => "Участник присоединился к голосовому каналу", Language.it => "Membro entrato nel canale vocale", + Language.nl => "Lid aangesloten bij spraakkanaal", _ => "Member joined voice channel", }, GuildAuditLogEvent.VoiceLeft => PreferredLanguage switch @@ -6094,6 +6563,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro dejó el canal de voz", Language.ru => "Участник покинул голосовой канал", Language.it => "Membro uscito dal canale vocale", + Language.nl => "Lid verliet spraakkanaal", _ => "Member left voice channel", }, GuildAuditLogEvent.VoiceMoved => PreferredLanguage switch @@ -6104,6 +6574,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Miembro movió al canal de voz", Language.ru => "Участник переместился в другой голосовой канал", Language.it => "Membro spostato nel canale vocale", + Language.nl => "Lid veranderde van spraakkanaal", _ => "Member moved voice channel", }, GuildAuditLogEvent.ReactionAdded => PreferredLanguage switch @@ -6114,6 +6585,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Reacción añadida", Language.ru => "Реакция добавлена", Language.it => "Risposta aggiunta", + Language.nl => "Reactie toegevoegd", _ => "Reaction added", }, GuildAuditLogEvent.ReactionRemoved => PreferredLanguage switch @@ -6124,6 +6596,7 @@ public string Enum(GuildAuditLogEvent enumValue) Language.es => "Reacción eliminada", Language.ru => "Реакция удалена", Language.it => "Risposta rimossa", + Language.nl => "Reactie verwijderd", _ => "Reaction removed", }, _ => "Unknown", @@ -6141,6 +6614,7 @@ public string Enum(ScheduledMessageFailureReason enumValue) Language.es => "Error desconocido", Language.ru => "Неизвестная ошибка", Language.it => "Errore sconosciuto", + Language.nl => "Onbekende fout", _ => "Unknown error", }, ScheduledMessageFailureReason.ChannelNotFound => PreferredLanguage switch @@ -6151,6 +6625,7 @@ public string Enum(ScheduledMessageFailureReason enumValue) Language.es => "Canal no encontrado", Language.ru => "Канал не найден", Language.it => "Canale non trovato", + Language.nl => "Kanaal niet gevonden", _ => "Channel not found", }, ScheduledMessageFailureReason.InsufficientPermission => PreferredLanguage switch @@ -6161,6 +6636,7 @@ public string Enum(ScheduledMessageFailureReason enumValue) Language.es => "Permiso insuficiente", Language.ru => "Недостаточно прав", Language.it => "Permessi insufficienti", + Language.nl => "Onvoldoende toestemming", _ => "Insufficient permission", }, _ => "Unknown", @@ -6178,6 +6654,7 @@ public string Enum(ScheduledMessageStatus enumValue) Language.es => "Pendiente", Language.ru => "Ожидается", Language.it => "In attesa", + Language.nl => "In afwachting", _ => "Pending", }, ScheduledMessageStatus.Sent => PreferredLanguage switch @@ -6188,6 +6665,7 @@ public string Enum(ScheduledMessageStatus enumValue) Language.es => "Enviado", Language.ru => "Отправлено", Language.it => "Inviato", + Language.nl => "Verzonden", _ => "Sent", }, ScheduledMessageStatus.Failed => PreferredLanguage switch @@ -6198,6 +6676,7 @@ public string Enum(ScheduledMessageStatus enumValue) Language.es => "Falló", Language.ru => "Не удалось отправить", Language.it => "Invio fallito", + Language.nl => "Gefaald", _ => "Failed", }, _ => "Unknown", @@ -6215,6 +6694,7 @@ public string Enum(AppealStatus enumValue) Language.es => "Pendiente", Language.ru => "Ожидается", Language.it => "In attesa", + Language.nl => "In afwachting", _ => "Pending", }, AppealStatus.Approved => PreferredLanguage switch @@ -6225,6 +6705,7 @@ public string Enum(AppealStatus enumValue) Language.es => "Aprobado", Language.ru => "Утвержден", Language.it => "Approvato", + Language.nl => "Aanvaard", _ => "Approved", }, AppealStatus.Declined => PreferredLanguage switch @@ -6235,6 +6716,7 @@ public string Enum(AppealStatus enumValue) Language.es => "Denegado", Language.ru => "Отклонен", Language.it => "Rifiutato", + Language.nl => "Geweigerd", _ => "Declined", }, _ => "Unknown", diff --git a/nginx/masz-svelte/hashbuild.py b/nginx/masz-svelte/hashbuild.py index 16eb56f7f..23192850d 100644 --- a/nginx/masz-svelte/hashbuild.py +++ b/nginx/masz-svelte/hashbuild.py @@ -34,7 +34,8 @@ def generate_hash(file_content: str): "es", "fr", "it", - "ru" + "ru", + "nl" ] languages_hashes = {} for lang in LANGUAGES: diff --git a/nginx/masz-svelte/public/i18n/at.json b/nginx/masz-svelte/public/i18n/at.json index cdf08cbb4..ef481db70 100644 --- a/nginx/masz-svelte/public/i18n/at.json +++ b/nginx/masz-svelte/public/i18n/at.json @@ -787,7 +787,8 @@ "es": "Spanisch", "it": "Italienisch", "at": "Esterreichisch", - "ru": "Rusisch" + "ru": "Rusisch", + "nl": "Niederländisch" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Kanalbenochrichtung", diff --git a/nginx/masz-svelte/public/i18n/de.json b/nginx/masz-svelte/public/i18n/de.json index 9b06f838c..d67174ec6 100644 --- a/nginx/masz-svelte/public/i18n/de.json +++ b/nginx/masz-svelte/public/i18n/de.json @@ -787,7 +787,8 @@ "es": "Spanisch", "it": "Italienisch", "at": "Österreich", - "ru": "Russisch" + "ru": "Russisch", + "nl": "Niederländisch" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Kanalbenachrichtigung", diff --git a/nginx/masz-svelte/public/i18n/en.json b/nginx/masz-svelte/public/i18n/en.json index 2b9cbbb24..06f5935a0 100644 --- a/nginx/masz-svelte/public/i18n/en.json +++ b/nginx/masz-svelte/public/i18n/en.json @@ -787,7 +787,8 @@ "es": "Spanish", "it": "Italian", "at": "Austrian", - "ru": "Russian" + "ru": "Russian", + "nl": "Dutch" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Channel notification", diff --git a/nginx/masz-svelte/public/i18n/es.json b/nginx/masz-svelte/public/i18n/es.json index 8d65d5c0c..cd791e909 100644 --- a/nginx/masz-svelte/public/i18n/es.json +++ b/nginx/masz-svelte/public/i18n/es.json @@ -787,7 +787,8 @@ "es": "Español", "it": "italiano", "at": "austriaco", - "ru": "Ruso" + "ru": "Ruso", + "nl": "Neerlandés" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Notificación de canal", diff --git a/nginx/masz-svelte/public/i18n/fr.json b/nginx/masz-svelte/public/i18n/fr.json index 208d5b2d2..71b42190c 100644 --- a/nginx/masz-svelte/public/i18n/fr.json +++ b/nginx/masz-svelte/public/i18n/fr.json @@ -787,7 +787,8 @@ "es": "Espagnol", "it": "italien", "at": "autrichien", - "ru": "Russe" + "ru": "Russe", + "nl": "Néerlandais" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Notification de chaîne", diff --git a/nginx/masz-svelte/public/i18n/it.json b/nginx/masz-svelte/public/i18n/it.json index 542794e1d..3a1de7e6e 100644 --- a/nginx/masz-svelte/public/i18n/it.json +++ b/nginx/masz-svelte/public/i18n/it.json @@ -787,7 +787,8 @@ "es": "spagnolo", "it": "italiano", "at": "austriaco", - "ru": "Russo" + "ru": "Russo", + "nl": "Olandese" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Notifica del canale", diff --git a/nginx/masz-svelte/public/i18n/nl.js b/nginx/masz-svelte/public/i18n/nl.js new file mode 100644 index 000000000..face17cec --- /dev/null +++ b/nginx/masz-svelte/public/i18n/nl.js @@ -0,0 +1,75 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : + typeof define === 'function' && define.amd ? define(['exports'], factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.nl = {})); +}(this, (function (exports) { 'use strict'; + + var fp = typeof window !== "undefined" && window.flatpickr !== undefined + ? window.flatpickr + : { + l10ns: {}, + }; + var Dutch = { + weekdays: { + shorthand: ["zo", "ma", "di", "wo", "do", "vr", "za"], + longhand: [ + "zondag", + "maandag", + "dinsdag", + "woensdag", + "donderdag", + "vrijdag", + "zaterdag", + ], + }, + months: { + shorthand: [ + "jan", + "feb", + "mrt", + "apr", + "mei", + "jun", + "jul", + "aug", + "sept", + "okt", + "nov", + "dec", + ], + longhand: [ + "januari", + "februari", + "maart", + "april", + "mei", + "juni", + "juli", + "augustus", + "september", + "oktober", + "november", + "december", + ], + }, + firstDayOfWeek: 1, + weekAbbreviation: "wk", + rangeSeparator: " t/m ", + scrollTitle: "Scroll voor volgende / vorige", + toggleTitle: "Klik om te wisselen", + time_24hr: true, + ordinal: function (nth) { + if (nth === 1 || nth === 8 || nth >= 20) + return "ste"; + return "de"; + }, + }; + fp.l10ns.nl = Dutch; + var nl = fp.l10ns; + + exports.Dutch = Dutch; + exports.default = nl; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}))); diff --git a/nginx/masz-svelte/public/i18n/nl.json b/nginx/masz-svelte/public/i18n/nl.json new file mode 100644 index 000000000..72cc55d4c --- /dev/null +++ b/nginx/masz-svelte/public/i18n/nl.json @@ -0,0 +1,855 @@ +{ + "dialog": { + "confirm": { + "title": "Bevestigen", + "message": "Weet je het zeker?", + "confirm": "Bevestigen", + "cancel": "Annuleren" + } + }, + "login": { + "title": "Inloggen", + "noaccount": "Heb je geen account?", + "createaccount": "Maak een Discord-account aan", + "terms": "Voorwaarden", + "and": "en", + "privacy": "Privacybeleid" + }, + "settings": { + "base": "Instellingen", + "basedetails": "Pas jouw MASZ instellingen aan.", + "theme": "Thema", + "themedetails": "Kies hoe MASZ er voor jou uitziet.", + "language": "Taal", + "languagedetails": "Wijzig de taal", + "autosave": "Alle instellingen worden automatisch opgeslagen." + }, + "nav": { + "allguilds": "Alle gildes", + "patchnotes": "Wijzigingsnotities", + "patchnotesdetails": "Bekijk de laatste wijzigingsnotities van MASZ.", + "credits": "Credits", + "creditsdetails": "Bekijk de credits van MASZ.", + "community": "Community", + "communitydetails": "Bezoek de Discord Community van MASZ.", + "reportabug": "Rapporteer een bug", + "reportabugdetails": "Rapporteer bugs op GitHub", + "terms": "Voorwaarden", + "privacy": "Privacybeleid", + "admin": { + "base": "Beheerder", + "searchdescription": "Bekijk inzichten van uw applicatie", + "dashboard": "Dashboard", + "settings": "Instellingen", + "tokens": "Tokens" + }, + "guild": { + "base": "Gilde", + "dashboard": "Dashboard", + "cases": "Zaken", + "evidence": "Bewijs", + "automods": "Automods", + "appeals": "Beroepen", + "usernotes": "Gebruikersnotities", + "usermaps": "Gebruikerskaarten", + "messages": "Berichten", + "settings": { + "motd": "MotD", + "auditlog": "Auditlog", + "zalgo": "Zalgo", + "automod": "Automod", + "base": "Instellingen", + "search": "Gilde Instellingen", + "searchdetails": "Bewerk de instellingen van deze gilde." + } + }, + "logout": "Uitloggen" + }, + "widgets": { + "latestcases": { + "title": "Laatste zaken", + "widgetdescription": "Toont de laatste zaken in jouw gilde.", + "empty": "Geen zaken gevonden." + }, + "latestappeals": { + "title": "Laatste Beroepen", + "widgetdescription": "Toont de laatste beroepen in jouw gilde.", + "empty": "Geen beroepen gevonden." + }, + "guildmoderatorcases": { + "title": "Zaken per moderator", + "widgetdescription": "Toont alle zaken per moderator in jouw gilde.", + "cases": "Zaken", + "empty": "Geen zaken gevonden." + }, + "guildstats": { + "title": "Gilde statistieken", + "widgetdescription": "Toont de gilde statistieken.", + "automods": "Automods", + "invites": "Uitnodigingen", + "usernotes": "Gebruikersnotities", + "usermaps": "Gebruikerskaarten", + "banappeals": "Ban Beroepen", + "empty": "Geen statistieken gevonden." + }, + "guildautomodsplit": { + "title": "Automatische moderatie splitsen", + "widgetdescription": "Toont de automatische moderatie splitsing van jouw gilde.", + "empty": "Geen automatische moderatie splitsing gevonden." + }, + "guildmodcasecountchart": { + "title": "Zaak overzicht", + "widgetdescription": "Toont het overzicht van zaken in jouw gilde.", + "empty": "Geen zaak gevonden." + }, + "guildappealcountchart": { + "title": "Beroep overzicht", + "widgetdescription": "Toont het overzicht van beroepen in jouw gilde.", + "empty": "Geen beroepen gevonden." + }, + "guildautomodcountchart": { + "title": "Automatische moderatie overzicht", + "widgetdescription": "Toont het automatische moderatie overzicht van jouw gilde.", + "empty": "Geen automatische moderatie gevonden." + }, + "guildpendingmessages": { + "title": "In afwachting van geplande berichten", + "widgetdescription": "Toont de berichten die in afwachting zijn van planning in jouw gilde.", + "empty": "Geen berichten in afwachting van planning gevonden." + }, + "guildpunishmentstats": { + "title": "Bestraffing Statistieken", + "widgetdescription": "Toont de bestraffing statistieken van jouw gilde.", + "activemutes": "Actieve gedempende", + "activebans": "Actieve bans", + "empty": "Geen straffen gevonden." + }, + "guildquicksearch": { + "title": "Snelzoeken", + "widgetdescription": "Hiermee kan snel worden gezocht naar zaken, gebruikers of andere bronnen.", + "placeholder": "Quicksearch gebruikers, zaken en straffen...", + "searchhistory": "Zoekgeschiedenis", + "clearhistory": "Geschiedenis wissen", + "noresults": "Geen resultaten gevonden.", + "searching": "Zoeken...", + "searchfailed": "Zoeken is mislukt." + }, + "guildmotd": { + "title": "MotD", + "widgetdescription": "Toont het huidige bericht van de dag.", + "empty": "Geen bericht van de dag." + }, + "adminversion": { + "title": "Versie info", + "widgetdescription": "Deze widget toont de huidig geïnstalleerde versie en beschikbare updates", + "current": "Huidige versie", + "new": "Beschikbare update", + "empty": "Geen update beschikbaar" + }, + "admindiscordinvite": { + "title": "Discord uitnodiging", + "widgetdescription": "Deze widget toont een invite link voor de MASZ community Discord.", + "message": "Word lid van de MASZ gemeenschap Discord!" + }, + "adminstatus": { + "title": "Status", + "widgetdescription": "Deze widget toont de huidige ping van MASZ' componenten", + "offline": "Offline", + "bot": "Bot", + "db": "Databank", + "cache": "Cache", + "empty": "Geen status beschikbaar" + }, + "adminloggedin": { + "title": "Aangemelde gebruikers", + "widgetdescription": "Deze widget toont de momenteel ingelogde gebruikers", + "empty": "Geen ingelogde gebruikers" + }, + "adminresources": { + "title": "Middelen", + "widgetdescription": "Deze widget toont het huidige aantal aangemaakte resources in je databank.", + "guilds": "Gilden", + "cases": "Gevallen", + "automods": "Automod", + "usernotes": "Gebruiksaanwijzingen", + "usermaps": "Gebruikskaarten", + "invites": "uitnodigingen", + "empty": "Geen middelen" + }, + "admincache": { + "title": "Cache", + "widgetdescription": "Deze widget toont de huidige hoeveelheid bronnen in de cache.", + "users": "Gebruikers", + "guilds": "Gilden", + "bans": "Bans", + "members": "Leden", + "dmchannels": "DM-kanalen", + "tokens": "Token logins", + "empty": "Geen bronnen" + }, + "dashboardconfig": { + "title": "Dashboard configuratie", + "widgetdescription": "Helpt u bij de configuratie van uw dashboard.", + "available": "Beschikbare widgets", + "enabled": "Geactiveerde widgets", + "enabledragging": "Slepen mogelijk maken", + "clearcache": "Cache wissen", + "clearcacheconfirm": "Weet je zeker dat je de cache wilt wissen? Dit kan de prestaties van je dashboard beïnvloeden.", + "clearcachesuccess": "{count} cachevermeldingen gewist.", + "configurewidgets": "Widgets configureren" + } + }, + "guilds": { + "add": { + "button": "Gilde toevoegen", + "add": "Toevoegen", + "name": "Naam", + "id": "ID", + "invitefirst": "Nodig de bot eerst uit voor deze gilde", + "windowfailed": "Openen van venster gefaald" + }, + "list": { + "admin": "Admin gilden", + "mod": "Gilde Moderatoren", + "guild": "Gilden", + "banned": "Verbannen gilden" + }, + "caseview": { + "verifiedevidence": "Dit bewijs wordt geverifieerd", + "unlinked": "Caselink verwijderd", + "unlinkfailed": "Ontkoppeling van zaak mislukt", + "linked": "Caselink aangemaakt", + "linkfailed": "Zaak niet gekoppeld", + "linkcase": "Link zaak", + "search": "Zoeken", + "nocasesfound": "Geen gevallen gevonden", + "attachmentuploadfailed": "Het uploaden van bijlagen is mislukt", + "casenotfound": "Zaak niet gevonden", + "filedeleted": "Bestand verwijderd", + "filedeletefailed": "Faalde om bestand te verwijderen", + "commentdeleted": "Commentaar verwijderd", + "commentdeletefailed": "Gefaald om commentaar te verwijderen", + "commentadded": "Commentaar toegevoegd", + "commentaddfailed": "Geen commentaar toegevoegd", + "linkcopied": "Link gekopieerd naar klembord", + "fileuploaded": "Bestand geupload", + "fileuploadfailed": "Kan geen bestand uploaden", + "punishmentactivated": "Straf geactiveerd", + "punishmentdeactivated": "Straf gedeactiveerd", + "punishmentactivatefailed": "Mislukt om straf te activeren", + "punishmentdeactivatefailed": "Mislukt om straf te deactiveren", + "commentslocked": "Reacties op slot", + "commentslockfailed": "Reacties niet vergrendeld", + "commentsunlocked": "Opmerkingen ontgrendeld", + "commentsunlockfailed": "Reacties niet ontgrendeld", + "deletedcase": "Zaak verwijderd", + "markeddeletecase": "Zaak gemarkeerd voor verwijdering", + "deletecasefailed": "Kan zaak niet verwijderen", + "caserestored": "Zaak hersteld", + "caserestorefailed": "Kan zaak niet herstellen", + "commentedited": "Commentaar aangepast", + "commenteditfailed": "Kan opmerking niet bewerken", + "deletecase": "Zaak verwijderen", + "sendpublicnotification": "Verzend openbare notificatie", + "forcedelete": "Geforceerd verwijderen", + "editcomment": "Opmerking bewerken", + "editcommentfield": "Commentaar", + "editcommentfieldinvalid": "Het commentaar moet minder dan 300 tekens bevatten", + "sharecase": "Deel zaak", + "uploadfile": "Bestand uploaden", + "activate": "Activeer", + "deactivate": "Deactiveer", + "unlockcomments": "Ontgrendel opmerkingen", + "lockcomments": "Vergrendel opmerkingen", + "edit": "Bewerk", + "delete": "Verwijder", + "restore": "Herstel", + "markedtodelete": "Deze zaak is gemarkeerd om te worden verwijderd op {time}", + "markedtodeletesubtitle": "Verwijderd door {user}", + "attachments": "Bijlagen", + "comments": "Opmerkingen", + "addacomment": "Voeg een opmerking toe... (max. 300 tekens)", + "addacommenterror": "Reacties mogen niet langer zijn dan 300 tekens!", + "caseislocked": "U kunt geen commentaar geven omdat deze zaak op slot zit.", + "violator": "Overtreder", + "punishment": "straf", + "punishmentinactive": "inactief", + "labels": "Labels", + "punisheduntil": "Gestraft tot", + "usernote": "Gebruiksaanwijzing", + "moderator": "Moderator", + "lasteditmoderator": "Laatst bijgewerkt door moderator", + "moderatorunknown": "Onbekend of verborgen", + "created": "aangemaakt op", + "updated": "Bijgewerkt op", + "unknown": "onbekend", + "linkevidence": "Link bewijs", + "noevidencefound": "Geen bewijs gevonden", + "evidencelinkfailed": "Bewijs link mislukt" + }, + "casedialog": { + "createcase": "Maak zaak aan", + "editcase": "Bewerk zaak", + "caseexplain": "Gebruik zaak om overtredingen en bestraffingen in jouw gilde te registreren.", + "caseexplain2": "Als jouw gilde is geconfigureerd, zal MASZ automatisch jouw bestraffingen beheren en zowel jouw gilde als de gebruiker op de hoogte stellen.", + "importtemplate": "Sjabloon importeren", + "templateexplain": "Geen sjabloon gevonden dat aan jouw eisen voldoet? Maak er één aan het einde van de dialoog!", + "selecttemplate": "Selecteer sjabloon", + "notemplatesfound": "Geen sjablonen gevonden", + "member": "Selecteer lid", + "memberexplain": "Selecteer het lid die je wenst te straffen of voeg een ID toe, als het lid niet in de lijst staat", + "nomembersfound": "Geen leden gevonden", + "reason": "Reden", + "title": "Titel", + "titleplaceholder": "Titel (maximaal 100 tekens)", + "titleinvalid": "Titelveld is vereist en kan slechts 100 tekens lang zijn.", + "descriptionfield": "Beschrijving", + "labels": "Labels", + "clearlabel": "Label verwijderen", + "labelsplaceholder": "Nieuw label", + "punishment": "Straf", + "punishmentexplained": "MASZ zal automatisch jouw straf beheren en deze na de opgegeven tijd verwijderen. Je kunt de straf ook wijzigen indien nodig.", + "punishmentexplained2": "De straf zal permanent zijn als er geen tijd is ingevoegd.", + "punisheduntil": "Gestraft tot", + "quickactions": { + "title": "Snelle selectie", + "permanent": "Permanent", + "1hour": "1 uur", + "24hours": "24 uur", + "3days": "3 dagen", + "7days": "7 dagen", + "14days": "14 dagen", + "28days": "28 dagen", + "3months": "3 maanden" + }, + "formatisrequired": "Gelieve het formaat te respecteren: {format}", + "senddmnotification": "Stuur DM-melding", + "executepunishment": "Straf uitvoeren", + "sendpublicnotification": "Zend openbare notificatie", + "files": "Bestanden", + "filesexplain": "Je kunt bestanden uploaden naar MASZ als bewijs. Let op dat iedereen ze zal kunnen zien!", + "filesbutton": "Selecteer bestanden", + "createtemplate": "Maak sjabloon", + "submitting": "Bezig met verzenden...", + "casecreated": "Zaak #{id} aangemaakt", + "casecreatefailed": "Aanmaken van zaak mislukt", + "caseedited": "Zaak #{id} bewerkt", + "caseeditfailed": "Bewerken van zaak gefaald", + "templateapplied": "Sjabloon toegepast", + "templatesaved": "Sjabloon opgeslagen", + "templatesavefailed": "Opslaan van sjabloon mislukt", + "visibility": "Zichtbaarheid", + "evidenceexplained": "Kun je niet vinden wat je zoekt? Maak je geen zorgen, je kunt altijd later bewijsmateriaal maken en koppelen!" + }, + "modcasetable": { + "selectmembers": "Leden", + "selectmoderators": "Moderatoren", + "selectcreationtypes": "Creatie typen", + "selectpunishments": "Straffen", + "selectedited": "Status bewerken", + "selectlocked": "Vergrendel status", + "selectdelete": "Status verwijderen", + "selectactive": "Actieve status", + "filtersince": "Gemaakt sinds", + "filteruntil": "Gemaakt tot", + "executesearch": "Zoeken", + "useadvancedfilter": "Schakel geavanceerd filter in.", + "createnewcase": "Nieuwe zaak aanmaken", + "search": "Zoeken (gebruiker, id, beschrijving...)", + "failedtoload": "Kan zaken niet laden.", + "nomatches": "Geen cases gevonden die overeenkomen met je zoekopdracht!", + "nomatchesdescription": "Probeer uw filters hierboven aan te passen om dit op te lossen." + }, + "evidencetable": { + "create": "Maak bewijs aan", + "createinstruction": "Plak de link naar het discord-bericht in het onderstaande tekstveld om het bewijs te maken", + "createplaceholder": "Discord link hier", + "badcreate": "De berichtlink klopt niet", + "badguild": "Het guild-ID in de berichtlink komt niet overeen met het guild-ID van deze server", + "created": "Bewijs succesvol aangemaakt", + "createerror": "Er is iets dat het bewijsmateriaal belet heeft om aangemaakt te worden" + }, + "evidenceview": { + "evidencenotfound": "Bewijs bestaat niet", + "linktocase": "Link naar zaak", + "evidence": "Bewijs", + "goto": "Bekijk in Discord", + "reportedcontent": "Gerapporteerde inhoud", + "sent": "Verzonden op", + "reported": "Geraporteerd op", + "shareevidence": "Delen", + "deleted": "Bewijs verwijderd", + "deletefailed": "Verwijderen van bewijsmateriaal mislukt", + "unknown": "Onbekend" + }, + "automodtable": { + "selectmembers": "Leden", + "selecttypes": "Moderatie typen", + "selectactions": "Acties", + "executesearch": "Zoeken", + "useadvancedfilter": "Schakel geavanceerde filter in/uit.", + "failedtoload": "Laden van automoderatie is mislukt.", + "nomatches": "Er komen geen zaken overeen met je zoekopdracht!", + "nomatchesdescription": "Probeer je filters hierboven aan te passen om dit op te lossen." + }, + "appealtable": { + "createnewappeal": "Nieuw beroep aanmaken", + "disabledexplained": "Je mag geen nieuw bezwaar maken omdat je recentelijk je laatste bezwaar hebt gemaakt, je straf recent was of deze gilde nog geen beroep op verbannen heeft geconfigureerd", + "configureappeal": "Beroep configureren", + "useadvancedfilter": "Schakel geavanceerde filter in/uit.", + "selectmembers": "Selecteer leden", + "statustype": "Status", + "executesearch": "Voer zoekopdracht uit", + "nomatches": "Geen beroepen gevonden!", + "nomatchesdescription": "Probeer je filters hierboven aan te passen om dit op te lossen.", + "failedtoload": "Laden van beroepen is mislukt", + "hasanswered": "Gebruiker heeft {count} vragen beantwoord" + }, + "appealconfig": { + "title": "Structuur van een ban beroep", + "explain": "Configureer het formulier voor het ban beroep van de server.", + "explain2": "Gebruikers kunnen vragen overslaan als ze dat willen.", + "explain3": "Het verwijderen van een vraag zal nog steeds zichtbaar zijn in bestaande ban beroepen.", + "explain4": "Gebruikers kunnen geen ban beroepen indienen als er geen vragen zijn geconfigureerd.", + "failedtoreorder": "Kan vragen niet opnieuw ordenen.", + "deleted": "Vraag verwijderd", + "failedtodelete": "Kan vraag niet verwijderen.", + "saved": "Vraag opgeslagen", + "failedtosave": "Kan vraag niet opslaan.", + "editquestion": "Vraag bewerken", + "question": "Vraag", + "addquestion": "voeg vraag toe" + }, + "appealview": { + "saved": "Keuze opgeslagen", + "noanswer": "Geen antwoord", + "failedtosave": "Kan beslissing niet opslaan.", + "createdat": "Gemaakt op", + "updatedat": "Bijgewerkt op", + "decisionat": "Keuze op", + "moderatorcomment": "Moderator opmerking", + "newappeal": "Nieuw beroep", + "newappealnever": "Geen nieuwe beroepen kunnen worden gecreëerd door deze gebruiker!", + "newappealat": "Gebruiker kan een nieuw beroep opmaken op", + "edit": "Bewerken" + }, + "appealnew": { + "answer": "Beantwoord deze vragen om je ban-bezwaar te voltooien.", + "skip": "U kunt vragen overslaan als u dat wilt.", + "view": "U kunt telkens de status van uw beroep op deze website bekijken.", + "saved": "Uw beroep is opgeslagen.", + "failedtosave": "Uw beroep kon niet worden opgeslagen.", + "save": "Opslaan", + "answerplaceholder": "Antwoord" + }, + "usernote": { + "createusernote": "Gebruikersnotitie aanmaken", + "createusernotedescription": "Beschrijving", + "member": "Lid", + "nomembersfound": "Geen leden gevonden", + "usernotecreated": "Gebruikersnotitie aangemaakt", + "usernotecreatefailed": "Gefaald bij het opmaken van een gebruikersnotitie", + "usernoteupdated": "Gebruikersnotitie bijgewerkt", + "usernotedeleted": "Gebruikersnotitie verwijderd", + "usernotedeletefailed": "", + "nomatches": "Er zijn geen gebruikersnotities die overeenkomen met uw zoekopdracht!", + "nomatchesdescription": "Er zijn mogelijk nog geen gebruikersnotities in deze server. Maak er een aan door op de knop hierboven te klikken." + }, + "usermap": { + "createusermap": "Gebruikerskaart aanmaken", + "createusermapdescription": "Beschrijving", + "member": "Lid", + "nomembersfound": "Geen leden gevonden", + "usermapcreated": "Gebruikerskaart aangemaakt", + "usermapcreatefailed": "Gebruikerskaart kon niet worden aangemaakt", + "usermapupdated": "Gebruikerskaart bijgewerkt", + "usermapdeleted": "Gebruikerskaart verwijderd", + "usermapdeletefailed": "Gebruikerskaart kon niet worden verwijderd", + "nomatches": "Er zijn geen gebruikerskaarten gevonden die overeenkomen met uw zoekopdracht!", + "nomatchesdescription": "Er zijn geen gebruikerskaarten in deze gilde! Maak er een aan via de knop hierboven." + }, + "messages": { + "createnew": "Nieuw bericht maken", + "nomessages": "Geen resultaten gevonden!", + "nomessagesdescription": "Er zijn geen berichten gepland in deze server! Maak er een aan door op de knop hierboven te klikken.", + "title": "Titel", + "channel": "Kanaal", + "content": "bericht", + "savemessage": "Sla bericht op", + "editmessage": "Bewerk bericht", + "savedmessage": "opgeslagen bericht", + "failedtosavemessage": "Opslaan van bericht mislukt", + "failedtoload": "Laden van berichten mislukt", + "messagedeleted": "Bericht verwijderd", + "failedtodelete": "Bericht kon niet worden verwijderd" + }, + "motd": { + "title": "Bericht van de dag", + "explain": "Gebruik een MotD om een bericht vast te zetten op het dashboard van de server dat alle moderators zullen zien.", + "explain2": "Dit kan instructies bevatten over hoe je gevallen moet formatteren of afbeeldingen moet uploaden als bewijs.", + "noresult": "Kan MotD niet laden.", + "enabled": "MotD inschakelen in serverdashboard", + "message": "Bericht van de dag", + "save": "Opslaan", + "submitting": "Bezig met verzenden...", + "saved": "Bericht van de dag is opgeslagen", + "failedtosave": "Kan bericht van de dag niet opslaan" + }, + "auditlog": { + "title": "AuditLog", + "explain": "Gebruik auditlogs om bepaalde gebeurtenissen in je gilde te loggen.", + "explain2": "Op bepaalde gebeurtenissen kunt u filteren op basis van kanalen of rollen.", + "targetchannel": "Doelkanaal", + "pingrole": "Ping rol", + "excluderoles": "Uitgesloten rollen", + "excludechannels": "Uitgesloten kanalen", + "saved": "AuditLog opgeslagen", + "failedtosave": "Auditlogboek niet opgeslagen" + }, + "automods": { + "title": "Automod configuratie", + "explain": "Gebruik automoderatie om automatisch berichten in bepaalde kanalen te verwijderen of leden te straffen voor bepaalde gebeurtenissen", + "explain2": "U kunt ook filters definiëren voor elke gebeurtenis om uw automatisering te verfijnen.", + "timelimitfield": "Tijdslimiet (seconden)", + "limitfield": "Bovengrens", + "config": "Configuratie", + "filter": "Filter", + "filterchannels": "Filterkanalen", + "filterroles": "Filterrollen", + "punishmentduration": "Duur (minuten)", + "action": "Actie", + "saved": "Automod configuratie opgeslagen", + "failedtosave": "Kan automod-configuratie niet opslaan", + "deactivated": "Automod gedeactiveerd", + "failedtodeactivate": "Automod niet gedeactiveerd", + "invites": { + "details": "Een bericht op je gilde komt overeen met het uitnodigingspatroon. Uitnodigingen aan dit gilde worden genegeerd.", + "customwordfield": "Negeer gilden (voer ID's in gedeeld door newlines)" + }, + "emotes": { + "details": "Een bericht op je gilde bevat te veel emotes." + }, + "mentions": { + "details": "Een bericht op je gilde bevat te veel vermeldingen." + }, + "attachments": { + "details": "Een bericht op je gilde bevat te veel bijlagen." + }, + "embeds": { + "details": "Een bericht op je gilde bevat te veel embeds." + }, + "automoderations": { + "details": "Een gebruiker triggert te veel automatiseringen in een bepaalde tijdspanne." + }, + "customfilter": { + "title": "Aangepaste filter", + "details": "Een gebruiker gebruikt te veel woorden in uw lijst.", + "tooltip": "Woorden worden regel voor regel gecontroleerd op hoofdlettergevoeligheid.", + "linktext": "Voorbeeld", + "customwordfield": "Aangepaste woorden (regex-patroon gedeeld door nieuwe regel)" + }, + "spam": { + "details": "Een gebruiker van je gilde stuurt te veel berichten in een tijdspanne.", + "timelimitmessage": "Tijdslimiet (seconden)" + }, + "duplicatedchars": { + "details": "Een bericht op je gilde bevat te veel ingewikkelde tekens." + }, + "link": { + "details": "Een bericht over je gilde bevat te veel links.", + "customwordfield": "Links negeren (regexpatronen invoeren gedeeld door newlines)", + "linktext": "Voorbeeld" + }, + "phishinglink": { + "details": "Een bericht op je gilde bevat te veel phishing links." + } + }, + "zalgo": { + "title": "Zalgo", + "explain": "Gebruik deze functie om gebruikers die zalgo gebruiken in hun gebruikersnaam of nickname automatisch te hernoemen.", + "enable": "Schakel zalgo moderatie in deze gilde in", + "renamenormal": "Probeer gebruikers met zalgo te hernoemen naar normale tekst die nog steeds klinkt als hun gebruikersnaam", + "renamefallback": "Terugval naar deze string als hernoemingsoptie", + "allowedpercentage": "Toegestaan percentage zalgo-tekens in een gebruikersnaam of bijnaam", + "logtomodchannel": "Log alle zalgo moderaties naar de interne webhook", + "simulate": "Simuleer", + "simulateresults": "Simulatieresultaten", + "noresult": "Zalgo configuratie niet geladen", + "save": "Opslaan", + "submitting": "Bezig met verzenden...", + "saved": "Zalgo config opgeslagen", + "failedtosave": "Mislukt om zalgo config op te slaan" + }, + "config": { + "title": "Gilde configuratie", + "permissions": { + "title": "Toestemming", + "explain": "Hier kunt u definiëren welke rollen verder toegang moeten hebben in MASZ.", + "adminroles": "Admin rollen", + "modroles": "Moderator rollen", + "appealafterxdays": "Beroep tegen verbanning toestaan ​​na x dagen", + "strictpermissions": "Strikte toestemmingscontrole", + "strictpermissionsexplained": "Indien ingeschakeld, hebben moderators een discord rol met ban toestemming nodig om ban modcases te maken." + }, + "mutedroles": { + "title": "Gedempte rollen", + "explain": "Hier kunt u bepalen welke rollen moeten worden gebruikt om gebruikers te dempen.", + "explain2": "Als er geen zijn gedefinieerd, zal MASZ de time-out functionaliteit van Discord gebruiken." + }, + "notifications": { + "title": "Notificatie", + "explain": "Gebruik deze webhooks om gebruikers of personeel op de hoogte te stellen van MASZ-evenementen", + "internal": "Interne webhook", + "public": "Openbare webhook", + "invalid": "Ongeldige webhook" + }, + "information": { + "title": "Informatie", + "publicembedmode": "Openbare embed mode", + "publicembedmodeexplained": "Deze modus maakt gedetailleerde embeds mogelijk bij het linken van modcases in discord. Dit zal privé informatie onthullen zoals de verdachte, straffen etc.", + "publishmod": "Informatie over de moderator publiceren", + "publishmodexplained": "Een verdachte zal kunnen zien welke moderator hem heeft gestraft." + }, + "misc": { + "title": "Divers", + "whois": "Voer whois uit op lid worden", + "whoisexplained": "Stuurt automatisch informatie over de verbonden gebruiker naar uw interne webhook.", + "importbans": "Invoer van bestaande verboden", + "importbansexplained": "Dit zal Zaken creëren voor elk van je bestaande bans. Dit kan even duren.", + "language": "Taal" + }, + "save": "Opslaan", + "submitting": "Bezig met verzenden...", + "saved": "Opgeslagen", + "failedtosave": "Opslaan mislukt", + "deleteguild": "Verwijder Gilde", + "deleted": "Gilde verwijderd", + "failedtodelete": "Gefaald met verwijderen", + "deleteconfirm": "Bevestig verwijdering", + "deleteresources": "Verwijder alle data (overtredingen, configuraties, gebeurtenis, bestanden)", + "deleteundone": "Deze actie is niet omkeerbaar. De gilde wordt onmiddellijk verwijderd." + } + }, + "admin": { + "settings": { + "failedtoload": "", + "title": "Instellingen", + "save": "Opslaan", + "submitting": "Bezig met verzenden...", + "failedtosave": "Opslaan mislukt", + "saved": "Opgeslagen", + "embed": { + "title": "Embed", + "explained": "Deze instelling verandert de inhoud van de embed wanneer uw MASZ-instantie is gekoppeld in Discord.", + "explained2": "Houd er rekening mee dat het tot een uur kan duren om te updaten in discord.", + "titlefield": "Titel", + "descriptionfield": "Beschrijving", + "titleinvalid": "Het titelveld is vereist en moet minder dan 256 tekens lang zijn.", + "descriptioninvalid": "Het beschrijvingsveld is verplicht en moet minder dan 4096 tekens lang zijn.", + "iconfield": "Toon het pictogram van de applicatie in de embed." + }, + "infrastructure": { + "title": "Infrastructuur", + "explained": "MASZ gebruikt deze taal als de standaardtaal wanneer dat mogelijk is. Mogelijk is echter alleen een Engelse versie beschikbaar voor bepaalde teksten. Instellingen specifiek voor de server overschrijven deze instelling.", + "languagefield": "Standaardtaal", + "explained2": "Gebruik een privé-webhook die alleen toegankelijk is voor sitebeheerders, aangezien hier mogelijk gevoelige informatie in wordt gelogd.", + "webhookfield": "Auditlog Webhook URL", + "invalidwebhook": "De webhook URL is ongeldig.", + "explained3": "Schakel dit in om openbare toegang tot alle geüploade bestanden toe te staan.", + "filemodefield": "Openbaar bestandsmodus" + } + }, + "tokens": { + "title": "Tokens", + "tabledescription": "Als sitebeheerder kunt u de MASZ API gebruiken om uw eigen aangepaste scripts te laten communiceren met MASZ en zaken te automatiseren. Maak hieronder een API-sleutel aan om uzelf te autoriseren voor de API bij het maken van webverzoeken. Voeg tokens toe aan de \"Authorization\" header met een \"Bearer\" voorvoegsel.", + "createnew": "Maak nieuwe token aan", + "documentation": "Documentatie", + "support": "Support", + "deleteall": "Verwijder alle tokens", + "delete": "Verwijder", + "deleted": "Token verwijderd", + "failedtodelete": "Verwijderen gefaald", + "failedtoload": "Laden mislukt", + "name": "Naam", + "createdat": "Gemaakt op", + "validuntil": "Geldig tot", + "action": "Actie", + "copy": "Kopiëren", + "cancel": "Annuleren", + "powerful": "Een API-sleutel is zeer krachtig en kan alles op MASZ besturen!", + "generate": "Genereer", + "unique": "Dit is uw unieke sleutel en deze is niet herstelbaar. Als u deze API-sleutel verliest, moet u deze opnieuw instellen.", + "onlyone": "Momenteel kun je enkel één token aanmaken." + } + }, + "error": "Fout", + "warns": "Waarschuwingen", + "mutes": "Dempers", + "kicks": "Kicks", + "bans": "Bans", + "core": { + "copiedtoclipboard": "Gekopieerd naar het klembord", + "edit": "Bijwerken", + "delete": "Verwijderen", + "pagination": { + "forwardtext": "Volgende pagina", + "backwardtext": "Vorige pagina", + "itemrangetext": "{min}-{max} van {total} items", + "pagerangetext": "van {total} pagina", + "pagerangetextplural": "van {total} pagina's" + } + }, + "feedback": { + "title": "Wat vind je van MASZ?", + "experience": "Beoordeel je ervaring", + "comment": "Laat een reactie achter (optioneel)", + "commenttoolong": "Je reactie moet 4096 tekens of minder zijn", + "cancel": "Annuleren", + "submit": "Verzenden", + "thanks": "Bedankt voor jouw feedback!" + }, + "supportme": "Steun mij", + "enums": { + "punishmenttype": { + "mute": "Dempen", + "ban": "Ban", + "kick": "Kick", + "warn": "Waarschuwen" + }, + "viewpermission": { + "self": "Privé", + "guild": "Gilde", + "global": "Globaal" + }, + "automoderationaction": { + "none": "Geen actie", + "contentdeleted": "Inhoud verwijderd", + "casecreated": "Zaak aangemaakt", + "contentdeletedandcasecreated": "Inhoud verwijderd en zaak aangemaakt", + "timeout": "Timeout" + }, + "automoderationtype": { + "inviteposted": "Uitnodiging geplaatst", + "toomanyemotes": "Te veel emoji's gebruikt", + "toomanymentions": "Te veel gebruikers vermeld", + "toomanyattachments": "Te veel bijlagen gebruikt", + "toomanyembeds": "Te veel ingesloten inhoud gebruikt", + "toomanyautomoderations": "Te veel automatische moderaties", + "customwordfilter": "Aangepaste woordenfilter geactiveerd", + "toomanymessages": "Te veel berichten", + "toomanyduplicatedcharacters": "Te veel gedupliceerde karakters gebruikt", + "toomanylinks": "Te veel links gebruikt", + "toomanyphishinglinks": "Te veel phishing links gebruikt" + }, + "apierror": { + "unknown": "Onbekende fout", + "invaliddiscorduser": "Ongeldige Discord-gebruiker", + "protectedmodcasesuspect": "Gebruiker is beschermd", + "protectedmodcasesuspectisbot": "Gebruiker is beschermd. Hij is een robot.", + "protectedmodcasesuspectissiteadmin": "Gebruiker is beschermd. Hij is een sitebeheerder.", + "protectedmodcasesuspectisteam": "Gebruiker is beschermd. Hij is een teamlid.", + "resourcenotfound": "Bron niet gevonden", + "invalididentity": "Ongeldige identiteit", + "guildunregistered": "Gilde is niet geregistreerd", + "unauthorized": "Onbevoegd", + "guildundefinedmutedroles": "Er zijn geen rollen gedefinieerd voor te dempen straffen in deze gilde", + "modcaseismarkedtobedeleted": "Modcase is gemarkeerd om te worden verwijderd", + "modcaseisnotmarkedtobedeleted": "Modcase is niet gemarkeerd om te worden verwijderd", + "guildalreadyregistered": "Deze gilde is al geregistreerd", + "notallowedindemomode": "Deze actie is niet toegestaan in de demo-modus", + "rolenotfound": "Rol niet gevonden", + "tokencannotmanagethisresource": "Tokens kunnen deze bron niet beheren", + "tokenalreadyregistered": "Token is al geregistreerd", + "cannotbesameuser": "Beide gebruikers zijn hetzelfde.", + "resourcealreadyexists": "Bron bestaat al", + "modcasedoesnotallowcomments": "Reacties zijn vergrendeld voor deze modcase", + "lastcommentalreadyfromsuspect": "De laatste opmerking was al van de verdachte", + "invalidautomoderationaction": "Ongeldige automoderatie actie", + "invalidautomoderationtype": "Ongeldige automoderatie type", + "toomanytemplates": "De gebruiker heeft het maximale aantal sjablonen bereikt", + "invalidfilepath": "Ongeldig bestandspad", + "noguildsregistered": "Er zijn geen gilde's geregistreerd", + "onlyusableinaguild": "Deze actie kan enkel gebruikt worden in een gilde", + "invalidauditlogevent": "Ongeldig auditlogevent type", + "protectedscheduledmessage": "Het geplande bericht is beschermd en kan niet worden verwijderd.", + "invaliddateforscheduledmessage": "De uitvoeringsdatum moet minstens één minuut in de toekomst liggen." + }, + "casecreationtype": { + "default": "Standaard", + "automoderation": "Zaak is automatisch gemodereerd", + "imported": "Zaak is geïmporteerd", + "bycommand": "Zaak aangemaakt door opdracht." + }, + "language": { + "en": "Engels", + "de": "Duits", + "fr": "Frans", + "es": "Spaans", + "it": "Italiaans", + "at": "Oostenrijks", + "ru": "Russisch", + "nl": "Nederlands" + }, + "automoderationchannelnotificationbehavior": { + "sendnotification": "Kanaalnotificatie", + "sendnotificationanddelete": "Voorlopige kanaalnotificatie", + "nonotification": "Geen kanaalnotificatie" + }, + "editstatus": { + "none": "Geen", + "unedited": "Niet aangepast", + "edited": "Aangepast" + }, + "lockedcommentstatus": { + "none": "Geen", + "locked": "Vergrendeld", + "unlocked": "Ontgrendeld" + }, + "markedtodeletestatus": { + "none": "Geen", + "marked": "Gemarkeerd om te verwijderen", + "unmarked": "Niet gemarkeerd om te verwijderen" + }, + "punishmentactivestatus": { + "none": "Geen", + "active": "Actief", + "inactive": "niet actief" + }, + "guildauditlogevent": { + "messagesent": "Bericht verzonden", + "messageupdated": "Bericht bijgewerkt", + "messagedeleted": "Bericht verwijderd", + "usernameupdated": "Gebruikersnaam bijgewerkt", + "avatarupdated": "Avatar bijgewerkt", + "nicknameupdated": "Nickame bijgewerkt", + "memberrolesupdated": "Lidrollen bijgewerkt", + "memberjoined": "Lid toegetreden", + "memberremoved": "Lid verwijderd", + "banadded": "Lid geband", + "banremoved": "Lid onbannen", + "invitecreated": "Uitnodiging aangemaakt", + "invitedeleted": "Uitnodiging verwijderd", + "threadcreated": "Thread aangemaakt", + "voicejoined": "Lid aangesloten bij spraakkanaal", + "voiceleft": "Lid verliet spraakkanaal", + "voicemoved": "Lid veranderde van spraakkanaal", + "reactionadded": "Reactie toegevoegd", + "reactionremoved": "Reactie verwijderd" + }, + "scheduledmessagefailurereason": { + "unknown": "Onbekende fout", + "channelnotfound": "Kanaal niet gevonden", + "insufficientpermission": "Onvoldoende toestemming" + }, + "scheduledmessagestatus": { + "pending": "In afwachting", + "sent": "Verzonden", + "failed": "Gefaald" + }, + "appealstatus": { + "pending": "In afwachting", + "approved": "Aanvaard", + "declined": "Geweigerd" + } + } +} \ No newline at end of file diff --git a/nginx/masz-svelte/public/i18n/ru.json b/nginx/masz-svelte/public/i18n/ru.json index b1f1647f6..e64a79da3 100644 --- a/nginx/masz-svelte/public/i18n/ru.json +++ b/nginx/masz-svelte/public/i18n/ru.json @@ -787,7 +787,8 @@ "es": "испанский", "it": "Итальянский", "at": "Австрийский", - "ru": "Русский" + "ru": "Русский", + "nl": "Голландский" }, "automoderationchannelnotificationbehavior": { "sendnotification": "Уведомление канала", diff --git a/nginx/masz-svelte/src/App.svelte b/nginx/masz-svelte/src/App.svelte index 9de0d0b5d..7b8146099 100644 --- a/nginx/masz-svelte/src/App.svelte +++ b/nginx/masz-svelte/src/App.svelte @@ -37,6 +37,9 @@ register("ru", () => { return API.getAsset("/i18n/ru.json"); }); + register("nl", () => { + return API.getAsset("/i18n/nl.json"); + }); setTimeout(() => { const html = document.getElementsByTagName("html"); diff --git a/nginx/masz-svelte/src/config.ts b/nginx/masz-svelte/src/config.ts index 590347e19..6ebe1ec2b 100644 --- a/nginx/masz-svelte/src/config.ts +++ b/nginx/masz-svelte/src/config.ts @@ -95,4 +95,14 @@ export const LANGUAGES: ILanguageSelect[] = [ momentDateTimeFormat: "DD.MM.YYYY HH:mm", apiValue: 6, }, + { + language: "nl", + displayName: "Dutch (nederlands)", + dateFormat: "d.m.Y", + momentDateFormat: "DD.MM.YYYY", + timeFormat: "hh:MM", + momentTimeFormat: "HH:mm", + momentDateTimeFormat: "DD.MM.YYYY HH:mm", + apiValue: 7, + }, ]; diff --git a/nginx/masz-svelte/src/services/enums/Language.ts b/nginx/masz-svelte/src/services/enums/Language.ts index 2473f2584..2c38b3df2 100644 --- a/nginx/masz-svelte/src/services/enums/Language.ts +++ b/nginx/masz-svelte/src/services/enums/Language.ts @@ -28,6 +28,10 @@ const enums: IMASZEnum[] = [ { "id": 6, "translationKey": "enums.language.ru" + }, + { + "id": 7, + "translationKey": "enums.language.nl" } ] diff --git a/translations/backend.json b/translations/backend.json index f2949de11..f10ef2fd7 100644 --- a/translations/backend.json +++ b/translations/backend.json @@ -301,7 +301,7 @@ "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", "it": "Se inviare una notifica DM", - "nl": "Of een DM-melding moet worden verzonden" + "nl": "Of een DM melding moet worden verzonden" } }, "public-notification": { @@ -661,7 +661,7 @@ "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", "it": "Se inviare una notifica DM", - "nl": "Of een DM-melding moet worden verzonden" + "nl": "Of een DM melding moet worden verzonden" } }, "public-notification": { @@ -918,7 +918,7 @@ "es": "Si se debe enviar una notificación DM", "ru": "Отправлять ли уведомление DM", "it": "Se inviare una notifica DM", - "nl": "Of een DM-melding moet worden verzonden" + "nl": "Of een DM melding moet worden verzonden" } }, "public-notification": { @@ -1196,7 +1196,7 @@ "es": "Desmutear", "ru": "Размутить", "it": "Smutare", - "nl": "Dempen opheffen" + "nl": "Dempenopheffen" }, "Desc": { "description": "The description of the 'Unmute' command", @@ -1255,7 +1255,7 @@ "es": "Muestra la URL en la que se implementa MASZ.", "ru": "Отображает URL, на котором развернут MASZ.", "it": "Mostra l'URL su cui è installato MASZ.", - "nl": "Geeft de URL weer waarop MASZ is geïmplementeerd." + "nl": "Geeft de URL weer waarop MASZ is geimplementeerd." } }, "View": { @@ -2483,7 +2483,7 @@ "es": "Hola, {user.Mention}:\n\nActivó la automoderación en {channel.Mention}.\nMotivo: {reason}\nAcción: {action}", "ru": "Привет, {user.Mention}!\n\nВы активировали автомодерацию в {channel.Mention}.\nПричина: {reason}\nДействие: {action}", "it": "Ciao {user.Mention},\n\nHai attivato la moderazione automatica in {channel.Mention}.\nMotivo: {reason}\nAzione: {action}", - "nl": "Hallo {user.Mention},\n\nJe hebt de automatisering geactiveerd in {kanaal.Mention}.\nReason: {reason}\nAction: {action}" + "nl": "Hallo {user.Mention},\n\nJe hebt de automatisering geactiveerd in {channel.Mention}.\nReason: {reason}\nAction: {action}" }, "Channel": { "description": "channel notification for automod event if message was deleted, should be oneline", diff --git a/translations/supported_languages.json b/translations/supported_languages.json index c3cce4e0f..dbc5455b3 100644 --- a/translations/supported_languages.json +++ b/translations/supported_languages.json @@ -39,4 +39,4 @@ "nativeName": "Nederlands", "supported": 100 } -} +} \ No newline at end of file From 6940ea36784249c10ab5d0e12a28d7b3c9f501eb Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 17:46:57 +0200 Subject: [PATCH 07/16] update message cache on message update --- backend/MASZ/Services/GuildAuditLogger.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/backend/MASZ/Services/GuildAuditLogger.cs b/backend/MASZ/Services/GuildAuditLogger.cs index ea7135c10..2bb84a0a8 100644 --- a/backend/MASZ/Services/GuildAuditLogger.cs +++ b/backend/MASZ/Services/GuildAuditLogger.cs @@ -919,6 +919,14 @@ public async Task HandleMessageUpdated(Cacheable _messageBefore { if (channel is ITextChannel tchannel) { + if (_config.IsExperimentalMessageCacheEnabled()) + { + _discordAPIInterface.AddOrUpdateCache( + CacheKey.IMessage(tchannel.Id, messageAfter.Id), + new CacheApiResponse(messageAfter, 60 * 24 * 31 * 12) + ); + } + if (await CheckForIgnoredChannel(tchannel.GuildId, GuildAuditLogEvent.MessageUpdated, tchannel)) { return; From 6542bd412f703df5c92c17eabae80d8af5bc9043 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 17:49:18 +0200 Subject: [PATCH 08/16] fixes #580 --- backend/MASZ/Exceptions/EmbedCreator.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/MASZ/Exceptions/EmbedCreator.cs b/backend/MASZ/Exceptions/EmbedCreator.cs index c4e33717d..033ef77a0 100644 --- a/backend/MASZ/Exceptions/EmbedCreator.cs +++ b/backend/MASZ/Exceptions/EmbedCreator.cs @@ -332,7 +332,7 @@ public static async Task CreateInternalAutomodEmbed(this AutoModer { embed.AddField( translator.T().MessageContent(), - autoModerationEvent.MessageContent, + autoModerationEvent.MessageContent.Truncate(1000), false ); } From 3ee474551e13526f0ecedcefaaa0409a0b02f9a2 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 17:49:30 +0200 Subject: [PATCH 09/16] bump version to 3.5.0 --- backend/MASZ/Services/InternalConfiguration.cs | 2 +- nginx/masz-svelte/src/config.ts | 2 +- nginx/static/version.json | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/backend/MASZ/Services/InternalConfiguration.cs b/backend/MASZ/Services/InternalConfiguration.cs index 563ea0462..e2688ad19 100644 --- a/backend/MASZ/Services/InternalConfiguration.cs +++ b/backend/MASZ/Services/InternalConfiguration.cs @@ -159,7 +159,7 @@ public string GetDeployMode() public string GetVersion() { - return "v3.4.2"; + return "v3.5.0"; } public string GetDiscordBotStatus() diff --git a/nginx/masz-svelte/src/config.ts b/nginx/masz-svelte/src/config.ts index 61698e7cf..bedfc759c 100644 --- a/nginx/masz-svelte/src/config.ts +++ b/nginx/masz-svelte/src/config.ts @@ -16,7 +16,7 @@ export const LOCAL_STORAGE_KEY_GUILD_QUICKSEARCH_HISTORY = "__masz-guild-quickse export const FEEDBACK_COOKIE_NAME = "__masz-feedback"; export const APP_NAME = "MASZ"; -export const APP_VERSION = "v3.4.2"; +export const APP_VERSION = "v3.5.0"; export const GUILD_QUICKSEARCH_MAX_HISTORY_ENTRIES = 10; diff --git a/nginx/static/version.json b/nginx/static/version.json index 529c2decb..0c5e27943 100644 --- a/nginx/static/version.json +++ b/nginx/static/version.json @@ -1,5 +1,5 @@ { - "version": "v3.4.2", + "version": "v3.5.0", "wrapper_version": 4, - "pre_release": true + "pre_release": false } From 35ad7c5bcde3b4b05d265431d20908627b0f07ee Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:06:09 +0200 Subject: [PATCH 10/16] maybe fix time issues in case creation/edit? --- .../components/guilds/cases/EditCase.svelte | 23 ++++++++++++----- .../components/guilds/cases/NewCase.svelte | 25 +++++++++++++------ 2 files changed, 35 insertions(+), 13 deletions(-) diff --git a/nginx/masz-svelte/src/components/guilds/cases/EditCase.svelte b/nginx/masz-svelte/src/components/guilds/cases/EditCase.svelte index bf2712a7f..e73280e85 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/EditCase.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/EditCase.svelte @@ -106,11 +106,22 @@ $: calculatePunishedUntil(inputPunishedUntilDate, inputPunishedUntilTime, $currentLanguage); function calculatePunishedUntil(date: string, time: string, language?: ILanguageSelect) { if (language) { - date - ? (modCase.punishedUntil = moment(`${date} ${time ? time : "00:00"}`, `${language.momentDateFormat} ${language.momentTimeFormat}`) + if (date) { + let res = moment(`${date} ${time ? time : "00:00"}`, `${language.momentDateFormat} ${language.momentTimeFormat}`) .utc(false) - .utcOffset(utcOffset)) - : (modCase.punishedUntil = null); + .utcOffset(utcOffset); + + if (res === null) { + res = moment(date, language.momentDateFormat) + .utc(false) + .utcOffset(utcOffset) + } + + modCase.punishedUntil = res; + + return; + } + modCase.punishedUntil = null; } } @@ -237,9 +248,9 @@ diff --git a/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte b/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte index 417e81dc1..9d155c509 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte @@ -44,7 +44,7 @@ import type { IVerifiedEvidenceCompactView } from "../../../models/api/IVerifiedEvidenceCompactView"; import UserIcon from "../../discord/UserIcon.svelte"; - const utfOffset = new Date().getTimezoneOffset() * -1; + const utcOffset = new Date().getTimezoneOffset() * -1; let templatesLoading: boolean = true; let templates: { id: string; text: string; obj: ITemplateView }[] = []; @@ -204,11 +204,22 @@ $: calculatePunishedUntil(inputPunishedUntilDate, inputPunishedUntilTime, $currentLanguage); function calculatePunishedUntil(date: string, time: string, language?: ILanguageSelect) { if (language) { - date - ? (modCase.punishedUntil = moment(`${date} ${time ? time : "00:00"}`, `${language.momentDateFormat} ${language.momentTimeFormat}`) + if (date) { + let res = moment(`${date} ${time ? time : "00:00"}`, `${language.momentDateFormat} ${language.momentTimeFormat}`) .utc(false) - .utcOffset(utfOffset)) - : (modCase.punishedUntil = null); + .utcOffset(utcOffset); + + if (res === null) { + res = moment(date, language.momentDateFormat) + .utc(false) + .utcOffset(utcOffset) + } + + modCase.punishedUntil = res; + + return; + } + modCase.punishedUntil = null; } } @@ -585,9 +596,9 @@ From df4f86daf980313201a2f071d9f3a90b5b670742 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:15:59 +0200 Subject: [PATCH 11/16] correctly link evidence --- backend/MASZ/Repositories/AutoModerationEventRepository.cs | 2 +- nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/MASZ/Repositories/AutoModerationEventRepository.cs b/backend/MASZ/Repositories/AutoModerationEventRepository.cs index 95b3ff47b..7aaf6d085 100644 --- a/backend/MASZ/Repositories/AutoModerationEventRepository.cs +++ b/backend/MASZ/Repositories/AutoModerationEventRepository.cs @@ -187,7 +187,7 @@ private async Task CreateAndLinkEvidence(ModCase modCase, VerifiedEvidence evide evidence = await repo.CreateEvidence(evidence); - await repo.Link(evidence.GuildId, evidence.Id, modCase.Id); + await repo.Link(evidence.GuildId, evidence.Id, modCase.CaseId); } catch(Exception e) { Logger.LogError(e, $"Failed to create evidence link for modevent modcasecase {evidence.GuildId}/{evidence.UserId}/{modCase.Id}"); diff --git a/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte b/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte index 300e95e1d..169fee1f9 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte @@ -295,7 +295,7 @@ function linkEvidence(evidence: IVerifiedEvidence) { linkEvidenceSubmitting.set(true); - API.post(`/guilds/${$currentParams.guildId}/evidencemapping/${evidence.id}/${$modCase.modCase.id}`, {}, CacheMode.API_ONLY, false) + API.post(`/guilds/${$currentParams.guildId}/evidencemapping/${evidence.id}/${$modCase.modCase.caseId}`, {}, CacheMode.API_ONLY, false) .then(() => { modCase.update((n) => { n.linkedEvidence.push(evidence); From 0f3a095de1562fd22afa427eba544b19897439b3 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:25:35 +0200 Subject: [PATCH 12/16] removed discriminator from codebase --- backend/MASZ/Commands/AntiraidCommand.cs | 4 +- backend/MASZ/Commands/CleanupCommand.cs | 4 +- .../MASZ/Commands/CreateEvidenceCommand.cs | 1 - backend/MASZ/Commands/StatusCommand.cs | 2 +- backend/MASZ/Commands/TrackCommand.cs | 2 +- .../api/v1/AdminStatsController.cs | 2 +- .../Controllers/api/v1/AppealController.cs | 1 - .../api/v1/VerifiedEvidenceController.cs | 1 - .../api/v1/Views/ModCaseTableController.cs | 3 +- .../Views/VerifiedEvidenceTableController.cs | 4 +- .../AutoModerationEventForCreateDto.cs | 1 - backend/MASZ/Exceptions/EmbedCreator.cs | 4 +- backend/MASZ/MASZ.csproj | 2 +- backend/MASZ/Models/Database/Appeal.cs | 1 - .../Models/Database/AutoModerationEvent.cs | 1 - backend/MASZ/Models/Database/ModCase.cs | 1 - .../MASZ/Models/Database/VerifiedEvidence.cs | 3 +- backend/MASZ/Models/Views/AppealView.cs | 2 - .../Models/Views/AutoModerationEventView.cs | 2 - backend/MASZ/Models/Views/CaseView.cs | 2 - .../Models/Views/Discord/DiscordUserView.cs | 2 - .../MASZ/Models/Views/VerifiedEvidenceView.cs | 2 - .../AutoModerationEventRepository.cs | 2 - backend/MASZ/Repositories/BaseRepository.cs | 7 +- .../MASZ/Repositories/ModCaseRepository.cs | 2 - backend/MASZ/Services/AuditLogger.cs | 2 +- backend/MASZ/Services/DiscordBot.cs | 8 +- backend/MASZ/Services/GuildAuditLogger.cs | 32 ++-- backend/MASZ/Services/Scheduler.cs | 1 - backend/MASZ/Utils/Translation.cs | 160 +++++++++--------- .../src/components/api/Feedback.svelte | 4 +- .../src/components/discord/UserIcon.svelte | 2 +- .../guilds/appeals/AppealTable.svelte | 4 +- .../guilds/appeals/AppealView.svelte | 2 +- .../guilds/automods/AutomodTable.svelte | 4 +- .../components/guilds/cases/CaseTable.svelte | 5 +- .../components/guilds/cases/CaseView.svelte | 19 +-- .../components/guilds/cases/NewCase.svelte | 9 +- .../guilds/dashboard/LatestAppeals.svelte | 2 +- .../guilds/evidence/EvidenceTable.svelte | 5 +- .../guilds/evidence/EvidenceView.svelte | 5 +- .../guilds/messages/ScheduledMessages.svelte | 2 +- .../guilds/usermaps/UsermapTable.svelte | 6 +- .../guilds/usernotes/UsernoteTable.svelte | 4 +- .../masz-svelte/src/models/api/IAppealView.ts | 1 - .../src/models/api/IAutomodEntry.ts | 1 - nginx/masz-svelte/src/models/api/ICase.ts | 1 - .../src/models/api/IVerifiedEvidence.ts | 1 - .../src/models/discord/IDiscordUser.ts | 1 - translations/backend.json | 160 +++++++++--------- 50 files changed, 229 insertions(+), 270 deletions(-) diff --git a/backend/MASZ/Commands/AntiraidCommand.cs b/backend/MASZ/Commands/AntiraidCommand.cs index d67326dfd..0ffaebf3e 100644 --- a/backend/MASZ/Commands/AntiraidCommand.cs +++ b/backend/MASZ/Commands/AntiraidCommand.cs @@ -72,7 +72,7 @@ private async Task IterateAndDeleteChannel(ITextChannel channel, IUser curr if (toDelete.Count >= 2) { RequestOptions options = new(); - options.AuditLogReason = $"Bulkdelete by {currentActor.Username}#{currentActor.Discriminator} ({currentActor.Id})."; + options.AuditLogReason = $"Bulkdelete by {currentActor.Username} ({currentActor.Id})."; await channel.DeleteMessagesAsync(toDelete, options); toDelete.Clear(); @@ -120,7 +120,7 @@ private async Task IterateAndDeleteChannel(ITextChannel channel, IUser curr if (toDelete.Count >= 2) { RequestOptions options = new(); - options.AuditLogReason = $"Bulkdelete by {currentActor.Username}#{currentActor.Discriminator} ({currentActor.Id})."; + options.AuditLogReason = $"Bulkdelete by {currentActor.Username} ({currentActor.Id})."; await channel.DeleteMessagesAsync(toDelete, options); toDelete.Clear(); diff --git a/backend/MASZ/Commands/CleanupCommand.cs b/backend/MASZ/Commands/CleanupCommand.cs index 3c0b55542..32311772b 100644 --- a/backend/MASZ/Commands/CleanupCommand.cs +++ b/backend/MASZ/Commands/CleanupCommand.cs @@ -110,7 +110,7 @@ private async Task IterateAndDeleteChannels(ITextChannel channel, int limit if (toDelete.Count >= 2) { RequestOptions options = new(); - options.AuditLogReason = $"Bulkdelete by {currentActor.Username}#{currentActor.Discriminator} ({currentActor.Id})."; + options.AuditLogReason = $"Bulkdelete by {currentActor.Username} ({currentActor.Id})."; await channel.DeleteMessagesAsync(toDelete, options); toDelete.Clear(); @@ -161,7 +161,7 @@ private async Task IterateAndDeleteChannels(ITextChannel channel, int limit if (toDelete.Count >= 2) { RequestOptions options = new(); - options.AuditLogReason = $"Bulkdelete by {currentActor.Username}#{currentActor.Discriminator} ({currentActor.Id})."; + options.AuditLogReason = $"Bulkdelete by {currentActor.Username} ({currentActor.Id})."; await channel.DeleteMessagesAsync(toDelete, options); toDelete.Clear(); diff --git a/backend/MASZ/Commands/CreateEvidenceCommand.cs b/backend/MASZ/Commands/CreateEvidenceCommand.cs index 34b3d2c21..e1b93bb66 100644 --- a/backend/MASZ/Commands/CreateEvidenceCommand.cs +++ b/backend/MASZ/Commands/CreateEvidenceCommand.cs @@ -30,7 +30,6 @@ public async Task CreateEvidence(IMessage message) UserId = reportedUser.Id, Username = reportedUser.Username, Nickname = reportedUser.Nickname, - Discriminator = reportedUser.Discriminator, ModId = Context.User.Id }; diff --git a/backend/MASZ/Commands/StatusCommand.cs b/backend/MASZ/Commands/StatusCommand.cs index fefe4f545..ee458400b 100644 --- a/backend/MASZ/Commands/StatusCommand.cs +++ b/backend/MASZ/Commands/StatusCommand.cs @@ -71,7 +71,7 @@ public async Task Status() var user = item.GetCurrentUser(); if (user != null) { - loggedInString.AppendLine($"{user.Username}#{user.Discriminator}"); + loggedInString.AppendLine($"{user.Username}"); loggedInCount++; } } diff --git a/backend/MASZ/Commands/TrackCommand.cs b/backend/MASZ/Commands/TrackCommand.cs index e679754af..0087de64d 100644 --- a/backend/MASZ/Commands/TrackCommand.cs +++ b/backend/MASZ/Commands/TrackCommand.cs @@ -113,7 +113,7 @@ public async Task Track([Summary("invite", "Either enter the invite code or the if (invitees.ContainsKey(invite.JoinedUserId)) { IUser user = invitees[invite.JoinedUserId]; - usedBy.Append($"`{user.Username}#{user.Discriminator}` "); + usedBy.Append($"`{user.Username}` "); } usedBy.AppendLine($"`{invite.JoinedUserId}` - {invite.JoinedAt.ToDiscordTS()}"); } diff --git a/backend/MASZ/Controllers/api/v1/AdminStatsController.cs b/backend/MASZ/Controllers/api/v1/AdminStatsController.cs index 49a2703d6..1f345ea0a 100644 --- a/backend/MASZ/Controllers/api/v1/AdminStatsController.cs +++ b/backend/MASZ/Controllers/api/v1/AdminStatsController.cs @@ -37,7 +37,7 @@ public async Task Status() } else { - currentLogins.Add($"{user.Username}#{user.Discriminator}"); + currentLogins.Add($"{user.Username}"); } } catch (Exception e) diff --git a/backend/MASZ/Controllers/api/v1/AppealController.cs b/backend/MASZ/Controllers/api/v1/AppealController.cs index 455b6d11f..d53f26221 100644 --- a/backend/MASZ/Controllers/api/v1/AppealController.cs +++ b/backend/MASZ/Controllers/api/v1/AppealController.cs @@ -175,7 +175,6 @@ public async Task CreateAppeal([FromRoute] ulong guildId, [FromBo Appeal appeal = new(); appeal.UserId = currentUser.Id; appeal.Username = currentUser.Username; - appeal.Discriminator = currentUser.Discriminator; appeal.Mail = string.Empty; appeal.GuildId = guildId; diff --git a/backend/MASZ/Controllers/api/v1/VerifiedEvidenceController.cs b/backend/MASZ/Controllers/api/v1/VerifiedEvidenceController.cs index 6f20d0cc0..a53a51127 100644 --- a/backend/MASZ/Controllers/api/v1/VerifiedEvidenceController.cs +++ b/backend/MASZ/Controllers/api/v1/VerifiedEvidenceController.cs @@ -108,7 +108,6 @@ public async Task CreateEvidence([FromRoute] ulong guildId, [From ReportedContent = message.Content, UserId = message.Author.Id, Username = message.Author.Username, - Discriminator = message.Author.Discriminator, Nickname = nickname, }; diff --git a/backend/MASZ/Controllers/api/v1/Views/ModCaseTableController.cs b/backend/MASZ/Controllers/api/v1/Views/ModCaseTableController.cs index 3555507c9..7222c9653 100644 --- a/backend/MASZ/Controllers/api/v1/Views/ModCaseTableController.cs +++ b/backend/MASZ/Controllers/api/v1/Views/ModCaseTableController.cs @@ -104,7 +104,6 @@ await _discordAPI.FetchUserInfo(c.UserId, CacheBehavior.OnlyCache) Contains(t.ModCase.Description, search.CustomTextFilter) || Contains(t.ModCase.GetPunishment(_translator), search.CustomTextFilter) || Contains(t.ModCase.Username, search.CustomTextFilter) || - Contains(t.ModCase.Discriminator, search.CustomTextFilter) || Contains(t.ModCase.Nickname, search.CustomTextFilter) || Contains(t.ModCase.UserId, search.CustomTextFilter) || Contains(t.ModCase.ModId, search.CustomTextFilter) || @@ -209,7 +208,7 @@ private static bool Contains(DiscordUserView obj, string search) { return false; } - return Contains(obj.Username, search) || Contains(obj.Discriminator, search); + return Contains(obj.Username, search); } } } \ No newline at end of file diff --git a/backend/MASZ/Controllers/api/v1/Views/VerifiedEvidenceTableController.cs b/backend/MASZ/Controllers/api/v1/Views/VerifiedEvidenceTableController.cs index 23244c37b..70db5176c 100644 --- a/backend/MASZ/Controllers/api/v1/Views/VerifiedEvidenceTableController.cs +++ b/backend/MASZ/Controllers/api/v1/Views/VerifiedEvidenceTableController.cs @@ -67,7 +67,7 @@ await _discordAPI.FetchUserInfo(e.ModId, CacheBehavior.OnlyCache) table = table.Where(t => Contains(t.VerifiedEvidence.ReportedContent, search.CustomTextFilter) || Contains(t.VerifiedEvidence.UserId, search.CustomTextFilter) || - Contains(t.VerifiedEvidence.Username + "#" + t.VerifiedEvidence.Discriminator, search.CustomTextFilter) || + Contains(t.VerifiedEvidence.Username, search.CustomTextFilter) || Contains(t.VerifiedEvidence.Nickname, search.CustomTextFilter) || Contains(t.VerifiedEvidence.ModId, search.CustomTextFilter) || Contains(t.VerifiedEvidence.ChannelId, search.CustomTextFilter) || @@ -124,7 +124,7 @@ private static bool Contains(DiscordUserView obj, string search) { return false; } - return Contains(obj.Username, search) || Contains(obj.Discriminator, search); + return Contains(obj.Username, search); } } } diff --git a/backend/MASZ/Dtos/AutoModerationEvent/AutoModerationEventForCreateDto.cs b/backend/MASZ/Dtos/AutoModerationEvent/AutoModerationEventForCreateDto.cs index 41b2b8147..47a58a94e 100644 --- a/backend/MASZ/Dtos/AutoModerationEvent/AutoModerationEventForCreateDto.cs +++ b/backend/MASZ/Dtos/AutoModerationEvent/AutoModerationEventForCreateDto.cs @@ -8,7 +8,6 @@ public class AutoModerationEventForCreateDto public AutoModerationType AutoModerationType { get; set; } public string Username { get; set; } public string Nickname { get; set; } - public string Discriminator { get; set; } public string MessageId { get; set; } public string ChannelId { get; set; } public string MessageContent { get; set; } diff --git a/backend/MASZ/Exceptions/EmbedCreator.cs b/backend/MASZ/Exceptions/EmbedCreator.cs index 033ef77a0..532bd7352 100644 --- a/backend/MASZ/Exceptions/EmbedCreator.cs +++ b/backend/MASZ/Exceptions/EmbedCreator.cs @@ -528,7 +528,7 @@ public static async Task CreateEmbedForNewAppeal(this Appeal appea embed.WithThumbnailUrl(actor.GetAvatarOrDefaultUrl()); } embed.Description = translator.T().NotificationAppealsCreate(appeal.UserId); - embed.Title = $"**{translator.T().NotificationAppealsAppeal().ToUpper()}** - {actor.Username}#{actor.Discriminator}"; + embed.Title = $"**{translator.T().NotificationAppealsAppeal().ToUpper()}** - {actor.Username}"; // Footer embed.WithFooter($"UserId: {appeal.UserId} | AppealId: {appeal.Id}"); @@ -549,7 +549,7 @@ public static async Task CreateEmbedForUpdatedAppeal(this Appeal a embed.WithThumbnailUrl(actor.GetAvatarOrDefaultUrl()); } embed.Description = translator.T().NotificationAppealsUpdate(appeal.UserId, actor.Id); - embed.Title = $"**{translator.T().NotificationAppealsAppeal().ToUpper()}** - {user?.Username ?? appeal.Username}#{user?.Discriminator ?? appeal.Discriminator}"; + embed.Title = $"**{translator.T().NotificationAppealsAppeal().ToUpper()}** - {user?.Username ?? appeal.Username}"; embed.AddField(translator.T().NotificationAppealsStatus(), translator.T().Enum(appeal.Status), false); diff --git a/backend/MASZ/MASZ.csproj b/backend/MASZ/MASZ.csproj index e4b492bed..509a96f2d 100644 --- a/backend/MASZ/MASZ.csproj +++ b/backend/MASZ/MASZ.csproj @@ -22,7 +22,7 @@ - + diff --git a/backend/MASZ/Models/Database/Appeal.cs b/backend/MASZ/Models/Database/Appeal.cs index 9b84ca92f..effe5ea27 100644 --- a/backend/MASZ/Models/Database/Appeal.cs +++ b/backend/MASZ/Models/Database/Appeal.cs @@ -9,7 +9,6 @@ public class Appeal public int Id { get; set; } public ulong UserId { get; set; } public string Username { get; set; } - public string Discriminator { get; set; } public string Mail { get; set; } public ulong GuildId { get; set; } public AppealStatus Status { get; set; } diff --git a/backend/MASZ/Models/Database/AutoModerationEvent.cs b/backend/MASZ/Models/Database/AutoModerationEvent.cs index 635f44c77..e95e5c61b 100644 --- a/backend/MASZ/Models/Database/AutoModerationEvent.cs +++ b/backend/MASZ/Models/Database/AutoModerationEvent.cs @@ -13,7 +13,6 @@ public class AutoModerationEvent public ulong UserId { get; set; } public string Username { get; set; } public string Nickname { get; set; } - public string Discriminator { get; set; } public ulong MessageId { get; set; } public string MessageContent { get; set; } public DateTime CreatedAt { get; set; } diff --git a/backend/MASZ/Models/Database/ModCase.cs b/backend/MASZ/Models/Database/ModCase.cs index 24cc6bf29..536fc2fe3 100644 --- a/backend/MASZ/Models/Database/ModCase.cs +++ b/backend/MASZ/Models/Database/ModCase.cs @@ -17,7 +17,6 @@ public class ModCase : ICloneable public string Description { get; set; } public ulong UserId { get; set; } public string Username { get; set; } - public string Discriminator { get; set; } public string Nickname { get; set; } public ulong ModId { get; set; } public DateTime CreatedAt { get; set; } diff --git a/backend/MASZ/Models/Database/VerifiedEvidence.cs b/backend/MASZ/Models/Database/VerifiedEvidence.cs index df70f5a16..a47e088b0 100644 --- a/backend/MASZ/Models/Database/VerifiedEvidence.cs +++ b/backend/MASZ/Models/Database/VerifiedEvidence.cs @@ -15,7 +15,6 @@ public class VerifiedEvidence public ulong UserId { get; set; } public string Username { get; set; } public string? Nickname { get; set; } - public string Discriminator { get; set; } public ulong ModId { get; set; } public DateTime SentAt { get; set; } public DateTime ReportedAt { get; set; } @@ -28,7 +27,7 @@ public string GetEmbedData(string baseUrl, IUser user) "" + $"" + $"" + - $"" + + $"" + $"" + $"" + ( user != null ? $"" : "") + diff --git a/backend/MASZ/Models/Views/AppealView.cs b/backend/MASZ/Models/Views/AppealView.cs index 6f26a3c61..032bbd8bc 100644 --- a/backend/MASZ/Models/Views/AppealView.cs +++ b/backend/MASZ/Models/Views/AppealView.cs @@ -9,7 +9,6 @@ public class AppealView public DiscordUserView User { get; set; } public string UserId { get; set; } public string Username { get; set; } - public string Discriminator { get; set; } public string Mail { get; set; } public string GuildId { get; set; } public AppealStatus Status { get; set; } @@ -29,7 +28,6 @@ public AppealView(Appeal appeal, IUser user, IUser lastModerator, List RegisterEvent(AutoModerationEvent modEven if (user != null) { modEvent.Username = user.Username; - modEvent.Discriminator = user.Discriminator; } modEvent.CreatedAt = DateTime.UtcNow; @@ -58,7 +57,6 @@ public async Task RegisterEvent(AutoModerationEvent modEven ModId = DiscordAPI.GetCurrentBotInfo().Id, UserId = user.Id, Username = user.Username, - Discriminator = user.Discriminator, }; StringBuilder description = new(); diff --git a/backend/MASZ/Repositories/BaseRepository.cs b/backend/MASZ/Repositories/BaseRepository.cs index b178f72b5..393aa73e6 100644 --- a/backend/MASZ/Repositories/BaseRepository.cs +++ b/backend/MASZ/Repositories/BaseRepository.cs @@ -68,7 +68,6 @@ protected bool Contains(ModCase obj, string search) Contains(obj.Description, search) || Contains(obj.GetPunishment(_translator), search) || Contains(obj.Username, search) || - Contains(obj.Discriminator, search) || Contains(obj.Nickname, search) || Contains(obj.UserId, search) || Contains(obj.ModId, search) || @@ -88,7 +87,6 @@ protected bool Contains(CaseView obj, string search) Contains(obj.Description, search) || Contains(obj.GetPunishment(_translator), search) || Contains(obj.Username, search) || - Contains(obj.Discriminator, search) || Contains(obj.Nickname, search) || Contains(obj.UserId, search) || Contains(obj.ModId, search) || @@ -107,7 +105,6 @@ protected bool Contains(AutoModerationEventView obj, string search) return Contains(obj.AutoModerationAction.ToString(), search) || Contains(obj.AutoModerationType.ToString(), search) || Contains(obj.CreatedAt, search) || - Contains(obj.Discriminator, search) || Contains(obj.Username, search) || Contains(obj.Nickname, search) || Contains(obj.UserId, search) || @@ -141,13 +138,13 @@ protected bool Contains(string[] obj, string search) protected bool Contains(IUser obj, string search) { if (obj == null) return false; - return Contains($"{obj.Username}#{obj.Discriminator}", search); + return Contains(obj.Username, search); } protected bool Contains(DiscordUserView obj, string search) { if (obj == null) return false; - return Contains($"{obj.Username}#{obj.Discriminator}", search); + return Contains(obj.Username, search); } } } \ No newline at end of file diff --git a/backend/MASZ/Repositories/ModCaseRepository.cs b/backend/MASZ/Repositories/ModCaseRepository.cs index 8317a1c3e..95c0b642a 100644 --- a/backend/MASZ/Repositories/ModCaseRepository.cs +++ b/backend/MASZ/Repositories/ModCaseRepository.cs @@ -128,7 +128,6 @@ public async Task CreateModCase(ModCase modCase, bool handlePunishment, } modCase.Username = currentReportedUser.Username; - modCase.Discriminator = currentReportedUser.Discriminator; IGuildUser currentReportedMember = await DiscordAPI.FetchMemberInfo(modCase.GuildId, modCase.UserId, CacheBehavior.IgnoreButCacheOnError); if (currentReportedMember != null) @@ -272,7 +271,6 @@ public async Task UpdateModCase(ModCase modCase, bool handlePunishment, } modCase.Username = currentReportedUser.Username; - modCase.Discriminator = currentReportedUser.Discriminator; IGuildUser currentReportedMember = await DiscordAPI.FetchMemberInfo(modCase.GuildId, modCase.UserId, CacheBehavior.IgnoreButCacheOnError); if (currentReportedMember != null) diff --git a/backend/MASZ/Services/AuditLogger.cs b/backend/MASZ/Services/AuditLogger.cs index 95b4f857f..7f1a38de6 100644 --- a/backend/MASZ/Services/AuditLogger.cs +++ b/backend/MASZ/Services/AuditLogger.cs @@ -262,7 +262,7 @@ private Task OnIdentityRegistered(Identity identity) if (identity is DiscordOAuthIdentity dOauth) { IUser currentUser = dOauth.GetCurrentUser(); - string userDefinition = $"`{currentUser.Username}#{currentUser.Discriminator}` (`{currentUser.Id}`)"; + string userDefinition = $"`{currentUser.Username}` (`{currentUser.Id}`)"; QueueLog($"{userDefinition} **logged in** using OAuth."); } diff --git a/backend/MASZ/Services/DiscordBot.cs b/backend/MASZ/Services/DiscordBot.cs index fafd17d8f..0fec18a96 100644 --- a/backend/MASZ/Services/DiscordBot.cs +++ b/backend/MASZ/Services/DiscordBot.cs @@ -668,7 +668,7 @@ private async Task GuildMemberAddedHandler(SocketGuildUser member) UsedInvite = $"https://discord.gg/{usedInvite.Code}" }; - _logger.LogInformation($"User {member.Username}#{member.Discriminator} joined guild {member.Guild.Name} with ID: {member.Guild.Id} using invite {usedInvite.Code}"); + _logger.LogInformation($"User {member.Username} joined guild {member.Guild.Name} with ID: {member.Guild.Id} using invite {usedInvite.Code}"); if (guildConfig.ExecuteWhoisOnJoin && !string.IsNullOrEmpty(guildConfig.ModInternalNotificationWebhook)) { @@ -731,7 +731,7 @@ private async Task CmdErroredHandler(IApplicationCommandInfo info, IInteractionC { if (eResult.Exception is BaseAPIException apiException) { - _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}#{context.User.Discriminator}' failed: {(eResult.Exception as BaseAPIException).Error}"); + _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}' failed: {(eResult.Exception as BaseAPIException).Error}"); using var scope = _serviceProvider.CreateScope(); Translator translator = scope.ServiceProvider.GetRequiredService(); @@ -768,11 +768,11 @@ await context.Interaction.ModifyOriginalResponseAsync(m => } else { - _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}#{context.User.Discriminator}' failed: " + eResult.Exception.Message + "\n" + eResult.Exception.StackTrace); + _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}' failed: " + eResult.Exception.Message + "\n" + eResult.Exception.StackTrace); } } else - _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}#{context.User.Discriminator}' failed due to {result.Error}."); + _logger.LogError($"Command '{info.Name}' invoked by '{context.User.Username}' failed due to {result.Error}."); } } } diff --git a/backend/MASZ/Services/GuildAuditLogger.cs b/backend/MASZ/Services/GuildAuditLogger.cs index 2bb84a0a8..95b986dc0 100644 --- a/backend/MASZ/Services/GuildAuditLogger.cs +++ b/backend/MASZ/Services/GuildAuditLogger.cs @@ -218,7 +218,7 @@ public async Task HandleAvatarUpdated(IGuildUser oldU, IGuildUser newU, ulong gu await translator.SetContext(guildId); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username}#{newU.Discriminator} - {newU.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username} - {newU.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{newU.Id}`"); var embed = new EmbedBuilder() @@ -248,7 +248,7 @@ public async Task HandleNicknameUpdated(IGuildUser oldU, IGuildUser newU, ulong await translator.SetContext(guildId); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username}#{newU.Discriminator} - {newU.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username} - {newU.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{newU.Id}`"); var embed = new EmbedBuilder() @@ -277,7 +277,7 @@ public async Task HandleMemberRolesUpdated(IGuildUser user, IReadOnlyCollection< await translator.SetContext(guildId); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{user.Id}`"); var embed = new EmbedBuilder() @@ -322,7 +322,7 @@ public async Task HandleUsernameUpdated(SocketUser oldU, SocketUser newU) await translator.SetContext(guild.Id); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username}#{newU.Discriminator} - {newU.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {newU.Username} - {newU.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{newU.Id}`"); var embed = new EmbedBuilder() @@ -377,7 +377,7 @@ private async Task HandleReactionRemoved(Cacheable message, await translator.SetContext(guildChannel.GuildId); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {reaction.User.Value.Username}#{reaction.User.Value.Discriminator} - {reaction.User.Value.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {reaction.User.Value.Username} - {reaction.User.Value.Mention}"); if (message.HasValue) { description.AppendLine($"> **{translator.T().GuildAuditLogMessage()}:** [{message.Id}]({message.Value.GetJumpUrl()})"); @@ -429,7 +429,7 @@ private async Task HandleReactionAdded(Cacheable message, C await translator.SetContext(guildChannel.GuildId); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {reaction.User.Value.Username}#{reaction.User.Value.Discriminator} - {reaction.User.Value.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {reaction.User.Value.Username} - {reaction.User.Value.Mention}"); if (message.HasValue) { description.AppendLine($"> **{translator.T().GuildAuditLogMessage()}:** [{message.Id}]({message.Value.GetJumpUrl()})"); @@ -509,7 +509,7 @@ private async Task HandleVoiceStateUpdated(SocketUser user, SocketVoiceState voi } StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); if (eventType == GuildAuditLogEvent.VoiceJoined) { @@ -558,7 +558,7 @@ public async Task HandleBanAdded(SocketUser user, SocketGuild guild) await translator.SetContext(guild.Id); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); var embed = new EmbedBuilder() .WithTitle(translator.T().GuildAuditLogBanAddedTitle()) @@ -577,7 +577,7 @@ public async Task HandleBanRemoved(SocketUser user, SocketGuild guild) await translator.SetContext(guild.Id); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); var embed = new EmbedBuilder() .WithTitle(translator.T().GuildAuditLogBanRemovedTitle()) @@ -601,7 +601,7 @@ public async Task HandleInviteCreated(SocketInvite invite) description.AppendLine($"> **{translator.T().GuildAuditLogInviteCreatedURL()}:** {invite}"); if (invite.Inviter != null) { - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {invite.Inviter.Username}#{invite.Inviter.Discriminator} - {invite.Inviter.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {invite.Inviter.Username} - {invite.Inviter.Mention}"); embed.WithAuthor(invite.Inviter) .WithFooter($"{translator.T().GuildAuditLogUserID()}: {invite.Inviter.Id}"); } @@ -652,7 +652,7 @@ public async Task HandleInviteDeleted(SocketGuildChannel channel, string tracker if (inviter != null) { - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {inviter.Username}#{inviter.Discriminator} - {inviter.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {inviter.Username} - {inviter.Mention}"); embed.WithAuthor(inviter) .WithFooter($"{translator.T().GuildAuditLogUserID()}: {inviter.Id}"); } @@ -680,7 +680,7 @@ public async Task HandleUserJoined(SocketGuildUser user) await translator.SetContext(user.Guild.Id); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{user.Id}`"); description.AppendLine($"> **{translator.T().GuildAuditLogMemberJoinedRegistered()}:** {user.CreatedAt.DateTime.ToDiscordTS()}"); @@ -701,7 +701,7 @@ public async Task HandleUserRemoved(SocketGuild guild, SocketUser user) await translator.SetContext(guild.Id); StringBuilder description = new(); - description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username}#{user.Discriminator} - {user.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogUser()}:** {user.Username} - {user.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** `{user.Id}`"); description.AppendLine($"> **{translator.T().GuildAuditLogMemberJoinedRegistered()}:** {user.CreatedAt.DateTime.ToDiscordTS()}"); @@ -775,7 +775,7 @@ public async Task HandleMessageDeleted(Cacheable messageCached, if (message.Author != null) { - description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {message.Author.Username}#{message.Author.Discriminator} - {message.Author.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {message.Author.Username} - {message.Author.Mention}"); embed.WithAuthor(message.Author) .WithFooter($"{translator.T().GuildAuditLogUserID()}: {message.Author.Id}"); } @@ -864,7 +864,7 @@ public async Task HandleMessageSent(IMessage message) StringBuilder description = new(); description.AppendLine($"> **{translator.T().GuildAuditLogChannel()}:** {tchannel.Name} - {tchannel.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** [{message.Id}]({message.GetJumpUrl()})"); - description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {message.Author.Username}#{message.Author.Discriminator} - {message.Author.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {message.Author.Username} - {message.Author.Mention}"); var embed = new EmbedBuilder() .WithTitle(translator.T().GuildAuditLogMessageSentTitle()) @@ -948,7 +948,7 @@ public async Task HandleMessageUpdated(Cacheable _messageBefore StringBuilder description = new(); description.AppendLine($"> **{translator.T().GuildAuditLogChannel()}:** {tchannel.Name} - {tchannel.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogID()}:** [{messageAfter.Id}]({messageAfter.GetJumpUrl()})"); - description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {messageAfter.Author.Username}#{messageAfter.Author.Discriminator} - {messageAfter.Author.Mention}"); + description.AppendLine($"> **{translator.T().GuildAuditLogAuthor()}:** {messageAfter.Author.Username} - {messageAfter.Author.Mention}"); description.AppendLine($"> **{translator.T().GuildAuditLogCreated()}:** {messageAfter.CreatedAt.UtcDateTime.ToDiscordTS()}"); var embed = new EmbedBuilder() diff --git a/backend/MASZ/Services/Scheduler.cs b/backend/MASZ/Services/Scheduler.cs index 1a885ee1a..317cde8d8 100644 --- a/backend/MASZ/Services/Scheduler.cs +++ b/backend/MASZ/Services/Scheduler.cs @@ -66,7 +66,6 @@ private async Task HandleGuildRegister(GuildConfig guildConfig, IUser user, bool UserId = ban.User.Id, Username = ban.User.Username, Labels = new[] { translator.T().Imported() }, - Discriminator = ban.User.Discriminator, CreationType = CaseCreationType.Imported, PunishmentType = PunishmentType.Ban, PunishedUntil = null diff --git a/backend/MASZ/Utils/Translation.cs b/backend/MASZ/Utils/Translation.cs index ef149e3f8..464f85117 100644 --- a/backend/MASZ/Utils/Translation.cs +++ b/backend/MASZ/Utils/Translation.cs @@ -2316,84 +2316,84 @@ public string NotificationModcaseCreatePublic(ModCase modCase) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde erstellt.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is erstöt woan.", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé.", - Language.es => $"Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан.", - Language.it => $"È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created.", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde erstellt.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is erstöt woan.", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été créé.", + Language.es => $"Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был создан.", + Language.it => $"È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}).", + Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}).", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been created.", }; } public string NotificationModcaseCreateInternal(ModCase modCase, IUser moderator) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) erstellt.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) woad fo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) erstöt.", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé par <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido creado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato creato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) erstellt.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) woad fo <@{moderator.Id}> ({moderator.Username}) erstöt.", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été créé par <@{moderator.Id}> ({moderator.Username}).", + Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido creado por <@{moderator.Id}> ({moderator.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был создан <@{moderator.Id}> ({moderator.Username}).", + Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato creato da <@{moderator.Id}> ({moderator.Username}).", + Language.nl => $"Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}) door <@{moderator.Id}> ({moderator.Username}).", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been created by <@{moderator.Id}> ({moderator.Username}).", }; } public string NotificationModcaseUpdatePublic(ModCase modCase) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde aktualisiert.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is aktualisiert woan.", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour.", - Language.es => $"Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен.", - Language.it => $"È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt.", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated.", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde aktualisiert.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is aktualisiert woan.", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été mis à jour.", + Language.es => $"Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был обновлен.", + Language.it => $"È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is bijgewerkt.", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been updated.", }; } public string NotificationModcaseUpdateInternal(ModCase modCase, IUser moderator) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) aktualisiert.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is fo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) aktualisiert woan.", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", - Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) aktualisiert.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is fo <@{moderator.Id}> ({moderator.Username}) aktualisiert woan.", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été mis à jour par <@{moderator.Id}> ({moderator.Username}).", + Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был обновлен <@{moderator.Id}> ({moderator.Username}).", + Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username}).", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been updated by <@{moderator.Id}> ({moderator.Username}).", }; } public string NotificationModcaseDeletePublic(ModCase modCase) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde gelöscht.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is glescht woan", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé.", - Language.es => $"Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален.", - Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato.", - Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd.", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted.", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde gelöscht.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is glescht woan", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été supprimé.", + Language.es => $"Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был удален.", + Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato eliminato.", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is verwijderd.", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been deleted.", }; } public string NotificationModcaseDeleteInternal(ModCase modCase, IUser moderator) { return PreferredLanguage switch { - Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) gelöscht.", - Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is vo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) glescht woan.", - Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", - Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", + Language.de => $"Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) gelöscht.", + Language.at => $"A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is vo <@{moderator.Id}> ({moderator.Username}) glescht woan.", + Language.fr => $"Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été supprimé par <@{moderator.Id}> ({moderator.Username}).", + Language.es => $"Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}).", + Language.ru => $"**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был удален <@{moderator.Id}> ({moderator.Username}).", + Language.it => $"Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}).", + Language.nl => $"Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is verwijderd door <@{moderator.Id}> ({moderator.Username}).", + _ => $"A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been deleted by <@{moderator.Id}> ({moderator.Username}).", }; } public string NotificationModcaseCommentsShortCreate() @@ -2484,42 +2484,42 @@ public string NotificationModcaseFileCreate(IUser actor) { return PreferredLanguage switch { - Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) hochgeladen.", - Language.at => $"A **Datei** woad vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) hochglodn.", - Language.fr => $"Un **fichier** a été téléchargé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator} ha subido un **archivo**).", - Language.ru => $"**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.it => $"Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.nl => $"Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - _ => $"A **file** has been uploaded by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) hochgeladen.", + Language.at => $"A **Datei** woad vo <@{actor.Id}> ({actor.Username}) hochglodn.", + Language.fr => $"Un **fichier** a été téléchargé par <@{actor.Id}> ({actor.Username}).", + Language.es => $"<@{actor.Id}> ({actor.Username} ha subido un **archivo**).", + Language.ru => $"**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}).", + Language.it => $"Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}).", + Language.nl => $"Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username}).", + _ => $"A **file** has been uploaded by <@{actor.Id}> ({actor.Username}).", }; } public string NotificationModcaseFileDelete(IUser actor) { return PreferredLanguage switch { - Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) gelöscht.", - Language.at => $"A **Datei** is vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) glescht woan.", - Language.fr => $"Un **fichier** a été supprimé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha eliminado un **archivo**.", - Language.ru => $"**файл** был удален <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.it => $"Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.nl => $"Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - _ => $"A **file** has been deleted by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) gelöscht.", + Language.at => $"A **Datei** is vo <@{actor.Id}> ({actor.Username}) glescht woan.", + Language.fr => $"Un **fichier** a été supprimé par <@{actor.Id}> ({actor.Username}).", + Language.es => $"<@{actor.Id}> ({actor.Username}) ha eliminado un **archivo**.", + Language.ru => $"**файл** был удален <@{actor.Id}> ({actor.Username}).", + Language.it => $"Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}).", + Language.nl => $"Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username}).", + _ => $"A **file** has been deleted by <@{actor.Id}> ({actor.Username}).", }; } public string NotificationModcaseFileUpdate(IUser actor) { return PreferredLanguage switch { - Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) aktualisiert.", - Language.at => $"A **Datei** is vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) aktualisiert woan.", - Language.fr => $"Un **fichier** a été mis à jour par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.es => $"<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha actualizado un **archivo**.", - Language.ru => $"**файл** был обновлен <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.it => $"Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - Language.nl => $"Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - _ => $"A **file** has been updated by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", + Language.de => $"Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) aktualisiert.", + Language.at => $"A **Datei** is vo <@{actor.Id}> ({actor.Username}) aktualisiert woan.", + Language.fr => $"Un **fichier** a été mis à jour par <@{actor.Id}> ({actor.Username}).", + Language.es => $"<@{actor.Id}> ({actor.Username}) ha actualizado un **archivo**.", + Language.ru => $"**файл** был обновлен <@{actor.Id}> ({actor.Username}).", + Language.it => $"Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}).", + Language.nl => $"Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username}).", + _ => $"A **file** has been updated by <@{actor.Id}> ({actor.Username}).", }; } public string NotificationModcaseDMWarn(IGuild guild, string serviceBaseUrl) @@ -2820,14 +2820,14 @@ public string NotificationAutomoderationCase(IUser user) { return PreferredLanguage switch { - Language.de => $"{user.Username}#{user.Discriminator} hat die Automoderation ausgelöst.", - Language.at => $"{user.Username}#{user.Discriminator} hot de Automodaration ausglest.", - Language.fr => $"{user.Username}#{user.Discriminator} a déclenché la modération automatique.", - Language.es => $"{user.Username}#{user.Discriminator} desencadenó la automoderación.", - Language.ru => $"{user.Username}#{user.Discriminator} запускает автомодерацию.", - Language.it => $"{user.Username}#{user.Discriminator} ha attivato la moderazione automatica.", - Language.nl => $"{user.Username}#{user.Discriminator} leidde tot automatisering.", - _ => $"{user.Username}#{user.Discriminator} triggered automoderation.", + Language.de => $"{user.Username} hat die Automoderation ausgelöst.", + Language.at => $"{user.Username} hot de Automodaration ausglest.", + Language.fr => $"{user.Username} a déclenché la modération automatique.", + Language.es => $"{user.Username} desencadenó la automoderación.", + Language.ru => $"{user.Username} запускает автомодерацию.", + Language.it => $"{user.Username} ha attivato la moderazione automatica.", + Language.nl => $"{user.Username} leidde tot automatisering.", + _ => $"{user.Username} triggered automoderation.", }; } public string NotificationAutomoderationDM(IUser user, IMentionable channel, string reason, string action) diff --git a/nginx/masz-svelte/src/components/api/Feedback.svelte b/nginx/masz-svelte/src/components/api/Feedback.svelte index 90de3512d..98e2474e8 100644 --- a/nginx/masz-svelte/src/components/api/Feedback.svelte +++ b/nginx/masz-svelte/src/components/api/Feedback.svelte @@ -31,7 +31,7 @@ rating: 1, comment: "", remote: window.location.host, - user: $authUser.discordUser.username + "#" + $authUser.discordUser.discriminator, + user: $authUser.discordUser.username, }); }, 200); } @@ -40,7 +40,7 @@ submitting.set(true); API.post("/meta/feedback", { ...$feedback, - user: $authUser.discordUser.username + "#" + $authUser.discordUser.discriminator, + user: $authUser.discordUser.username, }).finally(() => { toastSuccess($_("feedback.thanks")); onModalClear(); diff --git a/nginx/masz-svelte/src/components/discord/UserIcon.svelte b/nginx/masz-svelte/src/components/discord/UserIcon.svelte index 0b5b07429..dc94381a8 100644 --- a/nginx/masz-svelte/src/components/discord/UserIcon.svelte +++ b/nginx/masz-svelte/src/components/discord/UserIcon.svelte @@ -12,7 +12,7 @@ function calculateImage(newUser) { if (newUser && typeof newUser === "object") { - alt = `${newUser.username}#${newUser.discriminator}`; + alt = newUser.username; src = newUser.imageUrl; } else { alt = "user avatar"; diff --git a/nginx/masz-svelte/src/components/guilds/appeals/AppealTable.svelte b/nginx/masz-svelte/src/components/guilds/appeals/AppealTable.svelte index 757cc07b5..15d37ac56 100644 --- a/nginx/masz-svelte/src/components/guilds/appeals/AppealTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/appeals/AppealTable.svelte @@ -94,7 +94,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -257,7 +257,7 @@
- {appeal.user?.username ?? appeal.username}#{appeal.user?.discriminator ?? appeal.discriminator} + {appeal.user?.username ?? appeal.username}
diff --git a/nginx/masz-svelte/src/components/guilds/appeals/AppealView.svelte b/nginx/masz-svelte/src/components/guilds/appeals/AppealView.svelte index a031ae3fc..16e0f0d73 100644 --- a/nginx/masz-svelte/src/components/guilds/appeals/AppealView.svelte +++ b/nginx/masz-svelte/src/components/guilds/appeals/AppealView.svelte @@ -107,7 +107,7 @@ {:else}

- {$appeal?.user?.username ?? $appeal?.username}#{$appeal?.user?.discriminator ?? $appeal?.discriminator} + {$appeal?.user?.username ?? $appeal?.username}

diff --git a/nginx/masz-svelte/src/components/guilds/automods/AutomodTable.svelte b/nginx/masz-svelte/src/components/guilds/automods/AutomodTable.svelte index 5f1d31b82..c8879a378 100644 --- a/nginx/masz-svelte/src/components/guilds/automods/AutomodTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/automods/AutomodTable.svelte @@ -98,7 +98,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -268,7 +268,7 @@
- {event.username}#{event.discriminator} + {event.username}
{event.createdAt?.format($currentLanguage?.momentDateTimeFormat ?? "MMMM Do YYYY, h:mm:ss")} diff --git a/nginx/masz-svelte/src/components/guilds/cases/CaseTable.svelte b/nginx/masz-svelte/src/components/guilds/cases/CaseTable.svelte index 0edbeb49a..62a7febdc 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/CaseTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/CaseTable.svelte @@ -105,7 +105,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -323,8 +323,7 @@
- {caseView.suspect?.username ?? caseView.modCase.username}#{caseView.suspect?.discriminator ?? - caseView.modCase.discriminator} + {caseView.suspect?.username ?? caseView.modCase.username}
diff --git a/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte b/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte index 169fee1f9..93a7da90d 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/CaseView.svelte @@ -185,9 +185,6 @@ .replace(/\n/gm, "
") .replace(/#([\d]+)/gm, (match) => { const id = match.substring(1); - if (id == $modCase.modCase.discriminator || id == ($modCase.suspect?.discriminator ?? '')) { - return match; - } return `#${id}` }); } @@ -716,8 +713,7 @@
- {evidence.reported?.username ?? evidence.verifiedEvidence.username}#{evidence.reported?.discriminator ?? - evidence.verifiedEvidence.discriminator} + {evidence.reported?.username ?? evidence.verifiedEvidence.username}
@@ -986,7 +982,7 @@ subtitle={$modCase?.deletedBy ? $_("guilds.caseview.markedtodeletesubtitle", { values: { - user: $modCase?.deletedBy?.username + "#" + $modCase?.deletedBy?.discriminator, + user: $modCase?.deletedBy?.username, }, }) : ""} /> @@ -1135,7 +1131,7 @@
-
{evidence.username}#{evidence.discriminator}
+
{evidence.username}
{evidence.sentAt.format( $currentLanguage?.momentDateTimeFormat ?? "MMMM Do YYYY, h:mm:ss" )}
@@ -1198,7 +1194,7 @@
{#if comment.commentor} -
{comment.commentor.username}#{comment.commentor.discriminator}
+
{comment.commentor.username}
{:else}
The moderators
{/if} @@ -1312,8 +1308,7 @@
- {$modCase.suspect?.username ?? $modCase.modCase.username}#{$modCase.suspect?.discriminator ?? - $modCase.modCase.discriminator} + {$modCase.suspect?.username ?? $modCase.modCase.username}
({$modCase.modCase.userId}) @@ -1378,7 +1373,7 @@
{#if $modCase.moderator}
- {$modCase.moderator?.username}#{$modCase.moderator?.discriminator} + {$modCase.moderator?.username}
{/if}
@@ -1403,7 +1398,7 @@
{#if $modCase.lastModerator}
- {$modCase.lastModerator?.username}#{$modCase.lastModerator?.discriminator} + {$modCase.lastModerator?.username}
{/if}
diff --git a/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte b/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte index 9d155c509..06b6090b0 100644 --- a/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte +++ b/nginx/masz-svelte/src/components/guilds/cases/NewCase.svelte @@ -146,7 +146,7 @@ .then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); membersLoading = false; }) @@ -157,7 +157,7 @@ .then((response: ITemplateView[]) => { templates = response.map((x) => ({ id: x.caseTemplate.id.toString(), - text: `"${x.caseTemplate.templateName}" by ${x.creator.username}#${x.creator.discriminator} from ${ + text: `"${x.caseTemplate.templateName}" by ${x.creator.username} from ${ x.guild?.name ?? "Unknown guild" }`, obj: x, @@ -456,8 +456,7 @@
- {evidence.reported?.username ?? evidence.verifiedEvidence.username}#{evidence.reported?.discriminator ?? - evidence.verifiedEvidence.discriminator} + {evidence.reported?.username ?? evidence.verifiedEvidence.username}
@@ -635,7 +634,7 @@ #{evidence.verifiedEvidence.id}
- {evidence.verifiedEvidence.username}#{evidence.verifiedEvidence.discriminator} + {evidence.verifiedEvidence.username}
{evidence.verifiedEvidence.reportedContent} diff --git a/nginx/masz-svelte/src/components/guilds/dashboard/LatestAppeals.svelte b/nginx/masz-svelte/src/components/guilds/dashboard/LatestAppeals.svelte index 8212efe8c..186b56ba1 100644 --- a/nginx/masz-svelte/src/components/guilds/dashboard/LatestAppeals.svelte +++ b/nginx/masz-svelte/src/components/guilds/dashboard/LatestAppeals.svelte @@ -47,7 +47,7 @@ {/if} - {appeal.user?.username || appeal.username}#{appeal.user?.discriminator || appeal.discriminator} + {appeal.user?.username || appeal.username}
diff --git a/nginx/masz-svelte/src/components/guilds/evidence/EvidenceTable.svelte b/nginx/masz-svelte/src/components/guilds/evidence/EvidenceTable.svelte index 22fac6b9d..5fa4dc03c 100644 --- a/nginx/masz-svelte/src/components/guilds/evidence/EvidenceTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/evidence/EvidenceTable.svelte @@ -74,7 +74,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -235,8 +235,7 @@
- {evidenceView.reported?.username ?? evidenceView.reported.username}#{evidenceView.reported?.discriminator ?? - evidenceView.verifiedEvidence.discriminator} + {evidenceView.reported?.username ?? evidenceView.reported.username}
diff --git a/nginx/masz-svelte/src/components/guilds/evidence/EvidenceView.svelte b/nginx/masz-svelte/src/components/guilds/evidence/EvidenceView.svelte index 453fdbc85..4249b9765 100644 --- a/nginx/masz-svelte/src/components/guilds/evidence/EvidenceView.svelte +++ b/nginx/masz-svelte/src/components/guilds/evidence/EvidenceView.svelte @@ -393,8 +393,7 @@
- {$evidence.reported?.username ?? $evidence.evidence.username}#{$evidence.reported?.discriminator ?? - $evidence.evidence.discriminator} + {$evidence.reported?.username ?? $evidence.evidence.username}
({$evidence.evidence.userId}) @@ -414,7 +413,7 @@
{#if $evidence.moderator}
- {$evidence.moderator?.username}#{$evidence.moderator?.discriminator} + {$evidence.moderator?.username}
{/if}
diff --git a/nginx/masz-svelte/src/components/guilds/messages/ScheduledMessages.svelte b/nginx/masz-svelte/src/components/guilds/messages/ScheduledMessages.svelte index 98956af6f..e090579ba 100644 --- a/nginx/masz-svelte/src/components/guilds/messages/ScheduledMessages.svelte +++ b/nginx/masz-svelte/src/components/guilds/messages/ScheduledMessages.svelte @@ -368,7 +368,7 @@
{/if}
- {message.lastEdited?.username}#{message.lastEdited?.discriminator} + {message.lastEdited?.username}
{message.scheduledFor diff --git a/nginx/masz-svelte/src/components/guilds/usermaps/UsermapTable.svelte b/nginx/masz-svelte/src/components/guilds/usermaps/UsermapTable.svelte index 11a590883..294332448 100644 --- a/nginx/masz-svelte/src/components/guilds/usermaps/UsermapTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/usermaps/UsermapTable.svelte @@ -70,7 +70,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -252,7 +252,7 @@
{#if usermap.userA} - {usermap.userA.username}#{usermap.userA.discriminator} + {usermap.userA.username} {:else} {usermap.userMapping.userA} {/if} @@ -260,7 +260,7 @@
{#if usermap.userB} - {usermap.userB.username}#{usermap.userB.discriminator} + {usermap.userB.username} {:else} {usermap.userMapping.userB} {/if} diff --git a/nginx/masz-svelte/src/components/guilds/usernotes/UsernoteTable.svelte b/nginx/masz-svelte/src/components/guilds/usernotes/UsernoteTable.svelte index 0dd5a6a67..e0a408d8b 100644 --- a/nginx/masz-svelte/src/components/guilds/usernotes/UsernoteTable.svelte +++ b/nginx/masz-svelte/src/components/guilds/usernotes/UsernoteTable.svelte @@ -69,7 +69,7 @@ API.get(`/discord/guilds/${$currentParams.guildId}/members`, CacheMode.PREFER_CACHE, true).then((response: IDiscordUser[]) => { members = response.map((x) => ({ id: x.id, - text: `${x.username}#${x.discriminator}`, + text: x.username, })); }); } @@ -229,7 +229,7 @@
{#if note.user} - {note.user.username}#{note.user.discriminator} + {note.user.username} {:else} {note.userNote.userId} {/if} diff --git a/nginx/masz-svelte/src/models/api/IAppealView.ts b/nginx/masz-svelte/src/models/api/IAppealView.ts index 22078d822..3062d714f 100644 --- a/nginx/masz-svelte/src/models/api/IAppealView.ts +++ b/nginx/masz-svelte/src/models/api/IAppealView.ts @@ -10,7 +10,6 @@ export interface IAppealView { user?: IDiscordUser; userId: string; username: string; - discriminator: string; mail?: string; guildId: number; status: AppealStatus; diff --git a/nginx/masz-svelte/src/models/api/IAutomodEntry.ts b/nginx/masz-svelte/src/models/api/IAutomodEntry.ts index 06074db1d..924ac1460 100644 --- a/nginx/masz-svelte/src/models/api/IAutomodEntry.ts +++ b/nginx/masz-svelte/src/models/api/IAutomodEntry.ts @@ -10,7 +10,6 @@ export interface IAutomodEntry { userId: string; username: string; nickname?: any; - discriminator: string; messageId: string; messageContent: string; createdAt: moment.Moment; diff --git a/nginx/masz-svelte/src/models/api/ICase.ts b/nginx/masz-svelte/src/models/api/ICase.ts index 53d477a5f..fadbaa9c7 100644 --- a/nginx/masz-svelte/src/models/api/ICase.ts +++ b/nginx/masz-svelte/src/models/api/ICase.ts @@ -9,7 +9,6 @@ export interface ICase { description: string; userId: string; username: string; - discriminator?: string; nickname?: string; modId?: string; createdAt: moment.Moment; diff --git a/nginx/masz-svelte/src/models/api/IVerifiedEvidence.ts b/nginx/masz-svelte/src/models/api/IVerifiedEvidence.ts index a7b9a620c..2bd224f6b 100644 --- a/nginx/masz-svelte/src/models/api/IVerifiedEvidence.ts +++ b/nginx/masz-svelte/src/models/api/IVerifiedEvidence.ts @@ -9,7 +9,6 @@ export interface IVerifiedEvidence { userId: string; username: string; nickname?: string; - discriminator: string; modId: string; sentAt: moment.Moment; reportedAt: moment.Moment; diff --git a/nginx/masz-svelte/src/models/discord/IDiscordUser.ts b/nginx/masz-svelte/src/models/discord/IDiscordUser.ts index 8b2c72649..d2f4954a1 100644 --- a/nginx/masz-svelte/src/models/discord/IDiscordUser.ts +++ b/nginx/masz-svelte/src/models/discord/IDiscordUser.ts @@ -1,7 +1,6 @@ export interface IDiscordUser { id: string; username: string; - discriminator: string; imageUrl: string; locale: string; avatar: string; diff --git a/translations/backend.json b/translations/backend.json index f10ef2fd7..e8b5b7bb0 100644 --- a/translations/backend.json +++ b/translations/backend.json @@ -1960,14 +1960,14 @@ "var_types": { "modCase": "ModCase" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created.", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde erstellt.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is erstöt woan.", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé.", - "es": "Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан.", - "it": "È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator})." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been created.", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde erstellt.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is erstöt woan.", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été créé.", + "es": "Se ha creado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был создан.", + "it": "È stato creato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}).", + "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username})." }, "Internal": { "description": "Webhook notification for modcase creation. This does disclose information about the moderator.", @@ -1975,14 +1975,14 @@ "modCase": "ModCase", "moderator": "IUser" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been created by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) erstellt.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) woad fo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) erstöt.", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été créé par <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido creado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был создан <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato creato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been created by <@{moderator.Id}> ({moderator.Username}).", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) erstellt.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) woad fo <@{moderator.Id}> ({moderator.Username}) erstöt.", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été créé par <@{moderator.Id}> ({moderator.Username}).", + "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido creado por <@{moderator.Id}> ({moderator.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был создан <@{moderator.Id}> ({moderator.Username}).", + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato creato da <@{moderator.Id}> ({moderator.Username}).", + "nl": "Er is een **Modcase** gemaakt voor <@{modCase.UserId}> ({modCase.Username}) door <@{moderator.Id}> ({moderator.Username})." } }, "Update": { @@ -1991,14 +1991,14 @@ "var_types": { "modCase": "ModCase" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated.", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde aktualisiert.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is aktualisiert woan.", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour.", - "es": "Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен.", - "it": "È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been updated.", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde aktualisiert.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is aktualisiert woan.", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été mis à jour.", + "es": "Se ha actualizado **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был обновлен.", + "it": "È stato aggiornato un **Modcase** per <@{modCase.UserId}> ({modCase.Username}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is bijgewerkt." }, "Internal": { "description": "Webhook notification for modcase update. This does disclose information about the moderator.", @@ -2006,14 +2006,14 @@ "modCase": "ModCase", "moderator": "IUser" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been updated by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) aktualisiert.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is fo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) aktualisiert woan.", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été mis à jour par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", - "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был обновлен <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been updated by <@{moderator.Id}> ({moderator.Username}).", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) aktualisiert.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is fo <@{moderator.Id}> ({moderator.Username}) aktualisiert woan.", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été mis à jour par <@{moderator.Id}> ({moderator.Username}).", + "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido actualizado por <@{moderator.Id}> ({moderator.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был обновлен <@{moderator.Id}> ({moderator.Username}).", + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato aggiornato da <@{moderator.Id}> ({moderator.Username}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is bijgewerkt door <@{moderator.Id}> ({moderator.Username})." } }, "Delete": { @@ -2022,14 +2022,14 @@ "var_types": { "modCase": "ModCase" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted.", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde gelöscht.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is glescht woan", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé.", - "es": "Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален.", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato.", - "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been deleted.", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde gelöscht.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is glescht woan", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été supprimé.", + "es": "Se ha eliminado un **Modcase** para <@{modCase.UserId}> ({modCase.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был удален.", + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato eliminato.", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is verwijderd." }, "Internal": { "description": "Webhook notification for modcase deletion. This does disclose information about the moderator.", @@ -2037,14 +2037,14 @@ "modCase": "ModCase", "moderator": "IUser" }, - "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) has been deleted by <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) wurde von <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) gelöscht.", - "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is vo <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}) glescht woan.", - "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) a été supprimé par <@{moderator.Id}> ({moderator.Username}#{moderator. Discriminator}).", - "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) был удален <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator}).", - "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}#{modCase.Discriminator}) is verwijderd door <@{moderator.Id}> ({moderator.Username}#{moderator.Discriminator})." + "en": "A **Modcase** for <@{modCase.UserId}> ({modCase.Username}) has been deleted by <@{moderator.Id}> ({moderator.Username}).", + "de": "Ein **Vorfall** für <@{modCase.UserId}> ({modCase.Username}) wurde von <@{moderator.Id}> ({moderator.Username}) gelöscht.", + "at": "A **Vorfoi** fia <@{modCase.UserId}> ({modCase.Username}) is vo <@{moderator.Id}> ({moderator.Username}) glescht woan.", + "fr": "Un **Modcase** pour <@{modCase.UserId}> ({modCase.Username}) a été supprimé par <@{moderator.Id}> ({moderator.Username}).", + "es": "Un **Modcase** para <@{modCase.UserId}> ({modCase.Username}) ha sido eliminado por <@{moderator.Id}> ({moderator.Username}).", + "ru": "**Modcase** для <@{modCase.UserId}> ({modCase.Username}) был удален <@{moderator.Id}> ({moderator.Username}).", + "it": "Un **Modcase** per <@{modCase.UserId}> ({modCase.Username}) è stato eliminato da <@{moderator.Id}> ({moderator.Username}).", + "nl": "Een **Modcase** voor <@{modCase.UserId}> ({modCase.Username}) is verwijderd door <@{moderator.Id}> ({moderator.Username})." } }, "Comments": { @@ -2132,42 +2132,42 @@ "var_types": { "actor": "IUser" }, - "en": "A **file** has been uploaded by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) hochgeladen.", - "at": "A **Datei** woad vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) hochglodn.", - "fr": "Un **fichier** a été téléchargé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator} ha subido un **archivo**).", - "ru": "**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "nl": "Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "en": "A **file** has been uploaded by <@{actor.Id}> ({actor.Username}).", + "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) hochgeladen.", + "at": "A **Datei** woad vo <@{actor.Id}> ({actor.Username}) hochglodn.", + "fr": "Un **fichier** a été téléchargé par <@{actor.Id}> ({actor.Username}).", + "es": "<@{actor.Id}> ({actor.Username} ha subido un **archivo**).", + "ru": "**файл** был загружен пользователем <@{actor.Id}> ({actor.Username}).", + "it": "Un **file** è stato caricato da <@{actor.Id}> ({actor.Username}).", + "nl": "Er is een **bestand** geüpload door <@{actor.Id}> ({actor.Username})." }, "Delete": { "description": "Webhook notification for modcase file deletion.", "var_types": { "actor": "IUser" }, - "en": "A **file** has been deleted by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) gelöscht.", - "at": "A **Datei** is vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) glescht woan.", - "fr": "Un **fichier** a été supprimé par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha eliminado un **archivo**.", - "ru": "**файл** был удален <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "nl": "Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "en": "A **file** has been deleted by <@{actor.Id}> ({actor.Username}).", + "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) gelöscht.", + "at": "A **Datei** is vo <@{actor.Id}> ({actor.Username}) glescht woan.", + "fr": "Un **fichier** a été supprimé par <@{actor.Id}> ({actor.Username}).", + "es": "<@{actor.Id}> ({actor.Username}) ha eliminado un **archivo**.", + "ru": "**файл** был удален <@{actor.Id}> ({actor.Username}).", + "it": "Un **file** è stato eliminato da <@{actor.Id}> ({actor.Username}).", + "nl": "Een **bestand** is verwijderd door <@{actor.Id}> ({actor.Username})." }, "Update": { "description": "Webhook notification for modcase file update.", "var_types": { "actor": "IUser" }, - "en": "A **file** has been updated by <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) aktualisiert.", - "at": "A **Datei** is vo <@{actor.Id}> ({actor.Username}#{actor.Discriminator}) aktualisiert woan.", - "fr": "Un **fichier** a été mis à jour par <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "es": "<@{actor.Id}> ({actor.Username}#{actor.Discriminator}) ha actualizado un **archivo**.", - "ru": "**файл** был обновлен <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "it": "Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}#{actor.Discriminator}).", - "nl": "Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username}#{actor.Discriminator})." + "en": "A **file** has been updated by <@{actor.Id}> ({actor.Username}).", + "de": "Eine **Datei** wurde von <@{actor.Id}> ({actor.Username}) aktualisiert.", + "at": "A **Datei** is vo <@{actor.Id}> ({actor.Username}) aktualisiert woan.", + "fr": "Un **fichier** a été mis à jour par <@{actor.Id}> ({actor.Username}).", + "es": "<@{actor.Id}> ({actor.Username}) ha actualizado un **archivo**.", + "ru": "**файл** был обновлен <@{actor.Id}> ({actor.Username}).", + "it": "Un **file** è stato aggiornato da <@{actor.Id}> ({actor.Username}).", + "nl": "Een **bestand** is bijgewerkt door <@{actor.Id}> ({actor.Username})." } }, "DM": { @@ -2459,14 +2459,14 @@ "var_types": { "user": "IUser" }, - "en": "{user.Username}#{user.Discriminator} triggered automoderation.", - "de": "{user.Username}#{user.Discriminator} hat die Automoderation ausgelöst.", - "at": "{user.Username}#{user.Discriminator} hot de Automodaration ausglest.", - "fr": "{user.Username}#{user.Discriminator} a déclenché la modération automatique.", - "es": "{user.Username}#{user.Discriminator} desencadenó la automoderación.", - "ru": "{user.Username}#{user.Discriminator} запускает автомодерацию.", - "it": "{user.Username}#{user.Discriminator} ha attivato la moderazione automatica.", - "nl": "{user.Username}#{user.Discriminator} leidde tot automatisering." + "en": "{user.Username} triggered automoderation.", + "de": "{user.Username} hat die Automoderation ausgelöst.", + "at": "{user.Username} hot de Automodaration ausglest.", + "fr": "{user.Username} a déclenché la modération automatique.", + "es": "{user.Username} desencadenó la automoderación.", + "ru": "{user.Username} запускает автомодерацию.", + "it": "{user.Username} ha attivato la moderazione automatica.", + "nl": "{user.Username} leidde tot automatisering." }, "DM": { "description": "DM description for automod event", From 34f9d51fd24e9ca43bfa7a7fda168e3d55c0f5b8 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:28:52 +0200 Subject: [PATCH 13/16] fix invite automod for new markdown syntax --- backend/MASZ/AutoModeration/InviteCheck.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/MASZ/AutoModeration/InviteCheck.cs b/backend/MASZ/AutoModeration/InviteCheck.cs index 9a0bd290c..0226dae75 100644 --- a/backend/MASZ/AutoModeration/InviteCheck.cs +++ b/backend/MASZ/AutoModeration/InviteCheck.cs @@ -6,7 +6,7 @@ namespace MASZ.AutoModeration { public static class InviteChecker { - private static readonly Regex _inviteRegex = new(@"(https?:\/\/)?(www\.)?(discord(app)?\.(gg|io|me|li|com)(\/invite)?)\/(?![a-z]+\/)([^\?\s]+)(\?event=([^\s]+))?"); + private static readonly Regex _inviteRegex = new(@"(https?:\/\/)?(www\.)?(discord(app)?\.(gg|io|me|li|com)(\/invite)?)\/(?![a-z]+\/)([^\?\s\)]+)(\?event=([^\s]+))?"); //private static readonly Regex _discordResourcesWhitelist = new(@"(https?:\/\/)?(www\.)?(discord(app)?\.com\/(download|nitro|company|careers|branding|newsroom|college|safetycenter|blog|build|streamkit|creators|terms|privacy|guidelines|acknowledgements|licenses|moderation))\/?"); private static readonly Regex _discordResourcesWhitelist = new(@"(https?:\/\/)?(www\.)?(discord(app)?\.com\/)(?:(?!invite))"); public static async Task Check(IMessage message, AutoModerationConfig config, IDiscordClient client) From 3a5501dd1784d42b154c9a72aaba9caa6f8860a0 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:40:55 +0200 Subject: [PATCH 14/16] added patchnotes --- nginx/static/patchnotes.json | 61 ++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/nginx/static/patchnotes.json b/nginx/static/patchnotes.json index ac35ea506..a64321010 100644 --- a/nginx/static/patchnotes.json +++ b/nginx/static/patchnotes.json @@ -1,4 +1,65 @@ [ + { + "title": "Version 3.5.0", + "version": "v3.5.0", + "released_at": "2023-09-08", + "contributors": [ + { + "name": "UponAnonymous", + "link": "https://github.com/UponAnonymous", + "icon": "https://avatars.githubusercontent.com/u/27465814?v=4" + }, + { + "name": "Allan Efendic", + "link": "https://github.com/alefDev-prog", + "icon": "https://avatars.githubusercontent.com/u/114575583?v=4" + } + ], + "breaking": [ + { + "title": "Removed discriminators", + "description": "Discriminators have been removed from the codebase in favor of Discords username change." + } + ], + "features": [ + { + "title": "Added experimental message cache.", + "description": "This new message cache should reduce the number of missing message content in the auditlog on deleted and updated messages. Use ENABLE_EXPERIMENTAL_MESSAGE_CACHE=true to enable it." + }, + { + "title": "Added dutch translations.", + "description": "Added dutch (NL) translations for MASZ." + } + ], + "fixes": [ + { + "title": "Fixed time input validation in case creation.", + "description": "29:xx is no longer a valid time input. 20:xx is now a valid time input." + }, + { + "title": "Fixed wrong punishment duration in case creation.", + "description": "If you entered a wrong time input, the punishment duration was set to permanent. This has been fixed." + }, + { + "title": "Fixed automod logging.", + "description": "If the message content was too large, some automod embeds failed to be sent. This has been fixed." + }, + { + "title": "Correctly link evidence.", + "description": "The linking of evidence for automods and via the frontend has been fixed." + }, + { + "title": "Fixed invite automod for markdown.", + "description": "Invites sent within the new markdown syntax are now correctly parsed and no longer trigger a false positive on whitelisted guilds." + } + ], + "technical": [ + { + "title": "Last release.", + "description": "This is the last release of MASZ for the next few months. I will not be able to maintain MASZ during this time. If you want to step in as a maintainer, please contact me via Discord. If you want to support me, you can do so on ko-fi: https://ko-fi.com/zaanposni" + } + ] + }, { "title": "Version 3.4.1", "version": "v3.4.1", From 886b786dc52cbfdf36995e63f46174e11f898eb5 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:49:59 +0200 Subject: [PATCH 15/16] discriminator migrations --- ...0908164930_RemoveDiscriminator.Designer.cs | 849 ++++++++++++++++++ .../20230908164930_RemoveDiscriminator.cs | 59 ++ .../Migrations/DataContextModelSnapshot.cs | 12 - 3 files changed, 908 insertions(+), 12 deletions(-) create mode 100644 backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.Designer.cs create mode 100644 backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.cs diff --git a/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.Designer.cs b/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.Designer.cs new file mode 100644 index 000000000..d1b29cd89 --- /dev/null +++ b/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.Designer.cs @@ -0,0 +1,849 @@ +// +using System; +using MASZ.Data; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace MASZ.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20230908164930_RemoveDiscriminator")] + partial class RemoveDiscriminator + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "6.0.1") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("MASZ.Models.APIToken", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("Name") + .HasColumnType("longtext"); + + b.Property("TokenHash") + .HasColumnType("longblob"); + + b.Property("TokenSalt") + .HasColumnType("longblob"); + + b.Property("ValidUntil") + .HasColumnType("datetime(6)"); + + b.HasKey("Id"); + + b.ToTable("APITokens"); + }); + + modelBuilder.Entity("MASZ.Models.Appeal", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("InvalidDueToLaterRejoinAt") + .HasColumnType("datetime(6)"); + + b.Property("LastModeratorId") + .HasColumnType("bigint unsigned"); + + b.Property("Mail") + .HasColumnType("longtext"); + + b.Property("ModeratorComment") + .HasColumnType("longtext"); + + b.Property("Status") + .HasColumnType("int"); + + b.Property("UpdatedAt") + .HasColumnType("datetime(6)"); + + b.Property("UserCanCreateNewAppeals") + .HasColumnType("datetime(6)"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.Property("Username") + .HasColumnType("longtext"); + + b.HasKey("Id"); + + b.ToTable("Appeals"); + }); + + modelBuilder.Entity("MASZ.Models.AppealAnswer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("Answer") + .HasColumnType("longtext"); + + b.Property("AppealId") + .HasColumnType("int"); + + b.Property("AppealQuestionId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("AppealId"); + + b.HasIndex("AppealQuestionId"); + + b.ToTable("AppealAnswers"); + }); + + modelBuilder.Entity("MASZ.Models.AppealStructure", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("Deleted") + .HasColumnType("tinyint(1)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("Question") + .HasColumnType("longtext"); + + b.Property("SortOrder") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.ToTable("AppealStructures"); + }); + + modelBuilder.Entity("MASZ.Models.AppSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AuditLogWebhookURL") + .HasColumnType("longtext"); + + b.Property("DefaultLanguage") + .HasColumnType("int"); + + b.Property("EmbedContent") + .HasColumnType("longtext"); + + b.Property("EmbedShowIcon") + .HasColumnType("tinyint(1)"); + + b.Property("EmbedTitle") + .HasColumnType("longtext"); + + b.Property("PublicFileMode") + .HasColumnType("tinyint(1)"); + + b.HasKey("Id"); + + b.ToTable("AppSettings"); + }); + + modelBuilder.Entity("MASZ.Models.AutoModerationConfig", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AutoModerationAction") + .HasColumnType("int"); + + b.Property("AutoModerationType") + .HasColumnType("int"); + + b.Property("ChannelNotificationBehavior") + .HasColumnType("int"); + + b.Property("CustomWordFilter") + .HasColumnType("longtext"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("IgnoreChannels") + .HasColumnType("longtext"); + + b.Property("IgnoreRoles") + .HasColumnType("longtext"); + + b.Property("Limit") + .HasColumnType("int"); + + b.Property("PunishmentDurationMinutes") + .HasColumnType("int"); + + b.Property("PunishmentType") + .HasColumnType("int"); + + b.Property("SendDmNotification") + .HasColumnType("tinyint(1)"); + + b.Property("SendPublicNotification") + .HasColumnType("tinyint(1)"); + + b.Property("TimeLimitMinutes") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.ToTable("AutoModerationConfigs"); + }); + + modelBuilder.Entity("MASZ.Models.AutoModerationEvent", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AssociatedCaseId") + .HasColumnType("int"); + + b.Property("AutoModerationAction") + .HasColumnType("int"); + + b.Property("AutoModerationType") + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("MessageContent") + .HasColumnType("longtext"); + + b.Property("MessageId") + .HasColumnType("bigint unsigned"); + + b.Property("Nickname") + .HasColumnType("longtext"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.Property("Username") + .HasColumnType("longtext"); + + b.HasKey("Id"); + + b.ToTable("AutoModerationEvents"); + }); + + modelBuilder.Entity("MASZ.Models.CaseTemplate", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AnnounceDm") + .HasColumnType("tinyint(1)"); + + b.Property("CaseDescription") + .HasColumnType("longtext"); + + b.Property("CaseLabels") + .HasColumnType("longtext"); + + b.Property("CasePunishedUntil") + .HasColumnType("datetime(6)"); + + b.Property("CasePunishmentType") + .HasColumnType("int"); + + b.Property("CaseTitle") + .HasColumnType("longtext"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("CreatedForGuildId") + .HasColumnType("bigint unsigned"); + + b.Property("HandlePunishment") + .HasColumnType("tinyint(1)"); + + b.Property("SendPublicNotification") + .HasColumnType("tinyint(1)"); + + b.Property("TemplateName") + .HasColumnType("longtext"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.Property("ViewPermission") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.ToTable("CaseTemplates"); + }); + + modelBuilder.Entity("MASZ.Models.Database.ModCaseEvidenceMapping", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("EvidenceId") + .HasColumnType("int"); + + b.Property("ModCaseId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("EvidenceId"); + + b.HasIndex("ModCaseId"); + + b.ToTable("ModCaseEvidenceMappings"); + }); + + modelBuilder.Entity("MASZ.Models.Database.VerifiedEvidence", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("ChannelId") + .HasColumnType("bigint unsigned"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("MessageId") + .HasColumnType("bigint unsigned"); + + b.Property("ModId") + .HasColumnType("bigint unsigned"); + + b.Property("Nickname") + .HasColumnType("longtext"); + + b.Property("ReportedAt") + .HasColumnType("datetime(6)"); + + b.Property("ReportedContent") + .HasColumnType("longtext"); + + b.Property("SentAt") + .HasColumnType("datetime(6)"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.Property("Username") + .HasColumnType("longtext"); + + b.HasKey("Id"); + + b.ToTable("VerifiedEvidence"); + }); + + modelBuilder.Entity("MASZ.Models.GuildConfig", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AdminRoles") + .HasColumnType("longtext"); + + b.Property("AllowBanAppealAfterDays") + .HasColumnType("int"); + + b.Property("ExecuteWhoisOnJoin") + .HasColumnType("tinyint(1)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("ModInternalNotificationWebhook") + .HasColumnType("longtext"); + + b.Property("ModNotificationDM") + .HasColumnType("tinyint(1)"); + + b.Property("ModPublicNotificationWebhook") + .HasColumnType("longtext"); + + b.Property("ModRoles") + .HasColumnType("longtext"); + + b.Property("MutedRoles") + .HasColumnType("longtext"); + + b.Property("PreferredLanguage") + .HasColumnType("int"); + + b.Property("PublicEmbedMode") + .HasColumnType("tinyint(1)"); + + b.Property("PublishModeratorInfo") + .HasColumnType("tinyint(1)"); + + b.Property("StrictModPermissionCheck") + .HasColumnType("tinyint(1)"); + + b.HasKey("Id"); + + b.ToTable("GuildConfigs"); + }); + + modelBuilder.Entity("MASZ.Models.GuildLevelAuditLogConfig", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("ChannelId") + .HasColumnType("bigint unsigned"); + + b.Property("GuildAuditLogEvent") + .HasColumnType("int"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("IgnoreChannels") + .HasColumnType("longtext"); + + b.Property("IgnoreRoles") + .HasColumnType("longtext"); + + b.Property("PingRoles") + .HasColumnType("longtext"); + + b.HasKey("Id"); + + b.ToTable("GuildLevelAuditLogConfigs"); + }); + + modelBuilder.Entity("MASZ.Models.GuildMotd", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("Message") + .HasColumnType("longtext"); + + b.Property("ShowMotd") + .HasColumnType("tinyint(1)"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.HasKey("Id"); + + b.ToTable("GuildMotds"); + }); + + modelBuilder.Entity("MASZ.Models.ModCase", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("AllowComments") + .HasColumnType("tinyint(1)"); + + b.Property("CaseId") + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("CreationType") + .HasColumnType("int"); + + b.Property("DeletedByUserId") + .HasColumnType("bigint unsigned"); + + b.Property("Description") + .HasColumnType("longtext"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("Labels") + .HasColumnType("longtext"); + + b.Property("LastEditedAt") + .HasColumnType("datetime(6)"); + + b.Property("LastEditedByModId") + .HasColumnType("bigint unsigned"); + + b.Property("LockedAt") + .HasColumnType("datetime(6)"); + + b.Property("LockedByUserId") + .HasColumnType("bigint unsigned"); + + b.Property("MarkedToDeleteAt") + .HasColumnType("datetime(6)"); + + b.Property("ModId") + .HasColumnType("bigint unsigned"); + + b.Property("Nickname") + .HasColumnType("longtext"); + + b.Property("OccuredAt") + .HasColumnType("datetime(6)"); + + b.Property("Others") + .HasColumnType("longtext"); + + b.Property("PunishedUntil") + .HasColumnType("datetime(6)"); + + b.Property("PunishmentActive") + .HasColumnType("tinyint(1)"); + + b.Property("PunishmentType") + .HasColumnType("int"); + + b.Property("Title") + .HasColumnType("longtext"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.Property("Username") + .HasColumnType("longtext"); + + b.Property("Valid") + .HasColumnType("tinyint(1)"); + + b.HasKey("Id"); + + b.ToTable("ModCases"); + }); + + modelBuilder.Entity("MASZ.Models.ModCaseComment", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("Message") + .HasColumnType("longtext"); + + b.Property("ModCaseId") + .HasColumnType("int"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.HasKey("Id"); + + b.HasIndex("ModCaseId"); + + b.ToTable("ModCaseComments"); + }); + + modelBuilder.Entity("MASZ.Models.ModCaseMapping", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CaseAId") + .HasColumnType("int"); + + b.Property("CaseBId") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.HasIndex("CaseAId"); + + b.HasIndex("CaseBId"); + + b.ToTable("ModCaseMappings"); + }); + + modelBuilder.Entity("MASZ.Models.ScheduledMessage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("ChannelId") + .HasColumnType("bigint unsigned"); + + b.Property("Content") + .HasColumnType("longtext"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("CreatorId") + .HasColumnType("bigint unsigned"); + + b.Property("FailureReason") + .HasColumnType("int"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("LastEditedAt") + .HasColumnType("datetime(6)"); + + b.Property("LastEditedById") + .HasColumnType("bigint unsigned"); + + b.Property("Name") + .HasColumnType("longtext"); + + b.Property("ScheduledFor") + .HasColumnType("datetime(6)"); + + b.Property("Status") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.ToTable("ScheduledMessages"); + }); + + modelBuilder.Entity("MASZ.Models.UserInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("InviteCreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("InviteIssuerId") + .HasColumnType("bigint unsigned"); + + b.Property("JoinedAt") + .HasColumnType("datetime(6)"); + + b.Property("JoinedUserId") + .HasColumnType("bigint unsigned"); + + b.Property("TargetChannelId") + .HasColumnType("bigint unsigned"); + + b.Property("UsedInvite") + .HasColumnType("longtext"); + + b.HasKey("Id"); + + b.ToTable("UserInvites"); + }); + + modelBuilder.Entity("MASZ.Models.UserMapping", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatedAt") + .HasColumnType("datetime(6)"); + + b.Property("CreatorUserId") + .HasColumnType("bigint unsigned"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("Reason") + .HasColumnType("longtext"); + + b.Property("UserA") + .HasColumnType("bigint unsigned"); + + b.Property("UserB") + .HasColumnType("bigint unsigned"); + + b.HasKey("Id"); + + b.ToTable("UserMappings"); + }); + + modelBuilder.Entity("MASZ.Models.UserNote", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("CreatorId") + .HasColumnType("bigint unsigned"); + + b.Property("Description") + .HasColumnType("longtext"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("UpdatedAt") + .HasColumnType("datetime(6)"); + + b.Property("UserId") + .HasColumnType("bigint unsigned"); + + b.HasKey("Id"); + + b.ToTable("UserNotes"); + }); + + modelBuilder.Entity("MASZ.Models.ZalgoConfig", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + b.Property("Enabled") + .HasColumnType("tinyint(1)"); + + b.Property("GuildId") + .HasColumnType("bigint unsigned"); + + b.Property("Percentage") + .HasColumnType("int"); + + b.Property("logToModChannel") + .HasColumnType("tinyint(1)"); + + b.Property("renameFallback") + .HasColumnType("longtext"); + + b.Property("renameNormal") + .HasColumnType("tinyint(1)"); + + b.HasKey("Id"); + + b.ToTable("ZalgoConfigs"); + }); + + modelBuilder.Entity("MASZ.Models.AppealAnswer", b => + { + b.HasOne("MASZ.Models.Appeal", "Appeal") + .WithMany() + .HasForeignKey("AppealId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("MASZ.Models.AppealStructure", "AppealQuestion") + .WithMany() + .HasForeignKey("AppealQuestionId") + .OnDelete(DeleteBehavior.Cascade); + + b.Navigation("Appeal"); + + b.Navigation("AppealQuestion"); + }); + + modelBuilder.Entity("MASZ.Models.Database.ModCaseEvidenceMapping", b => + { + b.HasOne("MASZ.Models.Database.VerifiedEvidence", "Evidence") + .WithMany("EvidenceMappings") + .HasForeignKey("EvidenceId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("MASZ.Models.ModCase", "ModCase") + .WithMany("EvidenceMappings") + .HasForeignKey("ModCaseId") + .OnDelete(DeleteBehavior.Cascade); + + b.Navigation("Evidence"); + + b.Navigation("ModCase"); + }); + + modelBuilder.Entity("MASZ.Models.ModCaseComment", b => + { + b.HasOne("MASZ.Models.ModCase", "ModCase") + .WithMany("Comments") + .HasForeignKey("ModCaseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("ModCase"); + }); + + modelBuilder.Entity("MASZ.Models.ModCaseMapping", b => + { + b.HasOne("MASZ.Models.ModCase", "CaseA") + .WithMany("MappingsA") + .HasForeignKey("CaseAId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("MASZ.Models.ModCase", "CaseB") + .WithMany("MappingsB") + .HasForeignKey("CaseBId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("CaseA"); + + b.Navigation("CaseB"); + }); + + modelBuilder.Entity("MASZ.Models.Database.VerifiedEvidence", b => + { + b.Navigation("EvidenceMappings"); + }); + + modelBuilder.Entity("MASZ.Models.ModCase", b => + { + b.Navigation("Comments"); + + b.Navigation("EvidenceMappings"); + + b.Navigation("MappingsA"); + + b.Navigation("MappingsB"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.cs b/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.cs new file mode 100644 index 000000000..fed65db91 --- /dev/null +++ b/backend/MASZ/Migrations/20230908164930_RemoveDiscriminator.cs @@ -0,0 +1,59 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace MASZ.Migrations +{ + public partial class RemoveDiscriminator : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "Discriminator", + table: "VerifiedEvidence"); + + migrationBuilder.DropColumn( + name: "Discriminator", + table: "ModCases"); + + migrationBuilder.DropColumn( + name: "Discriminator", + table: "AutoModerationEvents"); + + migrationBuilder.DropColumn( + name: "Discriminator", + table: "Appeals"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "Discriminator", + table: "VerifiedEvidence", + type: "longtext", + nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.AddColumn( + name: "Discriminator", + table: "ModCases", + type: "longtext", + nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.AddColumn( + name: "Discriminator", + table: "AutoModerationEvents", + type: "longtext", + nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.AddColumn( + name: "Discriminator", + table: "Appeals", + type: "longtext", + nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"); + } + } +} diff --git a/backend/MASZ/Migrations/DataContextModelSnapshot.cs b/backend/MASZ/Migrations/DataContextModelSnapshot.cs index 02cc9045f..8cd771f7f 100644 --- a/backend/MASZ/Migrations/DataContextModelSnapshot.cs +++ b/backend/MASZ/Migrations/DataContextModelSnapshot.cs @@ -54,9 +54,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("datetime(6)"); - b.Property("Discriminator") - .HasColumnType("longtext"); - b.Property("GuildId") .HasColumnType("bigint unsigned"); @@ -236,9 +233,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("datetime(6)"); - b.Property("Discriminator") - .HasColumnType("longtext"); - b.Property("GuildId") .HasColumnType("bigint unsigned"); @@ -342,9 +336,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("ChannelId") .HasColumnType("bigint unsigned"); - b.Property("Discriminator") - .HasColumnType("longtext"); - b.Property("GuildId") .HasColumnType("bigint unsigned"); @@ -506,9 +497,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("Description") .HasColumnType("longtext"); - b.Property("Discriminator") - .HasColumnType("longtext"); - b.Property("GuildId") .HasColumnType("bigint unsigned"); From f35512e0a9bceda8b1e51dc27b005b60f73b1fc1 Mon Sep 17 00:00:00 2001 From: zaanposni Date: Fri, 8 Sep 2023 18:50:12 +0200 Subject: [PATCH 16/16] added maintainer notice to readme --- README.md | 5 +++++ nginx/static/patchnotes.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 943649378..8eb8aae44 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,11 @@ ⭐ **A website and a discord bot** - to use MASZ\ ⭐ **Full API and plugin support** - for custom scripts and automations +## 🤝 Maintainers + +This project is stable to use. However, it is no longer actively maintained by me.\ +**If you want to become a maintainer**, please contact me via [Mail](mailto:masz@zaanposni.com) or [Discord](https://discord.gg/5zjpzw6h3S). + ## 👀 Preview ![dashboard preview](/docs/dashboard.png) diff --git a/nginx/static/patchnotes.json b/nginx/static/patchnotes.json index a64321010..842d2623b 100644 --- a/nginx/static/patchnotes.json +++ b/nginx/static/patchnotes.json @@ -56,7 +56,7 @@ "technical": [ { "title": "Last release.", - "description": "This is the last release of MASZ for the next few months. I will not be able to maintain MASZ during this time. If you want to step in as a maintainer, please contact me via Discord. If you want to support me, you can do so on ko-fi: https://ko-fi.com/zaanposni" + "description": "This is the last release of MASZ for the foreseeable future. If you want to step in as a maintainer, please contact me via Discord. If you want to support me, you can do so on ko-fi: https://ko-fi.com/zaanposni" } ] },