Merge branch 'testing' into 'master'

1.2

See merge request piotrex43/RcGcDw!10
This commit is contained in:
Frisk 2018-07-08 11:50:22 +00:00
commit 63f29c8f09
10 changed files with 471 additions and 402 deletions

View file

@ -65,14 +65,16 @@ Translators:
Script seem to use about 10-17MB of RAM and negligible amount of CPU when fetching changes. Script seem to use about 10-17MB of RAM and negligible amount of CPU when fetching changes.
Script does not log bot actions by default. Script does not log bot actions by default.
"I GoT "Unable to process the event" mESSage!!! WHaT HApND?" - it means there is some kind of action that does not have a template in the script, please [create a ticket](https://gitlab.com/piotrex43/RcGcDw/issues/new?issue%5Bassignee_id%5D=&issue%5Bmilestone_id%5D=) with information on what wiki this error ocurred and when. "I GoT "Unable to process the event" mESSage!!! WHaT HApND?" - it means there is some kind of action that does not have a template in the script, please [create a ticket](https://gitlab.com/piotrex43/RcGcDw/issues/new?issue%5Bassignee_id%5D=&issue%5Bmilestone_id%5D=) with information on what wiki this error ocurred and when.
[Here](https://framapic.org/rVFQD0NQVcok/Ue1SVHHM0e4V.png) is a screenshot of how few embeds look like. [Here](https://imgur.com/a/ACOMyak) are screenshots of how few embeds look like.
### License ### ### License ###
Everything except the locale directory is under GNU Affero General Public License v3.0 license. The translations are used with allowance of translators, and all rights to them are owned by their respective authors. Everything except the locale directory is under GNU Affero General Public License v3.0 license. The translations are used with allowance of translators, and all rights to them are owned by their respective authors.
### Currently running on ### ### Currently running on ###
There are several Discord server, the script is already running on, you can join them and see it working. There are several Discord server, the script is already running on, you can join them and see it working.
[Conan Exiles](https://discord.gg/5252dZh)
[Minecraft Wiki English](https://discord.gg/fGdE5ZE) [Minecraft Wiki English](https://discord.gg/fGdE5ZE)
[Minecraft Wiki (DE)](https://discord.gg/F75vfpd) (on a hidden channel) [Minecraft Wiki (DE)](https://discord.gg/F75vfpd) (on a hidden channel)
[Minecraft Wiki Polska](https://discord.gg/9ZCcTnT) [Minecraft Wiki Polska](https://discord.gg/9ZCcTnT)
[Minecraft Wiki FR](https://discord.gg/PSK48k7) (temporarily)

Binary file not shown.

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2018-06-25 18:01+0200\n" "POT-Creation-Date: 2018-07-05 20:21+0200\n"
"PO-Revision-Date: 2018-06-30 00:01+0200\n" "PO-Revision-Date: 2018-07-05 20:24+0200\n"
"Last-Translator: MarkusRost\n" "Last-Translator: MarkusRost\n"
"Language-Team: \n" "Language-Team: \n"
"Language: de\n" "Language: de\n"
@ -16,39 +16,39 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
"X-Generator: Poedit 2.0.8\n" "X-Generator: Poedit 2.0.8\n"
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "(N!) " msgid "(N!) "
msgstr "(N!) " msgstr "(N!) "
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "m " msgid "m "
msgstr "K " msgstr "K "
#: rcgcdw.py:116 #: rcgcdw.py:144
msgid "Uploaded a new version of {name}"
msgstr "Neue Dateiversion {name}"
#: rcgcdw.py:117
msgid "([preview]({link}) | [undo]({undolink}))" msgid "([preview]({link}) | [undo]({undolink}))"
msgstr "([Vorschau]({link}) | [zurücksetzen]({undolink}))" msgstr "([Vorschau]({link}) | [zurücksetzen]({undolink}))"
#: rcgcdw.py:117 rcgcdw.py:140 #: rcgcdw.py:144 rcgcdw.py:170
msgid "Options" msgid "Options"
msgstr "Optionen" msgstr "Optionen"
#: rcgcdw.py:119 #: rcgcdw.py:145
msgid "Uploaded a new version of {name}"
msgstr "Neue Dateiversion {name}"
#: rcgcdw.py:147
msgid "Uploaded {name}" msgid "Uploaded {name}"
msgstr "Neue Datei {name}" msgstr "Neue Datei {name}"
#: rcgcdw.py:131 #: rcgcdw.py:160
msgid "**No license!**" msgid "**No license!**"
msgstr "**Keine Lizenz!**" msgstr "**Keine Lizenz!**"
#: rcgcdw.py:140 #: rcgcdw.py:170
msgid "([preview]({link}))" msgid "([preview]({link}))"
msgstr "([Vorschau]({link}))" msgstr "([Vorschau]({link}))"
#: rcgcdw.py:141 #: rcgcdw.py:171
msgid "" msgid ""
"{desc}\n" "{desc}\n"
"License: {license}" "License: {license}"
@ -56,306 +56,311 @@ msgstr ""
"{desc}\n" "{desc}\n"
"Lizenz: {license}" "Lizenz: {license}"
#: rcgcdw.py:144 #: rcgcdw.py:174
msgid "Deleted page {article}" msgid "Deleted page {article}"
msgstr "Löschte {article}" msgstr "Löschte {article}"
#: rcgcdw.py:147 #: rcgcdw.py:177
msgid "Deleted redirect {article} by overwriting" msgid "Deleted redirect {article} by overwriting"
msgstr "Löschte die Weiterleitung {article} um Platz zu machen" msgstr "Löschte die Weiterleitung {article} um Platz zu machen"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "A redirect has been made" msgid "A redirect has been made"
msgstr "Eine Weiterleitung wurde erstellt" msgstr "Eine Weiterleitung wurde erstellt"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "No redirect has been made" msgid "No redirect has been made"
msgstr "Die Erstellung einer Weiterleitung wurde unterdrückt" msgstr "Die Erstellung einer Weiterleitung wurde unterdrückt"
#: rcgcdw.py:151 #: rcgcdw.py:181
msgid "Moved {article} to {target}" msgid "Moved {article} to {target}"
msgstr "Verschob {article} nach {target}" msgstr "Verschob {article} nach {target}"
#: rcgcdw.py:154 #: rcgcdw.py:184
msgid "Moved {article} to {title} over redirect" msgid "Moved {article} to {title} over redirect"
msgstr "Verschob {article} nach {title} und überschrieb eine Weiterleitung" msgstr "Verschob {article} nach {title} und überschrieb eine Weiterleitung"
#: rcgcdw.py:157 #: rcgcdw.py:187
msgid "Moved protection settings from {article} to {title}" msgid "Moved protection settings from {article} to {title}"
msgstr "Verschob die Schutzeinstellungen von {article} nach {title}" msgstr "Verschob die Schutzeinstellungen von {article} nach {title}"
#: rcgcdw.py:161 #: rcgcdw.py:191
msgid "infinity and beyond" msgid "infinity and beyond"
msgstr "alle Ewigkeit" msgstr "alle Ewigkeit"
#: rcgcdw.py:162 #: rcgcdw.py:192
msgid "Blocked {blocked_user} for {time}" msgid "Blocked {blocked_user} for {time}"
msgstr "Sperrte {blocked_user} für {time}" msgstr "Sperrte {blocked_user} für {time}"
#: rcgcdw.py:166 #: rcgcdw.py:196
msgid "Changed block settings for {blocked_user}" msgid "Changed block settings for {blocked_user}"
msgstr "Änderte die Sperreinstellungen für {blocked_user}" msgstr "Änderte die Sperreinstellungen für {blocked_user}"
#: rcgcdw.py:170 #: rcgcdw.py:200
msgid "Unblocked {blocked_user}" msgid "Unblocked {blocked_user}"
msgstr "Hob die Sperre von {blocked_user} auf" msgstr "Hob die Sperre von {blocked_user} auf"
#: rcgcdw.py:174 #: rcgcdw.py:204
msgid "Left a comment on {target}'s profile" msgid "Left a comment on {target}'s profile"
msgstr "Hinterließ ein Kommentar auf dem Profil von {target}" msgstr "Hinterließ ein Kommentar auf dem Profil von {target}"
#: rcgcdw.py:178 #: rcgcdw.py:208
msgid "Replied to a comment on {target}'s profile" msgid "Replied to a comment on {target}'s profile"
msgstr "Antwortete auf ein Kommentar auf dem Profil von {target}" msgstr "Antwortete auf ein Kommentar auf dem Profil von {target}"
#: rcgcdw.py:182 #: rcgcdw.py:212
msgid "Edited a comment on {target}'s profile" msgid "Edited a comment on {target}'s profile"
msgstr "Bearbeitete ein Kommentar auf dem Profil von {target}" msgstr "Bearbeitete ein Kommentar auf dem Profil von {target}"
#: rcgcdw.py:186 #: rcgcdw.py:216
msgid "Location" msgid "Location"
msgstr "Wohnort" msgstr "Wohnort"
#: rcgcdw.py:188 #: rcgcdw.py:218
msgid "About me" msgid "About me"
msgstr "\"Über mich\"-Abschnitt" msgstr "\"Über mich\"-Abschnitt"
#: rcgcdw.py:190 #: rcgcdw.py:220
msgid "Google link" msgid "Google link"
msgstr "Google-Konto" msgstr "Google-Konto"
#: rcgcdw.py:192 #: rcgcdw.py:222
msgid "Facebook link" msgid "Facebook link"
msgstr "Facebook-Seite" msgstr "Facebook-Seite"
#: rcgcdw.py:194 #: rcgcdw.py:224
msgid "Twitter link" msgid "Twitter link"
msgstr "Twitter-Benutzernamen" msgstr "Twitter-Benutzernamen"
#: rcgcdw.py:196 #: rcgcdw.py:226
msgid "Reddit link" msgid "Reddit link"
msgstr "Reddit-Benutzernamen" msgstr "Reddit-Benutzernamen"
#: rcgcdw.py:198 #: rcgcdw.py:228
msgid "Twitch link" msgid "Twitch link"
msgstr "Twitch-Account" msgstr "Twitch-Account"
#: rcgcdw.py:200 #: rcgcdw.py:230
msgid "PSN link" msgid "PSN link"
msgstr "PSN-Account" msgstr "PSN-Account"
#: rcgcdw.py:202 #: rcgcdw.py:232
msgid "VK link" msgid "VK link"
msgstr "VK-Account" msgstr "VK-Account"
#: rcgcdw.py:204 #: rcgcdw.py:234
msgid "XVL link" msgid "XVL link"
msgstr "Xbox-Live-Tag" msgstr "Xbox-Live-Tag"
#: rcgcdw.py:206 #: rcgcdw.py:236
msgid "Steam link" msgid "Steam link"
msgstr "Steam-Account" msgstr "Steam-Account"
#: rcgcdw.py:208 #: rcgcdw.py:238
msgid "Unknown" msgid "Unknown"
msgstr "Unbekannt" msgstr "Unbekannt"
#: rcgcdw.py:209 #: rcgcdw.py:239
msgid "Edited {target}'s profile" msgid "Edited {target}'s profile"
msgstr "Bearbeitete das Profil von {target}" msgstr "Bearbeitete das Profil von {target}"
#: rcgcdw.py:210 #: rcgcdw.py:240
msgid "{field} field changed to: {desc}" msgid "{field} field changed to: {desc}"
msgstr "{field} geändert zu: {desc}" msgstr "{field} geändert zu: {desc}"
#: rcgcdw.py:214 #: rcgcdw.py:244
msgid "Deleted a comment on {target}'s profile" msgid "Deleted a comment on {target}'s profile"
msgstr "Löschte ein Kommentar auf dem Profil von {target}" msgstr "Löschte ein Kommentar auf dem Profil von {target}"
#: rcgcdw.py:217 #: rcgcdw.py:247
msgid "Changed group membership for {target}" msgid "Changed group membership for {target}"
msgstr "Änderte die Gruppenzugehörigkeit von {target}" msgstr "Änderte die Gruppenzugehörigkeit von {target}"
#: rcgcdw.py:221 rcgcdw.py:223 #: rcgcdw.py:251 rcgcdw.py:253
msgid "none" msgid "none"
msgstr "keine" msgstr "keine"
#: rcgcdw.py:224 rcgcdw.py:349 #: rcgcdw.py:254 rcgcdw.py:376
msgid "No description provided" msgid "No description provided"
msgstr "Keine Zusammenfassung angegeben" msgstr "Keine Zusammenfassung angegeben"
#: rcgcdw.py:225 #: rcgcdw.py:255
msgid "Groups changed from {old_groups} to {new_groups} {reason}" msgid "Groups changed from {old_groups} to {new_groups}{reason}"
msgstr "Änderte die Gruppenzugehörigkeit von {old_groups} auf {new_groups}: {reason}" msgstr ""
"Änderte die Gruppenzugehörigkeit von {old_groups} auf {new_groups}{reason}"
#: rcgcdw.py:228 #: rcgcdw.py:258
msgid "Protected {target}" msgid "Protected {target}"
msgstr "Schützte {target}" msgstr "Schützte {target}"
#: rcgcdw.py:232 #: rcgcdw.py:262
msgid "Changed protection level for {article}" msgid "Changed protection level for {article}"
msgstr "Änderte den Schutzstatus von {article}" msgstr "Änderte den Schutzstatus von {article}"
#: rcgcdw.py:236 #: rcgcdw.py:266
msgid "Removed protection from {article}" msgid "Removed protection from {article}"
msgstr "Entfernte den Schutz von {article}" msgstr "Entfernte den Schutz von {article}"
#: rcgcdw.py:239 #: rcgcdw.py:269
msgid "Changed visibility of revision(s) on page {article} " msgid "Changed visibility of revision(s) on page {article} "
msgstr "Änderte die Sichtbarkeit einiger Versionen von {article}" msgstr "Änderte die Sichtbarkeit einiger Versionen von {article}"
#: rcgcdw.py:242 #: rcgcdw.py:272
msgid "Imported {article} with {count} revision(s)" msgid "Imported {article} with {count} revision(s)"
msgstr "Importierte {article} mit {count} Versionen" msgstr "Importierte {article} mit {count} Versionen"
#: rcgcdw.py:245 #: rcgcdw.py:275
msgid "Restored {article}" msgid "Restored {article}"
msgstr "Stellte {article} wieder her" msgstr "Stellte {article} wieder her"
#: rcgcdw.py:248 #: rcgcdw.py:278
msgid "Changed visibility of log events" msgid "Changed visibility of log events"
msgstr "Änderte die Sichtbarkeit eines Logbucheintrags" msgstr "Änderte die Sichtbarkeit eines Logbucheintrags"
#: rcgcdw.py:251 #: rcgcdw.py:281
msgid "Imported interwiki" msgid "Imported interwiki"
msgstr "Importierte Interwiki" msgstr "Importierte Interwiki"
#: rcgcdw.py:254 #: rcgcdw.py:284
msgid "Edited abuse filter number {number}" msgid "Edited abuse filter number {number}"
msgstr "Änderte Missbrauchsfilter {number}" msgstr "Änderte Missbrauchsfilter {number}"
#: rcgcdw.py:257 #: rcgcdw.py:287
msgid "Merged revision histories of {article} into {dest}" msgid "Merged revision histories of {article} into {dest}"
msgstr "Vereinigte Versionsgeschichten von {article} in {dest}" msgstr "Vereinigte Versionsgeschichten von {article} in {dest}"
#: rcgcdw.py:260 #: rcgcdw.py:290
msgid "Added an entry to the interwiki table" msgid "Added an entry to the interwiki table"
msgstr "Fügte ein Interwiki-Präfix hinzu" msgstr "Fügte ein Interwiki-Präfix hinzu"
#: rcgcdw.py:261 rcgcdw.py:265 #: rcgcdw.py:291 rcgcdw.py:295
msgid "Prefix: {prefix}, website: {website} | {desc}" msgid "Prefix: {prefix}, website: {website} | {desc}"
msgstr "Präfix: {prefix}, URL: {website} | {desc}" msgstr "Präfix: {prefix}, URL: {website} | {desc}"
#: rcgcdw.py:264 #: rcgcdw.py:294
msgid "Edited an entry in interwiki table" msgid "Edited an entry in interwiki table"
msgstr "Änderte ein Interwiki-Präfix" msgstr "Änderte ein Interwiki-Präfix"
#: rcgcdw.py:268 #: rcgcdw.py:298
msgid "Deleted an entry in interwiki table" msgid "Deleted an entry in interwiki table"
msgstr "Entfernte ein Interwiki-Präfix" msgstr "Entfernte ein Interwiki-Präfix"
#: rcgcdw.py:269 #: rcgcdw.py:299
msgid "Prefix: {prefix} | {desc}" msgid "Prefix: {prefix} | {desc}"
msgstr "Präfix: {prefix} | {desc}" msgstr "Präfix: {prefix} | {desc}"
#: rcgcdw.py:272 #: rcgcdw.py:302
msgid "Changed the content model of the page {article}" msgid "Changed the content model of the page {article}"
msgstr "Änderte das Inhaltsmodell von {article}" msgstr "Änderte das Inhaltsmodell von {article}"
#: rcgcdw.py:273 #: rcgcdw.py:303
msgid "Model changed from {old} to {new}: {reason}" msgid "Model changed from {old} to {new}: {reason}"
msgstr "Modell geändert von {old} zu {new}: {reason}" msgstr "Modell geändert von {old} zu {new}: {reason}"
#: rcgcdw.py:276 #: rcgcdw.py:306
msgid "Edited the sprite for {article}" msgid "Edited the sprite for {article}"
msgstr "Edited the sprite for {article}" msgstr "Edited the sprite for {article}"
#: rcgcdw.py:279 #: rcgcdw.py:309
msgid "Created the sprite sheet for {article}" msgid "Created the sprite sheet for {article}"
msgstr "Created the sprite sheet for {article}" msgstr "Created the sprite sheet for {article}"
#: rcgcdw.py:282 #: rcgcdw.py:312
msgid "Edited the slice for {article}" msgid "Edited the slice for {article}"
msgstr "Edited the slice for {article}" msgstr "Edited the slice for {article}"
#: rcgcdw.py:285 #: rcgcdw.py:315
msgid "Created a tag \"{tag}\"" msgid "Created a tag \"{tag}\""
msgstr "Erstellte die Markierung \"{tag}\"" msgstr "Erstellte die Markierung \"{tag}\""
#: rcgcdw.py:289 #: rcgcdw.py:319
msgid "Deleted a tag \"{tag}\"" msgid "Deleted a tag \"{tag}\""
msgstr "Löschte die Markierung \"{tag}\"" msgstr "Löschte die Markierung \"{tag}\""
#: rcgcdw.py:293 #: rcgcdw.py:323
msgid "Activated a tag \"{tag}\"" msgid "Activated a tag \"{tag}\""
msgstr "Aktivierte die Markierung \"{tag}\"" msgstr "Aktivierte die Markierung \"{tag}\""
#: rcgcdw.py:296 #: rcgcdw.py:326
msgid "Deactivated a tag \"{tag}\"" msgid "Deactivated a tag \"{tag}\""
msgstr "Deaktivierte die Markierung \"{tag}\"" msgstr "Deaktivierte die Markierung \"{tag}\""
#: rcgcdw.py:317 #: rcgcdw.py:347
msgid "Tags" msgid "Tags"
msgstr "Markierungen" msgstr "Markierungen"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "Unable to process the event" msgid "Unable to process the event"
msgstr "Ereignis kann nicht verabreitet werden" msgstr "Ereignis kann nicht verabreitet werden"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "error" msgid "error"
msgstr "Fehler" msgstr "Fehler"
#: rcgcdw.py:523 #: rcgcdw.py:549
msgid "Daily overview" msgid "Daily overview"
msgstr "Tägliche Übersicht" msgstr "Tägliche Übersicht"
#: rcgcdw.py:539 #: rcgcdw.py:565
msgid " ({} actions)" msgid " ({} actions)"
msgstr " ({} Aktionen)" msgstr " ({} Aktionen)"
#: rcgcdw.py:540 #: rcgcdw.py:566
msgid " UTC ({} actions)" msgid " UTC ({} actions)"
msgstr " UTC ({} Aktionen)" msgstr " UTC ({} Aktionen)"
#: rcgcdw.py:542 rcgcdw.py:543 #: rcgcdw.py:568 rcgcdw.py:569
msgid "But nobody came" msgid "But nobody came"
msgstr "Keine Aktivität" msgstr "Keine Aktivität"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Admin actions" msgid "Admin actions"
msgstr "Admin-Aktionen" msgstr "Admin-Aktionen"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Bytes changed" msgid "Bytes changed"
msgstr "Bytes geändert" msgstr "Bytes geändert"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Day score" msgid "Day score"
msgstr "Tageswert" msgstr "Tageswert"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Edits made" msgid "Edits made"
msgstr "Bearbeitungen" msgstr "Bearbeitungen"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active hours" msgid "Most active hours"
msgstr "Aktivste Stunden" msgstr "Aktivste Stunden"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active users" msgid "Most active users"
msgstr "Aktivste Benutzer" msgstr "Aktivste Benutzer"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New articles" msgid "New articles"
msgstr "Neue Artikel" msgstr "Neue Artikel"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New files" msgid "New files"
msgstr "Neue Dateien" msgstr "Neue Dateien"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Unique contributors" msgid "Unique contributors"
msgstr "Einzelne Autoren" msgstr "Einzelne Autoren"
#: rcgcdw.py:664 #: rcgcdw.py:662
msgid "Connection to {wiki} seems to be stable now."
msgstr "{wiki} scheint wieder erreichbar zu sein."
#: rcgcdw.py:662 rcgcdw.py:715
msgid "Connection status" msgid "Connection status"
msgstr "Verbindungsstatus" msgstr "Verbindungsstatus"
#: rcgcdw.py:664 #: rcgcdw.py:715
msgid "{wiki} seems to be down or unreachable." msgid "{wiki} seems to be down or unreachable."
msgstr "Das {wiki} scheint unerreichbar zu sein." msgstr "Das {wiki} scheint unerreichbar zu sein."
#: rcgcdw.py:683 #: rcgcdw.py:737
msgid "{wiki} is back up!" msgid "{wiki} is back up!"
msgstr "Das {wiki} ist wieder erreichbar." msgstr "Das {wiki} ist wieder erreichbar."

Binary file not shown.

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2018-06-25 18:01+0200\n" "POT-Creation-Date: 2018-07-05 20:21+0200\n"
"PO-Revision-Date: 2018-06-25 18:03+0200\n" "PO-Revision-Date: 2018-07-06 10:44+0200\n"
"Last-Translator: JSBM\n" "Last-Translator: JSBM\n"
"Language-Team: \n" "Language-Team: \n"
"Language: fr\n" "Language: fr\n"
@ -19,39 +19,39 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Poedit-SearchPath-0: rcgcdw.pot\n" "X-Poedit-SearchPath-0: rcgcdw.pot\n"
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "(N!) " msgid "(N!) "
msgstr "(N!) " msgstr "(N!) "
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "m " msgid "m "
msgstr "m " msgstr "m "
#: rcgcdw.py:116 #: rcgcdw.py:144
msgid "Uploaded a new version of {name}"
msgstr "Téléversement d'une nouvelle version de {name}"
#: rcgcdw.py:117
msgid "([preview]({link}) | [undo]({undolink}))" msgid "([preview]({link}) | [undo]({undolink}))"
msgstr "([Aperçu]({link}) | [Annuler]({undolink}))" msgstr "([Aperçu]({link}) | [Annuler]({undolink}))"
#: rcgcdw.py:117 rcgcdw.py:140 #: rcgcdw.py:144 rcgcdw.py:170
msgid "Options" msgid "Options"
msgstr "Options" msgstr "Options"
#: rcgcdw.py:119 #: rcgcdw.py:145
msgid "Uploaded a new version of {name}"
msgstr "Téléversement d'une nouvelle version de {name}"
#: rcgcdw.py:147
msgid "Uploaded {name}" msgid "Uploaded {name}"
msgstr "Téléversement de {name}" msgstr "Téléversement de {name}"
#: rcgcdw.py:131 #: rcgcdw.py:160
msgid "**No license!**" msgid "**No license!**"
msgstr "**Aucune license!**" msgstr "**Aucune license!**"
#: rcgcdw.py:140 #: rcgcdw.py:170
msgid "([preview]({link}))" msgid "([preview]({link}))"
msgstr "([Aperçu]({link}))" msgstr "([Aperçu]({link}))"
#: rcgcdw.py:141 #: rcgcdw.py:171
msgid "" msgid ""
"{desc}\n" "{desc}\n"
"License: {license}" "License: {license}"
@ -59,306 +59,310 @@ msgstr ""
"{desc}\n" "{desc}\n"
"License: {license}" "License: {license}"
#: rcgcdw.py:144 #: rcgcdw.py:174
msgid "Deleted page {article}" msgid "Deleted page {article}"
msgstr "Suppression de la page {article}" msgstr "Suppression de la page {article}"
#: rcgcdw.py:147 #: rcgcdw.py:177
msgid "Deleted redirect {article} by overwriting" msgid "Deleted redirect {article} by overwriting"
msgstr "Suppression par écrasement de la redirection {article}" msgstr "Suppression par écrasement de la redirection {article}"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "A redirect has been made" msgid "A redirect has been made"
msgstr "Une redirection a été créée" msgstr "Une redirection a été créée"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "No redirect has been made" msgid "No redirect has been made"
msgstr "Aucune redirection créée" msgstr "Aucune redirection créée"
#: rcgcdw.py:151 #: rcgcdw.py:181
msgid "Moved {article} to {target}" msgid "Moved {article} to {target}"
msgstr "Déplacement de {article} vers {target}" msgstr "Déplacement de {article} vers {target}"
#: rcgcdw.py:154 #: rcgcdw.py:184
msgid "Moved {article} to {title} over redirect" msgid "Moved {article} to {title} over redirect"
msgstr "Déplacement de {article} vers {title} par redirection" msgstr "Déplacement de {article} vers {title} par redirection"
#: rcgcdw.py:157 #: rcgcdw.py:187
msgid "Moved protection settings from {article} to {title}" msgid "Moved protection settings from {article} to {title}"
msgstr "Transfert des paramètres de protection de {article} vers {title}" msgstr "Transfert des paramètres de protection de {article} vers {title}"
#: rcgcdw.py:161 #: rcgcdw.py:191
msgid "infinity and beyond" msgid "infinity and beyond"
msgstr "toujours" msgstr "toujours"
#: rcgcdw.py:162 #: rcgcdw.py:192
msgid "Blocked {blocked_user} for {time}" msgid "Blocked {blocked_user} for {time}"
msgstr "{blocked user} a été bloqué pour {time}" msgstr "{blocked_user} a été bloqué pour {time}"
#: rcgcdw.py:166 #: rcgcdw.py:196
msgid "Changed block settings for {blocked_user}" msgid "Changed block settings for {blocked_user}"
msgstr "Modification des paramètres de blocage pour {blocked_user}" msgstr "Modification des paramètres de blocage pour {blocked_user}"
#: rcgcdw.py:170 #: rcgcdw.py:200
msgid "Unblocked {blocked_user}" msgid "Unblocked {blocked_user}"
msgstr "{blocked_user} a été débloqué" msgstr "{blocked_user} a été débloqué"
#: rcgcdw.py:174 #: rcgcdw.py:204
msgid "Left a comment on {target}'s profile" msgid "Left a comment on {target}'s profile"
msgstr "Ajout d'un commentaire sur le profil de {target}" msgstr "Ajout d'un commentaire sur le profil de {target}"
#: rcgcdw.py:178 #: rcgcdw.py:208
msgid "Replied to a comment on {target}'s profile" msgid "Replied to a comment on {target}'s profile"
msgstr "Réponse à un commentaire sur le profil de {target}" msgstr "Réponse à un commentaire sur le profil de {target}"
#: rcgcdw.py:182 #: rcgcdw.py:212
msgid "Edited a comment on {target}'s profile" msgid "Edited a comment on {target}'s profile"
msgstr "Édition d'un commentaire sur le profil de {target}" msgstr "Édition d'un commentaire sur le profil de {target}"
#: rcgcdw.py:186 #: rcgcdw.py:216
msgid "Location" msgid "Location"
msgstr "Emplacement" msgstr "Emplacement"
#: rcgcdw.py:188 #: rcgcdw.py:218
msgid "About me" msgid "About me"
msgstr "À propos de moi" msgstr "À propos de moi"
#: rcgcdw.py:190 #: rcgcdw.py:220
msgid "Google link" msgid "Google link"
msgstr "Lien Google" msgstr "Lien Google"
#: rcgcdw.py:192 #: rcgcdw.py:222
msgid "Facebook link" msgid "Facebook link"
msgstr "Lien Facebook" msgstr "Lien Facebook"
#: rcgcdw.py:194 #: rcgcdw.py:224
msgid "Twitter link" msgid "Twitter link"
msgstr "Lien Twitter" msgstr "Lien Twitter"
#: rcgcdw.py:196 #: rcgcdw.py:226
msgid "Reddit link" msgid "Reddit link"
msgstr "Lien Reddit" msgstr "Lien Reddit"
#: rcgcdw.py:198 #: rcgcdw.py:228
msgid "Twitch link" msgid "Twitch link"
msgstr "Lien Twitch" msgstr "Lien Twitch"
#: rcgcdw.py:200 #: rcgcdw.py:230
msgid "PSN link" msgid "PSN link"
msgstr "Lien PSN" msgstr "Lien PSN"
#: rcgcdw.py:202 #: rcgcdw.py:232
msgid "VK link" msgid "VK link"
msgstr "Lien VK" msgstr "Lien VK"
#: rcgcdw.py:204 #: rcgcdw.py:234
msgid "XVL link" msgid "XVL link"
msgstr "Lien XVL" msgstr "Lien XVL"
#: rcgcdw.py:206 #: rcgcdw.py:236
msgid "Steam link" msgid "Steam link"
msgstr "Lien Steam" msgstr "Lien Steam"
#: rcgcdw.py:208 #: rcgcdw.py:238
msgid "Unknown" msgid "Unknown"
msgstr "Inconnu" msgstr "Inconnu"
#: rcgcdw.py:209 #: rcgcdw.py:239
msgid "Edited {target}'s profile" msgid "Edited {target}'s profile"
msgstr "Modification du profil de {target}" msgstr "Modification du profil de {target}"
#: rcgcdw.py:210 #: rcgcdw.py:240
msgid "{field} field changed to: {desc}" msgid "{field} field changed to: {desc}"
msgstr "{field} modifié pour: {desc}" msgstr "{field} modifié pour: {desc}"
#: rcgcdw.py:214 #: rcgcdw.py:244
msgid "Deleted a comment on {target}'s profile" msgid "Deleted a comment on {target}'s profile"
msgstr "Retrait d'un commentaire sur le profil de {target}" msgstr "Retrait d'un commentaire sur le profil de {target}"
#: rcgcdw.py:217 #: rcgcdw.py:247
msgid "Changed group membership for {target}" msgid "Changed group membership for {target}"
msgstr "Modification des groupes pour {target}" msgstr "Modification des groupes pour {target}"
#: rcgcdw.py:221 rcgcdw.py:223 #: rcgcdw.py:251 rcgcdw.py:253
msgid "none" msgid "none"
msgstr "aucun" msgstr "aucun"
#: rcgcdw.py:224 rcgcdw.py:349 #: rcgcdw.py:254 rcgcdw.py:376
msgid "No description provided" msgid "No description provided"
msgstr "Aucune description" msgstr "Aucune description"
#: rcgcdw.py:225 #: rcgcdw.py:255
msgid "Groups changed from {old_groups} to {new_groups} {reason}" msgid "Groups changed from {old_groups} to {new_groups}{reason}"
msgstr "Groupe modifié de {old_groups} vers {new_groups}: {reason}" msgstr "Groupe modifié de {old_groups} vers {new_groups}{reason}"
#: rcgcdw.py:228 #: rcgcdw.py:258
msgid "Protected {target}" msgid "Protected {target}"
msgstr "Protection de {target}" msgstr "Protection de {target}"
#: rcgcdw.py:232 #: rcgcdw.py:262
msgid "Changed protection level for {article}" msgid "Changed protection level for {article}"
msgstr "Modification du niveau de protection de {article}" msgstr "Modification du niveau de protection de {article}"
#: rcgcdw.py:236 #: rcgcdw.py:266
msgid "Removed protection from {article}" msgid "Removed protection from {article}"
msgstr "Retrait de la protection de {article}" msgstr "Retrait de la protection de {article}"
#: rcgcdw.py:239 #: rcgcdw.py:269
msgid "Changed visibility of revision(s) on page {article} " msgid "Changed visibility of revision(s) on page {article} "
msgstr "Modification de la visibilité de révision(s) sur la page {article} " msgstr "Modification de la visibilité de révision(s) sur la page {article} "
#: rcgcdw.py:242 #: rcgcdw.py:272
msgid "Imported {article} with {count} revision(s)" msgid "Imported {article} with {count} revision(s)"
msgstr "Article {article} importé avec {count} révision(s)" msgstr "Article {article} importé avec {count} révision(s)"
#: rcgcdw.py:245 #: rcgcdw.py:275
msgid "Restored {article}" msgid "Restored {article}"
msgstr "Restauration de {article}" msgstr "Restauration de {article}"
#: rcgcdw.py:248 #: rcgcdw.py:278
msgid "Changed visibility of log events" msgid "Changed visibility of log events"
msgstr "Modification de la visibilité d'évènements des journaux" msgstr "Modification de la visibilité d'évènements des journaux"
#: rcgcdw.py:251 #: rcgcdw.py:281
msgid "Imported interwiki" msgid "Imported interwiki"
msgstr "Importation d'interwiki" msgstr "Importation d'interwiki"
#: rcgcdw.py:254 #: rcgcdw.py:284
msgid "Edited abuse filter number {number}" msgid "Edited abuse filter number {number}"
msgstr "Édition de la règle {number} du filtre anti-abus" msgstr "Édition de la règle {number} du filtre anti-abus"
#: rcgcdw.py:257 #: rcgcdw.py:287
msgid "Merged revision histories of {article} into {dest}" msgid "Merged revision histories of {article} into {dest}"
msgstr "Fusion de l'historique de {article} vers {dest}" msgstr "Fusion de l'historique de {article} vers {dest}"
#: rcgcdw.py:260 #: rcgcdw.py:290
msgid "Added an entry to the interwiki table" msgid "Added an entry to the interwiki table"
msgstr "Ajout d'une entrée à la table interwiki" msgstr "Ajout d'une entrée à la table interwiki"
#: rcgcdw.py:261 rcgcdw.py:265 #: rcgcdw.py:291 rcgcdw.py:295
msgid "Prefix: {prefix}, website: {website} | {desc}" msgid "Prefix: {prefix}, website: {website} | {desc}"
msgstr "Préfixe: {prefix}, site: {website} | {desc}" msgstr "Préfixe: {prefix}, site: {website} | {desc}"
#: rcgcdw.py:264 #: rcgcdw.py:294
msgid "Edited an entry in interwiki table" msgid "Edited an entry in interwiki table"
msgstr "Modification d'une entrée de la table interwiki" msgstr "Modification d'une entrée de la table interwiki"
#: rcgcdw.py:268 #: rcgcdw.py:298
msgid "Deleted an entry in interwiki table" msgid "Deleted an entry in interwiki table"
msgstr "Retrait d'une entrée de la table interwiki" msgstr "Retrait d'une entrée de la table interwiki"
#: rcgcdw.py:269 #: rcgcdw.py:299
msgid "Prefix: {prefix} | {desc}" msgid "Prefix: {prefix} | {desc}"
msgstr "Préfixe: {prefix} | {desc}" msgstr "Préfixe: {prefix} | {desc}"
#: rcgcdw.py:272 #: rcgcdw.py:302
msgid "Changed the content model of the page {article}" msgid "Changed the content model of the page {article}"
msgstr "Modification du modèle de contenu de l'article {article}" msgstr "Modification du modèle de contenu de l'article {article}"
#: rcgcdw.py:273 #: rcgcdw.py:303
msgid "Model changed from {old} to {new}: {reason}" msgid "Model changed from {old} to {new}: {reason}"
msgstr "Modèle changé de {old} à {new}: {reason}" msgstr "Modèle changé de {old} à {new}: {reason}"
#: rcgcdw.py:276 #: rcgcdw.py:306
msgid "Edited the sprite for {article}" msgid "Edited the sprite for {article}"
msgstr "Édition du sprite de {article}" msgstr "Édition du sprite de {article}"
#: rcgcdw.py:279 #: rcgcdw.py:309
msgid "Created the sprite sheet for {article}" msgid "Created the sprite sheet for {article}"
msgstr "Création d'une feuille de sprite pour {article}" msgstr "Création d'une feuille de sprite pour {article}"
#: rcgcdw.py:282 #: rcgcdw.py:312
msgid "Edited the slice for {article}" msgid "Edited the slice for {article}"
msgstr "" msgstr "Edited the slice for {article}"
#: rcgcdw.py:285 #: rcgcdw.py:315
msgid "Created a tag \"{tag}\"" msgid "Created a tag \"{tag}\""
msgstr "Création du tag « {tag} »" msgstr "Création du tag « {tag} »"
#: rcgcdw.py:289 #: rcgcdw.py:319
msgid "Deleted a tag \"{tag}\"" msgid "Deleted a tag \"{tag}\""
msgstr "Suppression du tag « {tag} »" msgstr "Suppression du tag « {tag} »"
#: rcgcdw.py:293 #: rcgcdw.py:323
msgid "Activated a tag \"{tag}\"" msgid "Activated a tag \"{tag}\""
msgstr "Activation du tag « {tag} »" msgstr "Activation du tag « {tag} »"
#: rcgcdw.py:296 #: rcgcdw.py:326
msgid "Deactivated a tag \"{tag}\"" msgid "Deactivated a tag \"{tag}\""
msgstr "Désactivation du tag « {tag} »" msgstr "Désactivation du tag « {tag} »"
#: rcgcdw.py:317 #: rcgcdw.py:347
msgid "Tags" msgid "Tags"
msgstr "Tags" msgstr "Tags"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "Unable to process the event" msgid "Unable to process the event"
msgstr "Impossible d'analyser l'évènement" msgstr "Impossible d'analyser l'évènement"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "error" msgid "error"
msgstr "erreur" msgstr "erreur"
#: rcgcdw.py:523 #: rcgcdw.py:549
msgid "Daily overview" msgid "Daily overview"
msgstr "Résumé de la journée" msgstr "Résumé de la journée"
#: rcgcdw.py:539 #: rcgcdw.py:565
msgid " ({} actions)" msgid " ({} actions)"
msgstr " ({} actions)" msgstr " ({} actions)"
#: rcgcdw.py:540 #: rcgcdw.py:566
msgid " UTC ({} actions)" msgid " UTC ({} actions)"
msgstr " UTC ({} actions)" msgstr " UTC ({} actions)"
#: rcgcdw.py:542 rcgcdw.py:543 #: rcgcdw.py:568 rcgcdw.py:569
msgid "But nobody came" msgid "But nobody came"
msgstr "Aucune activité" msgstr "Aucune activité"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Admin actions" msgid "Admin actions"
msgstr "Actions d'administrateur" msgstr "Actions d'administrateur"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Bytes changed" msgid "Bytes changed"
msgstr "Octets modifiés" msgstr "Octets modifiés"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Day score" msgid "Day score"
msgstr "Score du jour" msgstr "Score du jour"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Edits made" msgid "Edits made"
msgstr "Modifications effectuées" msgstr "Modifications effectuées"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active hours" msgid "Most active hours"
msgstr "Heures les plus actives" msgstr "Heures les plus actives"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active users" msgid "Most active users"
msgstr "Membres les plus actifs" msgstr "Membres les plus actifs"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New articles" msgid "New articles"
msgstr "Nouveaux articles" msgstr "Nouveaux articles"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New files" msgid "New files"
msgstr "Nouveaux fichiers" msgstr "Nouveaux fichiers"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Unique contributors" msgid "Unique contributors"
msgstr "Contributeurs uniques" msgstr "Contributeurs uniques"
#: rcgcdw.py:664 #: rcgcdw.py:662
msgid "Connection to {wiki} seems to be stable now."
msgstr "La connexion avec {wiki} semble stable maintenant."
#: rcgcdw.py:662 rcgcdw.py:715
msgid "Connection status" msgid "Connection status"
msgstr "Statut de connexion" msgstr "Statut de connexion"
#: rcgcdw.py:664 #: rcgcdw.py:715
msgid "{wiki} seems to be down or unreachable." msgid "{wiki} seems to be down or unreachable."
msgstr "{wiki} semble être down ou inatteignable." msgstr "{wiki} semble être down ou inatteignable."
#: rcgcdw.py:683 #: rcgcdw.py:737
msgid "{wiki} is back up!" msgid "{wiki} is back up!"
msgstr "{wiki} est de retour!" msgstr "{wiki} est de retour!"

Binary file not shown.

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: RcGcDw\n" "Project-Id-Version: RcGcDw\n"
"POT-Creation-Date: 2018-06-25 18:01+0200\n" "POT-Creation-Date: 2018-07-05 20:21+0200\n"
"PO-Revision-Date: 2018-07-03 20:56+0200\n" "PO-Revision-Date: 2018-07-05 20:22+0200\n"
"Last-Translator: Frisk <piotrex43@protonmail.ch>\n" "Last-Translator: Frisk <piotrex43@protonmail.ch>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: pl\n" "Language: pl\n"
@ -18,39 +18,39 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n" "|| n%100>=20) ? 1 : 2);\n"
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "(N!) " msgid "(N!) "
msgstr "(N!) " msgstr "(N!) "
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "m " msgid "m "
msgstr "d " msgstr "d "
#: rcgcdw.py:116 #: rcgcdw.py:144
msgid "Uploaded a new version of {name}"
msgstr "Przesłał(a) nową wersję {name}"
#: rcgcdw.py:117
msgid "([preview]({link}) | [undo]({undolink}))" msgid "([preview]({link}) | [undo]({undolink}))"
msgstr "([podgląd]({link}) | [wycofaj]({undolink}))" msgstr "([podgląd]({link}) | [wycofaj]({undolink}))"
#: rcgcdw.py:117 rcgcdw.py:140 #: rcgcdw.py:144 rcgcdw.py:170
msgid "Options" msgid "Options"
msgstr "Opcje" msgstr "Opcje"
#: rcgcdw.py:119 #: rcgcdw.py:145
msgid "Uploaded a new version of {name}"
msgstr "Przesłał(a) nową wersję {name}"
#: rcgcdw.py:147
msgid "Uploaded {name}" msgid "Uploaded {name}"
msgstr "Przesłał(a) {name}" msgstr "Przesłał(a) {name}"
#: rcgcdw.py:131 #: rcgcdw.py:160
msgid "**No license!**" msgid "**No license!**"
msgstr "**Brak licencji!**" msgstr "**Brak licencji!**"
#: rcgcdw.py:140 #: rcgcdw.py:170
msgid "([preview]({link}))" msgid "([preview]({link}))"
msgstr "([podgląd]({link}))" msgstr "([podgląd]({link}))"
#: rcgcdw.py:141 #: rcgcdw.py:171
msgid "" msgid ""
"{desc}\n" "{desc}\n"
"License: {license}" "License: {license}"
@ -58,309 +58,313 @@ msgstr ""
"{desc}\n" "{desc}\n"
"Licencja: {license}" "Licencja: {license}"
#: rcgcdw.py:144 #: rcgcdw.py:174
msgid "Deleted page {article}" msgid "Deleted page {article}"
msgstr "Usunął/usunęła {article}" msgstr "Usunął/usunęła {article}"
#: rcgcdw.py:147 #: rcgcdw.py:177
msgid "Deleted redirect {article} by overwriting" msgid "Deleted redirect {article} by overwriting"
msgstr "" msgstr ""
"Usunął/usunęła przekierowanie ({article}) aby utworzyć miejsce dla " "Usunął/usunęła przekierowanie ({article}) aby utworzyć miejsce dla "
"przenoszonej strony" "przenoszonej strony"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "A redirect has been made" msgid "A redirect has been made"
msgstr "Zostało utworzone przekierowanie" msgstr "Zostało utworzone przekierowanie"
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "No redirect has been made" msgid "No redirect has been made"
msgstr "Nie utworzono przekierowania" msgstr "Nie utworzono przekierowania"
#: rcgcdw.py:151 #: rcgcdw.py:181
msgid "Moved {article} to {target}" msgid "Moved {article} to {target}"
msgstr "Przeniósł/przeniosła {article} do {target}" msgstr "Przeniósł/przeniosła {article} do {target}"
#: rcgcdw.py:154 #: rcgcdw.py:184
msgid "Moved {article} to {title} over redirect" msgid "Moved {article} to {title} over redirect"
msgstr "Przeniósł/przeniosła {article} do strony przekierowującej {target}" msgstr "Przeniósł/przeniosła {article} do strony przekierowującej {target}"
#: rcgcdw.py:157 #: rcgcdw.py:187
msgid "Moved protection settings from {article} to {title}" msgid "Moved protection settings from {article} to {title}"
msgstr "Przeniesiono ustawienia zabezpieczeń z {article} do {title}" msgstr "Przeniesiono ustawienia zabezpieczeń z {article} do {title}"
#: rcgcdw.py:161 #: rcgcdw.py:191
msgid "infinity and beyond" msgid "infinity and beyond"
msgstr "wieczność" msgstr "wieczność"
#: rcgcdw.py:162 #: rcgcdw.py:192
msgid "Blocked {blocked_user} for {time}" msgid "Blocked {blocked_user} for {time}"
msgstr "Zablokowano {blocked_user} na {time}" msgstr "Zablokowano {blocked_user} na {time}"
#: rcgcdw.py:166 #: rcgcdw.py:196
msgid "Changed block settings for {blocked_user}" msgid "Changed block settings for {blocked_user}"
msgstr "Zmienił ustawienia blokady {blocked_user}" msgstr "Zmienił ustawienia blokady {blocked_user}"
#: rcgcdw.py:170 #: rcgcdw.py:200
msgid "Unblocked {blocked_user}" msgid "Unblocked {blocked_user}"
msgstr "Odblokował {blocked_user}" msgstr "Odblokował {blocked_user}"
#: rcgcdw.py:174 #: rcgcdw.py:204
msgid "Left a comment on {target}'s profile" msgid "Left a comment on {target}'s profile"
msgstr "Pozostawiono komentarz na profilu użytkownika {target}" msgstr "Pozostawiono komentarz na profilu użytkownika {target}"
#: rcgcdw.py:178 #: rcgcdw.py:208
msgid "Replied to a comment on {target}'s profile" msgid "Replied to a comment on {target}'s profile"
msgstr "Odpowiedziano na komentarz na profilu użytkownika {target}" msgstr "Odpowiedziano na komentarz na profilu użytkownika {target}"
#: rcgcdw.py:182 #: rcgcdw.py:212
msgid "Edited a comment on {target}'s profile" msgid "Edited a comment on {target}'s profile"
msgstr "Edytowano komentarz na profilu użytkownika {target}" msgstr "Edytowano komentarz na profilu użytkownika {target}"
#: rcgcdw.py:186 #: rcgcdw.py:216
msgid "Location" msgid "Location"
msgstr "Lokacja" msgstr "Lokacja"
#: rcgcdw.py:188 #: rcgcdw.py:218
msgid "About me" msgid "About me"
msgstr "O mnie" msgstr "O mnie"
#: rcgcdw.py:190 #: rcgcdw.py:220
msgid "Google link" msgid "Google link"
msgstr "link Google" msgstr "link Google"
#: rcgcdw.py:192 #: rcgcdw.py:222
msgid "Facebook link" msgid "Facebook link"
msgstr "link Facebook" msgstr "link Facebook"
#: rcgcdw.py:194 #: rcgcdw.py:224
msgid "Twitter link" msgid "Twitter link"
msgstr "link Twitter" msgstr "link Twitter"
#: rcgcdw.py:196 #: rcgcdw.py:226
msgid "Reddit link" msgid "Reddit link"
msgstr "link Reddit" msgstr "link Reddit"
#: rcgcdw.py:198 #: rcgcdw.py:228
msgid "Twitch link" msgid "Twitch link"
msgstr "link Twitch" msgstr "link Twitch"
#: rcgcdw.py:200 #: rcgcdw.py:230
msgid "PSN link" msgid "PSN link"
msgstr "link PSN" msgstr "link PSN"
#: rcgcdw.py:202 #: rcgcdw.py:232
msgid "VK link" msgid "VK link"
msgstr "link VK" msgstr "link VK"
#: rcgcdw.py:204 #: rcgcdw.py:234
msgid "XVL link" msgid "XVL link"
msgstr "link XVL" msgstr "link XVL"
#: rcgcdw.py:206 #: rcgcdw.py:236
msgid "Steam link" msgid "Steam link"
msgstr "link Steam" msgstr "link Steam"
#: rcgcdw.py:208 #: rcgcdw.py:238
msgid "Unknown" msgid "Unknown"
msgstr "Nieznana" msgstr "Nieznana"
#: rcgcdw.py:209 #: rcgcdw.py:239
msgid "Edited {target}'s profile" msgid "Edited {target}'s profile"
msgstr "Edytowano profil użytkownika {target}" msgstr "Edytowano profil użytkownika {target}"
#: rcgcdw.py:210 #: rcgcdw.py:240
msgid "{field} field changed to: {desc}" msgid "{field} field changed to: {desc}"
msgstr "pole {field} zostało zmienione na: {desc}" msgstr "pole {field} zostało zmienione na: {desc}"
#: rcgcdw.py:214 #: rcgcdw.py:244
msgid "Deleted a comment on {target}'s profile" msgid "Deleted a comment on {target}'s profile"
msgstr "Usunął komentarz na profilu użytkownika {target}" msgstr "Usunął komentarz na profilu użytkownika {target}"
#: rcgcdw.py:217 #: rcgcdw.py:247
msgid "Changed group membership for {target}" msgid "Changed group membership for {target}"
msgstr "Zmieniono przynależność do grup dla {target}" msgstr "Zmieniono przynależność do grup dla {target}"
#: rcgcdw.py:221 rcgcdw.py:223 #: rcgcdw.py:251 rcgcdw.py:253
msgid "none" msgid "none"
msgstr "brak" msgstr "brak"
#: rcgcdw.py:224 rcgcdw.py:349 #: rcgcdw.py:254 rcgcdw.py:376
msgid "No description provided" msgid "No description provided"
msgstr "Nie podano opisu zmian" msgstr "Nie podano opisu zmian"
#: rcgcdw.py:225 #: rcgcdw.py:255
msgid "Groups changed from {old_groups} to {new_groups} {reason}" msgid "Groups changed from {old_groups} to {new_groups}{reason}"
msgstr "Grupy zmienione z {old_groups} do {new_groups} {reason}" msgstr "Grupy zmienione z {old_groups} do {new_groups}{reason}"
#: rcgcdw.py:228 #: rcgcdw.py:258
msgid "Protected {target}" msgid "Protected {target}"
msgstr "Zabezpieczono {target}" msgstr "Zabezpieczono {target}"
#: rcgcdw.py:232 #: rcgcdw.py:262
msgid "Changed protection level for {article}" msgid "Changed protection level for {article}"
msgstr "Zmieniono poziom zabezpieczeń {article}" msgstr "Zmieniono poziom zabezpieczeń {article}"
#: rcgcdw.py:236 #: rcgcdw.py:266
msgid "Removed protection from {article}" msgid "Removed protection from {article}"
msgstr "Usunięto zabezpieczenie {article}" msgstr "Usunięto zabezpieczenie {article}"
#: rcgcdw.py:239 #: rcgcdw.py:269
msgid "Changed visibility of revision(s) on page {article} " msgid "Changed visibility of revision(s) on page {article} "
msgstr "Zmieniono widoczność wersji na stroni {article}" msgstr "Zmieniono widoczność wersji na stroni {article}"
#: rcgcdw.py:242 #: rcgcdw.py:272
msgid "Imported {article} with {count} revision(s)" msgid "Imported {article} with {count} revision(s)"
msgstr "Zaimportowano {article} z {count} wersjami" msgstr "Zaimportowano {article} z {count} wersjami"
#: rcgcdw.py:245 #: rcgcdw.py:275
msgid "Restored {article}" msgid "Restored {article}"
msgstr "Przywrócono {article)" msgstr "Przywrócono {article)"
#: rcgcdw.py:248 #: rcgcdw.py:278
msgid "Changed visibility of log events" msgid "Changed visibility of log events"
msgstr "Zmieniono widoczność logów" msgstr "Zmieniono widoczność logów"
#: rcgcdw.py:251 #: rcgcdw.py:281
msgid "Imported interwiki" msgid "Imported interwiki"
msgstr "Zaimportowano interwiki" msgstr "Zaimportowano interwiki"
#: rcgcdw.py:254 #: rcgcdw.py:284
msgid "Edited abuse filter number {number}" msgid "Edited abuse filter number {number}"
msgstr "Edytowano filtr nadużyć numer {number}" msgstr "Edytowano filtr nadużyć numer {number}"
#: rcgcdw.py:257 #: rcgcdw.py:287
msgid "Merged revision histories of {article} into {dest}" msgid "Merged revision histories of {article} into {dest}"
msgstr "Połączono historie {article} z {dest}" msgstr "Połączono historie {article} z {dest}"
#: rcgcdw.py:260 #: rcgcdw.py:290
msgid "Added an entry to the interwiki table" msgid "Added an entry to the interwiki table"
msgstr "Dodano wpis do tabeli interwiki" msgstr "Dodano wpis do tabeli interwiki"
#: rcgcdw.py:261 rcgcdw.py:265 #: rcgcdw.py:291 rcgcdw.py:295
msgid "Prefix: {prefix}, website: {website} | {desc}" msgid "Prefix: {prefix}, website: {website} | {desc}"
msgstr "Prefix: {prefix}, strona: {website} | desc" msgstr "Prefix: {prefix}, strona: {website} | desc"
#: rcgcdw.py:264 #: rcgcdw.py:294
msgid "Edited an entry in interwiki table" msgid "Edited an entry in interwiki table"
msgstr "Edytowano wpis interwiki" msgstr "Edytowano wpis interwiki"
#: rcgcdw.py:268 #: rcgcdw.py:298
msgid "Deleted an entry in interwiki table" msgid "Deleted an entry in interwiki table"
msgstr "Usunięto wpis interwiki" msgstr "Usunięto wpis interwiki"
#: rcgcdw.py:269 #: rcgcdw.py:299
msgid "Prefix: {prefix} | {desc}" msgid "Prefix: {prefix} | {desc}"
msgstr "Prefix: {prefix} | {desc}" msgstr "Prefix: {prefix} | {desc}"
#: rcgcdw.py:272 #: rcgcdw.py:302
msgid "Changed the content model of the page {article}" msgid "Changed the content model of the page {article}"
msgstr "Zmieniono model zawartości {article}" msgstr "Zmieniono model zawartości {article}"
#: rcgcdw.py:273 #: rcgcdw.py:303
msgid "Model changed from {old} to {new}: {reason}" msgid "Model changed from {old} to {new}: {reason}"
msgstr "Model został zmieniony z {old} na {new}: {reason}" msgstr "Model został zmieniony z {old} na {new}: {reason}"
#: rcgcdw.py:276 #: rcgcdw.py:306
msgid "Edited the sprite for {article}" msgid "Edited the sprite for {article}"
msgstr "Edytowano sprite dla {article}" msgstr "Edytowano sprite dla {article}"
#: rcgcdw.py:279 #: rcgcdw.py:309
msgid "Created the sprite sheet for {article}" msgid "Created the sprite sheet for {article}"
msgstr "Utworzono sprite sheet dla {article}" msgstr "Utworzono sprite sheet dla {article}"
#: rcgcdw.py:282 #: rcgcdw.py:312
msgid "Edited the slice for {article}" msgid "Edited the slice for {article}"
msgstr "Edytowano część sprite dla {article}" msgstr "Edytowano część sprite dla {article}"
#: rcgcdw.py:285 #: rcgcdw.py:315
msgid "Created a tag \"{tag}\"" msgid "Created a tag \"{tag}\""
msgstr "Utworzono tag \"{tag}\"" msgstr "Utworzono tag \"{tag}\""
#: rcgcdw.py:289 #: rcgcdw.py:319
msgid "Deleted a tag \"{tag}\"" msgid "Deleted a tag \"{tag}\""
msgstr "Usunięto tag \"{tag}\"" msgstr "Usunięto tag \"{tag}\""
#: rcgcdw.py:293 #: rcgcdw.py:323
msgid "Activated a tag \"{tag}\"" msgid "Activated a tag \"{tag}\""
msgstr "Aktywowano tag \"{tag}\"" msgstr "Aktywowano tag \"{tag}\""
#: rcgcdw.py:296 #: rcgcdw.py:326
msgid "Deactivated a tag \"{tag}\"" msgid "Deactivated a tag \"{tag}\""
msgstr "Dezaktywowano tag \"{tag}\"" msgstr "Dezaktywowano tag \"{tag}\""
#: rcgcdw.py:317 #: rcgcdw.py:347
msgid "Tags" msgid "Tags"
msgstr "Tagi" msgstr "Tagi"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "Unable to process the event" msgid "Unable to process the event"
msgstr "Nie udało się odczytać wydarzenia" msgstr "Nie udało się odczytać wydarzenia"
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "error" msgid "error"
msgstr "błąd" msgstr "błąd"
#: rcgcdw.py:523 #: rcgcdw.py:549
msgid "Daily overview" msgid "Daily overview"
msgstr "Podsumowanie dnia" msgstr "Podsumowanie dnia"
#: rcgcdw.py:539 #: rcgcdw.py:565
msgid " ({} actions)" msgid " ({} actions)"
msgstr "({} akcji)" msgstr "({} akcji)"
#: rcgcdw.py:540 #: rcgcdw.py:566
msgid " UTC ({} actions)" msgid " UTC ({} actions)"
msgstr " UTC ({} akcji)" msgstr " UTC ({} akcji)"
#: rcgcdw.py:542 rcgcdw.py:543 #: rcgcdw.py:568 rcgcdw.py:569
msgid "But nobody came" msgid "But nobody came"
msgstr "Ale nikt nie przyszedł" msgstr "Ale nikt nie przyszedł"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Admin actions" msgid "Admin actions"
msgstr "Akcji administratorskich" msgstr "Akcji administratorskich"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Bytes changed" msgid "Bytes changed"
msgstr "Zmienionych bajtów" msgstr "Zmienionych bajtów"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Day score" msgid "Day score"
msgstr "Wynik dnia" msgstr "Wynik dnia"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Edits made" msgid "Edits made"
msgstr "Zrobionych edycji" msgstr "Zrobionych edycji"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active hours" msgid "Most active hours"
msgstr "Najbardziej aktywne godziny" msgstr "Najbardziej aktywne godziny"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active users" msgid "Most active users"
msgstr "Najbardziej aktywni użytkownicy" msgstr "Najbardziej aktywni użytkownicy"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New articles" msgid "New articles"
msgstr "Nowych artykułów" msgstr "Nowych artykułów"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New files" msgid "New files"
msgstr "Nowych plików" msgstr "Nowych plików"
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Unique contributors" msgid "Unique contributors"
msgstr "Unikalnych edytujących" msgstr "Unikalnych edytujących"
#: rcgcdw.py:664 #: rcgcdw.py:662
msgid "Connection to {wiki} seems to be stable now."
msgstr "Połączenie z {wiki} wygląda na stabilne."
#: rcgcdw.py:662 rcgcdw.py:715
msgid "Connection status" msgid "Connection status"
msgstr "Problem z połączeniem" msgstr "Problem z połączeniem"
#: rcgcdw.py:664 #: rcgcdw.py:715
msgid "{wiki} seems to be down or unreachable." msgid "{wiki} seems to be down or unreachable."
msgstr "{wiki} nie działa lub jest nieosiągalna." msgstr "{wiki} nie działa lub jest nieosiągalna."
#: rcgcdw.py:683 #: rcgcdw.py:737
msgid "{wiki} is back up!" msgid "{wiki} is back up!"
msgstr "{wiki} jest ponownie osiągalna!" msgstr "{wiki} jest ponownie osiągalna!"

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2018-06-25 18:01+0200\n" "POT-Creation-Date: 2018-07-05 20:21+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,345 +15,349 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "(N!) " msgid "(N!) "
msgstr "" msgstr ""
#: rcgcdw.py:103 #: rcgcdw.py:126
msgid "m " msgid "m "
msgstr "" msgstr ""
#: rcgcdw.py:116 #: rcgcdw.py:144
msgid "Uploaded a new version of {name}"
msgstr ""
#: rcgcdw.py:117
msgid "([preview]({link}) | [undo]({undolink}))" msgid "([preview]({link}) | [undo]({undolink}))"
msgstr "" msgstr ""
#: rcgcdw.py:117 rcgcdw.py:140 #: rcgcdw.py:144 rcgcdw.py:170
msgid "Options" msgid "Options"
msgstr "" msgstr ""
#: rcgcdw.py:119 #: rcgcdw.py:145
msgid "Uploaded a new version of {name}"
msgstr ""
#: rcgcdw.py:147
msgid "Uploaded {name}" msgid "Uploaded {name}"
msgstr "" msgstr ""
#: rcgcdw.py:131 #: rcgcdw.py:160
msgid "**No license!**" msgid "**No license!**"
msgstr "" msgstr ""
#: rcgcdw.py:140 #: rcgcdw.py:170
msgid "([preview]({link}))" msgid "([preview]({link}))"
msgstr "" msgstr ""
#: rcgcdw.py:141 #: rcgcdw.py:171
msgid "" msgid ""
"{desc}\n" "{desc}\n"
"License: {license}" "License: {license}"
msgstr "" msgstr ""
#: rcgcdw.py:144 #: rcgcdw.py:174
msgid "Deleted page {article}" msgid "Deleted page {article}"
msgstr "" msgstr ""
#: rcgcdw.py:147 #: rcgcdw.py:177
msgid "Deleted redirect {article} by overwriting" msgid "Deleted redirect {article} by overwriting"
msgstr "" msgstr ""
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "A redirect has been made" msgid "A redirect has been made"
msgstr "" msgstr ""
#: rcgcdw.py:150 #: rcgcdw.py:180
msgid "No redirect has been made" msgid "No redirect has been made"
msgstr "" msgstr ""
#: rcgcdw.py:151 #: rcgcdw.py:181
msgid "Moved {article} to {target}" msgid "Moved {article} to {target}"
msgstr "" msgstr ""
#: rcgcdw.py:154 #: rcgcdw.py:184
msgid "Moved {article} to {title} over redirect" msgid "Moved {article} to {title} over redirect"
msgstr "" msgstr ""
#: rcgcdw.py:157 #: rcgcdw.py:187
msgid "Moved protection settings from {article} to {title}" msgid "Moved protection settings from {article} to {title}"
msgstr "" msgstr ""
#: rcgcdw.py:161 #: rcgcdw.py:191
msgid "infinity and beyond" msgid "infinity and beyond"
msgstr "" msgstr ""
#: rcgcdw.py:162 #: rcgcdw.py:192
msgid "Blocked {blocked_user} for {time}" msgid "Blocked {blocked_user} for {time}"
msgstr "" msgstr ""
#: rcgcdw.py:166 #: rcgcdw.py:196
msgid "Changed block settings for {blocked_user}" msgid "Changed block settings for {blocked_user}"
msgstr "" msgstr ""
#: rcgcdw.py:170 #: rcgcdw.py:200
msgid "Unblocked {blocked_user}" msgid "Unblocked {blocked_user}"
msgstr "" msgstr ""
#: rcgcdw.py:174 #: rcgcdw.py:204
msgid "Left a comment on {target}'s profile" msgid "Left a comment on {target}'s profile"
msgstr "" msgstr ""
#: rcgcdw.py:178 #: rcgcdw.py:208
msgid "Replied to a comment on {target}'s profile" msgid "Replied to a comment on {target}'s profile"
msgstr "" msgstr ""
#: rcgcdw.py:182 #: rcgcdw.py:212
msgid "Edited a comment on {target}'s profile" msgid "Edited a comment on {target}'s profile"
msgstr "" msgstr ""
#: rcgcdw.py:186 #: rcgcdw.py:216
msgid "Location" msgid "Location"
msgstr "" msgstr ""
#: rcgcdw.py:188 #: rcgcdw.py:218
msgid "About me" msgid "About me"
msgstr "" msgstr ""
#: rcgcdw.py:190 #: rcgcdw.py:220
msgid "Google link" msgid "Google link"
msgstr "" msgstr ""
#: rcgcdw.py:192 #: rcgcdw.py:222
msgid "Facebook link" msgid "Facebook link"
msgstr "" msgstr ""
#: rcgcdw.py:194 #: rcgcdw.py:224
msgid "Twitter link" msgid "Twitter link"
msgstr "" msgstr ""
#: rcgcdw.py:196 #: rcgcdw.py:226
msgid "Reddit link" msgid "Reddit link"
msgstr "" msgstr ""
#: rcgcdw.py:198 #: rcgcdw.py:228
msgid "Twitch link" msgid "Twitch link"
msgstr "" msgstr ""
#: rcgcdw.py:200 #: rcgcdw.py:230
msgid "PSN link" msgid "PSN link"
msgstr "" msgstr ""
#: rcgcdw.py:202 #: rcgcdw.py:232
msgid "VK link" msgid "VK link"
msgstr "" msgstr ""
#: rcgcdw.py:204 #: rcgcdw.py:234
msgid "XVL link" msgid "XVL link"
msgstr "" msgstr ""
#: rcgcdw.py:206 #: rcgcdw.py:236
msgid "Steam link" msgid "Steam link"
msgstr "" msgstr ""
#: rcgcdw.py:208 #: rcgcdw.py:238
msgid "Unknown" msgid "Unknown"
msgstr "" msgstr ""
#: rcgcdw.py:209 #: rcgcdw.py:239
msgid "Edited {target}'s profile" msgid "Edited {target}'s profile"
msgstr "" msgstr ""
#: rcgcdw.py:210 #: rcgcdw.py:240
msgid "{field} field changed to: {desc}" msgid "{field} field changed to: {desc}"
msgstr "" msgstr ""
#: rcgcdw.py:214 #: rcgcdw.py:244
msgid "Deleted a comment on {target}'s profile" msgid "Deleted a comment on {target}'s profile"
msgstr "" msgstr ""
#: rcgcdw.py:217 #: rcgcdw.py:247
msgid "Changed group membership for {target}" msgid "Changed group membership for {target}"
msgstr "" msgstr ""
#: rcgcdw.py:221 rcgcdw.py:223 #: rcgcdw.py:251 rcgcdw.py:253
msgid "none" msgid "none"
msgstr "" msgstr ""
#: rcgcdw.py:224 rcgcdw.py:349 #: rcgcdw.py:254 rcgcdw.py:376
msgid "No description provided" msgid "No description provided"
msgstr "" msgstr ""
#: rcgcdw.py:225 #: rcgcdw.py:255
msgid "Groups changed from {old_groups} to {new_groups} {reason}" msgid "Groups changed from {old_groups} to {new_groups}{reason}"
msgstr "" msgstr ""
#: rcgcdw.py:228 #: rcgcdw.py:258
msgid "Protected {target}" msgid "Protected {target}"
msgstr "" msgstr ""
#: rcgcdw.py:232 #: rcgcdw.py:262
msgid "Changed protection level for {article}" msgid "Changed protection level for {article}"
msgstr "" msgstr ""
#: rcgcdw.py:236 #: rcgcdw.py:266
msgid "Removed protection from {article}" msgid "Removed protection from {article}"
msgstr "" msgstr ""
#: rcgcdw.py:239 #: rcgcdw.py:269
msgid "Changed visibility of revision(s) on page {article} " msgid "Changed visibility of revision(s) on page {article} "
msgstr "" msgstr ""
#: rcgcdw.py:242 #: rcgcdw.py:272
msgid "Imported {article} with {count} revision(s)" msgid "Imported {article} with {count} revision(s)"
msgstr "" msgstr ""
#: rcgcdw.py:245 #: rcgcdw.py:275
msgid "Restored {article}" msgid "Restored {article}"
msgstr "" msgstr ""
#: rcgcdw.py:248 #: rcgcdw.py:278
msgid "Changed visibility of log events" msgid "Changed visibility of log events"
msgstr "" msgstr ""
#: rcgcdw.py:251 #: rcgcdw.py:281
msgid "Imported interwiki" msgid "Imported interwiki"
msgstr "" msgstr ""
#: rcgcdw.py:254 #: rcgcdw.py:284
msgid "Edited abuse filter number {number}" msgid "Edited abuse filter number {number}"
msgstr "" msgstr ""
#: rcgcdw.py:257 #: rcgcdw.py:287
msgid "Merged revision histories of {article} into {dest}" msgid "Merged revision histories of {article} into {dest}"
msgstr "" msgstr ""
#: rcgcdw.py:260 #: rcgcdw.py:290
msgid "Added an entry to the interwiki table" msgid "Added an entry to the interwiki table"
msgstr "" msgstr ""
#: rcgcdw.py:261 rcgcdw.py:265 #: rcgcdw.py:291 rcgcdw.py:295
msgid "Prefix: {prefix}, website: {website} | {desc}" msgid "Prefix: {prefix}, website: {website} | {desc}"
msgstr "" msgstr ""
#: rcgcdw.py:264 #: rcgcdw.py:294
msgid "Edited an entry in interwiki table" msgid "Edited an entry in interwiki table"
msgstr "" msgstr ""
#: rcgcdw.py:268 #: rcgcdw.py:298
msgid "Deleted an entry in interwiki table" msgid "Deleted an entry in interwiki table"
msgstr "" msgstr ""
#: rcgcdw.py:269 #: rcgcdw.py:299
msgid "Prefix: {prefix} | {desc}" msgid "Prefix: {prefix} | {desc}"
msgstr "" msgstr ""
#: rcgcdw.py:272 #: rcgcdw.py:302
msgid "Changed the content model of the page {article}" msgid "Changed the content model of the page {article}"
msgstr "" msgstr ""
#: rcgcdw.py:273 #: rcgcdw.py:303
msgid "Model changed from {old} to {new}: {reason}" msgid "Model changed from {old} to {new}: {reason}"
msgstr "" msgstr ""
#: rcgcdw.py:276 #: rcgcdw.py:306
msgid "Edited the sprite for {article}" msgid "Edited the sprite for {article}"
msgstr "" msgstr ""
#: rcgcdw.py:279 #: rcgcdw.py:309
msgid "Created the sprite sheet for {article}" msgid "Created the sprite sheet for {article}"
msgstr "" msgstr ""
#: rcgcdw.py:282 #: rcgcdw.py:312
msgid "Edited the slice for {article}" msgid "Edited the slice for {article}"
msgstr "" msgstr ""
#: rcgcdw.py:285 #: rcgcdw.py:315
msgid "Created a tag \"{tag}\"" msgid "Created a tag \"{tag}\""
msgstr "" msgstr ""
#: rcgcdw.py:289 #: rcgcdw.py:319
msgid "Deleted a tag \"{tag}\"" msgid "Deleted a tag \"{tag}\""
msgstr "" msgstr ""
#: rcgcdw.py:293 #: rcgcdw.py:323
msgid "Activated a tag \"{tag}\"" msgid "Activated a tag \"{tag}\""
msgstr "" msgstr ""
#: rcgcdw.py:296 #: rcgcdw.py:326
msgid "Deactivated a tag \"{tag}\"" msgid "Deactivated a tag \"{tag}\""
msgstr "" msgstr ""
#: rcgcdw.py:317 #: rcgcdw.py:347
msgid "Tags" msgid "Tags"
msgstr "" msgstr ""
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "Unable to process the event" msgid "Unable to process the event"
msgstr "" msgstr ""
#: rcgcdw.py:443 #: rcgcdw.py:469
msgid "error" msgid "error"
msgstr "" msgstr ""
#: rcgcdw.py:523 #: rcgcdw.py:549
msgid "Daily overview" msgid "Daily overview"
msgstr "" msgstr ""
#: rcgcdw.py:539 #: rcgcdw.py:565
msgid " ({} actions)" msgid " ({} actions)"
msgstr "" msgstr ""
#: rcgcdw.py:540 #: rcgcdw.py:566
msgid " UTC ({} actions)" msgid " UTC ({} actions)"
msgstr "" msgstr ""
#: rcgcdw.py:542 rcgcdw.py:543 #: rcgcdw.py:568 rcgcdw.py:569
msgid "But nobody came" msgid "But nobody came"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Admin actions" msgid "Admin actions"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Bytes changed" msgid "Bytes changed"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Day score" msgid "Day score"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Edits made" msgid "Edits made"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active hours" msgid "Most active hours"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Most active users" msgid "Most active users"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New articles" msgid "New articles"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "New files" msgid "New files"
msgstr "" msgstr ""
#: rcgcdw.py:547 #: rcgcdw.py:573
msgid "Unique contributors" msgid "Unique contributors"
msgstr "" msgstr ""
#: rcgcdw.py:664 #: rcgcdw.py:662
msgid "Connection to {wiki} seems to be stable now."
msgstr ""
#: rcgcdw.py:662 rcgcdw.py:715
msgid "Connection status" msgid "Connection status"
msgstr "" msgstr ""
#: rcgcdw.py:664 #: rcgcdw.py:715
msgid "{wiki} seems to be down or unreachable." msgid "{wiki} seems to be down or unreachable."
msgstr "" msgstr ""
#: rcgcdw.py:683 #: rcgcdw.py:737
msgid "{wiki} is back up!" msgid "{wiki} is back up!"
msgstr "" msgstr ""

111
rcgcdw.py
View file

@ -41,10 +41,7 @@ else:
_ = lambda s: s _ = lambda s: s
def send(message, name, avatar): def send(message, name, avatar):
try: send_to_discord({"content": message, "avatar_url": avatar, "username": name})
req = requests.post(settings["webhookURL"], data={"content": message, "avatar_url": avatar, "username": name}, timeout=10)
except:
pass
def safe_read(request, *keys): def safe_read(request, *keys):
if request is None: if request is None:
@ -60,7 +57,33 @@ def safe_read(request, *keys):
logging.warning("Failure while extracting data from request in {change}".format(change=request)) logging.warning("Failure while extracting data from request in {change}".format(change=request))
return None return None
return request return request
def send_to_discord_webhook(data):
try:
result = requests.post(settings["webhookURL"], data=data, headers={**{'Content-Type': 'application/json'}, **settings["header"]}, timeout=10)
except requests.exceptions.Timeout:
logging.warning("Timeouted while sending data to the webhook.")
return 3
except requests.exceptions.ConnectionError:
logging.warning("Connection error while sending the data to a webhook")
return 3
else:
return handle_discord_http(result.status_code, data)
def send_to_discord(data):
if recent_changes.unsent_messages:
recent_changes.unsent_messages.append(data)
else:
code = send_to_discord_webhook(data)
if code == 3:
recent_changes.unsent_messages.append(data)
elif code == 2:
time.sleep(5.0)
recent_changes.unsent_messages.append(data)
elif code < 2:
time.sleep(2.5)
pass
def webhook_formatter(action, STATIC, **params): def webhook_formatter(action, STATIC, **params):
logging.debug("Received things: {thing}".format(thing=params)) logging.debug("Received things: {thing}".format(thing=params))
colornumber = None if isinstance(STATIC["color"], str) else STATIC["color"] colornumber = None if isinstance(STATIC["color"], str) else STATIC["color"]
@ -84,7 +107,7 @@ def webhook_formatter(action, STATIC, **params):
params["user"] = "{author} ({amount})".format(author=params["user"], amount=recent_changes.map_ips[params["user"]]) params["user"] = "{author} ({amount})".format(author=params["user"], amount=recent_changes.map_ips[params["user"]])
else: else:
author_url = "https://{wiki}.gamepedia.com/User:{user}".format(wiki=settings["wiki"], user=params["user"].replace(" ", "_")) author_url = "https://{wiki}.gamepedia.com/User:{user}".format(wiki=settings["wiki"], user=params["user"].replace(" ", "_"))
if action in [1, 37]: #edit or new page if action in (1, 37): #edit or new page
editsize = params["size"] editsize = params["size"]
print (editsize) print (editsize)
if editsize > 0: if editsize > 0:
@ -99,13 +122,13 @@ def webhook_formatter(action, STATIC, **params):
colornumber = 9175040 + (math.floor((editsize*-1)/(52)))*65536 colornumber = 9175040 + (math.floor((editsize*-1)/(52)))*65536
elif editsize == 0: elif editsize == 0:
colornumber = 8750469 colornumber = 8750469
link = "https://{wiki}.gamepedia.com/index.php?title={article}&curid={pageid}&diff={diff}&oldid={oldrev}".format(wiki=settings["wiki"], pageid=params["pageid"], diff=params["diff"], oldrev=params["oldrev"], article=article_encoded) link = "https://{wiki}.gamepedia.com/index.php?title={article}&curid={pageid}&diff={diff}&oldid={oldrev}".format(wiki=settings["wiki"], pageid=params["pageid"], diff=params["diff"], oldrev=params["oldrev"], article=params["title"].replace(" ", "_"))
embed["title"] = "{article} ({new}{minor}{editsize})".format(article=params["title"], editsize="+"+str(editsize) if editsize>0 else editsize, new= _("(N!) ") if action == 37 else "", minor=_("m ") if action == 1 and params["minor"] else "") embed["title"] = "{article} ({new}{minor}{editsize})".format(article=params["title"], editsize="+"+str(editsize) if editsize>0 else editsize, new= _("(N!) ") if action == 37 else "", minor=_("m ") if action == 1 and params["minor"] else "")
elif action == 5: #sending files elif action == 5: #sending files
license = None license = None
urls = safe_read(recent_changes.safe_request("https://{wiki}.gamepedia.com/api.php?action=query&format=json&prop=imageinfo&list=&meta=&titles={filename}&iiprop=timestamp%7Curl&iilimit=2".format(wiki=settings["wiki"], filename=params["title"])), "query", "pages") urls = safe_read(recent_changes.safe_request("https://{wiki}.gamepedia.com/api.php?action=query&format=json&prop=imageinfo&list=&meta=&titles={filename}&iiprop=timestamp%7Curl&iilimit=2".format(wiki=settings["wiki"], filename=params["title"])), "query", "pages")
undolink = "" undolink = ""
link ="https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=article_encoded) link ="https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["title"].replace(" ", "_"))
additional_info_retrieved = False additional_info_retrieved = False
if urls is not None: if urls is not None:
if "-1" not in urls: #oage removed before we asked for it if "-1" not in urls: #oage removed before we asked for it
@ -160,7 +183,7 @@ def webhook_formatter(action, STATIC, **params):
link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["target"].replace(" ", "_")) link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["target"].replace(" ", "_"))
embed["title"] = _("Moved {article} to {title} over redirect").format(article=params["title"], title=params["target"]) embed["title"] = _("Moved {article} to {title} over redirect").format(article=params["title"], title=params["target"])
elif action == 16: elif action == 16:
link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=article_encoded) link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["title"].replace(" ", "_"))
embed["title"] = _("Moved protection settings from {article} to {title}").format(article=params["title"], title=params["target"]) embed["title"] = _("Moved protection settings from {article} to {title}").format(article=params["title"], title=params["target"])
elif action == 17: elif action == 17:
link = "https://{wiki}.gamepedia.com/{user}".format(wiki=settings["wiki"], user=params["blocked_user"].replace(" ", "_").replace(')', '\)')) link = "https://{wiki}.gamepedia.com/{user}".format(wiki=settings["wiki"], user=params["blocked_user"].replace(" ", "_").replace(')', '\)'))
@ -222,14 +245,14 @@ def webhook_formatter(action, STATIC, **params):
elif action == 20: elif action == 20:
link = "https://{wiki}.gamepedia.com/User:".format(wiki=settings["wiki"])+params["title"].split(":")[1] link = "https://{wiki}.gamepedia.com/User:".format(wiki=settings["wiki"])+params["title"].split(":")[1]
embed["title"] = _("Changed group membership for {target}").format(target=params["title"].split(":")[1]) embed["title"] = _("Changed group membership for {target}").format(target=params["title"].split(":")[1])
if params["old_groups"].count(' ') < params["new_groups"].count(' '): if params["old_groups"].count(' ') < params["new_groups"].count(' ') or params["old_groups"] == "none": #TODO Hardcoded value, depends on translation
embed["thumbnail"]["url"] = "https://i.imgur.com/WnGhF5g.gif" embed["thumbnail"]["url"] = "https://i.imgur.com/WnGhF5g.gif"
if len(params["old_groups"]) < 4: if len(params["old_groups"]) < 4:
params["old_groups"] = _("none") params["old_groups"] = _("none")
if len(params["new_groups"]) < 4: if len(params["new_groups"]) < 4:
params["new_groups"] = _("none") params["new_groups"] = _("none")
reason = "| {desc}".format(desc=params["desc"]) if params["desc"]!=_("No description provided") else "" reason = ": {desc}".format(desc=params["desc"]) if params["desc"]!=_("No description provided") else ""
params["desc"] = _("Groups changed from {old_groups} to {new_groups} {reason}").format(old_groups=params["old_groups"], new_groups=params["new_groups"], reason=reason) params["desc"] = _("Groups changed from {old_groups} to {new_groups}{reason}").format(old_groups=params["old_groups"], new_groups=params["new_groups"], reason=reason)
elif action == 2: elif action == 2:
link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["title"].replace(" ", "_")) link = "https://{wiki}.gamepedia.com/{article}".format(wiki=settings["wiki"], article=params["title"].replace(" ", "_"))
embed["title"] = _("Protected {target}").format(target=params["title"]) embed["title"] = _("Protected {target}").format(target=params["title"])
@ -325,28 +348,24 @@ def webhook_formatter(action, STATIC, **params):
data["embeds"].append(dict(embed)) data["embeds"].append(dict(embed))
data['avatar_url'] = settings["avatars"]["embed"] data['avatar_url'] = settings["avatars"]["embed"]
formatted_embed = json.dumps(data, indent=4) formatted_embed = json.dumps(data, indent=4)
headers = {'Content-Type': 'application/json'} send_to_discord(formatted_embed)
#logging.debug(data)
result = requests.post(settings["webhookURL"], data=formatted_embed, headers=headers)
if result.status_code != requests.codes.ok:
handle_discord_http(result.status_code, formatted_embed, headers)
def handle_discord_http(code, formatted_embed, headers): def handle_discord_http(code, formatted_embed):
if code == 204: #message went through if 300 > code > 199: #message went through
return return 0
elif code == 400: #HTTP BAD REQUEST elif code == 400: #HTTP BAD REQUEST
logging.error("Following message has been rejected by Discord, please submit a bug on our bugtracker adding it:") logging.error("Following message has been rejected by Discord, please submit a bug on our bugtracker adding it:")
logging.error(formatted_embed) logging.error(formatted_embed)
elif code == 401: #HTTP UNAUTHORIZED return 1
elif code == 401 or code == 404: #HTTP UNAUTHORIZED AND NOT FOUND
logging.error("Webhook URL is invalid or no longer in use, please replace it with proper one.") logging.error("Webhook URL is invalid or no longer in use, please replace it with proper one.")
sys.exit(1)
elif code == 429: elif code == 429:
logging.error("We are sending too many requests to the Discord, slowing down...") logging.error("We are sending too many requests to the Discord, slowing down...")
time.sleep(20.0) return 2
result = requests.post(settings["webhookURL"], data=formatted_embed, headers=headers) #TODO Replace this solution with less obscure one elif 499 < code < 600:
elif code > 500 and code < 600: logging.error("Discord have trouble processing the event, and because the HTTP code returned is {} it means we blame them.".format(code))
logging.error("Discord have trouble processing the event, and because the HTTP code returned is 500> it means we blame them.") return 3
time.sleep(20.0)
result = requests.post(settings["webhookURL"], data=formatted_embed, headers=headers)
def first_pass(change): #I've decided to split the embed formatter and change handler, maybe it's more messy this way, I don't know def first_pass(change): #I've decided to split the embed formatter and change handler, maybe it's more messy this way, I don't know
parsedcomment = (BeautifulSoup(change["parsedcomment"], "lxml")).get_text() parsedcomment = (BeautifulSoup(change["parsedcomment"], "lxml")).get_text()
@ -406,7 +425,7 @@ def first_pass(change): #I've decided to split the embed formatter and change ha
elif logtype=="block": elif logtype=="block":
webhook_formatter(19, STATIC_VARS, user=change["user"], blocked_user=change["title"], desc=parsedcomment) webhook_formatter(19, STATIC_VARS, user=change["user"], blocked_user=change["title"], desc=parsedcomment)
elif logtype=="rights": elif logtype=="rights":
webhook_formatter(20, STATIC_VARS, user=change["user"], title=change["title"], desc=parsedcomment, old_groups=' '.join(change["logparams"]["oldgroups"]), new_groups=' '.join(change["logparams"]["newgroups"])) webhook_formatter(20, STATIC_VARS, user=change["user"], title=change["title"], desc=parsedcomment, old_groups=', '.join(change["logparams"]["oldgroups"]), new_groups=', '.join(change["logparams"]["newgroups"]))
elif logtype=="abusefilter": elif logtype=="abusefilter":
webhook_formatter(21, STATIC_VARS, user=change["user"], desc=parsedcomment, filternr=change["logparams"]['1']) webhook_formatter(21, STATIC_VARS, user=change["user"], desc=parsedcomment, filternr=change["logparams"]['1'])
elif logtype=="interwiki" and logaction=="iw_add": elif logtype=="interwiki" and logaction=="iw_add":
@ -556,9 +575,7 @@ def day_overview(): #time.strftime('%Y-%m-%dT%H:%M:%S.000Z', time.gmtime(time.ti
data = {} data = {}
data["embeds"] = [dict(embed)] data["embeds"] = [dict(embed)]
formatted_embed = json.dumps(data, indent=4) formatted_embed = json.dumps(data, indent=4)
headers = {'Content-Type': 'application/json'} send_to_discord(formatted_embed)
logging.debug(formatted_embed)
result = requests.post(settings["webhookURL"], data=formatted_embed, headers=headers)
else: else:
logging.debug("function requesting changes for day overview returned with error code") logging.debug("function requesting changes for day overview returned with error code")
@ -571,6 +588,8 @@ class recent_changes_class(object):
last_downtime = 0 last_downtime = 0
clock = 0 clock = 0
tags = {} tags = {}
unsent_messages = []
streak = -1
if settings["limitrefetch"] != -1: if settings["limitrefetch"] != -1:
with open("lastchange.txt", "r") as record: with open("lastchange.txt", "r") as record:
file_content = record.read().strip() file_content = record.read().strip()
@ -582,12 +601,29 @@ class recent_changes_class(object):
file_id = 999999999 file_id = 999999999
else: else:
file_id = 999999999 #such value won't cause trouble, and it will make sure no refetch happens file_id = 999999999 #such value won't cause trouble, and it will make sure no refetch happens
def add_cache(self, change): def add_cache(self, change):
self.ids.append(change["rcid"]) self.ids.append(change["rcid"])
#self.recent_id = change["rcid"] #self.recent_id = change["rcid"]
if len(self.ids) > settings["limit"]+5: if len(self.ids) > settings["limit"]+5:
self.ids.pop(0) self.ids.pop(0)
def fetch(self, amount=settings["limit"]): def fetch(self, amount=settings["limit"]):
if self.unsent_messages:
logging.info("{} messages waiting to be delivered to Discord due to Discord throwing errors/no connection to Discord servers.".format(len(self.unsent_messages)))
for num, item in enumerate(self.unsent_messages):
logging.debug("Trying to send a message to Discord from the queue with id of {} and content {}".format(str(num), str(item)))
if send_to_discord_webhook(item) < 2:
logging.debug("Sending message succeeded")
time.sleep(2.5)
else:
logging.debug("Sending message failed")
break
else:
self.unsent_messages = []
logging.debug("Queue emptied, all messages delivered")
self.unsent_messages = self.unsent_messages[num:]
logging.debug(self.unsent_messages)
last_check = self.fetch_changes(amount=amount) last_check = self.fetch_changes(amount=amount)
self.recent_id = last_check if last_check is not None else self.recent_id self.recent_id = last_check if last_check is not None else self.recent_id
if settings["limitrefetch"] != -1 and self.recent_id != self.file_id: if settings["limitrefetch"] != -1 and self.recent_id != self.file_id:
@ -595,6 +631,7 @@ class recent_changes_class(object):
with open("lastchange.txt", "w") as record: with open("lastchange.txt", "w") as record:
record.write(str(self.file_id)) record.write(str(self.file_id))
logging.debug("Most recent rcid is: {}".format(self.recent_id)) logging.debug("Most recent rcid is: {}".format(self.recent_id))
def fetch_changes(self, amount, clean=False): def fetch_changes(self, amount, clean=False):
if len(self.ids) == 0: if len(self.ids) == 0:
logging.debug("ids is empty, triggering clean fetch") logging.debug("ids is empty, triggering clean fetch")
@ -617,6 +654,11 @@ class recent_changes_class(object):
else: else:
if self.downtimecredibility > 0: if self.downtimecredibility > 0:
self.downtimecredibility -= 1 self.downtimecredibility -= 1
if self.streak > -1:
self.streak+=1
if self.streak > 8:
self.streak = -1
send(_("Connection to {wiki} seems to be stable now.").format(wiki=settings["wikiname"]), _("Connection status"), settings["avatars"]["connection_restored"])
for change in changes: for change in changes:
if change["rcid"] in self.ids: if change["rcid"] in self.ids:
continue continue
@ -625,8 +667,8 @@ class recent_changes_class(object):
logging.debug("Rejected {val}".format(val=change["rcid"])) logging.debug("Rejected {val}".format(val=change["rcid"]))
continue continue
first_pass(change) first_pass(change)
time.sleep(3.0) #sadly, the time here needs to be quite high, otherwise we are being rate-limited by the Discord, especially during re-fetch
return change["rcid"] return change["rcid"]
def safe_request(self, url): def safe_request(self, url):
try: try:
request = requests.get(url, timeout=10, headers=settings["header"]) request = requests.get(url, timeout=10, headers=settings["header"])
@ -640,6 +682,7 @@ class recent_changes_class(object):
return None return None
else: else:
return request return request
def check_connection(self, looped=False): def check_connection(self, looped=False):
online = 0 online = 0
for website in ["https://google.com", "https://instagram.com", "https://steamcommunity.com"]: for website in ["https://google.com", "https://instagram.com", "https://steamcommunity.com"]:
@ -660,17 +703,23 @@ class recent_changes_class(object):
time.sleep(10) time.sleep(10)
return False return False
return True return True
def downtime_controller(self): def downtime_controller(self):
if settings["show_updown_messages"] == False: if settings["show_updown_messages"] == False:
return return
if self.streak > -1: #reset the streak of successful connections when bad one happens
self.streak = 0
if self.downtimecredibility<60: if self.downtimecredibility<60:
self.downtimecredibility+=15 self.downtimecredibility+=15
else: else:
if(time.time() - self.last_downtime)>1800 and self.check_connection(): #check if last downtime happened within 30 minutes, if yes, don't send a message if(time.time() - self.last_downtime)>1800 and self.check_connection(): #check if last downtime happened within 30 minutes, if yes, don't send a message
send(_("{wiki} seems to be down or unreachable.").format(wiki=settings["wikiname"]), _("Connection status"), settings["avatars"]["connection_failed"]) send(_("{wiki} seems to be down or unreachable.").format(wiki=settings["wikiname"]), _("Connection status"), settings["avatars"]["connection_failed"])
self.last_downtime = time.time() self.last_downtime = time.time()
self.streak = 0
def clear_cache(self): def clear_cache(self):
self.map_ips = {} self.map_ips = {}
def update_tags(self): def update_tags(self):
tags_read = safe_read(self.safe_request("https://{wiki}.gamepedia.com/api.php?action=query&format=json&list=tags&tgprop=name%7Cdisplayname".format(wiki=settings["wiki"])), "query", "tags") tags_read = safe_read(self.safe_request("https://{wiki}.gamepedia.com/api.php?action=query&format=json&list=tags&tgprop=name%7Cdisplayname".format(wiki=settings["wiki"])), "query", "tags")
if tags_read: if tags_read:

View file

@ -3,14 +3,15 @@
"wiki": "minecraft", "wiki": "minecraft",
"lang": "en", "lang": "en",
"header": { "header": {
"user-agent": "FrisksRcGcDw/1.1" "user-agent": "FrisksRcGcDw/1.2"
}, },
"limit": 11, "limit": 11,
"webhookURL": "https://discordapp.com/api/webhooks/111111111111111111/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "webhookURL": "https://discordapp.com/api/webhooks/111111111111111111/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"limitrefetch": 28, "limitrefetch": 28,
"wikiname": "Minecraft Wiki", "wikiname": "Minecraft Wiki",
"avatars": { "avatars": {
"connection_failed": "https://i.imgur.com/2jWQEt1.png", "connection_failed": "https://i.imgur.com/2jWQEt1.png",
"connection_restored": "",
"no_event": "", "no_event": "",
"embed": "" "embed": ""
}, },