diff options
author | 2020-10-02 15:16:32 -0400 | |
---|---|---|
committer | 2020-10-02 15:16:32 -0400 | |
commit | 690d8506c1295ee4783402daf7dfd8b237566050 (patch) | |
tree | efcc8a4b5ebc16b04c5f05a3f7c84758aef84f99 | |
parent | Update UserFunctions to 1.35 (diff) | |
download | extensions-690d8506c1295ee4783402daf7dfd8b237566050.tar.gz extensions-690d8506c1295ee4783402daf7dfd8b237566050.tar.bz2 extensions-690d8506c1295ee4783402daf7dfd8b237566050.zip |
Update UserMerge to 1.35
Signed-off-by: Brian Evans <grknight@gentoo.org>
107 files changed, 2424 insertions, 621 deletions
diff --git a/UserMerge/.eslintrc.json b/UserMerge/.eslintrc.json new file mode 100644 index 00000000..1a97f6e1 --- /dev/null +++ b/UserMerge/.eslintrc.json @@ -0,0 +1,7 @@ +{ + "root": true, + "extends": [ + "wikimedia/client", + "wikimedia/jquery" + ] +} diff --git a/UserMerge/.gitignore b/UserMerge/.gitignore index 466fb70e..24f8c141 100644 --- a/UserMerge/.gitignore +++ b/UserMerge/.gitignore @@ -2,7 +2,7 @@ node_modules/ composer.lock vendor/ -tests/phan/issues/ +.eslintcache # Editors *.kate-swp diff --git a/UserMerge/.phan/config.php b/UserMerge/.phan/config.php new file mode 100644 index 00000000..76efd06d --- /dev/null +++ b/UserMerge/.phan/config.php @@ -0,0 +1,3 @@ +<?php + +return require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php'; diff --git a/UserMerge/.phpcs.xml b/UserMerge/.phpcs.xml index 2b0ed1bb..06fadff9 100644 --- a/UserMerge/.phpcs.xml +++ b/UserMerge/.phpcs.xml @@ -1,7 +1,9 @@ <?xml version="1.0"?> <ruleset> <rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki"> + <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate" /> <exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" /> + <exclude name="PSR12.Properties.ConstantVisibility.NotFound" /> </rule> <rule ref="Generic.Files.LineLength"> <exclude-pattern>UserMerge\.alias\.php</exclude-pattern> diff --git a/UserMerge/Gruntfile.js b/UserMerge/Gruntfile.js index c07280d8..a40e8ab4 100644 --- a/UserMerge/Gruntfile.js +++ b/UserMerge/Gruntfile.js @@ -4,31 +4,27 @@ * @package UserMerge */ -/*jshint node:true */ +/* eslint-env node, es6 */ module.exports = function ( grunt ) { + var conf = grunt.file.readJSON( 'extension.json' ); + grunt.loadNpmTasks( 'grunt-banana-checker' ); - grunt.loadNpmTasks( 'grunt-jsonlint' ); - grunt.loadNpmTasks( 'grunt-contrib-jshint' ); + grunt.loadNpmTasks( 'grunt-eslint' ); - var conf = grunt.file.readJSON( 'extension.json' ); grunt.initConfig( { - banana: conf.MessagesDirs, - jshint: { + eslint: { + options: { + extensions: [ '.js', '.json' ], + cache: true + }, all: [ - '**/*.js', - '!node_modules/**', - '!vendor/**' + '**/*.js{,on}', + '!{vendor,node_modules}/**' ] }, - jsonlint: { - all: [ - '**/*.json', - '!node_modules/**', - '!vendor/**' - ] - } + banana: conf.MessagesDirs } ); - grunt.registerTask( 'test', [ 'jsonlint', 'banana', 'jshint' ] ); + grunt.registerTask( 'test', [ 'eslint', 'banana' ] ); grunt.registerTask( 'default', 'test' ); }; diff --git a/UserMerge/composer.json b/UserMerge/composer.json index 0ec61337..4f693aca 100644 --- a/UserMerge/composer.json +++ b/UserMerge/composer.json @@ -1,23 +1,20 @@ { "require-dev": { - "jakub-onderka/php-parallel-lint": "1.0.0", - "mediawiki/mediawiki-codesniffer": "22.0.0", - "jakub-onderka/php-console-highlighter": "0.3.2", - "mediawiki/minus-x": "0.3.1", - "mediawiki/mediawiki-phan-config": "0.3.0" + "mediawiki/mediawiki-codesniffer": "31.0.0", + "mediawiki/mediawiki-phan-config": "0.10.2", + "mediawiki/minus-x": "1.1.0", + "php-parallel-lint/php-console-highlighter": "0.5.0", + "php-parallel-lint/php-parallel-lint": "1.2.0" }, "scripts": { "fix": [ - "phpcbf", - "minus-x fix ." + "minus-x fix .", + "phpcbf" ], "test": [ "parallel-lint . --exclude vendor --exclude node_modules", "phpcs -p -s", "minus-x check ." ] - }, - "extra": { - "phan-taint-check-plugin": "1.5.0" } } diff --git a/UserMerge/extension.json b/UserMerge/extension.json index 8a22bc6d..701c111d 100644 --- a/UserMerge/extension.json +++ b/UserMerge/extension.json @@ -10,7 +10,7 @@ "descriptionmsg": "usermerge-desc", "license-name": "GPL-2.0-or-later", "requires": { - "MediaWiki": ">= 1.31.0" + "MediaWiki": ">= 1.34.0" }, "type": "specialpage", "AvailableRights": [ @@ -30,8 +30,12 @@ }, "ActionFilteredLogs": { "usermerge": { - "mergeuser": [ "mergeuser" ], - "deleteuser": [ "deleteuser" ] + "mergeuser": [ + "mergeuser" + ], + "deleteuser": [ + "deleteuser" + ] } }, "LogActionsHandlers": { @@ -53,10 +57,14 @@ "UserMergeLogFormatter": "includes/UserMergeLogFormatter.php" }, "config": { - "UserMergeEnableDelete": true, - "UserMergeProtectedGroups": [ - "sysop" - ] + "UserMergeEnableDelete": { + "value": true + }, + "UserMergeProtectedGroups": { + "value": [ + "sysop" + ] + } }, - "manifest_version": 1 + "manifest_version": 2 } diff --git a/UserMerge/gitinfo.json b/UserMerge/gitinfo.json deleted file mode 100644 index 4a8958d5..00000000 --- a/UserMerge/gitinfo.json +++ /dev/null @@ -1 +0,0 @@ -{"remoteURL": "https://gerrit.wikimedia.org/r/mediawiki/extensions/UserMerge", "headCommitDate": "1547405747", "branch": "66c703068fa0089cb5644129158a8c50b0b12fef\n", "head": "66c703068fa0089cb5644129158a8c50b0b12fef\n", "headSHA1": "66c703068fa0089cb5644129158a8c50b0b12fef\n"}
\ No newline at end of file diff --git a/UserMerge/i18n/af.json b/UserMerge/i18n/af.json index 0d4f2d60..15d2f296 100644 --- a/UserMerge/i18n/af.json +++ b/UserMerge/i18n/af.json @@ -6,7 +6,6 @@ }, "usermerge": "Versmelt en verwyder gebruikers", "usermerge-desc": "Maak 'n [[Special:UserMerge|spesiale bladsy]] beskikbaar om gebruikers te versmelt en die ou gebruiker(s) te verwyder (hiervoor is die ''usermerge''-reg nodig)", - "usermerge-badolduser": "Ongeldige ou gebruiker", "usermerge-badnewuser": "Ongeldige nuwe gebruiker", "usermerge-nonewuser": "Die nuwe gebruikersnaam is nie ingevoer nie - daar word aangeneem dat dit met $1 versmelt moet word.<br />\nKliek \"{{int:usermerge-submit}}\" om die handeling uit te voer.", "usermerge-noolduser": "Ou gebruikersnaam is leeg", @@ -17,9 +16,7 @@ "usermerge-submit": "Versmelt gebruiker", "usermerge-badtoken": "Ongeldige wysigingsteken (\"edit token\")", "usermerge-userdeleted": "$1 ($2) is verwyder.", - "usermerge-userdeleted-log": "Verwyderde gebruiker: $2 ($3)", "usermerge-success": "Versmelting van $1 ($2) na $3 ($4) is voltooi.", - "usermerge-success-log": "Gebruiker $2 ($3) is versmelt na $4 ($5)", "usermerge-logpage": "Logboek van gebruikersversmeltings", "usermerge-logpagetext": "Die is 'n logboek van gebruikersversmeltings.", "usermerge-noselfdelete": "U kan nie uself verwyder of versmelt nie!", diff --git a/UserMerge/i18n/aln.json b/UserMerge/i18n/aln.json index 991ad581..c3f97e6a 100644 --- a/UserMerge/i18n/aln.json +++ b/UserMerge/i18n/aln.json @@ -6,7 +6,6 @@ }, "usermerge": "Përziej dhe fshini përdoruesit", "usermerge-desc": "[[Special:UserMerge|referencat bashkohet nga një user në një përdorues tjetër]] në bazën e të dhënave wiki - do të fshini gjithashtu përdoruesit e vjetër pas bashkohen. Kërkon''''usermerge privilegje", - "usermerge-badolduser": "emrin e pavlefshme të vjetra", "usermerge-badnewuser": "emrin e pavlefshme të reja", "usermerge-nonewuser": "Bosh emrin e re - duke supozuar të bashkohen për të \"\" $1 \". <br /> Kliko \"{{int:usermerge-submit}}\" për të pranuar.", "usermerge-noolduser": "Bosh emrin e vjetër", @@ -17,9 +16,7 @@ "usermerge-submit": "Merge përdorues", "usermerge-badtoken": "Pavlefshme redakto shenjë", "usermerge-userdeleted": "$1 ($2) është fshirë.", - "usermerge-userdeleted-log": "përdorues Deleted: $2 ($3)", "usermerge-success": "Merge nga $1 ($2) për $3 ($4), është i kompletuar.", - "usermerge-success-log": "User $2 ($3) bashkohen në $4 ($5)", "usermerge-logpage": "Përdoruesi bashkojë log", "usermerge-logpagetext": "Ky është një regjistër i përdoruesit bashkojë veprimet.", "usermerge-noselfdelete": "Ju nuk mund të fshini ose përpuqni nga vetë!", diff --git a/UserMerge/i18n/ar.json b/UserMerge/i18n/ar.json index d6323b45..53018d1b 100644 --- a/UserMerge/i18n/ar.json +++ b/UserMerge/i18n/ar.json @@ -3,14 +3,13 @@ "authors": [ "Meno25", "OsamaK", + "ديفيد", "روخو", - "محمد أحمد عبد الفتاح", - "ديفيد" + "محمد أحمد عبد الفتاح" ] }, "usermerge": "دمج وحذف المستخدمين", "usermerge-desc": "[[Special:UserMerge|يدمج المراجع من مستخدم إلى آخر]] في قاعدة بيانات الويكي - سيحذف أيضا المستخدمين القدامى بعد الدمج. يتطلب صلاحيات ''usermerge''", - "usermerge-badolduser": "اسم المستخدم القديم غير صحيح", "usermerge-badnewuser": "اسم المستخدم الجديد غير صحيح", "usermerge-nonewuser": "اسم مستخدم جديد فارغ - افتراض الدمج إلى \"$1\".<br />\nاضغط \"{{int:usermerge-submit}}\" للقبول.", "usermerge-noolduser": "اسم المستخدم القديم فارغ", @@ -22,9 +21,7 @@ "usermerge-submit": "دمج المستخدم", "usermerge-badtoken": "نص تعديل غير صحيح", "usermerge-userdeleted": "$1 ($2) تم حذفه.", - "usermerge-userdeleted-log": "تم حذف حساب المستخدم: $2($3)", "usermerge-success": "الدمج من $1 ($2) إلى $3 ($4) اكتمل.", - "usermerge-success-log": "تم دمج المستخدم \"$2\" ($3) إلى \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "سجل دمج المستخدم", "usermerge-logpagetext": "هذا سجل بأفعال دمج المستخدمين.", "usermerge-noselfdelete": "لا يمكنك حذف أو دمج {{GENDER:$1|نفسك}}!", @@ -33,5 +30,10 @@ "action-usermerge": "دمج المستخدمين", "usermerge-autopagedelete": "تم حذف الصفحة تلقائيا أثناء دمج المستخدمين", "usermerge-page-unmoved": "تعذر نقل الصفحة $1 إلى $2.", - "usermerge-move-log": "تم نقل الصفحة تلقائيا عند دمج الحساب \"$1\" إلى \"[[User:$2|$2]]\"" + "usermerge-move-log": "تم نقل الصفحة تلقائيا عند دمج الحساب \"$1\" إلى \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|دمج|دمجت}} حساب المستخدم \"$4\" ($5) إلى {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|حذف|حذفت}} حساب المستخدم \"$4\" ($5)", + "log-action-filter-usermerge": "نوع الفعل:", + "log-action-filter-usermerge-mergeuser": "دمج حساب المستخدم", + "log-action-filter-usermerge-deleteuser": "حذف حساب المستخدم" } diff --git a/UserMerge/i18n/arz.json b/UserMerge/i18n/arz.json index 4b1854e9..d9ebc823 100644 --- a/UserMerge/i18n/arz.json +++ b/UserMerge/i18n/arz.json @@ -7,7 +7,6 @@ }, "usermerge": "دمج وحذف اليوزرز", "usermerge-desc": "[[Special:UserMerge|يدمج المراجع من يوزر ليوزر]] فى قاعدة بيانات الويكى - يحذف اليوزرز القدام بعد الدمج. يتطلب صلاحيات ''usermerge''", - "usermerge-badolduser": "اسم اليوزر القديم مش صحيح", "usermerge-badnewuser": "اسم اليوزر الجديد مش صحيح", "usermerge-nonewuser": "اسم يوزر جديد فارغ - افتراض الدمج إلى $1.<br />\nاضغط \"{{int:usermerge-submit}}\" للقبول.", "usermerge-noolduser": "اسم اليوزر القديم فارغ", @@ -18,12 +17,10 @@ "usermerge-submit": "دمج اليوزر", "usermerge-badtoken": "نص تعديل غير صحيح", "usermerge-userdeleted": "$1($2) تم حذفه.", - "usermerge-userdeleted-log": "حذف اليوزر: $2($3)", "usermerge-success": "الدمج من $1($2) إلى $3($4) اكتمل.", - "usermerge-success-log": "اليوزر $2($3) تم دمجه مع $4($5)", "usermerge-logpage": "سجل دمج اليوزر", "usermerge-logpagetext": "ده سجل بأفعال دمج اليوزرز.", - "usermerge-noselfdelete": "لا يمكنك حذف أو دمج من نفسك!", - "usermerge-protectedgroup": "مش قادر يدمج من اليوزر - اليوزر فى مجموعة محمية.", + "usermerge-noselfdelete": "لا يمكنك حذف أو دمج من {{GENDER:$1|نفسك}}!", + "usermerge-protectedgroup": "مش قادر يدمج من {{GENDER:$1|ليوزر}}: اليوزر فى مجموعة محمية.", "right-usermerge": "دمج اليوزرز" } diff --git a/UserMerge/i18n/as.json b/UserMerge/i18n/as.json new file mode 100644 index 00000000..ed4e341b --- /dev/null +++ b/UserMerge/i18n/as.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Onubadok", + "Paradox" + ] + }, + "log-action-filter-usermerge-deleteuser": "ব্যৱহাৰকাৰীৰ একাউণ্ট বিলোপন" +} diff --git a/UserMerge/i18n/ast.json b/UserMerge/i18n/ast.json index bdcbcf14..04fba672 100644 --- a/UserMerge/i18n/ast.json +++ b/UserMerge/i18n/ast.json @@ -6,7 +6,6 @@ }, "usermerge": "Fusionar y desaniciar usuarios", "usermerge-desc": "[[Special:UserMerge|Fusiona les referencies d'un usuariu n'otru usuariu]] na base de datos de la wiki (tamién desaniciará l'usuariu antiguu darréu de la fusión). Requier permisos d'''usermerge''", - "usermerge-badolduser": "Nome d'usuariu antiguu inválidu.", "usermerge-badnewuser": "Nome d'usuariu nuevu inválidu", "usermerge-nonewuser": "Nome d'usuariu nuevu baleru. Asumese la fusión en \"{{GENDER:$1|$1}}\".<br />\nCalque \"{{int:usermerge-submit}}\" p'aceutar.", "usermerge-noolduser": "Nome d'usuariu antiguu baleru", @@ -17,17 +16,20 @@ "usermerge-deleteolduser": "Desaniciar l'usuariu antiguu", "usermerge-submit": "Fusionar usuariu", "usermerge-badtoken": "Pase d'edición inválidu", - "usermerge-userdeleted": "Desanicióse {{GENDER:$1|l'usuariu|la usuaria}} $1 ($2).", - "usermerge-userdeleted-log": "Usuariu desaniciáu: $2 ($3)", - "usermerge-success": "La fusión dende {{GENDER:$1|$1}} ($2) a {{GENDER:$3|$3}} ($4) ta completa.", - "usermerge-success-log": "{{GENDER:$2|L'usuariu|La usuaria}} $2 ($3) fusionóse con {{GENDER:$4|$4}} ($5)", + "usermerge-userdeleted": "$1 ($2) desanicióse.", + "usermerge-success": "La fusión dende $1 ($2) a $3 ($4) ta completa.", "usermerge-logpage": "Rexistru de fusión d'usuarios", "usermerge-logpagetext": "Esti ye un rexistru d'aiciones de fusión d'usuarios.", "usermerge-noselfdelete": "¡Nun pues desaniciate o fusionate dende {{GENDER:$1|tu mesmu}}!", - "usermerge-protectedgroup": "Nun puede fusionase dende {{GENDER:$1|l'usuariu|la usuaria}}: Ta nun grupu protexíu.", + "usermerge-protectedgroup": "Nun puede fusionase dende {{GENDER:$1|l'usuariu|la usuaria}}: ta nun grupu protexíu.", "right-usermerge": "Fusionar usuarios", "action-usermerge": "fusionar usuarios", - "usermerge-autopagedelete": "Desaniciao automáticamente al fusionar usuarios", + "usermerge-autopagedelete": "Páxina desaniciada automáticamente al fusionar usuarios", "usermerge-page-unmoved": "La páxina $1 nun pudo treslladase a $2.", - "usermerge-move-log": "Treslladóse la páxina automáticamente al fusionar al usuariu \"[[User:$1|$1]]\" en \"[[User:$2|{{GENDER:$2|$2}}]]\"" + "usermerge-move-log": "Treslladóse la páxina automáticamente al fusionar la cuenta «$1» en «[[User:$2|$2]]»", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionó}} la cuenta d'usuariu «$4» ($5) en {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|desanició}} la cuenta d'usuariu «$4» ($5)", + "log-action-filter-usermerge": "Tipu d'aición:", + "log-action-filter-usermerge-mergeuser": "Fusiones de cuentes d'usuariu", + "log-action-filter-usermerge-deleteuser": "Desaniciu de cuentes d'usuariu" } diff --git a/UserMerge/i18n/be-tarask.json b/UserMerge/i18n/be-tarask.json index 8514d286..43dcd229 100644 --- a/UserMerge/i18n/be-tarask.json +++ b/UserMerge/i18n/be-tarask.json @@ -1,17 +1,16 @@ { "@metadata": { "authors": [ + "Artsiom91", "EugeneZelenko", "Jim-by", "Red Winged Duck", "Renessaince", - "Wizardist", - "Artsiom91" + "Wizardist" ] }, "usermerge": "Аб'яднаньне і выдаленьне рахункаў удзельнікаў", "usermerge-desc": "[[Special:UserMerge|Аб'ядноўвае спасылкі аднаго ўдзельніка на іншага]] ў базе зьвестак вікі — адначасова выдаляе старыя рахункі пасьля аб'яднаньня. Патрабуе правы на ''аб'яданьне рахункаў удзельнікаў''", - "usermerge-badolduser": "Няслушнае старое імя ўдзельніка", "usermerge-badnewuser": "Няслушнае новае імя ўдзельніка", "usermerge-nonewuser": "Пустое новае імя ўдзельніка. Мяркуецца аб'яднаньне з «{{GENDER:$1|$1}}».<br />\nНацісьніце «{{int:usermerge-submit}}», каб пагадзіцца.", "usermerge-noolduser": "Пустое старое імя ўдзельніка", @@ -23,9 +22,7 @@ "usermerge-submit": "Аб’яднаць уліковыя запісы ўдзельнікаў", "usermerge-badtoken": "Няслушны знак рэдагаваньня", "usermerge-userdeleted": "$1 ($2) быў выдалены.", - "usermerge-userdeleted-log": "выдалены рахунак удзельніка «$2» ($3)", "usermerge-success": "Аб’яднаньне $1 ($2) з $3 ($4) завершанае.", - "usermerge-success-log": "далучаны рахунак «$2» ($3) да «[[User:$4|$4]]» ($5)", "usermerge-logpage": "Журнал аб’яднаньня рахункаў удзельнікаў", "usermerge-logpagetext": "Гэта журнал аб’яднаньня рахункаў удзельнікаў.", "usermerge-noselfdelete": "Вы ня можаце выдаліць ці аб’яднаць {{GENDER:$1|уласны рахунак}}!", diff --git a/UserMerge/i18n/bg.json b/UserMerge/i18n/bg.json index bc9c9079..6f493269 100644 --- a/UserMerge/i18n/bg.json +++ b/UserMerge/i18n/bg.json @@ -2,29 +2,29 @@ "@metadata": { "authors": [ "DCLXVI", - "Termininja", "StanProg", + "Termininja", "Vlad5250" ] }, "usermerge": "Сливане и изтриване на потребители", "usermerge-desc": "[[Special:UserMerge|Сливане на приносите от един потребител в друг]] в базата от данни - след сливането изтрива стария потребител. Изисква права ''usermerge''", - "usermerge-badolduser": "Невалиден стар потребител", - "usermerge-badnewuser": "Невалиден нов потребител", - "usermerge-noolduser": "Изчистване на старото потребителско име", + "usermerge-badnewuser": "Невалидно ново потребителско име.", + "usermerge-noolduser": "Изчистване на старото потребителско име.", "usermerge-fieldset": "Потребителски имена за сливане", "usermerge-olduser": "Стар потребител (за сливане от):", "usermerge-newuser": "Нов потребител (за сливане в):", "usermerge-deleteolduser": "Изтриване на стария потребител", "usermerge-submit": "Сливане", "usermerge-userdeleted": "$1 ($2) беше изтрит.", - "usermerge-userdeleted-log": "изтри потребителска сметка „$2“ ($3)", "usermerge-success": "Сливането от $1 ($2) към $3 ($4) приключи.", - "usermerge-success-log": "сля сметка „$2“ ($3) в „[[User:$4|$4]]“ ($5)", "usermerge-logpage": "Дневник на потребителските сливания", "usermerge-logpagetext": "Тази страница съдържа дневник на потребителските сливания.", "usermerge-noselfdelete": "Не е възможно да изтривате или сливате от {{GENDER:$1|себе си}}!", "usermerge-protectedgroup": "Невъзможно е да се извърши сливане от {{GENDER:$1|потребител}}: потребителят е в защитена група.", "right-usermerge": "Сливане на потребители", - "action-usermerge": "сливане на потребителски сметки" + "action-usermerge": "сливане на потребителски сметки", + "log-action-filter-usermerge": "Вид на действието:", + "log-action-filter-usermerge-mergeuser": "Сливане на потребителска сметка", + "log-action-filter-usermerge-deleteuser": "Изтриване на потребителска сметка" } diff --git a/UserMerge/i18n/bn.json b/UserMerge/i18n/bn.json index 748ce1ef..a8827c1e 100644 --- a/UserMerge/i18n/bn.json +++ b/UserMerge/i18n/bn.json @@ -1,17 +1,17 @@ { "@metadata": { "authors": [ - "Bellayet", - "Zaheen", "Aftab1995", "Aftabuzzaman", + "Bellayet", "Rasal Lia", + "Tahmid02016", + "Zaheen", "আফতাবুজ্জামান" ] }, "usermerge": "ব্যবহারকারী একত্রীকরণ এবং মুছে ফেলা", "usermerge-desc": "উইকি ডাটাবেজে [[Special:UserMerge|একজন ব্যবহারকারী থেকে অপর ব্যবহারকারীর প্রতি নির্দেশনাগুলি একত্রিত করে]] - এছাড়া একত্রীকরণের পরে পুরনো ব্যবহারকারীদের মুছে দেবে। বিশেষ ''usermerge'' অধিকার আবশ্যক", - "usermerge-badolduser": "পুরনো ব্যবহারকারী নাম অবৈধ।", "usermerge-badnewuser": "নতুন ব্যবহারকারী নাম অবৈধ।", "usermerge-nonewuser": "নতুন ব্যবহারকারী নাম খালি। \"{{GENDER:$1|$1}}\"-এর সাথে একত্রীকরণ করা হচ্ছে ধরা হল।<br />সম্মতি দিতে \"{{int:usermerge-submit}}\" ক্লিক করুন।", "usermerge-noolduser": "পুরনো ব্যবহারকারী নাম খালি।", @@ -23,9 +23,7 @@ "usermerge-submit": "ব্যবহারকারী একত্রীত করুন", "usermerge-badtoken": "সম্পাদনা টোকেন অবৈধ।", "usermerge-userdeleted": "$1 ($2) মুছে ফেলা হয়েছে।", - "usermerge-userdeleted-log": "ব্যবহারকারী এক্যাউন্ট \"$2\" ($3) বাতিল হয়েছে", "usermerge-success": "$1 ($2) থেকে $3 ($4)-এ একত্রীকরণ সম্পন্ন হয়েছে।", - "usermerge-success-log": "\"$2\" ($3) এক্যাউন্টটি \"[[User:$4|$4]]\" ($5) এর সাথে একত্রিত হয়েছে", "usermerge-logpage": "ব্যবহারকারী একত্রীকরণ লগ", "usermerge-logpagetext": "এটি ব্যবহারকারী একত্রীকরনের একটি লগ।", "usermerge-noselfdelete": "আপনি {{GENDER:$1|নিজের}} ব্যবহারকারী নাম মুছে ফেলতে বা এটি থেকে অন্য নামে একত্রিত করতে পারবেন না!", @@ -34,5 +32,6 @@ "action-usermerge": "ব্যবহারকারী একত্রিত করার", "usermerge-autopagedelete": "ব্যবহারকারী একত্রীত করার সময় স্বয়ংক্রিয়ভাবে অপসারিত", "usermerge-page-unmoved": "$1 পাতাটি $2-এ সরিয়ে নেওয়া সম্ভব নয়।", - "usermerge-move-log": "\"$1\" অ্যাকাউন্টটি \"[[User:$2|$2]]\"-এ একত্রীত করার সময় স্বয়ংক্রিয়ভাবে পাতা স্থানান্তরিত" + "usermerge-move-log": "\"$1\" অ্যাকাউন্টটি \"[[User:$2|$2]]\"-এ একত্রীত করার সময় স্বয়ংক্রিয়ভাবে পাতা স্থানান্তরিত", + "log-action-filter-usermerge-deleteuser": "ব্যবহারকারী অ্যাকাউন্ট অপসারণ" } diff --git a/UserMerge/i18n/br.json b/UserMerge/i18n/br.json index 0708be67..d2131f73 100644 --- a/UserMerge/i18n/br.json +++ b/UserMerge/i18n/br.json @@ -7,7 +7,6 @@ }, "usermerge": "Kendeuziñ an implijer ha diverkañ", "usermerge-desc": "[[Special:UserMerge|Kendeuziñ a ra daveennoù un implijer gant re unan bennak all]] e diaz titouroù ar wiki - diverkañ a raio ivez ar c'hendeuzadennoù implijer kozh da zont. Rekis eo kaout aotreoù ''kendeuziñ''", - "usermerge-badolduser": "Anv implijer kozh direizh", "usermerge-badnewuser": "Anv implijer nevez direizh", "usermerge-nonewuser": "Anv implijer nevez goullo - soñjal a ra deomp e fell deoc'h kendeuziñ davet \"$1\".<br />\nKlikañ war \"{{int:usermerge-submit}}\" evit asantiñ.", "usermerge-noolduser": "Anv implijer kozh goullo", @@ -18,9 +17,7 @@ "usermerge-submit": "Kendeuziñ implijer", "usermerge-badtoken": "Jedouer aozañ direizh", "usermerge-userdeleted": "Diverket eo bet $1 ($2).", - "usermerge-userdeleted-log": "Implijer diverket : $2($3)", "usermerge-success": "Kendeuzadenn adal $1 ($2) davet $3 ($4) kaset da benn vat.", - "usermerge-success-log": "Implijer $2 ($3) kendeuzet davet $4 ($5)", "usermerge-logpage": "Marilh kendeuzadennoù an implijerien", "usermerge-logpagetext": "Setu aze marilh kendeuzadennoù an implijerien.", "usermerge-noselfdelete": "N'hallit ket diverkañ pe kendeuziñ adal pe davedoc'h hoc'h-unan", diff --git a/UserMerge/i18n/bs.json b/UserMerge/i18n/bs.json index 05a3376f..dd35a496 100644 --- a/UserMerge/i18n/bs.json +++ b/UserMerge/i18n/bs.json @@ -7,7 +7,6 @@ }, "usermerge": "Spajanje i brisanje korisnika", "usermerge-desc": "[[Special:UserMerge|Spaja doprinose jednog korisnika na drugog]] u bazi podataka wikija – obrisat će i stare korisnike po spajanju. Zahtijeva pravo ''usermerge''", - "usermerge-badolduser": "Nevaljano staro korisničko ime", "usermerge-badnewuser": "Nevaljano novo korisničko ime", "usermerge-nonewuser": "Upišite novo korisničko ime. Pretpostavljam da se spaja na \"{{GENDER:$1|$1}}\".<br />\nKliknite na \"{{int:usermerge-submit}}\" za prihvatanje.", "usermerge-noolduser": "Prazno staro korisničko ime", @@ -17,10 +16,8 @@ "usermerge-deleteolduser": "Obriši starog korisnika", "usermerge-submit": "Spoji korisnika", "usermerge-badtoken": "Nevaljan token izmjene", - "usermerge-userdeleted": "{{GENDER:$1|Korisnik|Korisnica}} $1 ($2) {{GENDER:$1|obrisan|obrisana}} je.", - "usermerge-userdeleted-log": "Obrisani korisnik: $2 ($3)", + "usermerge-userdeleted": "{{GENDER:$1|Korisnik|Korisnica}} $1 ($2) {{GENDER:$1|izbrisan|izbrisana}} je.", "usermerge-success": "Spajanje sa {{GENDER:$1|$1}} ($2) na {{GENDER:$3|$3}} ($4) je završeno.", - "usermerge-success-log": "{{GENDER:$2|Korisnik|Korisnica}} $2 ($3) {{GENDER:$2|spojen|spojena}} je sa {{GENDER:$4|$4}} ($5)", "usermerge-logpage": "Zapisnik spajanja korisnika", "usermerge-logpagetext": "Ovo je zapisnik akcija spajanja korisnika.", "usermerge-noselfdelete": "Ne možete se obrisati niti spojiti {{GENDER:$1|sami sa sobom}}!", diff --git a/UserMerge/i18n/ca.json b/UserMerge/i18n/ca.json index 1e810b80..ba116b6a 100644 --- a/UserMerge/i18n/ca.json +++ b/UserMerge/i18n/ca.json @@ -6,14 +6,12 @@ "Solde" ] }, - "usermerge-badolduser": "Nom d'usuari antic no vàlid", "usermerge-badnewuser": "Nom d'usuari nou no vàlid", "usermerge-noolduser": "Nom d'usuari antic sense especificar", "usermerge-olduser": "Antic usuari (barreja des de):", "usermerge-newuser": "Nou usuari (barreja a):", "usermerge-deleteolduser": "Elimina l'antic usuari", "usermerge-submit": "Combina els usuaris", - "usermerge-userdeleted-log": "Usuari eliminat: $2 ($3)", "usermerge-logpage": "Registre de fusions d'usuaris", "right-usermerge": "Fusionar usuaris" } diff --git a/UserMerge/i18n/ce.json b/UserMerge/i18n/ce.json index c109c09a..b9d0565f 100644 --- a/UserMerge/i18n/ce.json +++ b/UserMerge/i18n/ce.json @@ -6,10 +6,9 @@ }, "usermerge": "Декъашхойн дӀаяздарш вовшахтохар а, дӀадаха а", "usermerge-desc": "[[Special:UserMerge|Декъашхочун тӀера кхечун тӀе]] викин базан чохь, шира декъашхой дӀабохар бу. Оьшу бакъо ''usermerge''", - "usermerge-badolduser": "Нийса йоцу декъашхочун шира цӀе", "usermerge-badnewuser": "Нийса йоцу декъашхочун керла цӀе", - "usermerge-nonewuser": "Декъашхочун керла цӀе еса ю — вовшахтухучу хенахь «{{GENDER:$1|$1}}».<br />\nТӀетаӀае «{{int:usermerge-submit}}», дешдерг кхочушдан.", - "usermerge-noolduser": "Декъашхочун шира цӀе еса ю", + "usermerge-nonewuser": "Декъашхочун керла цӀе яьсса ю — вовшахтухучу хенахь «{{GENDER:$1|$1}}».<br />\nТӀетаӀае «{{int:usermerge-submit}}», дешдерг кхочушдан.", + "usermerge-noolduser": "Декъашхочун шира цӀе яьсса ю", "usermerge-same-old-and-new-user": "Шира а керла цӀе башха хела еза.", "usermerge-fieldset": "Вовшахтухуш долу декъашхойн дӀяздарш", "usermerge-olduser": "Шира декъашхочун дӀаяздар (вовшахтоха):", @@ -18,9 +17,7 @@ "usermerge-submit": "декъашхой вовшахтохар", "usermerge-badtoken": "Нисдаран билгало нийса яц", "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|дӀаяьккхина хилла}}.", - "usermerge-userdeleted-log": "Декъашхочун дӀаяздар $2 ($3) дӀадаьккхина", "usermerge-success": "Вовшахтохар {{GENDER:$1|$1}} ($2) {{GENDER:$3|$3}} ($4) чекхдели.", - "usermerge-success-log": "{{GENDER:$2|Декъашхочун дӀаяздар}} $2 ($3) {{GENDER:$2|тоьхна}} {{GENDER:$4|$4}} ($5) тӀе", "usermerge-logpage": "Декъашхой вовшахтохаран тептар", "usermerge-logpagetext": "ХӀара декъашхой вовшахтохаран тептар ду.", "usermerge-noselfdelete": "{{GENDER:$1|Хьайн декъашхочун дӀаяздар}} дӀадаккха я вовшахтоха хьа таро яц!", diff --git a/UserMerge/i18n/cs.json b/UserMerge/i18n/cs.json index 929542fd..12c42f34 100644 --- a/UserMerge/i18n/cs.json +++ b/UserMerge/i18n/cs.json @@ -2,12 +2,12 @@ "@metadata": { "authors": [ "Matěj Grabovský", + "Matěj Suchánek", "Mormegil" ] }, "usermerge": "Slučování a mazání uživatelů", "usermerge-desc": "[[Special:UserMerge|Slučuje odkazy na jednoho uživatele na odkazy na druhého]] v databázi wiki; také následně smaže starého uživatele. Vyžaduje oprávnění ''usermerge''.", - "usermerge-badolduser": "Původní uživatelské jméno je neplatné", "usermerge-badnewuser": "Neplatné nové uživatelské jmnéo", "usermerge-nonewuser": "Nové uživatelské jméno je prázdné – předpokládá se sloučení do „$1“.<br />\nPotvrdit můžete kliknutím na „{{int:usermerge-submit}}“.", "usermerge-noolduser": "Původní uživatelské jméno je prázdné", @@ -18,17 +18,20 @@ "usermerge-deleteolduser": "Smazat původního uživatele", "usermerge-submit": "Sloučit uživatele", "usermerge-badtoken": "Neplatný editační token", - "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|byl smazán|byla smazána}}.", - "usermerge-userdeleted-log": "Smazaný uživatel: $2 ($3)", - "usermerge-success": "Sloučení z {{GENDER:$1|$1}} ($2) do {{GENDER:$3|$3}} ($4) je dokončeno.", - "usermerge-success-log": "{{GENDER:$2|Uživatel|Uživatelka}} $2 ($3) {{GENDER:$2|byl sloučen|byla sloučena}} do {{GENDER:$4|uživatele|uživatelky}} $4 ($5)", + "usermerge-userdeleted": "Účet $1 ($2) byl smazán.", + "usermerge-success": "Sloučení účtu $1 ($2) do $3 ($4) je dokončeno.", "usermerge-logpage": "Kniha slučování uživatelů", "usermerge-logpagetext": "Toto je záznam slučování uživatelů.", "usermerge-noselfdelete": "{{GENDER:$1|Nemůžete}} smazat nebo sloučit svůj vlastní účet!", - "usermerge-protectedgroup": "Nebylo možné sloučit {{GENDER:$1|uvedeného uživatele|uvedenou uživatelku}} – uživatel je v chráněné skupině.", + "usermerge-protectedgroup": "Nebylo možné sloučit {{GENDER:$1|uvedeného uživatele|uvedenou uživatelku}} – {{GENDER:$1|uživatel|uživatelka}} je v chráněné skupině.", "right-usermerge": "Slučování uživatelů", "action-usermerge": "slučovat uživatele", - "usermerge-autopagedelete": "Automaticky smazáno při sloučení uživatelů", + "usermerge-autopagedelete": "Automaticky smazaná stránka při sloučení uživatelů", "usermerge-page-unmoved": "Stránku $1 nebylo možno přesunout na $2.", - "usermerge-move-log": "Automaticky přesunuto při sloučení {{GENDER:$1|uživatele|uživatelky}} „[[User:$1|$1]]“ do [[User:$2|$2]]“" + "usermerge-move-log": "Automaticky přesunutá stránka při sloučení účtu „$1“ do „[[User:$2|$2]]“", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|sloučil|sloučila}} účet „$4“ ($5) do {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|smazal|smazala}} účet „$4“ ($5)", + "log-action-filter-usermerge": "Typ akce:", + "log-action-filter-usermerge-mergeuser": "Sloučení uživatelského účtu", + "log-action-filter-usermerge-deleteuser": "Smazání uživatelského účtu" } diff --git a/UserMerge/i18n/da.json b/UserMerge/i18n/da.json index a8877633..0887fe77 100644 --- a/UserMerge/i18n/da.json +++ b/UserMerge/i18n/da.json @@ -4,5 +4,7 @@ "Saederup92" ] }, - "usermerge-deleteolduser": "Slet gammel bruger" + "usermerge-deleteolduser": "Slet gammel bruger", + "log-action-filter-usermerge": "Handlingstype:", + "log-action-filter-usermerge-deleteuser": "Sletning af brugerkonto" } diff --git a/UserMerge/i18n/de.json b/UserMerge/i18n/de.json index 81ed2886..650551da 100644 --- a/UserMerge/i18n/de.json +++ b/UserMerge/i18n/de.json @@ -11,8 +11,7 @@ ] }, "usermerge": "Benutzerkonten zusammenführen und löschen", - "usermerge-desc": "Ergänzt eine [[Special:UserMerge|Spezialseite]] zum Zusammenführen von Benutzerkonten und der anschließenden Löschung des alten Benutzerkontos", - "usermerge-badolduser": "Der alte Benutzername ist ungültig.", + "usermerge-desc": "Erweitert das Wiki um eine [[Special:UserMerge|Spezialseite]] zum Zusammenführen von Benutzerkonten mit anschließender Löschung des alten Benutzerkontos", "usermerge-badnewuser": "Der neue Benutzername ist ungültig.", "usermerge-nonewuser": "Es wurde kein neuer Benutzername angegeben. Daher wird eine Zusammenführung mit „{{GENDER:$1|$1}}“ angenommen.<br />\nZum Ausführen auf „{{int:usermerge-submit}}“ klicken.", "usermerge-noolduser": "Es wurde kein neuer Benutzername angegeben.", @@ -24,9 +23,7 @@ "usermerge-submit": "Benutzerkonten zusammenführen", "usermerge-badtoken": "Ungültiges Bearbeitungstoken", "usermerge-userdeleted": "„$1“ ($2) wurde gelöscht.", - "usermerge-userdeleted-log": "hat das Benutzerkonto „$2“ ($3) gelöscht", "usermerge-success": "Die Zusammenführung von „$1“ ($2) nach „$3“ ($4) war erfolgreich.", - "usermerge-success-log": "hat das Benutzerkonto „$2“ ($3) in „[[User:$4|$4]]“ ($5) zusammengeführt", "usermerge-logpage": "Benutzerkontenzusammenführungs-Logbuch", "usermerge-logpagetext": "Dies ist das Logbuch der Benutzerkontenzusammenführungen.", "usermerge-noselfdelete": "Die Zusammenführung mit {{GENDER:$1|dem eigenen Benutzerkonto}} ist nicht möglich.", @@ -35,5 +32,10 @@ "action-usermerge": "Benutzer zusammenzuführen", "usermerge-autopagedelete": "Bei der Zusammenführung der Benutzer automatisch gelöschte Seite", "usermerge-page-unmoved": "Die Seite „$1“ konnte nicht nach „$2“ verschoben werden.", - "usermerge-move-log": "Die Seite wurde während der Benutzerkontenzusammenführung von „$1“ nach „[[User:$2|$2]]“ automatisch verschoben" + "usermerge-move-log": "Die Seite wurde während der Benutzerkontenzusammenführung von „$1“ nach „[[User:$2|$2]]“ automatisch verschoben", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|führte}} das Benutzerkonto „$4“ ($5) in {{GENDER:$8|$6}} zusammen ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|löschte}} das Benutzerkonto „$4“ ($5)", + "log-action-filter-usermerge": "Aktionstyp:", + "log-action-filter-usermerge-mergeuser": "Benutzerkontenzusammenführung", + "log-action-filter-usermerge-deleteuser": "Benutzerkontenlöschung" } diff --git a/UserMerge/i18n/diq.json b/UserMerge/i18n/diq.json index 4b474479..35518618 100644 --- a/UserMerge/i18n/diq.json +++ b/UserMerge/i18n/diq.json @@ -1,17 +1,40 @@ { "@metadata": { "authors": [ + "1917 Ekim Devrimi", + "Asmen", "Erdemaslancan", - "Marmase", - "Mirzali", "Kumkumuk", - "Asmen" + "Marmase", + "Mirzali" ] }, + "usermerge": "Karbera pêtewr kerê ya zi bıesternê", + "usermerge-desc": "Viki database de [[Special:UserMerge|referansan yew karberi ra ê bini tewr kerış]] - Tewr kerdışi dıme karberanê verênan zi esterneno. Bağseyiya ''karberapêtewrkerdış'' lazıma", + "usermerge-badnewuser": "Nameyê kerberiyo neweyo nêvêrde.", + "usermerge-nonewuser": "Veng namey karberiyo newe. Zey \"{{GENDER:$1|$1}}\" pêtewr kerdış hesabêno.<br />\nSeba qebul kerdışi buttona \"{{int:usermerge-submit}}\" bıploğnê .", + "usermerge-noolduser": "Nameyê karberiyo kehano veng.", + "usermerge-same-old-and-new-user": "Namey karberê verêni u neweyêni wa ca bo", + "usermerge-fieldset": "Nameyê karberanê ke yew bê", + "usermerge-olduser": "Karbero kehan (ra yew kerê):", + "usermerge-newuser": "Karbero newe (de biya pê):", + "usermerge-deleteolduser": "Karberê kehani bestere", "usermerge-submit": "Karbera zewkerden", - "usermerge-userdeleted": "$1 ($2) besterna.", - "usermerge-userdeleted-log": "Karbero ke besteriya: $2 ($3)", + "usermerge-badtoken": "Ratnoğe xırab vırnayışi", + "usermerge-userdeleted": "$1 ($2) esteriya .", + "usermerge-success": "Karberê $1 ($2) ra hetê $3 ($4) ra kerber biyo tewr.", "usermerge-logpage": "Qeydê bestnayışê karberi", + "usermerge-logpagetext": "No yew rocekê karbera pêtewr kerışo", + "usermerge-noselfdelete": "{{GENDER:$1|Şıma }} nêşenê xo pêtewr kerê ya zi bıesternê !", + "usermerge-protectedgroup": "{{GENDER:$1|Karbero}} pêtewr nêbeno: Karber şeveknaye yew grube miyan dero.", "right-usermerge": "Karberan zewkerden", - "action-usermerge": "Karberan zewkerden" + "action-usermerge": "Karberan zewkerden", + "usermerge-autopagedelete": "Karbera pêtewr kerdış de esteriyaye pela", + "usermerge-page-unmoved": "Pela $1 ra $2 nêwegêriyê.", + "usermerge-move-log": "Hesabê \"$1\" hesabê \"[[User:$2|$2]]\" ya pêtewr kerdış de pela otomatikmen berd.", + "logentry-usermerge-mergeuser": "$1 hesabê karberi \"$4\" ($5) ze {{GENDER:$8|$6}} ($7) {{GENDER:$2|biya pêtewr }}", + "logentry-usermerge-deleteuser": "$1 hesabê karberi {{GENDER:$2|esteriya}} \"$4\" ($5)", + "log-action-filter-usermerge": "Tipê fealiyeti:", + "log-action-filter-usermerge-mergeuser": "Pêrabestışê hesabê karberi", + "log-action-filter-usermerge-deleteuser": "Esterıtışê hesabê karberi" } diff --git a/UserMerge/i18n/dsb.json b/UserMerge/i18n/dsb.json index 67fd7961..6f54c576 100644 --- a/UserMerge/i18n/dsb.json +++ b/UserMerge/i18n/dsb.json @@ -6,7 +6,6 @@ }, "usermerge": "Wužywarjow zjadnośiś a wulašowaś", "usermerge-desc": "[[Special:UserMerge|Zjadnośujo reference wót jadnogo wužywarja k drugemu wužywarjeju]] we wikijowej datowej bance - buźo teke wšych starych wužywarjow pó zjadnosénju lašowaś. Pomina se pšawa ''usermerge''", - "usermerge-badolduser": "Njepłaśiwe stare wužywarske mě", "usermerge-badnewuser": "Njepłaśiwe nowe wužywarske mě", "usermerge-nonewuser": "Prozne nowe wužywarske mě - góda se zjadnośenje k \"{{GENDER:$1|$1}}\".<br />\nKlikni na \"{{int:usermerge-submit}}\", aby akceptěrował.", "usermerge-noolduser": "Prozne stare wužywarske mě", @@ -18,9 +17,7 @@ "usermerge-submit": "Wužywarja zjadnośiś", "usermerge-badtoken": "Njepłaśiwy wobźěłowański token", "usermerge-userdeleted": "$1 ($2) jo se wulašował.", - "usermerge-userdeleted-log": "Wulašowany wužywaŕ: $2 ($3)", "usermerge-success": "Zjadnosénje wot $1 ($2) z {{GENDER:$3|$3}} ($4) jo skóńcone.", - "usermerge-success-log": "Wužywaŕ $2 ($3) jo se z {{GENDER:$4|$4}} ($5) zjadnośił", "usermerge-logpage": "Protokol wužywarskich zjadnośenjow", "usermerge-logpagetext": "To jo protokol akcijow wužywarskich zjadnośenjow.", "usermerge-noselfdelete": "Njamóžoš se ze sobu zjadnośiś!", diff --git a/UserMerge/i18n/el.json b/UserMerge/i18n/el.json index 4d1ea3df..bf9a5878 100644 --- a/UserMerge/i18n/el.json +++ b/UserMerge/i18n/el.json @@ -3,15 +3,14 @@ "authors": [ "Consta", "Crazymadlover", + "KATRINE1992", "Omnipaedista", "Protnet", - "ZaDiak", - "KATRINE1992" + "ZaDiak" ] }, "usermerge": "Συγχώνευση και διαγραφή χρηστών", "usermerge-desc": "[[Special:UserMerge|Συγχωνεύει αναφορές από ένα χρήστη σε έναν άλλο χρήστη]] στη βάση δεδομένων του wiki - μπορεί να διαγράψει επίσης τους παλιούς χρήστες μετά τη συγχώνευση. Απαιτεί δικαιώματα ''usermerge''", - "usermerge-badolduser": "Μη έγκυρο παλιό όνομα χρήστη", "usermerge-badnewuser": "Μη έγκυρο νέο όνομα χρήστη", "usermerge-nonewuser": "Το νέο όνομα χρήστη είναι κενό. Θεωρείται αυτόματα ότι η συγχώνευση θα γίνει {{GENDER:$1|στον|στην}} \"$1\".<br />\nΚάντε κλικ στο κουμπί \"{{int:usermerge-submit}}\" για αποδοχή.", "usermerge-noolduser": "Το παλιό όνομα χρήστη είναι κενό.", @@ -23,9 +22,7 @@ "usermerge-submit": "Συγχώνευση χρήστη", "usermerge-badtoken": "Άκυρο δείγμα επεξεργασίας", "usermerge-userdeleted": "{{GENDER:$1|Ο|Η}} $1 ($2) έχει διαγραφεί.", - "usermerge-userdeleted-log": "Διαγεγραμμένος χρήστης: $2 ($3)", "usermerge-success": "Η συγχώνευση από {{GENDER:$1|τον|την}} $1 ($2) {{GENDER:$3|στον|στην}} $3 ($4) ολοκληρώθηκε.", - "usermerge-success-log": "{{GENDER:$2|Ο χρήστης|Η χρήστρια}} $2 ($3) συγχωνεύθηκε {{GENDER:$4|στον|στην}} $4 ($5)", "usermerge-logpage": "Αρχείο καταγραφής συγχωνεύσεων χρηστών", "usermerge-logpagetext": "Αυτό είναι ένα αρχείο καταγραφής συγχωνεύσεων.", "usermerge-noselfdelete": "Δεν μπορείτε να διαγραφείτε ή να συγχωνευτείτε από {{GENDER:$1|μόνος|μόνη}} σας!", diff --git a/UserMerge/i18n/en.json b/UserMerge/i18n/en.json index ad8cb139..96c2b042 100644 --- a/UserMerge/i18n/en.json +++ b/UserMerge/i18n/en.json @@ -4,7 +4,6 @@ }, "usermerge": "Merge and delete users", "usermerge-desc": "[[Special:UserMerge|Merges references from one user to another user]] in the wiki database - will also delete old users following merge. Requires ''usermerge'' privileges", - "usermerge-badolduser": "Invalid old username.", "usermerge-badnewuser": "Invalid new username.", "usermerge-nonewuser": "Empty new username. Assuming merge to \"{{GENDER:$1|$1}}\".<br />\nClick \"{{int:usermerge-submit}}\" to accept.", "usermerge-noolduser": "Empty old username.", diff --git a/UserMerge/i18n/eo.json b/UserMerge/i18n/eo.json index 88b0ec60..6af81011 100644 --- a/UserMerge/i18n/eo.json +++ b/UserMerge/i18n/eo.json @@ -1,26 +1,24 @@ { "@metadata": { "authors": [ + "KuboF", "Melancholie", "Michawiki", - "Yekrats", - "KuboF" + "Robin van der Vliet", + "Yekrats" ] }, "usermerge": "Kunigi kaj forigi uzantojn", - "usermerge-badolduser": "Nevalida malnova salutnomo", - "usermerge-badnewuser": "Nevalida nova salutnomo", - "usermerge-noolduser": "Malplena malnova salutnomo", - "usermerge-fieldset": "Kunigotaj salutnomoj", + "usermerge-badnewuser": "Nevalida nova uzantnomo", + "usermerge-noolduser": "Malplena malnova uzantnomo", + "usermerge-fieldset": "Kunigotaj uzantnomoj", "usermerge-olduser": "Malnova uzanto (kunigante de):", "usermerge-newuser": "Nova uzanto (kunigante al):", "usermerge-deleteolduser": "Forigi malnovan uzanton", "usermerge-submit": "Kunigi uzanton", "usermerge-badtoken": "Nevalida redakta ĵetono", "usermerge-userdeleted": "$1 ($2) estis forigita.", - "usermerge-userdeleted-log": "Forigis uzanton: $2 ($3)", "usermerge-success": "Kunigado de $1 ($2) al $3 ($4) kompletiĝis.", - "usermerge-success-log": "Uzanto $2 ($3) kunigita al $4 ($5)", "usermerge-logpage": "Protokolo pri kunigado de uzantoj", "usermerge-logpagetext": "Jen protokolo de kunigadoj de uzantoj", "usermerge-noselfdelete": "Vi ne povas forigi aŭ kunigi de vi mem!", diff --git a/UserMerge/i18n/es.json b/UserMerge/i18n/es.json index 93ccd946..928067e5 100644 --- a/UserMerge/i18n/es.json +++ b/UserMerge/i18n/es.json @@ -4,18 +4,18 @@ "Armando-Martin", "Crazymadlover", "Dferg", + "Dgstranz", + "Fitoschido", "Imre", + "Macofe", "MarcoAurelio", - "Sanbec", - "Fitoschido", "Nemo bis", - "Macofe", - "Dgstranz" + "Sanbec", + "Tiberius1701" ] }, "usermerge": "Fusionar y borrar usuarios", "usermerge-desc": "[[Special:UserMerge|Fusiona referencias de un usuario a otro usuario]] en la base de datos wiki - también borrará los usuarios antiguos como consecuencia de la fusión. Se requieren los permisos de ''usermerge''", - "usermerge-badolduser": "El nombre de usuario anterior no es válido.", "usermerge-badnewuser": "El nombre de usuario nuevo no es válido.", "usermerge-nonewuser": "Nuevo nombre de usuario vacío - asumiendo fusión en «$1».<br />\nHaga clic en «{{int:usermerge-submit}}» para aceptar.", "usermerge-noolduser": "Nombre de usuario antiguo vacío", @@ -27,9 +27,7 @@ "usermerge-submit": "Fusionar usuario", "usermerge-badtoken": "Ficha de edición inválida", "usermerge-userdeleted": "Se borró a $1 ($2).", - "usermerge-userdeleted-log": "borró la cuenta de usuario «$2» ($3)", "usermerge-success": "Se completó la combinación de $1 ($2) a $3 ($4).", - "usermerge-success-log": "fusionó la cuenta «$2» ($3) con «[[User:$4|$4]]» ($5)", "usermerge-logpage": "Registro de fusiones del usuario", "usermerge-logpagetext": "Este es un registro de fusiones de cuentas de usuario.", "usermerge-noselfdelete": "No puedes borrarte o fusionarte tú {{GENDER:$1|mismo|misma}}.", @@ -38,5 +36,10 @@ "action-usermerge": "fusionar usuarios", "usermerge-autopagedelete": "Borrada automáticamente al fusionar usuarios", "usermerge-page-unmoved": "La página $1 no pudo trasladarse a $2.", - "usermerge-move-log": "Página trasladada automáticamente al fusionar la cuenta «$1» con «[[User:$2|$2]]»" + "usermerge-move-log": "Página trasladada automáticamente al fusionar la cuenta «$1» con «[[User:$2|$2]]»", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionó}} la cuenta de usuario «$4» ($5) en la cuenta {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|borró}} la cuenta de usuario «$4» ($5)", + "log-action-filter-usermerge": "Tipo de acción:", + "log-action-filter-usermerge-mergeuser": "Fusiones de cuentas de usuario", + "log-action-filter-usermerge-deleteuser": "Borrado de cuentas de usuario" } diff --git a/UserMerge/i18n/et.json b/UserMerge/i18n/et.json index 41b13f05..4132fa55 100644 --- a/UserMerge/i18n/et.json +++ b/UserMerge/i18n/et.json @@ -5,7 +5,6 @@ ] }, "usermerge-desc": "[[Special:UserMerge|Ühendab vikiandmebaasis kasutaja nimetamised teise kasutajaga]]. Ühendamise järel kustutab vanad kasutajad. Nõuab õigust \"usermerge\".", - "usermerge-badolduser": "Vigane vana kasutajanimi", "usermerge-badnewuser": "Vigane uus kasutajanimi", "usermerge-userdeleted": "$1 ($2) on kustutatud.", "usermerge-logpage": "Kasutajate ühendamislogi", diff --git a/UserMerge/i18n/eu.json b/UserMerge/i18n/eu.json index a5fe1784..6761eec6 100644 --- a/UserMerge/i18n/eu.json +++ b/UserMerge/i18n/eu.json @@ -2,12 +2,12 @@ "@metadata": { "authors": [ "An13sa", + "Joseba", + "Mikel Ibaiba", "Theklan", - "Xabier Armendaritz", - "Mikel Ibaiba" + "Xabier Armendaritz" ] }, - "usermerge-badolduser": "Baliogabeko lankide izen zaharra", "usermerge-badnewuser": "Baliogabeko lankide izen berria", "usermerge-noolduser": "Lankide izen zahar hutsa", "usermerge-olduser": "Lankide zaharra (nondik batu):", @@ -15,10 +15,8 @@ "usermerge-deleteolduser": "Ezabatu lankide zaharra", "usermerge-submit": "Lankidea batu", "usermerge-badtoken": "Aldaketa token ez baliagarria", - "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ezabatua izan da.", - "usermerge-userdeleted-log": "Ezabatutako lankidea: $2 ($3)", + "usermerge-userdeleted": "$1 ($2) ezabatu da.", "usermerge-success": "$1(e)tik ($2) $3(e)ra ($4) batzea burutu da.", - "usermerge-success-log": "$2 ($3) lankidea $4 ($5) lankidera batu da", "usermerge-logpage": "Lankide batze loga", "usermerge-logpagetext": "Log hau lankide batze ekintzena da.", "usermerge-noselfdelete": "Ezin duzu zure burua ezabatu edo batu!", diff --git a/UserMerge/i18n/fa.json b/UserMerge/i18n/fa.json index ab7bc888..665aa60c 100644 --- a/UserMerge/i18n/fa.json +++ b/UserMerge/i18n/fa.json @@ -1,21 +1,20 @@ { "@metadata": { "authors": [ + "Alirezaaa", "Armin1392", "BlueDevil", "Ebraminio", "Huji", + "Ladsgroup", "Meisam", "Mjbmr", "Reza1615", - "ZxxZxxZ", - "Alirezaaa", - "Ladsgroup" + "ZxxZxxZ" ] }, "usermerge": "ادغام و حذفکردن کاربران", "usermerge-desc": "[[Special:UserMerge|ادغام منابع از یک کاربر به کاربر دیگر]] در پایگاه اطلاعاتی ویکی - همچنین کاربران قدیمی ادغام زیر حذف خواهند شد. نیازمند امتیازات ''ادغام کاربر''", - "usermerge-badolduser": "نام کاربری قدیمی نامعتبر", "usermerge-badnewuser": "نام کاربری تازه نامعتبر", "usermerge-nonewuser": "نام کاربری جدید خالی. فرض بر ادغام به \"{{GENDER:$1|$1}}\".<br /> برای قبول کردن \"{{int:usermerge-submit}}\" را کلیک کنید.", "usermerge-noolduser": "نام کاربری قدیمی خالی", @@ -27,9 +26,7 @@ "usermerge-submit": "یکی کردن کاربر", "usermerge-badtoken": "نشانهٔ ویرایش نامعتبر.", "usermerge-userdeleted": "$1 ($2) پاک شد.", - "usermerge-userdeleted-log": "کاربر «$2» حذف شد ($3)", "usermerge-success": "یکیکردن از $1 ($2) به $3 ($4) کامل شد.", - "usermerge-success-log": "کاربر «$2» ($3) با «[[User:$4|$4]]» ($5) یکی شد", "usermerge-logpage": "سیاههٔ ادغام کاربر", "usermerge-logpagetext": "این سیاههی ادغام فعالیتهای کاربر است.", "usermerge-noselfdelete": "شما نمیتوانید {{GENDER:$1|خودتان}} را یکی یا حذف کنید!", diff --git a/UserMerge/i18n/fi.json b/UserMerge/i18n/fi.json index 27f5c610..e709f55f 100644 --- a/UserMerge/i18n/fi.json +++ b/UserMerge/i18n/fi.json @@ -1,22 +1,22 @@ { "@metadata": { "authors": [ + "01miki10", "Cimon Avaro", "Crt", "Nike", "Silvonen", "Str4nd", "Stryn", + "Valtlait", "VezonThunder", - "Vililikku", - "01miki10" + "Vililikku" ] }, "usermerge": "Käyttäjätunnusten yhdistys ja poisto", - "usermerge-desc": "[[Special:UserMerge|Yhdistää viittaukset yhdestä käyttäjästä toiseen]] wikin tietokannassa - poistaa myös vanhat käyttäjät yhdistämisen jälkeen. Vaatii oikeuden \"usermerge\"", - "usermerge-badolduser": "Vanha käyttäjätunnus ei kelpaa", + "usermerge-desc": "[[Special:UserMerge|Yhdistää viittaukset yhdestä käyttäjästä toiseen]] wikin tietokannassa - poistaa myös vanhat käyttäjät yhdistämisen jälkeen. Vaatii oikeuden ”usermerge”", "usermerge-badnewuser": "Uusi käyttäjätunnus ei kelpaa", - "usermerge-nonewuser": "Uusi käyttäjätunnus -kenttä on tyhjä. Oletetaan yhdistäminen tunnukseen \"{{GENDER:$1|$1}}\". <br /> \nNapsauta \"{{int:usermerge-submit}}\" hyväksyäksesi.", + "usermerge-nonewuser": "Uusi käyttäjätunnus -kenttä on tyhjä. Oletetaan yhdistäminen tunnukseen ”{{GENDER:$1|$1}}”. <br /> \nNapsauta \"{{int:usermerge-submit}}\" hyväksyäksesi.", "usermerge-noolduser": "Vanha käyttäjätunnus ei voi olla tyhjä.", "usermerge-same-old-and-new-user": "Vanhan ja uuden käyttäjänimen on oltava eroavat.", "usermerge-fieldset": "Yhdistettävät käyttäjänimet", @@ -24,11 +24,9 @@ "usermerge-newuser": "Uusi käyttäjä (mihin yhdistetään)", "usermerge-deleteolduser": "Poista vanha käyttäjä", "usermerge-submit": "Yhdistä käyttäjä", - "usermerge-badtoken": "Virheellinen muokkauslipuke", + "usermerge-badtoken": "Virheellinen muokkauspoletti.", "usermerge-userdeleted": "$1 ($2) on poistettu.", - "usermerge-userdeleted-log": "poisti käyttäjätunnuksen \"$2\" ($3)", "usermerge-success": "Yhdistäminen tunnuksesta $1 ($2) tunnukseen $3 ($4) on suoritettu.", - "usermerge-success-log": "yhdisti käyttäjän \"$2\" ($3) käyttäjään \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Käyttäjien yhdistämisloki", "usermerge-logpagetext": "Tämä on loki käyttäjätunnuksien yhdistämistoimista.", "usermerge-noselfdelete": "Et voi poistaa tai yhdistää {{GENDER:$1|itseäsi}}!", @@ -37,5 +35,5 @@ "action-usermerge": "yhdistää käyttäjiä", "usermerge-autopagedelete": "Sivu poistettiin automaattisesti käyttäjien yhdistämisessä", "usermerge-page-unmoved": "Sivua $1 ei voitu siirtää nimelle $2.", - "usermerge-move-log": "Sivu siirrettiin automaattisesti yhdistettäessä käyttäjä \"$1\" käyttäjään \"[[User:$2|$2]]\"" + "usermerge-move-log": "Sivu siirrettiin automaattisesti yhdistettäessä käyttäjä ”$1” käyttäjään ”[[User:$2|$2]]”" } diff --git a/UserMerge/i18n/fr.json b/UserMerge/i18n/fr.json index d81c2a7b..d71116e5 100644 --- a/UserMerge/i18n/fr.json +++ b/UserMerge/i18n/fr.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Crochet.david", + "DSwissK", "Gomoko", "Grondin", "Guillom", @@ -10,13 +11,13 @@ "PieRRoMaN", "Seb35", "Sherbrooke", + "Thibaut120094", "Urhixidur", "Wladek92" ] }, "usermerge": "Fusionner et supprimer des utilisateurs", "usermerge-desc": "[[Special:UserMerge|Fusionne les références d’un utilisateur vers un autre]] dans la base de données wiki - supprimera aussi les anciens utilisateurs après la fusion. Nécessite le privilège ''usermerge''", - "usermerge-badolduser": "Ancien nom d’utilisateur invalide", "usermerge-badnewuser": "Nouveau nom d’utilisateur invalide", "usermerge-nonewuser": "Nouveau nom d’utilisateur vide. Nous supposons que vous voulez fusionner dans \"{{GENDER:$1|$1}}\".<br />\nCliquez sur \"{{int:usermerge-submit}}\" pour accepter.", "usermerge-noolduser": "Ancien nom d’utilisateur vide", @@ -28,16 +29,19 @@ "usermerge-submit": "Fusionner l’utilisateur", "usermerge-badtoken": "Jeton de modification invalide", "usermerge-userdeleted": "$1 ($2) a été supprimé{{GENDER:$1||e}}.", - "usermerge-userdeleted-log": "contributeur supprimé : « $2 » ($3)", "usermerge-success": "La fusion de $1 ($2) avec $3 ($4) est terminée.", - "usermerge-success-log": "compte « $2 » ($3) fusionné avec « [[User:$4|$4]] » ($5)", "usermerge-logpage": "Journal des fusions de comptes d’utilisateurs", "usermerge-logpagetext": "Voici un journal des actions de fusions d’utilisateurs.", - "usermerge-noselfdelete": "Vous ne pouvez pas vous supprimer ou vous fusionner {{GENDER:$1|vous-même}} !", + "usermerge-noselfdelete": "Vous ne pouvez pas vous supprimer ou vous fusionner {{GENDER:$1|vous-même}} !", "usermerge-protectedgroup": "Impossible de fusionner l’{{GENDER:$1|utilisateur|utilisatrice}} : l’{{GENDER:$1|il|elle}} est dans un groupe protégé.", "right-usermerge": "Fusionner des utilisateurs", "action-usermerge": "fusionner les utilisateurs", "usermerge-autopagedelete": "Page supprimée automatiquement lors de la fusion des utilisateurs", "usermerge-page-unmoved": "Cette page $1 ne peut pas être déplacée vers $2.", - "usermerge-move-log": "Page renommée automatiquement lors de la fusion du compte d’utilisat{{GENDER:$1|eur|rice}} « $1 » en « [[User:$2|]] »" + "usermerge-move-log": "Page renommée automatiquement lors de la fusion du compte d’utilisat{{GENDER:$1|eur|rice}} « $1 » en « [[User:$2|]] »", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|a fusionné}} le compte utilisateur « $4 » ($5) dans {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|a supprimé}} le compte utilisateur « $4 » ($5)", + "log-action-filter-usermerge": "Type d'action :", + "log-action-filter-usermerge-mergeuser": "Fusion de compte utilisateur", + "log-action-filter-usermerge-deleteuser": "Suppression de compte utilisateur" } diff --git a/UserMerge/i18n/frp.json b/UserMerge/i18n/frp.json index ad9795fd..19355735 100644 --- a/UserMerge/i18n/frp.json +++ b/UserMerge/i18n/frp.json @@ -5,7 +5,6 @@ ] }, "usermerge": "Fusionar et suprimar des usanciérs", - "usermerge-badolduser": "Viely nom d’usanciér envalido", "usermerge-badnewuser": "Novél nom d’usanciér envalido", "usermerge-noolduser": "Viely nom d’usanciér vouedo", "usermerge-fieldset": "Noms d’usanciér a fusionar", @@ -15,9 +14,7 @@ "usermerge-submit": "Fusionar l’usanciér", "usermerge-badtoken": "Jeton de changement envalido", "usermerge-userdeleted": "$1 ($2) at étâ suprimâ.", - "usermerge-userdeleted-log": "Contributor suprimâ : $2 ($3)", "usermerge-success": "La fusion de $1 ($2) a $3 ($4) est chavonâ.", - "usermerge-success-log": "Usanciér $2 ($3) fusionâ avouéc $4 ($5)", "usermerge-logpage": "Jornal de les fusions d’usanciérs", "usermerge-logpagetext": "O est un jornal de les accions de fusions d’usanciérs.", "usermerge-noselfdelete": "Vos vos pouede pas suprimar ou ben fusionar vos-mémo !", diff --git a/UserMerge/i18n/fy.json b/UserMerge/i18n/fy.json new file mode 100644 index 00000000..eaeedbff --- /dev/null +++ b/UserMerge/i18n/fy.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "PiefPafPier" + ] + }, + "usermerge-move-log": "Side automatysk omneamd by it gearfoegjen fan it akkount \"$1\" mei \"[[User:$2|$2]]\"" +} diff --git a/UserMerge/i18n/gl.json b/UserMerge/i18n/gl.json index 8127ef55..5b86fa00 100644 --- a/UserMerge/i18n/gl.json +++ b/UserMerge/i18n/gl.json @@ -2,14 +2,13 @@ "@metadata": { "authors": [ "Alma", - "Toliño", + "Banjo", "Elisardojm", - "Banjo" + "Toliño" ] }, "usermerge": "Fusionar e eliminar usuario", "usermerge-desc": "[[Special:UserMerge|Fusiona as referencias dun usuario noutro usuario]] na base de datos do wiki (tamén borrará as fusións vellas dos usuarios seguintes. Require privilexios ''usermerge'')", - "usermerge-badolduser": "Antigo nome de usuario non válido", "usermerge-badnewuser": "Novo nome de usuario non válido", "usermerge-nonewuser": "Nome de usuario baleiro. Asúmese que quere fusionalo con \"{{GENDER:$1|$1}}\".<br />\nPrema en \"{{int:usermerge-submit}}\" para aceptar.", "usermerge-noolduser": "Antigo nome de usuario baleiro", @@ -21,9 +20,7 @@ "usermerge-submit": "Fusionar o usuario", "usermerge-badtoken": "Sinal de edición non válido", "usermerge-userdeleted": "$1 ($2) foi eliminado.", - "usermerge-userdeleted-log": "eliminouse a conta de usuario \"$2\" ($3)", "usermerge-success": "Completouse a fusión desde $1 ($2) a $3 ($4).", - "usermerge-success-log": "Fusionouse a conta \"$2\" ($3) con \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Rexistro de fusión de usuarios", "usermerge-logpagetext": "Este é un rexistro das accións de fusión de usuarios.", "usermerge-noselfdelete": "Non se pode eliminar ou fusionar a si {{GENDER:$1|mesmo|mesma}}!", diff --git a/UserMerge/i18n/gsw.json b/UserMerge/i18n/gsw.json index 546e5a69..67e8dfbf 100644 --- a/UserMerge/i18n/gsw.json +++ b/UserMerge/i18n/gsw.json @@ -7,7 +7,6 @@ }, "usermerge": "Benutzerkonte zämmefiere un lesche", "usermerge-desc": "[[Special:UserMerge|Fiert Benutzerkonte in dr Wiki-Datebank zämme]] - s alt Benutzerkonto wird no dr Zämmefierig glescht. Bruucht s ''usermerge''-Rächt.", - "usermerge-badolduser": "Uugiltiger alter Benutzername", "usermerge-badnewuser": "Uugiltiger nejer Benutzername", "usermerge-nonewuser": "Läärer nejer Benutzername - s wird e Zämmefierig mit „$1“ vermuetet.<br />\nKlick uf \"{{int:usermerge-submit}}\" go s Uusfiere.", "usermerge-noolduser": "Läärer alter Benutzername", @@ -18,9 +17,7 @@ "usermerge-submit": "Benutzerkonte zämmefiere", "usermerge-badtoken": "Uugiltig Bearbeite-Token", "usermerge-userdeleted": "„$1“ ($2) isch glescht wore.", - "usermerge-userdeleted-log": "Gleschter Benutzername: „$2“ ($3)", "usermerge-success": "D Zämmefierig vu „$1“ ($2) noch „$3“ ($4) isch vollständig.", - "usermerge-success-log": "Benutzername „$2“ ($3) zämmegfiert mit „$4“ ($5)", "usermerge-logpage": "Benutzerkonte-Zämmefierigs-Logbuech", "usermerge-logpagetext": "Des isch s Logbuech vu dr Benutzerkonte-Zämmefierige.", "usermerge-noselfdelete": "Zämmefierig mit sich sälber isch nit megli!", diff --git a/UserMerge/i18n/gu.json b/UserMerge/i18n/gu.json index 678df534..32b70614 100644 --- a/UserMerge/i18n/gu.json +++ b/UserMerge/i18n/gu.json @@ -5,7 +5,6 @@ ] }, "usermerge": "સભ્યોને ભેળવો અને રદ કરો", - "usermerge-badolduser": "અમાન્ય જુનું સભ્યનામ", "usermerge-badnewuser": "અમાન્ય નવું સભ્યનામ", "usermerge-noolduser": "જુનું સભ્યનામ ખાલી કરો", "usermerge-fieldset": "ભેળવવા માટેનાં સભ્યનામો", diff --git a/UserMerge/i18n/he.json b/UserMerge/i18n/he.json index 8b42dd5b..087b8467 100644 --- a/UserMerge/i18n/he.json +++ b/UserMerge/i18n/he.json @@ -2,14 +2,14 @@ "@metadata": { "authors": [ "Amire80", + "Guycn2", "Rotemliss", - "YaronSh", - "Guycn2" + "Strayblues", + "YaronSh" ] }, "usermerge": "מיזוג ומחיקת משתמשים", "usermerge-desc": "[[Special:UserMerge|מיזוג התייחסויות ממשתמש אחד לאחר]] בבסיס הנתונים של הוויקי, כולל מחיקת המשתמשים הישנים לאחר המיזוג. נדרשת הרשאת ''usermerge''", - "usermerge-badolduser": "שם המשתמש הישן אינו תקין", "usermerge-badnewuser": "שם המשתמש החדש אינו תקין", "usermerge-nonewuser": "שם המשתמש החדש ריק. כנראה שהמיזוג הוא אל \"$1\".<br />\nנא ללחוץ על \"{{int:usermerge-submit}}\" לאישור.", "usermerge-noolduser": "שם המשתמש הישן ריק", @@ -21,9 +21,7 @@ "usermerge-submit": "מיזוג משתמש", "usermerge-badtoken": "אסימון עריכה שגוי.", "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|נמחק|נמחקה}}.", - "usermerge-userdeleted-log": "מחק את החשבון \"$2\" ($3)", "usermerge-success": "המיזוג של $1 ($2) לתוך $3 ($4) הושלם.", - "usermerge-success-log": "החשבון \"$2\" ($3) מוזג לתוך \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "יומן מיזוג משתמשים", "usermerge-logpagetext": "זהו יומן של פעולות מיזוג המשתמשים.", "usermerge-noselfdelete": "לא ניתן למחוק או למזג מ{{GENDER:$1|עצמך}}!", @@ -32,5 +30,10 @@ "action-usermerge": "למזג משתמשים", "usermerge-autopagedelete": "הדף נמחק אוטומטית בזמן מיזוג חשבונות", "usermerge-page-unmoved": "לא ניתן להעביר את הדף $1 לשם $2.", - "usermerge-move-log": "הדף הועבר אוטומטית בזמן מיזוג חשבון \"$1\" אל \"[[User:$2|$2]]\"" + "usermerge-move-log": "הדף הועבר אוטומטית בזמן מיזוג חשבון \"$1\" אל \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|מיזג|מיזגה}} את חשבון המשתמש \"$4\" ($5) אל {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|מחק|מחקה}} את חשבון המשתמש \"$4\" ($5)", + "log-action-filter-usermerge": "סוג הפעולה:", + "log-action-filter-usermerge-mergeuser": "מיזוג חשבונות משתמש", + "log-action-filter-usermerge-deleteuser": "מחיקת חשבון משתמש" } diff --git a/UserMerge/i18n/hi.json b/UserMerge/i18n/hi.json index 092e0c89..090978ed 100644 --- a/UserMerge/i18n/hi.json +++ b/UserMerge/i18n/hi.json @@ -7,7 +7,6 @@ }, "usermerge": "सदस्य खाते विलय करें और हटाएँ", "usermerge-desc": "विकि डाटाबेस में [[Special:UserMerge|सदस्य खाते विलय करें]]। विलय के बाद पुराने खाते हटा दिए जाएँगे। ''usermerge'' अधिकार आवश्यक है।", - "usermerge-badolduser": "अमान्य पुराना सदस्यनाम।", "usermerge-badnewuser": "अमान्य नया सदस्यनाम।", "usermerge-badtoken": "गलत एडिट टोकन" } diff --git a/UserMerge/i18n/hsb.json b/UserMerge/i18n/hsb.json index bc5a0cc9..42be3c81 100644 --- a/UserMerge/i18n/hsb.json +++ b/UserMerge/i18n/hsb.json @@ -6,7 +6,6 @@ }, "usermerge": "Wužiwarske konta zjednoćić a zničić", "usermerge-desc": "[[Special:UserMerge|Zjednoća referency wužiwarjow]] we wikowej datowej bance - stare wužiwarske konto so po zjednoćenju wušmórnje. Žada sej prawa ''usermerge''.", - "usermerge-badolduser": "Njepłaćiwe stare wužiwarske mjeno", "usermerge-badnewuser": "Njepłaćiwe nowe wužiwarske mjeno", "usermerge-nonewuser": "Falowace nowe wužiwarske mjeno - najskerje zjednoćenje do \"{{GENDER:$1|$1}}\".<br />\nKlikń na \"{{int:usermerge-submit}}\", zo by akceptował.", "usermerge-noolduser": "Falowace stare wužiwarske mjeno", @@ -18,9 +17,7 @@ "usermerge-submit": "Wužiwarske konta zjednoćić", "usermerge-badtoken": "Njepłaćiwe wobdźěłanske znamjo", "usermerge-userdeleted": "$1($2) bu zničeny.", - "usermerge-userdeleted-log": "Wušmórnjeny wužiwar: $2($3)", "usermerge-success": "Zjednoćenje wot $1 ($2) do {{GENDER:$3|$3}} ($4) je dokónčene.", - "usermerge-success-log": "Wužiwar $2 ($3) je so z {{GENDER:$4|$4}} ($5) zjednoćił", "usermerge-logpage": "Protokol wužiwarskich zjednoćenjow", "usermerge-logpagetext": "To je protokol wužiwarskich zjednoćenjow.", "usermerge-noselfdelete": "Njemóžeš sam wušmórnyć abo zjednoćić!", diff --git a/UserMerge/i18n/ht.json b/UserMerge/i18n/ht.json index 789f16dc..f20cf6cc 100644 --- a/UserMerge/i18n/ht.json +++ b/UserMerge/i18n/ht.json @@ -7,7 +7,6 @@ }, "usermerge": "Mete ansanm ak efase kont itilizatè yo", "usermerge-desc": "[[Special:UserMerge|Mèt ansanm referans yo depi yon itilizatè nan referans yon lòt itilizatè]] nan baz done wiki a - l ap efase tou vye non itilizatè yo apre fizyon fin fèt. Ou bezwen genyen dwa ''usermerge'' pou fè fizyon sa.", - "usermerge-badolduser": "Ansyen non itilizatè a pa bon.", "usermerge-badnewuser": "Nouvo non itilizatè a pa bon.", "usermerge-nonewuser": "Nouvo non itilizatè ki vid - nou kwè ou vle mete l ansanm ak $1.<br />\nKlike \"{{int:usermerge-submit}}\" pou aksepte operasyon an.", "usermerge-noolduser": "Ansyen non itilizatè a vid", @@ -17,9 +16,7 @@ "usermerge-submit": "Mèt ansanm kont itilizatè yo", "usermerge-badtoken": "Tikè pou modifikasyon pa bon", "usermerge-userdeleted": "$1 ($2) efase.", - "usermerge-userdeleted-log": "Non itilizatè ki efase a: $2 ($3)", "usermerge-success": "Nou rive mèt ansanm $1 ($2) ak $3 ($4), depi premye kont an.", - "usermerge-success-log": "Itilizatè $2 ($3) fizyone ak $4 ($5)", "usermerge-logpage": "Jounal pou fizyon kont itilizatè", "usermerge-logpagetext": "Men jounal ki dekri tout aksyon ki te fèt pou fizyon kont itilizatè yo.", "usermerge-noselfdelete": "Ou pa kapab efase tèt ou oubyen fizyone tèt ou.", diff --git a/UserMerge/i18n/hu.json b/UserMerge/i18n/hu.json index d51b5f04..fc2f85c2 100644 --- a/UserMerge/i18n/hu.json +++ b/UserMerge/i18n/hu.json @@ -8,7 +8,6 @@ }, "usermerge": "Felhasználói fiókok összevonása és törlése", "usermerge-desc": "[[Special:UserMerge|Beolvasztja egy felhasználó közreműködéseit egy másikéba]] a wiki adatbázisában, majd törli a beolvasztott felhasználói fiókot. ''Szerkesztők egyesítése'' jogosultság kell hozzá", - "usermerge-badolduser": "Érvénytelen régi felhasználói név", "usermerge-badnewuser": "Érvénytelen új felhasználói név", "usermerge-nonewuser": "Üres új felhasználónév. Feltételezett cél: „$1”<br />\nKattints a „{{int:usermerge-submit}}”-ra az elfogadáshoz.", "usermerge-noolduser": "A régi felhasználói név üres", @@ -20,9 +19,7 @@ "usermerge-submit": "Felhasználói fiók összevonása", "usermerge-badtoken": "Érvénytelen szerkesztési token", "usermerge-userdeleted": "„$1” ($2) törölve.", - "usermerge-userdeleted-log": "törölte a(z) „$2” ($3) felhasználói fiókot", "usermerge-success": "„$1” ($2) fiók beolvasztása a(z) „$3” ($4) felhasználói fiókba elkészült.", - "usermerge-success-log": "„$2” ($3) felhasználó beolvasztva a(z) „[[User:$4|$4]]” ($5) felhasználói fiókba", "usermerge-logpage": "Felhasználói nevek egyesítésének naplója", "usermerge-logpagetext": "Ez a felhasználó nevek összevonásának naplója.", "usermerge-noselfdelete": "Nem tudsz törölni vagy összevonni a saját {{GENDER:$1|fiókodból}}!", diff --git a/UserMerge/i18n/ia.json b/UserMerge/i18n/ia.json index e23ac464..5b0fb5c8 100644 --- a/UserMerge/i18n/ia.json +++ b/UserMerge/i18n/ia.json @@ -6,7 +6,6 @@ }, "usermerge": "Fusionar e deler usatores", "usermerge-desc": "[[Special:UserMerge|Fusiona le referentias ab un usator verso un altere usator]] in le base de datos wiki - delera equalmente le ancian usatores post le fusion. Require le privilegio ''usermerge''", - "usermerge-badolduser": "Nomine de usator ancian invalide", "usermerge-badnewuser": "Nomine de nove usator invalide", "usermerge-nonewuser": "Nomine de nove usator vacue. Es assumite un fusion in \"{{GENDER:$1|$1}}\".<br />\nClicca sur \"{{int:usermerge-submit}}\" pro acceptar.", "usermerge-noolduser": "Nomine de usator ancian vacue", @@ -15,17 +14,20 @@ "usermerge-newuser": "Nove usator (fusionar con):", "usermerge-deleteolduser": "Deler ancian usator", "usermerge-submit": "Fusionar usator", - "usermerge-badtoken": "Indicio de modification invalide", - "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ha essite delite.", - "usermerge-userdeleted-log": "Usator delite: $2 ($3)", - "usermerge-success": "Le fusion de {{GENDER:$1|$1}} ($2) in {{GENDER:$3|$3}} ($4) ha succedite.", - "usermerge-success-log": "Le usator {{GENDER:$2|$2}} ($3) ha essite fusionate in {{GENDER:$4|$4}} ($5)", + "usermerge-badtoken": "Token de modification invalide", + "usermerge-userdeleted": "$1 ($2) ha essite delite.", + "usermerge-success": "Le fusion de $1 ($2) in $3 ($4) ha succedite.", "usermerge-logpage": "Registro de fusiones de usatores", "usermerge-logpagetext": "Isto es un registro de actiones de fusion de usatores.", "usermerge-noselfdelete": "Tu non pote deler o fusionar ab {{GENDER:$1|te mesme}}!", "usermerge-protectedgroup": "Impossibile fusionar ab iste {{GENDER:$1|usator}}: le usator es in un gruppo protegite.", "right-usermerge": "Fusionar usatores", - "usermerge-autopagedelete": "Automaticamente delite durante le fusion de usatores", + "usermerge-autopagedelete": "Pagina automaticamente delite durante le fusion de usatores", "usermerge-page-unmoved": "Le pagina $1 non poteva esser renominate a $2.", - "usermerge-move-log": "Le pagina ha essite automaticamente renominate durante le fusion del usator \"[[User:$1|$1]]\" in \"[[User:$2|{{GENDER:$2|$2}}]]\"" + "usermerge-move-log": "Le pagina ha essite automaticamente renominate durante le fusion del usator \"$1\" in \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionava}} le conto de usator \"$4\" ($5) in {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|deleva}} le conto de usator \"$4\" ($5)", + "log-action-filter-usermerge": "Typo de action:", + "log-action-filter-usermerge-mergeuser": "Fusion de contos de usator", + "log-action-filter-usermerge-deleteuser": "Deletion del conto de usator" } diff --git a/UserMerge/i18n/id.json b/UserMerge/i18n/id.json index b0f2a222..054a870f 100644 --- a/UserMerge/i18n/id.json +++ b/UserMerge/i18n/id.json @@ -1,14 +1,13 @@ { "@metadata": { "authors": [ + "Bennylin", "IvanLanin", - "Rex", - "Bennylin" + "Rex" ] }, "usermerge": "Penggabungan dan penghapusan Pengguna", "usermerge-desc": "[[Special:UserMerge|Menggabungkan rekam jejak dari suatu pengguna ke pengguna lain]] di basis data wiki - sekaligus menghapus pengguna lama setelah selesai digabungkan. Tindakan ini memerlukan hak ''usermerge''.", - "usermerge-badolduser": "Nama pengguna lama tidak sah", "usermerge-badnewuser": "Nama pengguna baru tidak sah", "usermerge-nonewuser": "Nama pengguna baru tidak dituliskan - diasumsikan akan digabungkan ke \"$1\".<br />\nKlik \"{{int:usermerge-submit}}\" untuk melanjutkan.", "usermerge-noolduser": "Nama pengguna lama tidak diisi", @@ -19,9 +18,7 @@ "usermerge-submit": "Gabungkan pengguna", "usermerge-badtoken": "Token penyuntingan tidak sah", "usermerge-userdeleted": "$1 ($2) telah dihapuskan.", - "usermerge-userdeleted-log": "Pengguna telah dihapuskan: $2 ($3)", "usermerge-success": "$1 ($2) telah selesai digabungkan ke $3 ($4).", - "usermerge-success-log": "Pengguna $2 ($3) telah digabungkan ke $4 ($5)", "usermerge-logpage": "Catatan penggabungan pengguna", "usermerge-logpagetext": "Ini adalah catatan tindakan penggabungan pengguna.", "usermerge-noselfdelete": "Anda tidak dapat menghapus atau menggabungkan dari Anda sendiri!", diff --git a/UserMerge/i18n/ie.json b/UserMerge/i18n/ie.json index 66b50ff4..75e54cb2 100644 --- a/UserMerge/i18n/ie.json +++ b/UserMerge/i18n/ie.json @@ -6,7 +6,6 @@ }, "usermerge": "Fuser se e deleter usatores", "usermerge-desc": "[[Special:UserMerge|Referenties de fusion de un usator por altri usator]] in li funde de data del wiki - anc va deleter usatores antiqui succedent fusion. Exige avantages de ''fusion de usator''", - "usermerge-badolduser": "Antiqui nómine de usator ínvalid", "usermerge-badnewuser": "Nov nómine de usator ínvalid", "usermerge-nonewuser": "Nov nómine de usator vacui - acceptant fusion por \"$1\".<br />\nClacca \"{{int:usermerge-submit}}\" por acceptar.", "usermerge-noolduser": "Antiqui nómine de usator vacui", @@ -17,7 +16,6 @@ "usermerge-submit": "Fuser usator", "usermerge-badtoken": "Simbol de redaction ínvalid", "usermerge-userdeleted": "$1 ($2) ha esset deletet.", - "usermerge-userdeleted-log": "Usator deletet: $2 ($3)", "usermerge-success": "Fuser se de $1 ($2) por $3 ($4) es complet.", "usermerge-logpage": "Diarium de fusion de usator", "usermerge-logpagetext": "Ti es un diarium de actiones de fusion de usator.", diff --git a/UserMerge/i18n/it.json b/UserMerge/i18n/it.json index 96a51b6a..72400eb2 100644 --- a/UserMerge/i18n/it.json +++ b/UserMerge/i18n/it.json @@ -9,7 +9,6 @@ }, "usermerge": "Unione e cancellazione utenti", "usermerge-desc": "[[Special:UserMerge|Unisce i riferimenti di un utente con quelli di un altro]] nel database della wiki e inoltre cancellerà il vecchio utente dopo l'unione. Richiede privilegi ''usermerge''", - "usermerge-badolduser": "Vecchio nome utente non valido", "usermerge-badnewuser": "Nuovo nome utente non valido", "usermerge-nonewuser": "Nuovo nome utente vuoto - l'unione verrà effettuata con l'utente \"{{GENDER:$1|$1}}\".<br />\nFare clic su \"{{int:usermerge-submit}}\" per accettare.", "usermerge-noolduser": "Vecchio nome utente vuoto", @@ -21,9 +20,7 @@ "usermerge-submit": "Unisci utente", "usermerge-badtoken": "Token di modifica non valido.", "usermerge-userdeleted": "$1 ($2) è stato cancellato.", - "usermerge-userdeleted-log": "cancellato l'utenza \"$2\" ($3)", "usermerge-success": "L'unione di $1 ($2) a $3 ($4) è completa.", - "usermerge-success-log": "unito l'utente \"$2\" ($3) in \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Unioni delle utenze", "usermerge-logpagetext": "Di seguito sono elencate le azioni di unione di utenti.", "usermerge-noselfdelete": "Non puoi cancellare o unire la {{GENDER:$1|tua}} stessa utenza!", @@ -32,5 +29,8 @@ "action-usermerge": "unire utenti", "usermerge-autopagedelete": "Cancellata automaticamente durante l'unione di utenti", "usermerge-page-unmoved": "La pagina $1 non può essere spostata a $2.", - "usermerge-move-log": "Spostata automaticamente la pagina durante l'unione dell'utente \"$1\" a \"[[User:$2|$2]]\"" + "usermerge-move-log": "Spostata automaticamente la pagina durante l'unione dell'utente \"$1\" a \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|ha unito}} l'utente \"$4\" ($5) in {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ha cancellato}} l'utente \"$4\" ($5)", + "log-action-filter-usermerge": "Tipo di azione:" } diff --git a/UserMerge/i18n/ja.json b/UserMerge/i18n/ja.json index 256f08b4..49fb73cb 100644 --- a/UserMerge/i18n/ja.json +++ b/UserMerge/i18n/ja.json @@ -2,17 +2,16 @@ "@metadata": { "authors": [ "Aotake", + "Azeha", "Fievarsty", "Fryed-peach", "Mzm5zbC3", - "Shirayuki", - "Azeha", - "Omotecho" + "Omotecho", + "Shirayuki" ] }, "usermerge": "利用者の統合と削除", "usermerge-desc": "ウィキデータベース上における[[Special:UserMerge|ある利用者を別の利用者へ統合し]]、また統合元の利用者を削除する (「{{int:right-usermerge}}」できる権限 ''usermerge'' が必要)", - "usermerge-badolduser": "旧利用者名が無効です。", "usermerge-badnewuser": "新利用者名が無効です。", "usermerge-nonewuser": "新しい利用者名の欄が空です。「{{GENDER:$1|$1}}」への統合と見なします。<br />\n「{{int:usermerge-submit}}」をクリックして承認してください。", "usermerge-noolduser": "旧利用者名の欄が空です。", @@ -24,9 +23,7 @@ "usermerge-submit": "利用者の統合", "usermerge-badtoken": "編集トークンが無効です。", "usermerge-userdeleted": "$1 ($2) は削除されました。", - "usermerge-userdeleted-log": "利用者アカウント「$2」 ($3) を削除しました", "usermerge-success": "$1 ($2) の $3 ($4) への統合が完了しました。", - "usermerge-success-log": "利用者「$2」($3) を「[[User:$4|$4]]」($5) へ統合しました", "usermerge-logpage": "利用者統合記録", "usermerge-logpagetext": "これは、利用者の統合を記録したものです。", "usermerge-noselfdelete": "{{GENDER:$1|自分自身}}の削除や{{GENDER:$1|自分自身}}との統合はできません。", diff --git a/UserMerge/i18n/jv.json b/UserMerge/i18n/jv.json index a4c3cef9..360cb654 100644 --- a/UserMerge/i18n/jv.json +++ b/UserMerge/i18n/jv.json @@ -1,30 +1,29 @@ { "@metadata": { "authors": [ + "Diki Ananta", "Meursault2004", + "NoiX180", "Pras", - "NoiX180" + "Sumbukompor" ] }, - "usermerge": "Panggabungan lan pambusakan panganggo", - "usermerge-desc": "[[Special:UserMerge|Nggabungaké rèferènsi saka panganggo siji menyang liyané]] ing basis data wiki - bakal sekaligus mbusak panganggo lawas sawisé rampung panggabungan. Tindakan iki merlokaké hak ''usermerge''.", - "usermerge-badolduser": "Jeneng panganggo lawas ora sah", - "usermerge-badnewuser": "Jeneng panganggo anyar ora absah", + "usermerge": "Panggabungan lan pambusakan naraguna", + "usermerge-desc": "[[Special:UserMerge|Nggabungaké rèferènsi saka naraguna siji menyang liyané]] ing basis data wiki - bakal sekaligus mbusak naraguna lawas sawisé rampung panggabungan. Tindakan iki merlokaké hak ''usermerge''.", + "usermerge-badnewuser": "Jeneng naraguna anyar ora absah", "usermerge-nonewuser": "Jeneng panganggo kothong - dianggep bakal digabungaké menyang $1.<br />\nKlik \"{{int:usermerge-submit}}\" kanggo nerusaké.", - "usermerge-noolduser": "Jeneng panganggo sing lawas kosong", - "usermerge-olduser": "Panganggo lawas (digabungaké saka):", - "usermerge-newuser": "Panganggo anyar (digabungaké menyang):", - "usermerge-deleteolduser": "Busak panganggo lawas", - "usermerge-submit": "Gabung panganggo", + "usermerge-noolduser": "Jeneng naraguna sing lawas kosong", + "usermerge-olduser": "Naraguna lawas (digabungaké saka):", + "usermerge-newuser": "Naraguna anyar (digabungaké menyang):", + "usermerge-deleteolduser": "Busak naraguna lawas", + "usermerge-submit": "Gabung naraguna", "usermerge-badtoken": "Token panyuntingan ora absah", "usermerge-userdeleted": "$1 ($2) wis dibusak.", - "usermerge-userdeleted-log": "Panganggo dibusak: $2 ($3)", "usermerge-success": "$1 ($2) wis rampung digabungaké menyang $3 ($4).", - "usermerge-success-log": "Panganggo $2 ($3) wis digabungaké menyang $4 ($5)", - "usermerge-logpage": "Log panggabungan panganggo", - "usermerge-logpagetext": "Iki sawijining log aksi panggabungan panganggo.", + "usermerge-logpage": "Log panggabungan naraguna", + "usermerge-logpagetext": "Iki sawijining log aksi panggabungan naraguna.", "usermerge-noselfdelete": "Panjenengan ora bisa mbusak utawa nggabung saka panjenengan dhéwé!", "usermerge-protectedgroup": "Ora bisa nggabungaké saka panganggo iki - panganggo ana jroning klompok kareksa.", - "right-usermerge": "Gabung panganggo", + "right-usermerge": "Gabung naraguna", "usermerge-move-log": "Otomatis ngalih kaca nalika nggabungaké panganggo \"[[User:$1|$1]]\" karo \"[[User:$2|{{GENDER:$2|$2}}]]\"" } diff --git a/UserMerge/i18n/ka.json b/UserMerge/i18n/ka.json index 0faa25cc..5b411c5b 100644 --- a/UserMerge/i18n/ka.json +++ b/UserMerge/i18n/ka.json @@ -2,10 +2,10 @@ "@metadata": { "authors": [ "David1010", + "Mehman97", "Otogi" ] }, - "usermerge-badolduser": "არასწორი ძველი მომხმარებლის სახელი", "usermerge-badnewuser": "არასწორი ახალი მომხმარებლის სახელი", "usermerge-noolduser": "ცარიელი ძველი მომხმარებლის სახელი", "usermerge-fieldset": "მომხმარებლის სახელები გასაერთიანებლად", @@ -14,7 +14,7 @@ "usermerge-deleteolduser": "ძველი მომხმარებლის წაშლა", "usermerge-submit": "მომხმარებლების გაერთიანება", "usermerge-userdeleted": "მომხმარებელი {{GENDER:$1|$1}} ($2) წაიშალა.", - "usermerge-userdeleted-log": "წაშლილი მომხმარებელი: $2 ($3)", "usermerge-logpage": "მომხმარებელთა შერწყმის ჟურნალი", - "right-usermerge": "მომხმარებლების გაერთიანება" + "right-usermerge": "მომხმარებლების გაერთიანება", + "log-action-filter-usermerge-deleteuser": "მომხმარებლის ანგარიშის წაშლა" } diff --git a/UserMerge/i18n/km.json b/UserMerge/i18n/km.json index 4c98dbb8..c6c3426c 100644 --- a/UserMerge/i18n/km.json +++ b/UserMerge/i18n/km.json @@ -8,19 +8,16 @@ ] }, "usermerge": "បញ្ចូលរួមគ្នានិងលុបអ្នកប្រើប្រាស់", - "usermerge-badolduser": "អត្តនាមចាស់មិនត្រឹមត្រូវទេ", "usermerge-badnewuser": "អត្តនាមថ្មីមិនត្រឹមត្រូវទេ", "usermerge-olduser": "អ្នកប្រើប្រាស់ចាស់(បញ្ចូលរួមគ្នាពី)៖", "usermerge-newuser": "អ្នកប្រើប្រាស់ថ្មី(បញ្ចូលរួមគ្នាទៅ)៖", "usermerge-deleteolduser": "លុបអ្នកប្រើប្រាស់ចាស់ចោល", "usermerge-submit": "បញ្ចូលរួមគ្នា អ្នកប្រើប្រាស់", - "usermerge-userdeleted": "$1 ($2) ត្រូវបានលុបហើយ។", - "usermerge-userdeleted-log": "បានលុបអ្នកប្រើប្រាស់៖ $2($3)", - "usermerge-success": "ការបញ្ចូលរួមគ្នាពី$1($2)ទៅ$3($4)បានបញ្ចប់ដោយពេញលេញ។", - "usermerge-success-log": "អ្នកប្រើប្រាស់ $2 ($3) បញ្ចូលរួមគ្នាទៅ $4 ($5)", + "usermerge-userdeleted": "$1 ($2) ត្រូវបានលុបចោលហើយ។", + "usermerge-success": "ការច្របាច់បញ្ចូលគ្នាពី$1($2)ទៅ$3($4)បានសម្រេចហើយ។", "usermerge-logpage": "កំណត់ហេតុនៃការបញ្ចួលអ្នកប្រើប្រាស់រួមគ្នា", "usermerge-logpagetext": "នេះជាកំណត់ហេតុនៃសកម្មភាពបញ្ចូលអ្នកប្រើប្រាស់រួមគ្នា។", - "usermerge-noselfdelete": "អ្នកមិនអាច លុបចេញ ឬ បញ្ចូលរួមគ្នា ពីខ្លួនអ្នកផ្ទាល់ !", - "usermerge-protectedgroup": "មិនអាចបញ្ចូលអ្នកប្រើប្រាស់រួមគ្នាបានទេ - អ្នកប្រើប្រាស់ស្ថិតនៅក្នុងក្រុមដែលបានការពារ។", + "usermerge-noselfdelete": "អ្នកមិនអាចលុបចោលឬច្របាច់បញ្ចូលគ្នាពី{{GENDER:$1|ខ្លួនអ្នកផ្ទាល់}}ទេ!", + "usermerge-protectedgroup": "មិនអាចច្របាច់បញ្ចូល{{GENDER:$1|អ្នកប្រើប្រាស់}}រួមគ្នាបានទេ។ អ្នកប្រើប្រាស់ស្ថិតនៅក្នុងក្រុមដែលបានការពារ។", "right-usermerge": "បញ្ចូលអ្នកប្រើប្រាស់រួមគ្នា" } diff --git a/UserMerge/i18n/ko.json b/UserMerge/i18n/ko.json index de93be72..b3936529 100644 --- a/UserMerge/i18n/ko.json +++ b/UserMerge/i18n/ko.json @@ -1,15 +1,16 @@ { "@metadata": { "authors": [ - "Kwj2772", - "아라", "Hwangjy9", - "Ykhwong" + "Kwj2772", + "Nuevo Paso", + "Ykhwong", + "렌즈", + "아라" ] }, "usermerge": "사용자 합치기 및 삭제", "usermerge-desc": "위키 데이터베이스에서 [[Special:UserMerge|참고한 한 사용자에서 다른 사용자로 합치며]], 합치고 나서 이에 따라 이전 사용자는 삭제됩니다. '''usermerge''' 권한 필요", - "usermerge-badolduser": "잘못된 이전 사용자 이름입니다.", "usermerge-badnewuser": "잘못된 새 사용자 이름입니다.", "usermerge-nonewuser": "빈 새 사용자 이름입니다. \"{{GENDER:$1|$1}}\"(으)로 가정하여 합칩니다.<br />\n동의하면 \"{{int:usermerge-submit}}\"을 클릭하세요.", "usermerge-noolduser": "이전 사용자 이름이 비어 있음", @@ -20,10 +21,8 @@ "usermerge-deleteolduser": "이전 사용자를 삭제하기", "usermerge-submit": "사용자 합치기", "usermerge-badtoken": "잘못된 편집 토큰", - "usermerge-userdeleted": "$1 ($2)님이 삭제되었습니다.", - "usermerge-userdeleted-log": "님이 \"$2\" ($3) 사용자 계정을 삭제했습니다", + "usermerge-userdeleted": "$1 ($2) 님이 삭제되었습니다.", "usermerge-success": "$1 ($2)님을 $3 ($4)에 합치는 것을 완료했습니다.", - "usermerge-success-log": "님이 \"$2\" ($3) 계정을 \"[[User:$4|$4]]\" ($5) 계정으로 합쳤습니다", "usermerge-logpage": "사용자 병합 기록", "usermerge-logpagetext": "사용자 병합 동작의 기록입니다.", "usermerge-noselfdelete": "{{GENDER:$1|자신}}으로부터 삭제나 합치기를 할 수 없습니다!", @@ -32,5 +31,10 @@ "action-usermerge": "사용자 합치기", "usermerge-autopagedelete": "사용자를 합치는 동안 자동으로 문서를 삭제했습니다", "usermerge-page-unmoved": "$1 문서를 $2 문서로 이동하지 못했습니다.", - "usermerge-move-log": "\"$1\" 계정을 \"[[User:$2|$2]]\"(으)로 합치면서 문서를 자동으로 이동했습니다" + "usermerge-move-log": "\"$1\" 계정을 \"[[User:$2|$2]]\"(으)로 합치면서 문서를 자동으로 이동했습니다", + "logentry-usermerge-mergeuser": "$1님이 \"$4\" ($5) 계정을 {{GENDER:$8|$6}} ($7)으로 {{GENDER:$2|합쳤습니다}}", + "logentry-usermerge-deleteuser": "$1님이 \"$4\"($5) 사용자 계정을 {{GENDER:$2|삭제했습니다}}", + "log-action-filter-usermerge": "조치 유형:", + "log-action-filter-usermerge-mergeuser": "사용자 계정 병합", + "log-action-filter-usermerge-deleteuser": "사용자 계정 삭제" } diff --git a/UserMerge/i18n/ksh.json b/UserMerge/i18n/ksh.json index 5e970e42..a983f65a 100644 --- a/UserMerge/i18n/ksh.json +++ b/UserMerge/i18n/ksh.json @@ -6,7 +6,6 @@ }, "usermerge": "Metmaacher zosammelääje un fott schmiiße", "usermerge-desc": "[[Special:UserMerge|Läät de Date fun einem Metmaacher met anem andere Metmaacher komplät zosamme]] en dem Wiki singe Datebank, un kann donoh och de övverhollte Metmaacher fottschmieße. Doför bruch mer et „{{int:right-usermerge}}“ Rääsch (<em lang=\"en\">usermerge</em>)", - "usermerge-badolduser": "Dä ahle Metmaachername es nit jöltesch", "usermerge-badnewuser": "Dä neue Metmaachername es nit jöltesch", "usermerge-nonewuser": "Keine neue Metmaachername aanjejovve. Mer vermoode, dat De {{GENDER:$1|mem|mem|med dämm Metmaacher|met dä|mem}} „$1“ zosamme lääje wells.<br />\nKleck op „{{int:usermerge-submit}}“ öm dat esu ze maache.", "usermerge-noolduser": "Keine ahle Metmaachername aanjejovve", @@ -18,9 +17,7 @@ "usermerge-submit": "Zosammelääje", "usermerge-badtoken": "Onjöltesch Kennzeiche", "usermerge-userdeleted": "{{GENDER:$1|Dä|Dat|Dä Metmaacher|De|Dat}} „$1“ ($2) es jetz fott jeschmeße.", - "usermerge-userdeleted-log": "Fott jeschmeße Metmaacherame: „$2“ ($3)", "usermerge-success": "Et Zosammelääje {{GENDER:$1|vum|vum|vumm Metmaacher|vun dä|vum}} „$1“ ($2) {{GENDER:$3|mem|mem|med dämm Metmaacher|met dä|mem}} „$3“ {{GENDER:$3|nohm|nohm|nohm|noh dä|nohm}} „$3“ ($4) es komplätt.", - "usermerge-success-log": "{{GENDER:$2|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher}} mem Nahme „$2“ ($3) es zosammejelaat met {{GENDER:$4|däm Metmaacher|dä Metmaacherėn|däm Metmaacher|dä Metmaacherėn|däm Metmaacher}} mem Name „$4“ ($5)", "usermerge-logpage": "Logbohch övver et Metmaacher_Zosammelähje", "usermerge-logpagetext": "Dat heh es et Logbohch övver de zosammejelaate Metmaachere.", "usermerge-noselfdelete": "Ene Metmaacher met sesch sellver zosamme ze lääje, wat ene Quatsch! Dat jeiht nit.{{GENDER:$1|}}", diff --git a/UserMerge/i18n/lb.json b/UserMerge/i18n/lb.json index bfea9173..45df9349 100644 --- a/UserMerge/i18n/lb.json +++ b/UserMerge/i18n/lb.json @@ -8,7 +8,6 @@ }, "usermerge": "Benotzerkonten zesummeféieren a läschen", "usermerge-desc": "[[Special:UserMerge|Féiert Benotzerkonte vun engem Benotzer mat engem anere Benotzer]] an der Wiki-Datebank zesummen - déi al Benotzerkonte ginn no der Zesummeféierung och geläscht. Erfuedert ''usermerge''-Rechter.", - "usermerge-badolduser": "Ongëltegen ale Benotzernumm", "usermerge-badnewuser": "Ongëltegen neie Benotzernumm", "usermerge-nonewuser": "Eidelen neie Benotzernumm - wahrscheinlech eng Zesummeféierung mat \"{{GENDER:$1|$1}}.<br />\nKlickt op \"{{int:usermerge-submit}}\" wann Dir d'accord sidd.", "usermerge-noolduser": "Eidelen ale Benotzernumm", @@ -20,9 +19,7 @@ "usermerge-submit": "Benotzerkonten zesummeféieren", "usermerge-badtoken": "Ännerungs-Jeton net valabel", "usermerge-userdeleted": "$1 ($2) gouf geläscht.", - "usermerge-userdeleted-log": "huet de Benotzerkont \"$2\" ($3) geläscht", "usermerge-success": "D'Zesummeféierung vum {{GENDER:$1|$1}} ($2) op {{GENDER:$3|$3}} ($4) ass net komplett.", - "usermerge-success-log": "huet de Benotzer \"$2\" ($3) zesummegeféiert mam \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Lëscht vun de Benotzerkonten déi zesummegeféiert goufen", "usermerge-logpagetext": "Dëst ass eng Lëscht vun de Benotzerkonten, déi zesummegeféiert goufen.", "usermerge-noselfdelete": "Dir kënnt {{GENDER:$1|Iech net selwer}} läschen oder mat {{GENDER:$1|Iech selwer}} zesummeféieren!", diff --git a/UserMerge/i18n/mk.json b/UserMerge/i18n/mk.json index 2afa8b5b..8151c571 100644 --- a/UserMerge/i18n/mk.json +++ b/UserMerge/i18n/mk.json @@ -7,7 +7,6 @@ }, "usermerge": "Спојување и бришење корисници", "usermerge-desc": "[[Special:UserMerge|Спојува наводи од еден корисник во друг]] во вики базата на податици - ги брише и старите корисници по спојувањето. Бара ''usermerge'' привилегии", - "usermerge-badolduser": "Погрешно старо корисничко име", "usermerge-badnewuser": "Погрешно ново корисничко име", "usermerge-nonewuser": "Празно ново корисничко име. Се подразбира спојување со „{{GENDER:$1|$1}}“.<br />\nСтиснете на „{{int:usermerge-submit}}“ за да прифатите.", "usermerge-noolduser": "Празно старо корисничко име", @@ -18,17 +17,20 @@ "usermerge-deleteolduser": "Избриши стар корисник", "usermerge-submit": "Спој го корисникот", "usermerge-badtoken": "Погрешна шифра за уредување", - "usermerge-userdeleted": "$1 ($2) е {{GENDER:$1|избришан|избришана}}", - "usermerge-userdeleted-log": "Избришан корисник: $2 ($3)", - "usermerge-success": "Спојувањето на {{GENDER:$1|$1}} ($2) со {{GENDER:$3|$3}} ($4) е готово.", - "usermerge-success-log": "Корисникот {{GENDER:$2|$2}} ($3) е споен со {{GENDER:$4|$4}} ($5)", + "usermerge-userdeleted": "$1 ($2) е избришан.", + "usermerge-success": "Спојувањето на $1 ($2) во $3 ($4) е готово.", "usermerge-logpage": "Дневник на спојувања на кориснички сметки", "usermerge-logpagetext": "Ова е дневник на спојувања на кориснички имиња.", "usermerge-noselfdelete": "Не можете да се избришете или споите {{GENDER:$1|самите себеси}}!", "usermerge-protectedgroup": "Не можам да ги спојам {{GENDER:$1|корисниците}}: корисникот е во заштитена група.", "right-usermerge": "Спојување на корисници", "action-usermerge": "спојување на корисници", - "usermerge-autopagedelete": "Се брише автоматски, при спојување на корисници", + "usermerge-autopagedelete": "Автоматски избришана страница при спојување на корисници", "usermerge-page-unmoved": "Не моежев да ја преместам страницата $1 на $2.", - "usermerge-move-log": "Автоматско преместување на страница при припојувањето на корисникот „[[User:$1|$1]]“ кон „[[User:$2|{{GENDER:$2|$2}}]]“" + "usermerge-move-log": "Автоматски преместена страница при спојувањето на сметката „$1“ во „[[User:$2|$2]]“", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|ја спои}} корисничката сметка „$4“ ($5) во {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ја избриша}} корисничката сметка „$4“ ($5)", + "log-action-filter-usermerge": "Вид дејство:", + "log-action-filter-usermerge-mergeuser": "Спојување на корисничка сметка", + "log-action-filter-usermerge-deleteuser": "Бришење на корисничка сметка" } diff --git a/UserMerge/i18n/ml.json b/UserMerge/i18n/ml.json index 811f7bb4..bef7564b 100644 --- a/UserMerge/i18n/ml.json +++ b/UserMerge/i18n/ml.json @@ -7,7 +7,6 @@ }, "usermerge": "ഉപയോക്താക്കളെ ലയിപ്പിക്കുക, മായ്ക്കുക", "usermerge-desc": "വിക്കി ഡേറ്റാബേസിൽ [[Special:UserMerge|ഒരു ഉപയോക്താവിന്റെ വിവരങ്ങൾ മറ്റൊരു ഉപയോക്താവിന്റേതുമായി സംയോജിപ്പിക്കുന്നു]] - സംയോജനത്തിനു ശേഷം പഴയ ഉപയോക്താക്കളെ മായ്ക്കുകയും ചെയ്യും. ''usermerge'' പദവി ആവശ്യമാണ്.", - "usermerge-badolduser": "അസാധുവായ പഴയ ഉപയോക്തൃനാമം", "usermerge-badnewuser": "അസാധുവായ പുതിയ ഉപയോക്തൃനാമം", "usermerge-nonewuser": "ശൂന്യമായ പുതിയ ഉപയോക്തൃനാമം. \"{{GENDER:$1|$1}}\" എന്നതിലേക്കാണ് ലയിപ്പിക്കേണ്ടതെന്ന് ഊഹിക്കുന്നു.<br />\nസ്വീകാര്യമെങ്കിൽ \"{{int:usermerge-submit}}\" ഞെക്കുക.", "usermerge-noolduser": "പഴയ ഉപയോക്തൃനാമം ശൂന്യമാക്കുക.", @@ -19,9 +18,7 @@ "usermerge-submit": "ഉപയോക്താവിനെ സംയോജിപ്പിക്കുക", "usermerge-badtoken": "അസാധുവായ തിരുത്തൽ ചീട്ട്.", "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) മായ്ച്ചു.", - "usermerge-userdeleted-log": "ഉപയോക്താവിനെ മായ്ച്ചു: $2 ($3)", "usermerge-success": "$1 ($2) നെ $3 ($4) ലേക്കു സംയോജിപ്പിക്കുന്ന പ്രക്രിയ പൂർത്തിയായി.", - "usermerge-success-log": "$2 ($3) എന്ന ഉപയോക്താവിനെ $4 ($5)ലേക്കു സംയോജിപ്പിച്ചു", "usermerge-logpage": "ഉപയോക്തൃസംയോജന പ്രവർത്തനരേഖ", "usermerge-logpagetext": "ഉപയോക്താക്കളെ സംയോജിപ്പിച്ചതിന്റെ പ്രവർത്തനരേഖയാണിത്", "usermerge-noselfdelete": "താങ്കൾക്ക് താങ്കളെത്തന്നെ മായ്ക്കാനോ, മറ്റൊരു അക്കുണ്ടിലേക്കു സംയോജിപ്പിക്കാനോ പറ്റില്ല!", diff --git a/UserMerge/i18n/mr.json b/UserMerge/i18n/mr.json index 3540980f..ba726a92 100644 --- a/UserMerge/i18n/mr.json +++ b/UserMerge/i18n/mr.json @@ -7,7 +7,6 @@ ] }, "usermerge": "सदस्य एकत्रीकरण व वगळणे", - "usermerge-badolduser": "चुकीचे जुने सदस्यनाव", "usermerge-badnewuser": "चुकीचे नवे सदस्यनाव", "usermerge-noolduser": "रिकामे जुने सदस्यनाव", "usermerge-same-old-and-new-user": "जूने व नविन सदस्यनाम हे एकमेकापेक्षा वेगळेच असावयास हवे.", @@ -17,8 +16,6 @@ "usermerge-submit": "सदस्य एकत्र करा", "usermerge-badtoken": "चुकीचे एडीट टोकन", "usermerge-userdeleted": "$1 ($2) ला वगळण्यात आलेले आहे.", - "usermerge-userdeleted-log": "सदस्य वगळला: $2 ($3)", - "usermerge-success-log": "सदस्य $2 ($3) ला $4 ($5) मध्ये एकत्र केले", "usermerge-logpage": "सदस्य एकत्रीकरण नोंद", "usermerge-logpagetext": "ही सदस्य एकत्रीकरणाची सूची आहे", "usermerge-noselfdelete": "तुम्ही स्वत:लाच वगळू किंवा एकत्र करू शकत नाही.", diff --git a/UserMerge/i18n/ms.json b/UserMerge/i18n/ms.json index 6f54efc2..8e6b651a 100644 --- a/UserMerge/i18n/ms.json +++ b/UserMerge/i18n/ms.json @@ -6,7 +6,6 @@ }, "usermerge": "Gabungkan dan gugurkan pengguna", "usermerge-desc": "[[Special:UserMerge|Menggabungkan rujukan daripada seorang pengguna kepada seorang pengguna yang lain]] di dalam pangkalan data wiki - juga akan menggugurkan pengguna-pengguna lama ekoran penggabungan. Memerlukan keistimewaan ''usermerge''", - "usermerge-badolduser": "Nama pengguna lama tidak sah", "usermerge-badnewuser": "Nama pengguna baru tidak sah", "usermerge-nonewuser": "Nama pengguna baru kosong, dianggap hendak digabungkan dengan \"{{GENDER:$1|$1}}\".<br />\n\nKlik \"{{int:usermerge-submit}}\" untuk menerima.", "usermerge-noolduser": "Nama pengguna lama kosong", @@ -18,9 +17,7 @@ "usermerge-submit": "Gabungkan pengguna", "usermerge-badtoken": "Token penyuntingan tidak sah", "usermerge-userdeleted": "$1 ($2) telah dihapuskan.", - "usermerge-userdeleted-log": "Pengguna terhapus: $2 ($3)", "usermerge-success": "Penggabungan dari $1 ($2) kepada {{GENDER:$3|$3}} ($4) selesai.", - "usermerge-success-log": "Pengguna $2 ($3) digabungkan kepada {{GENDER:$4|$4}} ($5)", "usermerge-logpage": "Log penggabungan pengguna", "usermerge-logpagetext": "Ini merupakan log tindakan menggabungkan pengguna.", "usermerge-noselfdelete": "Anda tidak boleh menghapuskan atau menggabungkan diri anda sendiri!", diff --git a/UserMerge/i18n/my.json b/UserMerge/i18n/my.json index b17487c2..5749c73b 100644 --- a/UserMerge/i18n/my.json +++ b/UserMerge/i18n/my.json @@ -5,7 +5,6 @@ ] }, "usermerge": "အသုံးပြုသူများကို ပေါင်းစပ်/ဖျက်ပစ်ရန်", - "usermerge-badolduser": "မဆီလျော်သော အသုံးပြုသူအမည်ဟောင်း။", "usermerge-badnewuser": "မဆီလျော်သော အသုံးပြုသူအမည်သစ်။", "usermerge-fieldset": "ပေါင်းစပ်ရန် အသုံးပြုသူအမည်များ", "usermerge-submit": "အသုံးပြုသူ ပေါင်းစပ်ရန်", @@ -14,5 +13,6 @@ "usermerge-logpage": "အသုံးပြုသူ ပေါင်းစပ်ခြင်း မှတ်တမ်း", "usermerge-logpagetext": "အသုံးပြုသူ ပေါင်းစပ်ခြင်း လုပ်ဆောင်ချက်များအတွက် မှတ်တမ်းဖြစ်သည်။", "right-usermerge": "အသုံးပြုသူများ ပေါင်းစပ်ရန်", - "usermerge-page-unmoved": "စာမျက်နှာ $1 ကို $2 သို့ မရွေ့ပြောင်းနိုင်ခဲ့ပါ။" + "usermerge-page-unmoved": "စာမျက်နှာ $1 ကို $2 သို့ မရွေ့ပြောင်းနိုင်ခဲ့ပါ။", + "log-action-filter-usermerge-deleteuser": "အသုံးပြုသူအကောင့် ဖျက်ပစ်ခြင်း" } diff --git a/UserMerge/i18n/nah.json b/UserMerge/i18n/nah.json index 66fe90bc..8d5e736a 100644 --- a/UserMerge/i18n/nah.json +++ b/UserMerge/i18n/nah.json @@ -4,8 +4,6 @@ "Fluence" ] }, - "usermerge-badolduser": "Ahcualli huēhuehtlatequitiltilīltōcāitl", "usermerge-badnewuser": "Ahcualli yancuīc tlatequitiltilīltōcāitl", - "usermerge-userdeleted": "$1 ($2) ōmopolo", - "usermerge-userdeleted-log": "Tlapoloc tlatequitiltilīlli: $2 ($3)" + "usermerge-userdeleted": "$1 ($2) ōmopolo" } diff --git a/UserMerge/i18n/nb.json b/UserMerge/i18n/nb.json index cf7d5a65..069ab955 100644 --- a/UserMerge/i18n/nb.json +++ b/UserMerge/i18n/nb.json @@ -2,13 +2,12 @@ "@metadata": { "authors": [ "Event", - "Nghtwlkr", - "Jon Harald Søby" + "Jon Harald Søby", + "Nghtwlkr" ] }, "usermerge": "Brukersammenslåing og -sletting", "usermerge-desc": "Gir muligheten til å [[Special:UserMerge|slå sammen kontoer]] ved at alle referanser til en bruker byttes ut til en annen bruker i databasen, for så å slette den ene kontoen. Trenger rettigheten ''usermerge''.", - "usermerge-badolduser": "Gammelt brukernavn ugyldig", "usermerge-badnewuser": "Nytt brukernavn ugyldig", "usermerge-nonewuser": "Nytt brukernavn tomt – antar sammenslåing til «{{GENDER:$1|$1}}».<br />\nKlikk «{{int:usermerge-submit}}» for å godta.", "usermerge-noolduser": "Gammelt brukernavn tomt", @@ -20,9 +19,7 @@ "usermerge-submit": "Slå sammen brukere", "usermerge-badtoken": "Ugyldig redigeringsnøkkel.", "usermerge-userdeleted": "$1 ($2) har blitt slettet.", - "usermerge-userdeleted-log": "slettet brukerkontoen «$2» ($3)", "usermerge-success": "Sammenslåing fra $1 ($2) til $3 ($4) er fullført.", - "usermerge-success-log": "slo brukerkontoen «$2» ($3) sammen med «[[User:$4|$4]]» ($5)", "usermerge-logpage": "Brukersammenslåingslogg", "usermerge-logpagetext": "Dette er en logg over brukersammenslåinger.", "usermerge-noselfdelete": "Du kan ikke slette eller slå sammen {{GENDER:$1|din}} egen konto!", @@ -31,5 +28,10 @@ "action-usermerge": "slå sammen brukere", "usermerge-autopagedelete": "Siden ble automatisk slettet ved kontosammenslåing", "usermerge-page-unmoved": "Siden $1 kunne ikke flyttes til $2.", - "usermerge-move-log": "Flyttet siden automatisk i forbindelse med sammenslåing av kontoen «$1» til «[[User:$2|$2]]»" + "usermerge-move-log": "Flyttet siden automatisk i forbindelse med sammenslåing av kontoen «$1» til «[[User:$2|$2]]»", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|slo sammen}} brukerkontoen «$4» ($5) til {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|slettet}} brukerkontoen «$4» ($5)", + "log-action-filter-usermerge": "Type handling:", + "log-action-filter-usermerge-mergeuser": "Kontosammenslåing", + "log-action-filter-usermerge-deleteuser": "Kontosletting" } diff --git a/UserMerge/i18n/nds-nl.json b/UserMerge/i18n/nds-nl.json index c5225216..4e4c7f0e 100644 --- a/UserMerge/i18n/nds-nl.json +++ b/UserMerge/i18n/nds-nl.json @@ -4,22 +4,19 @@ "Servien" ] }, - "usermerge": "Gebrukers samenvoegen en vortdoon", + "usermerge": "Gebrukerskontos samenvogen en vordsmyten", "usermerge-desc": "Zet n [[Special:UserMerge|spesiale zied]] derbie um gebrukers samen te voegen en de ouwe gebruker(s) vort te doon (hierveur is t recht ''usermerge'' neudig)", - "usermerge-badolduser": "Ongeldige ouwe gebrukersnaam", "usermerge-badnewuser": "Ongeldige nieje gebrukersnaam", "usermerge-nonewuser": "De nieje gebrukersnaam is niet op-egeven. Der wörden vanuut egaon dat der samenevoegd mut wörden naor \"{{GENDER:$1|$1}}\".<br />\nKlik \"{{int:usermerge-submit}}\" um de haandeling uut te voeren.", "usermerge-noolduser": "Ouwe gebrukersnaam is niet op-egeven", "usermerge-fieldset": "Gebrukersnamen die samenevoegen mutten wörden", "usermerge-olduser": "Ouwe gebruker (samenvoegen van):", "usermerge-newuser": "Nieje gebruker (samenvoegen naor):", - "usermerge-deleteolduser": "Ouwe gebruker vortdoon", + "usermerge-deleteolduser": "Olde gebruker vordsmyten", "usermerge-submit": "Gebruker samenvoegen", "usermerge-badtoken": "Ongeldig bewarkingstoken", "usermerge-userdeleted": "$1 ($2) is vort-edaon.", - "usermerge-userdeleted-log": "Vort-edaone gebruker: $2 ($3)", "usermerge-success": "Samenvoegen van $1 ($2) naor {{GENDER:$3|$3}} ($4) is aoferond.", - "usermerge-success-log": "Gebruker $2 ($3) samenevoegd naor {{GENDER:$4|$4}} ($5)", "usermerge-logpage": "Logboek gebrukerssamenvoegingen", "usermerge-logpagetext": "Dit is t logboek van gebrukerssamenvoegingen.", "usermerge-noselfdelete": "Je kunnen je eigen niet vortdoon of samenvoegen!", diff --git a/UserMerge/i18n/nl.json b/UserMerge/i18n/nl.json index 414044cf..409f6108 100644 --- a/UserMerge/i18n/nl.json +++ b/UserMerge/i18n/nl.json @@ -1,19 +1,18 @@ { "@metadata": { "authors": [ + "HanV", + "Mainframe98", "McDutchie", + "Nemo bis", "SPQRobin", "Siebrand", - "Southparkfan", "Sjoerddebruin", - "Nemo bis", - "HanV", - "Mainframe98" + "Southparkfan" ] }, "usermerge": "Gebruikers samenvoegen en verwijderen", "usermerge-desc": "Voegt een [[Special:UserMerge|speciale pagina]] toe om gebruikers samen te voegen en de oude gebruiker(s) te verwijderen. Hiervoor is het recht ''usermerge'' nodig.", - "usermerge-badolduser": "Ongeldige oude gebruiker", "usermerge-badnewuser": "Ongeldige nieuwe gebruiker", "usermerge-nonewuser": "De nieuwe gebruikersnaam is niet opgegeven.\nEr wordt aangenomen dat er samengevoegd moet worden naar \"{{GENDER:$1|$1}}\".<br />\nKlik \"{{int:usermerge-submit}}\" om de handeling uit te voeren.", "usermerge-noolduser": "De oude gebruiker is niet opgegeven.", @@ -24,10 +23,8 @@ "usermerge-deleteolduser": "Oude gebruiker verwijderen", "usermerge-submit": "Gebruiker samenvoegen", "usermerge-badtoken": "Ongeldig bewerkingstoken", - "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) is verwijderd.", - "usermerge-userdeleted-log": "Verwijderde gebruiker: $2 ($3)", - "usermerge-success": "Samenvoegen van {{GENDER:$1|$1}} ($2) naar {{GENDER:$3|$3}} ($4) is afgerond.", - "usermerge-success-log": "Gebruiker {{GENDER:$2|$2}} ($3) samengevoegd naar {{GENDER:$4|$4}} ($5)", + "usermerge-userdeleted": "$1 ($2) is verwijderd.", + "usermerge-success": "Samenvoegen van $1 ($2) naar $3 ($4) is afgerond.", "usermerge-logpage": "Logboek gebruikerssamenvoegingen", "usermerge-logpagetext": "Dit is het logboek van gebruikerssamenvoegingen.", "usermerge-noselfdelete": "U kunt niet verwijderen of samenvoegen van {{GENDER:$1|uzelf}}!", @@ -36,5 +33,10 @@ "action-usermerge": "gebruikers samen te voegen", "usermerge-autopagedelete": "Automatisch verwijderd bij het samenvoegen van gebruikers", "usermerge-page-unmoved": "De pagina $1 kon niet hernoemd worden naar $2.", - "usermerge-move-log": "Pagina automatisch hernoemd bij het samenvoegen van gebruiker \"[[User:$1|$1]]\" naar \"[[User:$2|{{GENDER:$2|$2}}]]\"" + "usermerge-move-log": "Pagina automatisch hernoemd bij het samenvoegen van gebruiker \"$1\" naar \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|heeft}} het gebruikersaccount \"$4\" ($5) in {{GENDER:$8|$6}} samengevoegd ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|verwijderde}} het gebruikersaccount \"$4\" ($5)", + "log-action-filter-usermerge": "Soort handeling:", + "log-action-filter-usermerge-mergeuser": "Samenvoegen van een account", + "log-action-filter-usermerge-deleteuser": "Verwijderen van een account" } diff --git a/UserMerge/i18n/nn.json b/UserMerge/i18n/nn.json index 1d916547..f4246fae 100644 --- a/UserMerge/i18n/nn.json +++ b/UserMerge/i18n/nn.json @@ -9,7 +9,6 @@ }, "usermerge": "Slå saman og slett brukarar", "usermerge-desc": "Gjev høve til å [[Special:UserMerge|slå saman kontoar]] ved at alle referansar til ein brukar vert bytta ut til ein annen brukar i databasen, for så å slette den eine kontoen. Krev rett til ''usermerge''.", - "usermerge-badolduser": "Gammalt brukernamn ugyldig", "usermerge-badnewuser": "Nytt brukernamn ugyldig", "usermerge-nonewuser": "Nytt brukarnamn tomt – går ut frå samanslåing til $1.<br />Klikk \"{{int:usermerge-submit}}\" for å godta", "usermerge-noolduser": "Gammalt brukarnamn tomt", @@ -20,9 +19,7 @@ "usermerge-submit": "Slå saman brukarar", "usermerge-badtoken": "Ugyldig redigeringsteikn", "usermerge-userdeleted": "$1 ($2) er sletta.", - "usermerge-userdeleted-log": "Sletta brukar: $2 ($3)", "usermerge-success": "Samanslåing frå $1 ($2) til $3 ($4) er ferdig.", - "usermerge-success-log": "Brukaren $2 ($3) slått saman med $4 ($5)", "usermerge-logpage": "Brukarsamanslåingslogg", "usermerge-logpagetext": "Dette er ein logg over brukarsamanslåingar.", "usermerge-noselfdelete": "Du kan ikkje slette eller slå saman din eigen konto!", diff --git a/UserMerge/i18n/oc.json b/UserMerge/i18n/oc.json index b12f6f6e..9b033d0b 100644 --- a/UserMerge/i18n/oc.json +++ b/UserMerge/i18n/oc.json @@ -6,7 +6,6 @@ }, "usermerge": "Fusionar utilizaire e destruire", "usermerge-desc": "[[Special:UserMerge|Fusiona las referéncias d'un utilizaire cap a un autre]] dins la basa de donadas wiki - suprimirà tanben las fusions d'utilizaires ancianas seguentas.", - "usermerge-badolduser": "Nom d'utilizaire ancian invalid", "usermerge-badnewuser": "Nom d'utilizaire novèl invalid", "usermerge-nonewuser": "Nom d'utilizaire novèl void. Supausam que volètz fusionar dins \"{{GENDER:$1|$1}}\".<br />\nClicatz sus « {{int:usermerge-submit}} » per acceptar.", "usermerge-noolduser": "Nom d'utilizaire ancian void", @@ -17,9 +16,7 @@ "usermerge-submit": "Fusionar utilizaire", "usermerge-badtoken": "Geton d'edicion invalid", "usermerge-userdeleted": "$1 ($2) es estat suprimi{{GENDER:$1|t|da}}.", - "usermerge-userdeleted-log": "Contributor escafat : $2($3)", "usermerge-success": "La fusion de {{GENDER:$1|$1}} ($2) amb {{GENDER:$3|$3}} ($4) es acabada.", - "usermerge-success-log": "{{GENDER:$2|Utilizator|Utilizatritz}} $2 ($3) fusiona{{GENDER:$2|t|da}} amb {{GENDER:$4|$4}} ($5)", "usermerge-logpage": "Jornal de las fusions de contributors", "usermerge-logpagetext": "Aquò es un jornal de las accions de fusions de contributors.", "usermerge-noselfdelete": "Podètz pas, vos-{{GENDER:$1|meteis|meteissa}}, vos suprimir ni vos fusionar !", diff --git a/UserMerge/i18n/pl.json b/UserMerge/i18n/pl.json index 593b0dcd..a7f48e5d 100644 --- a/UserMerge/i18n/pl.json +++ b/UserMerge/i18n/pl.json @@ -1,23 +1,25 @@ { "@metadata": { "authors": [ + "Alan ffm", "BeginaFelicysym", + "Chrumps", "Derbeth", "Masti", - "Sp5uhe", - "Wpedzich", - "Alan ffm", - "Chrumps", + "Matma Rex", "Michał Sobkowski", - "Matma Rex" + "Rail", + "Railfail536", + "Sp5uhe", + "Wpedzich" ] }, "usermerge": "Integruj i usuń użytkowników", "usermerge-desc": "[[Special:UserMerge|Integruje odwołania dla jednego użytkownika do drugiego]] w bazie danych wiki – usuwa również dotychczasowego użytkownika po integracji. Wymaga uprawnienia ''usermerge''", - "usermerge-badolduser": "Nieprawidłowa nazwa dotychczasowego użytkownika", "usermerge-badnewuser": "Nieprawidłowa nazwa nowego użytkownika", - "usermerge-nonewuser": "Pusta nazwa nowego użytkownika – integracja nastąpi z $1.<br />\nKliknij „{{int:usermerge-submit}}”, aby zaakceptować.", + "usermerge-nonewuser": "Pusta nazwa nowego użytkownika – nastąpi integracja z kontem $1.<br />\nKliknij „{{int:usermerge-submit}}”, aby zaakceptować.", "usermerge-noolduser": "Pusta nazwa dotychczasowego użytkownika", + "usermerge-same-old-and-new-user": "Nowa nazwa użytkownika musi różnic się od starej.", "usermerge-fieldset": "Nazwy kont użytkowników do integracji", "usermerge-olduser": "Dotychczasowy użytkownik (do integracji)", "usermerge-newuser": "Nowy użytkownik (integruj z)", @@ -25,9 +27,7 @@ "usermerge-submit": "Integruj użytkowników", "usermerge-badtoken": "Nieprawidłowy kod weryfikacyjny (token).", "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|został usunięty|została usunięta}}.", - "usermerge-userdeleted-log": "usunął użytkownika „$2” ($3)", - "usermerge-success": "Integracja {{GENDER:$1|$1}} ($2) z {{GENDER:$3|$3}} ($4) została zakończona.", - "usermerge-success-log": "zintegrował użytkownika „$2” ($3) do „$4” ($5)", + "usermerge-success": "Integracja $1 ($2) z $3 ($4) została zakończona.", "usermerge-logpage": "Rejestr integracji użytkowników", "usermerge-logpagetext": "To jest rejestr operacji integracji użytkowników.", "usermerge-noselfdelete": "Nie możesz usunąć lub zintegrować {{GENDER:$1|samego|samej}} siebie!", @@ -36,5 +36,10 @@ "action-usermerge": "łączenie kont użytkowników", "usermerge-autopagedelete": "Automatycznie usuwane strony podczas scalania użytkowników", "usermerge-page-unmoved": "Strona $1 nie mogła zostać przeniesiona pod nazwę $2.", - "usermerge-move-log": "Automatyczne przeniesiono stronę po zmianie nazwy konta z \"[[User:$1|$1]]\" na \"[[User:$2|$2]]\"" + "usermerge-move-log": "Automatyczne przeniesiono stronę po zintegrowaniu konta „$1” z „[[User:$2|$2]]”", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|zintegrował|zintegrowała}} konto „$4” ($5) z {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|usunął|usunęła}} konto użytkownika „$4” ($5)", + "log-action-filter-usermerge": "Rodzaj działania:", + "log-action-filter-usermerge-mergeuser": "Integracja konta", + "log-action-filter-usermerge-deleteuser": "Usuwanie konta" } diff --git a/UserMerge/i18n/pms.json b/UserMerge/i18n/pms.json index 92fbb4f7..205851b5 100644 --- a/UserMerge/i18n/pms.json +++ b/UserMerge/i18n/pms.json @@ -8,7 +8,6 @@ }, "usermerge": "Union e scancelament d'utent", "usermerge-desc": "[[Special:UserMerge|A uniss j'arferiment da n'utent a n'àutr utent]] ant ël database wiki - a scanselerà ëdcò ij vej utent d'apress l'union. A veul ij pribilegi ''usermerge''", - "usermerge-badolduser": "Vej stranòm nen bon", "usermerge-badnewuser": "Neuv stranòm nen bon", "usermerge-nonewuser": "Neuv stranòm veujd. I chërdoma ch'a veula gionz-se an «{{GENDER:$1|$1}}».<br />\nCh'a sgnaca \"{{int:usermerge-submit}}\" për aceté.", "usermerge-noolduser": "Vej stranòm veujd", @@ -19,9 +18,7 @@ "usermerge-submit": "Unì Utent", "usermerge-badtoken": "Geton d'edission nen bon", "usermerge-userdeleted": "$1($2) a l'é stàit scancelà.", - "usermerge-userdeleted-log": "Utent scanselà: $2 ($3)", "usermerge-success": "Union da $1($2) a {{GENDER:$3}} ($4) completà.", - "usermerge-success-log": "Utent $2 ($3) unì a {{GENDER:$4}} ($5)", "usermerge-logpage": "Registr dle union utent", "usermerge-logpagetext": "Sto sì a l'é un registr ëd le assion d'union utent.", "usermerge-noselfdelete": "It peule pa scanselé o unì ti midem!", diff --git a/UserMerge/i18n/pt-br.json b/UserMerge/i18n/pt-br.json index d3cfd4b2..7b8f0066 100644 --- a/UserMerge/i18n/pt-br.json +++ b/UserMerge/i18n/pt-br.json @@ -1,23 +1,22 @@ { "@metadata": { "authors": [ + "!Silent", + "Araceletorres", "Crazymadlover", + "Eduardo Addad de Oliveira", "Eduardo.mps", + "Felipe L. Ewald", + "He7d3r", + "Helder.wiki", "Jorge Morais", "Luckas", - "Helder.wiki", - "He7d3r", "Nemo bis", - "Araceletorres", - "Opraco", - "!Silent", - "Felipe L. Ewald", - "Eduardo Addad de Oliveira" + "Opraco" ] }, "usermerge": "Fusão e eliminação de utilizadores", "usermerge-desc": "[[Special:UserMerge|Unifica as referências de um usuário em outro usuário]] no banco de dados da wiki - também apagará o antigo usuário após a fusão. Requer privilégio ''usermerge''", - "usermerge-badolduser": "Nome antigo inválido.", "usermerge-badnewuser": "Nome novo inválido.", "usermerge-nonewuser": "Novo nome de usuário vazio. Assumida fusão com \"{{GENDER:$1|$1}}\".<br />\nClique \"{{int:usermerge-submit}}\" para aceitar.", "usermerge-noolduser": "Limpar nome antigo.", @@ -29,9 +28,7 @@ "usermerge-submit": "Fundir usuário", "usermerge-badtoken": "Token de edição inválido.", "usermerge-userdeleted": "$1 ($2) foi eliminado.", - "usermerge-userdeleted-log": "apagou a conta do usuário \"$2\" ($3)", "usermerge-success": "A fusão de $1 ($2) com $3 ($4) está completa.", - "usermerge-success-log": "a conta \"$2\" ($3) foi fundida no usuário \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Registro de fusão de usuários", "usermerge-logpagetext": "Este é um registro de ações de fusão de utilizadores.", "usermerge-noselfdelete": "Não pode apagar ou fundir a sua {{GENDER:$1|própria}} conta!", @@ -40,5 +37,10 @@ "action-usermerge": "fundir usuários", "usermerge-autopagedelete": "Página eliminada automaticamente ao fundir usuários", "usermerge-page-unmoved": "A página $1 não pode ser movida para $2.", - "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no usuário\"[[User:$2|$2]]\"" + "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no usuário\"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fundiu}} a conta de usuário \"$4\" ($5) com {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|eliminou}} a conta de usuário \"$4\" ($5)", + "log-action-filter-usermerge": "Tipo de ação:", + "log-action-filter-usermerge-mergeuser": "Mesclagem de conta de usuário", + "log-action-filter-usermerge-deleteuser": "Exclusão de conta do usuário" } diff --git a/UserMerge/i18n/pt.json b/UserMerge/i18n/pt.json index 41964197..4eb426a0 100644 --- a/UserMerge/i18n/pt.json +++ b/UserMerge/i18n/pt.json @@ -1,24 +1,23 @@ { "@metadata": { "authors": [ + "Athena in Wonderland", "Crazymadlover", "Hamilton Abreu", + "He7d3r", + "Helder.wiki", "Jorge Morais", "Lijealso", "Luckas", "Malafaya", + "MokaAkashiyaPT", "Sir Lestaty de Lioncourt", - "Waldir", "Vitorvicentevalente", - "Helder.wiki", - "He7d3r", - "MokaAkashiyaPT", - "Athena in Wonderland" + "Waldir" ] }, "usermerge": "Fusão e eliminação de utilizadores", "usermerge-desc": "[[Special:UserMerge|Faz a fusão das referências a um utilizador com as de outro utilizador]] na base de dados da wiki - também apaga o utilizador antigo após a fusão. Requer o privilégio ''usermerge''", - "usermerge-badolduser": "Nome antigo inválido.", "usermerge-badnewuser": "Nome novo inválido.", "usermerge-nonewuser": "O nome de utilizador novo está vazio. Será assumida a fusão com {{GENDER:$1|$1}}.<br />\nClique \"{{int:usermerge-submit}}\" para aceitar.", "usermerge-noolduser": "O nome de utilizador antigo está vazio.", @@ -30,9 +29,7 @@ "usermerge-submit": "Fundir utilizador", "usermerge-badtoken": "Chave de edição inválida.", "usermerge-userdeleted": "$1 ($2) foi eliminado.", - "usermerge-userdeleted-log": "apagou a conta do utilizador \"$2\" ($3)", "usermerge-success": "A fusão de $1 ($2) com $3 ($4) está completa.", - "usermerge-success-log": "a conta \"$2\" ($3) foi fundida no utilizador \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Registo de fusão de utilizadores", "usermerge-logpagetext": "Este é um registo de ações de fusão de utilizadores.", "usermerge-noselfdelete": "Não pode apagar ou fundir a sua {{GENDER:$1|própria}} conta!", @@ -41,5 +38,10 @@ "action-usermerge": "fundir utilizadores", "usermerge-autopagedelete": "Página eliminada automaticamente ao fundir utilizadores", "usermerge-page-unmoved": "Não foi possível mover a página $1 para $2.", - "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no utilizador \"[[User:$2|$2]]\"" + "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no utilizador \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fundiu}} a conta de utilizador \"$4\" ($5) com {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|eliminou}} a conta de utilizador \"$4\" ($5)", + "log-action-filter-usermerge": "Tipo de operação:", + "log-action-filter-usermerge-mergeuser": "Fusão de conta de utilizador", + "log-action-filter-usermerge-deleteuser": "Eliminação de conta de utilizador" } diff --git a/UserMerge/i18n/qqq.json b/UserMerge/i18n/qqq.json index fde37cc5..e05a64b8 100644 --- a/UserMerge/i18n/qqq.json +++ b/UserMerge/i18n/qqq.json @@ -3,18 +3,17 @@ "authors": [ "Fryed-peach", "Jon Harald Søby", + "Legoktm", "Meno25", "Nemo bis", "Purodha", "Shirayuki", "Siebrand", - "Umherirrender", - "Legoktm" + "Umherirrender" ] }, "usermerge": "{{doc-special|UserMerge}}", "usermerge-desc": "{{desc|name=User Merge|url=https://www.mediawiki.org/wiki/Extension:User_Merge_and_Delete}}", - "usermerge-badolduser": "Used as error message.", "usermerge-badnewuser": "Used as error message.", "usermerge-nonewuser": "{{doc-important|Do not translate <code><nowiki>{{int:usermerge-submit}}</nowiki></code>.}}\nUsed as error message.\n\nRefers to {{msg-mw|Usermerge-submit}}.\n\nParameters:\n* $1 - username \"Anonymous\" (hard-coded)", "usermerge-noolduser": "Used as warning when merging users.", diff --git a/UserMerge/i18n/ro.json b/UserMerge/i18n/ro.json index 34da2827..a94c5397 100644 --- a/UserMerge/i18n/ro.json +++ b/UserMerge/i18n/ro.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Andrei Stroe", "KlaudiuMihaila", "Mihai", "XXN" @@ -8,9 +9,8 @@ }, "usermerge": "Contopire și ștergere utilizatori", "usermerge-desc": "[[Special:UserMerge|Contopește două conturi diferite de utilizatori]] totodată șterge din baza de date wiki contul de utilizator vechi ca urmare a contopirii. Necesită drepturi speciale (''usermerge'')", - "usermerge-badolduser": "Nume de utilizator vechi incorect", "usermerge-badnewuser": "Nume de utilizator nou incorect", - "usermerge-nonewuser": "Noul nume de utilizator nu este introdus - Este presupusă fuzionarea în \"$1\".<br />\nApasă \"{{int:usermerge-submit}}\" pentru a accepta.", + "usermerge-nonewuser": "Nume de utilizator nou gol. Presupun fuziune cu „{{GENDER:$1|S1}}”<br />\nApasă „{{int:usermerge-submit}}” pentru a accepta.", "usermerge-noolduser": "Nume de utilizator vechi gol", "usermerge-fieldset": "Nume de utilizator de contopit", "usermerge-olduser": "Utilizator vechi (redenumește din):", @@ -19,12 +19,10 @@ "usermerge-submit": "Contopește utilizatorul", "usermerge-badtoken": "Jetonul de modificare este invalid", "usermerge-userdeleted": "$1 ($2) a fost șters.", - "usermerge-userdeleted-log": "Șters utilizator: $2 ($3)", - "usermerge-success": "Contopirea din $1 ($2) în $3 ($4) este completă.", - "usermerge-success-log": "Utilizatorul $2 ($3) a fost contopit în $4 ($5)", + "usermerge-success": "Fuziunea din $1 ($2) cu $3 ($4) este finalizată.", "usermerge-logpage": "Jurnal contopire utilizatori", "usermerge-logpagetext": "Acesta este jurnalul acțiunilor de contopire a conturilor de utilizator.", - "usermerge-noselfdelete": "Nu poate fi șters sau contopit contul propriu!", + "usermerge-noselfdelete": "Nu poate fi șters sau contopit {{GENDER:$1|contul propriu}}!", "usermerge-protectedgroup": "Nu poate fi contopit utilizatorul - utilizatorul face parte dintr-un grup protejat.", "right-usermerge": "Contopire conturi de utilizator" } diff --git a/UserMerge/i18n/roa-tara.json b/UserMerge/i18n/roa-tara.json index 2b7c2cd5..3595a67b 100644 --- a/UserMerge/i18n/roa-tara.json +++ b/UserMerge/i18n/roa-tara.json @@ -6,7 +6,6 @@ }, "usermerge": "Scuagghie e scangille le utinde", "usermerge-desc": "[[Special:UserMerge|Scuagghie le refereminde da 'n'utende a 'n'otre utende]] jndr'à 'u database de uicchi - avènene scangellate pure le vicchie utinde apprisse 'u scuagghiamende. A tenè le deritte de ''usermerge''", - "usermerge-badolduser": "Nome utende vecchije invalide", "usermerge-badnewuser": "Nome utende nuève invalide", "usermerge-nonewuser": "Nome utende nuève vacande. Se decide de scuagghiarle jndr'à \"{{GENDER:$1|$1}}\".<br />\nCazze \"{{int:usermerge-submit}}\" pe accettà.", "usermerge-noolduser": "Vacande 'u nome utende vecchie.", @@ -17,17 +16,20 @@ "usermerge-deleteolduser": "Scangellate vecchie utende", "usermerge-submit": "Scuagghie l'utende", "usermerge-badtoken": "Gettone de cangiamende invalide.", - "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ha state scangellate.", - "usermerge-userdeleted-log": "Utende scangellate: $2 ($3)", - "usermerge-success": "'U scuagghiamende da {{GENDER:$1|$1}} ($2) a {{GENDER:$3|$3}} ($4) ha state combletate.", - "usermerge-success-log": "Utende {{GENDER:$2|$2}} ($3) scuagghiate jndr'à {{GENDER:$4|$4}} ($5)", + "usermerge-userdeleted": "$1 ($2) ha state scangellate.", + "usermerge-success": "'U scuagghiamende da $1 ($2) a $3 ($4) ha state combletate.", "usermerge-logpage": "Archivije de le scuagghiaminde de le utinde", "usermerge-logpagetext": "Quiste jè 'n'archivie de le aziune de scuagghiamende de l'utende.", "usermerge-noselfdelete": "Non ge puà scangellarte o scuagghiarte {{GENDER:$1|da sule}}!", - "usermerge-protectedgroup": "Non ge pozze scuagghia cu {{GENDER:$1|l'utende}}: L'utende ste jndr'à 'nu gruppe prutette.", + "usermerge-protectedgroup": "Non ge pozze scuagghia cu {{GENDER:$1|l'utende}}: l'utende ste jndr'à 'nu gruppe prutette.", "right-usermerge": "Scuagghie le utinde", "action-usermerge": "scuagghie le utinde", - "usermerge-autopagedelete": "Automaticamende scangellate quanne onne state scuagghiate le utinde", + "usermerge-autopagedelete": "Automaticamende pàgene scangellate quanne onne state scuagghiate le utinde", "usermerge-page-unmoved": "'A pàgene $1 non ge pò essere spustate sus a $2.", - "usermerge-move-log": "Automaticamende spustate 'a pàgene quanne ha state scuagghiate l'utende \"[[User:$1|$1]]\" jndr'à \"[[User:$2|{{GENDER:$2|$2}}]]\"" + "usermerge-move-log": "Automaticamende spustate 'a pàgene quanne ha state scuagghiate l'utende \"$1\" jndr'à \"[[User:$2|$2]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|avevscuagghiate}} 'u cunde utende \"$4\" ($5) jndr'à {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ave scangellate}} 'u cunde utende \"$4\" ($5)", + "log-action-filter-usermerge": "Tipe de azione:", + "log-action-filter-usermerge-mergeuser": "Scuagghiamende d'u cunde utende", + "log-action-filter-usermerge-deleteuser": "Scangellazzione d'u cunde utende" } diff --git a/UserMerge/i18n/ru.json b/UserMerge/i18n/ru.json index c470fcdc..0547cc5a 100644 --- a/UserMerge/i18n/ru.json +++ b/UserMerge/i18n/ru.json @@ -2,19 +2,20 @@ "@metadata": { "authors": [ "Askarmuk", + "Diman Russkov", "Ferrer", "Illusion", "Innv", "Kaganer", + "Movses", "Okras", "Ole Yves", - "Александр Сигачёв", - "Movses" + "Vlad5250", + "Александр Сигачёв" ] }, "usermerge": "Объединение и удаление учётных записей", "usermerge-desc": "[[Special:UserMerge|Переводит связи с одного участника на другого]] в базе данных вики, старые пользователи будут удаляться. Требует прав ''usermerge''", - "usermerge-badolduser": "Неправильное старое имя участника", "usermerge-badnewuser": "Неправильное новое имя участника", "usermerge-nonewuser": "Пустое новое имя участника — при слиянии с «{{GENDER:$1|$1}}».<br />\nНажмите «{{int:usermerge-submit}}», чтобы подтвердить действие.", "usermerge-noolduser": "Пустое старое имя участника", @@ -26,16 +27,19 @@ "usermerge-submit": "Объединить участников", "usermerge-badtoken": "Недействительный маркер правки", "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|был удалён|была удалена}}.", - "usermerge-userdeleted-log": "удалена учётная запись участника «$2» ($3)", "usermerge-success": "Объединение $1 ($2) с $3 ($4) завершено.", - "usermerge-success-log": "Учётная запись {{GENDER:$2|участника|участницы}} $2 ($3) присоединена к учётной записи {{GENDER:$4|участника|участницы}} \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Журнал объединения участников", "usermerge-logpagetext": "Это журнал объединения учётных записей.", "usermerge-noselfdelete": "Вы не можете удалять или объединять {{GENDER:$1|себя самого}}!", "usermerge-protectedgroup": "Невозможно объединить {{GENDER:$1|участников}} — участник относится к защищённой группе.", - "right-usermerge": "объединение участников", + "right-usermerge": "Объединение участников", "action-usermerge": "объединение участников", "usermerge-autopagedelete": "Автоматически удалённая страница при объединении участников", "usermerge-page-unmoved": "Страница $1 не может быть переименована в $2.", - "usermerge-move-log": "Автоматически переименованная страница во время объединения учётной записи «$1» с «[[User:$2|$2]]»" + "usermerge-move-log": "Автоматически переименованная страница во время объединения учётной записи «$1» с «[[User:$2|$2]]»", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|объединил|объединила}} учётную запись \"$4\" ($5) с {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|удалил|удалила}} учётную запись \"$4\" ($5)", + "log-action-filter-usermerge": "Тип действия:", + "log-action-filter-usermerge-mergeuser": "Объединение учётных записей", + "log-action-filter-usermerge-deleteuser": "Удаление учётной записи" } diff --git a/UserMerge/i18n/rue.json b/UserMerge/i18n/rue.json index 2ef808b3..ada70eda 100644 --- a/UserMerge/i18n/rue.json +++ b/UserMerge/i18n/rue.json @@ -6,6 +6,5 @@ }, "usermerge-noolduser": "Порожнє старе мено хоснователя", "usermerge-deleteolduser": "Змазати старого хоснователя", - "usermerge-userdeleted": "$1 ($2) быв змазаный.", - "usermerge-userdeleted-log": "Змазаный хоснователь: $2 ($3)" + "usermerge-userdeleted": "$1 ($2) быв змазаный." } diff --git a/UserMerge/i18n/sh.json b/UserMerge/i18n/sh.json new file mode 100644 index 00000000..448b90fd --- /dev/null +++ b/UserMerge/i18n/sh.json @@ -0,0 +1,29 @@ +{ + "@metadata": { + "authors": [ + "Vlad5250" + ] + }, + "usermerge": "Spajanje i brisanje korisnika", + "usermerge-badnewuser": "Nevaljano novo korisničko ime", + "usermerge-nonewuser": "Prazno novo korisničko ime. Pretpostavlja se spajanje na \"{{GENDER:$1|$1}}\".<br />\nKliknite na \"{{int:usermerge-submit}}\" za prihvatanje.", + "usermerge-noolduser": "Prazno staro korisničko ime", + "usermerge-same-old-and-new-user": "Staro i novo korisničko ime treba da se razlikovati.", + "usermerge-fieldset": "Korisnička imena za spajanje", + "usermerge-olduser": "Stari korisnik (za spajanje od):", + "usermerge-newuser": "Novi korisnik (za spajanje sa):", + "usermerge-deleteolduser": "Obriši starog korisnika", + "usermerge-submit": "Spoji korisnika", + "usermerge-badtoken": "Nevaljan token izmjene", + "usermerge-userdeleted": "$1 ($2) je obrisan.", + "usermerge-success": "Spajanje $1 ($2) u $3 ($4) je gotovo.", + "usermerge-logpage": "Evidencija spajanja korisnika", + "usermerge-logpagetext": "Ovo je evidencija spajanja korisničkih imena.", + "usermerge-noselfdelete": "Ne možete se obrisati niti spojiti {{GENDER:$1|sami sa sobom}}!", + "usermerge-protectedgroup": "Nije moguće spojiti {{GENDER:$1|korisnike}}: korisnik je u zaštićenoj grupi.", + "right-usermerge": "Spajanje korisnika", + "action-usermerge": "spajanje korisnika", + "usermerge-autopagedelete": "Automatski obrisana stranica prilikom spajanja korisnika", + "usermerge-page-unmoved": "Nisam moegao premjestiti stranicu $1 na $2.", + "log-action-filter-usermerge": "Vrsta radnje:" +} diff --git a/UserMerge/i18n/si.json b/UserMerge/i18n/si.json index 0cd89c6c..11423a8a 100644 --- a/UserMerge/i18n/si.json +++ b/UserMerge/i18n/si.json @@ -7,7 +7,6 @@ }, "usermerge": "පරිශීලකයින් මුසු කිරීම හා මැකීම", "usermerge-desc": "විකිදත්ත ගබඩාවේ ඇති [[Special:UserMerge|එක් පරිශීලකයකුගෙන් තවත් පරිශිලකයෙකුට යොමුවන් මුසු කරයි]] පැරණි පරිශීලකයින්වද මකයි,පහත මුසු කිරීමට ''usermerge'' වරප්රසාද අවශ්යවේ.", - "usermerge-badolduser": "වලංගු නොවන පැරණි පරිශීලක නාමය", "usermerge-badnewuser": "වලංගු නොවන නව පරිශීලක නාමය", "usermerge-nonewuser": "හිස් නව පරිශීලක නාමය - \"$1\" ට මුසු කිරීමට උපකල්පනය කරමින්.<br />\nපිළිගැනීමට \"{{int:usermerge-submit}}\" ක්ලික් කරන්න.", "usermerge-noolduser": "හිස් පැරණි පරිශීලක නාමය", @@ -18,9 +17,7 @@ "usermerge-submit": "පරිශීලකයා මුසු කරන්න", "usermerge-badtoken": "වලංගු නොවන සංස්කරණ සංඥාව", "usermerge-userdeleted": "$1 ($2) මකනු ලැබ ඇත.", - "usermerge-userdeleted-log": "මකනු ලැබූ පරිශීලක: $2 ($3)", "usermerge-success": "$1 ($2) සිට $3 ($4) දක්වා මුසු කිරීම සම්පූර්ණ විය.", - "usermerge-success-log": "$2 ($3) පරිශීලකයා $4 ($5) ට මුසු කරන ලදී", "usermerge-logpage": "පරිශීලක මුසු කිරීම් ලඝු සටහන", "usermerge-logpagetext": "මෙය පරිශීලක මුසු කිරීම් කාර්යයන්වල ලඝු සටහනකි.", "usermerge-noselfdelete": "ඔබ විසින්ම මැකීම හෝ මුසු කිරීම සිදු කරනු ලැබිය නොහැකිය!", diff --git a/UserMerge/i18n/sk.json b/UserMerge/i18n/sk.json index fcd79e95..e6e135d3 100644 --- a/UserMerge/i18n/sk.json +++ b/UserMerge/i18n/sk.json @@ -1,14 +1,14 @@ { "@metadata": { "authors": [ - "Helix84" + "Helix84", + "Luky001" ] }, "usermerge": "Zlúčenie a zmazanie používateľov", "usermerge-desc": "[[Special:UserMerge|Zlučuje odkazy na jedného používateľa na odkazy na druhého]] v databáze wiki; tiež následne zmaže starého používateľa. Vyžaduje oprávnenie ''usermerge''.", - "usermerge-badolduser": "Neplatné staré používateľské meno", "usermerge-badnewuser": "Neplatné nové používateľské meno", - "usermerge-nonewuser": "Prázdne nové používateľské meno - predpokladá sa zlúčenie do „$1“.<br />\nKliknutím na „{{int:usermerge-submit}}“ prijmete.", + "usermerge-nonewuser": "Nové používateľské meno je prázdne. Predpokladá sa zlúčenie do „$1“.<br />\nPotvrdiť môžete kliknutím na „{{int:usermerge-submit}}“.", "usermerge-noolduser": "Prázdne staré používateľské meno", "usermerge-fieldset": "Zlúčiť používateľov", "usermerge-olduser": "Starý používateľ (zlúčiť odtiaľto)", @@ -16,13 +16,11 @@ "usermerge-deleteolduser": "Zmazať starého používateľa", "usermerge-submit": "Zlúčiť používateľov", "usermerge-badtoken": "Neplatný token úprav", - "usermerge-userdeleted": "$1($2) bol zmazaný.", - "usermerge-userdeleted-log": "Zmazaný používateľ: $2($3)", - "usermerge-success": "Zlúčenie z $1($2) do $3($4) je dokončené.", - "usermerge-success-log": "Používateľ $2($3) bol zlúčený do $4($5)", + "usermerge-userdeleted": "Účet $1 ($2) bol zmazaný.", + "usermerge-success": "Zlúčenie účtu $1 ($2) do $3 ($4) je dokončené.", "usermerge-logpage": "Záznam zlúčení používateľov", "usermerge-logpagetext": "Toto je záznam zlúčení používateľov.", - "usermerge-noselfdelete": "Nemôžete zmazať alebo zlúčiť svoj účet!", - "usermerge-protectedgroup": "Nebolo možné zlúčiť uvedeného používateľa - používateľ je v chránenej skupine.", + "usermerge-noselfdelete": "{{GENDER:$1|Nemôžete}} zmazať alebo zlúčiť svoj účet!", + "usermerge-protectedgroup": "Nebolo možné zlúčiť {{GENDER:$1|uvedeného používateľa|uvedenú používateľku}}: {{GENDER:$1|používateľ|používateľka}} je v chránenej skupine.", "right-usermerge": "Zlučovať používateľov" } diff --git a/UserMerge/i18n/sl.json b/UserMerge/i18n/sl.json index 37358a94..547a6c55 100644 --- a/UserMerge/i18n/sl.json +++ b/UserMerge/i18n/sl.json @@ -6,7 +6,6 @@ }, "usermerge": "Spoji in izbriši uporabnike", "usermerge-desc": "[[Special:UserMerge|Združi sklice iz enega uporabnika na drugega]] v zbirki podatkov wikija – prav tako po združitvi izbriše stare uporabnika. Potrebuje pravico ''usermerge''", - "usermerge-badolduser": "Neveljavno staro uporabniško ime", "usermerge-badnewuser": "Neveljavno novo uporabniško ime", "usermerge-nonewuser": "Prazno novo uporabniško ime. Predpostavljam združitev z »{{GENDER:$1|$1}}«.<br />\nKliknite »{{int:usermerge-submit}}« za sprejetje.", "usermerge-noolduser": "Prazno staro uporabniško ime", @@ -18,9 +17,7 @@ "usermerge-submit": "Spoji uporabnika", "usermerge-badtoken": "Neveljavni žeton urejanja", "usermerge-userdeleted": "$1 ($2) smo izbrisali.", - "usermerge-userdeleted-log": "izbrisal(-a) uporabnika »$2« ($3)", "usermerge-success": "Združitev iz $1 ($2) v $3 ($4) je končana.", - "usermerge-success-log": "spojil(-a) račun »$2« ($3) z »[[User:$4|$4]]« ($5)", "usermerge-logpage": "Dnevnik spajanja uporabnikov", "usermerge-logpagetext": "To je dnevnik dejanj spajanja uporabnikov.", "usermerge-noselfdelete": "Ne morete izbrisati ali združevati {{GENDER:$1|sebe}}!", diff --git a/UserMerge/i18n/sr-ec.json b/UserMerge/i18n/sr-ec.json index ac7fd751..41c3643c 100644 --- a/UserMerge/i18n/sr-ec.json +++ b/UserMerge/i18n/sr-ec.json @@ -1,38 +1,40 @@ { "@metadata": { "authors": [ + "BadDog", "Milicevic01", "Rancher", + "Zoranzoki21", "Жељко Тодоровић", - "Михајло Анђелковић", - "BadDog", - "Zoranzoki21" + "Михајло Анђелковић" ] }, "usermerge": "Обједињавање и брисање налога", - "usermerge-desc": "[[Special:UserMerge|Преноси доприносе једног корисника на другог]] у бази викија; биће избрисани и стари корисници. Потребно је право ''usermerge''.", - "usermerge-badolduser": "Неважеће старо корисничко име.", - "usermerge-badnewuser": "Неисправно ново корисничко име.", - "usermerge-nonewuser": "Ново корисничко име је празно. Претпостављам са се спаја на „{{GENDER:$1|$1}}“.<br />\nКликните на „{{int:usermerge-submit}}“ да бисте прихватили.", + "usermerge-desc": "[[Special:UserMerge|Обједињава доприносе једног корисника на другог]] у бази података викија — биће избрисани и стари корисници. Потребно је право ''usermerge''.", + "usermerge-badnewuser": "Неважеће ново корисничко име.", + "usermerge-nonewuser": "Ново корисничко име је празно. Претпоставља се да се обједињава на „{{GENDER:$1|$1}}”.<br />\nКликните на „{{int:usermerge-submit}}” да бисте прихватили.", "usermerge-noolduser": "Старо корисничко име је празно.", "usermerge-same-old-and-new-user": "Ново име налога се мора разликовати од старог.", "usermerge-fieldset": "Налози за обједињавање", "usermerge-olduser": "Стари налог:", "usermerge-newuser": "Нови налог:", "usermerge-deleteolduser": "Избриши стари налог", - "usermerge-submit": "Споји корисника", + "usermerge-submit": "Обједини налоге", "usermerge-badtoken": "Неважећи токен измене.", "usermerge-userdeleted": "$1 ($2) је {{GENDER:$1|избрисан|избрисана}}.", - "usermerge-userdeleted-log": "избрисан кориснички налог: „$2“ ($3)", "usermerge-success": "Обједињавање корисника $1 ($2) и $3 ($4) је завршено.", - "usermerge-success-log": "Налози корисника $2 ($3) и \"[[User:$4|$4]]\" ($5) су обједињени.", - "usermerge-logpage": "Дневник спајања корисника", - "usermerge-logpagetext": "Ово је дневник радња спајања корисника.", + "usermerge-logpage": "Дневник обједињавања налога", + "usermerge-logpagetext": "Ово је дневник радња обједињавања налога.", "usermerge-noselfdelete": "Не можете избрисати или објединити {{GENDER:$1|сами себе}}!", "usermerge-protectedgroup": "Не могу да објединим налоге {{GENDER:$1|корисника|кориснице}}: Корисник је у заштићеној групи.", - "right-usermerge": "спајање корисника", - "action-usermerge": "спајате кориснике", + "right-usermerge": "обједињавање налога", + "action-usermerge": "обједињавање налога", "usermerge-autopagedelete": "Аутоматски се брише при обједињавању налога.", "usermerge-page-unmoved": "Не могу да преместим страницу $1 у $2.", - "usermerge-move-log": "Аутоматски премештено при обједињавању налога „$1“ и „[[User:$2|$2]]“." + "usermerge-move-log": "Аутоматски премештено при обједињавању налога „$1“ и „[[User:$2|$2]]“.", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|објединио|објединила}} је кориснички налог „$4” ($5) у {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 је {{GENDER:$2|избрисао|избрисала}} кориснички налог „$4” ($5)", + "log-action-filter-usermerge": "Тип радње:", + "log-action-filter-usermerge-mergeuser": "Обједињавање корисничког налога", + "log-action-filter-usermerge-deleteuser": "Брисање корисничког налога" } diff --git a/UserMerge/i18n/sr-el.json b/UserMerge/i18n/sr-el.json index 4ae50131..b85e6a8b 100644 --- a/UserMerge/i18n/sr-el.json +++ b/UserMerge/i18n/sr-el.json @@ -6,26 +6,32 @@ "Rancher" ] }, - "usermerge": "Spaja i briše korisnike", - "usermerge-badolduser": "Neispravno staro korisničko ime", - "usermerge-badnewuser": "Neispravno novo korisničko ime", - "usermerge-noolduser": "Isprazni staro korisničko ime", - "usermerge-same-old-and-new-user": "Staro i novo korisničko ime se moraju razlikovati.", - "usermerge-fieldset": "Korisnička imena za spajanje", - "usermerge-olduser": "Stari korisnik (spajanje od):", - "usermerge-newuser": "Novi korisnik (spajanje sa):", - "usermerge-deleteolduser": "Obriši starog korisnika", - "usermerge-submit": "Spoji korisnika", - "usermerge-userdeleted": "$1 ($2) je {{GENDER:$1|obrisan|obrisana}}.", - "usermerge-userdeleted-log": "Obrisan korisnik: $2 ($3)", - "usermerge-success": "Spajanje {{GENDER:$1|$1}} ($2) sa {{GENDER:$3|$3}} ($4) je završeno.", - "usermerge-success-log": "{{GENDER:$2|Korisnik|Korisnica}} $2 ($3) je {{GENDER:$2|spojen|spojena}} sa {{GENDER:$4|$4}} ($5)", - "usermerge-logpage": "Dnevnik spajanja korisnika", - "usermerge-logpagetext": "Ovo je dnevnik spajanja korisnika.", - "usermerge-noselfdelete": "Ne možete da se obrišete ili spojite sa {{GENDER:$1|samim sobom}}!", - "usermerge-protectedgroup": "Nije moguđe spojiti ovog korisnika sa drugim — nalazi se u zaštićenoj grupi.", - "right-usermerge": "spajanje korisnika", - "action-usermerge": "spajanje korisnika", - "usermerge-autopagedelete": "Automatski obrisano zbog spajanja korisnika", - "usermerge-move-log": "Automatsko premeštanje stranice zbog spajanja korisnika „[[User:$1|$1]]“ u „[[User:$2|{{GENDER:$2|$2}}]]“" + "usermerge": "Objedinjavanje i brisanje naloga", + "usermerge-desc": "[[Special:UserMerge|Objedinjava doprinose jednog korisnika na drugog]] u bazi podataka vikija — biće izbrisani i stari korisnici. Potrebno je pravo ''usermerge''.", + "usermerge-badnewuser": "Nevažeće novo korisničko ime.", + "usermerge-nonewuser": "Novo korisničko ime je prazno. Pretpostavlja se da se objedinjava na „{{GENDER:$1|$1}}”.<br />\nKliknite na „{{int:usermerge-submit}}” da biste prihvatili.", + "usermerge-noolduser": "Staro korisničko ime je prazno.", + "usermerge-same-old-and-new-user": "Novo ime naloga se mora razlikovati od starog.", + "usermerge-fieldset": "Nalozi za objedinjavanje", + "usermerge-olduser": "Stari nalog:", + "usermerge-newuser": "Novi nalog:", + "usermerge-deleteolduser": "Izbriši stari nalog", + "usermerge-submit": "Objedini naloge", + "usermerge-badtoken": "Nevažeći token izmene.", + "usermerge-userdeleted": "$1 ($2) je {{GENDER:$1|izbrisan|izbrisana}}.", + "usermerge-success": "Objedinjavanje korisnika $1 ($2) i $3 ($4) je završeno.", + "usermerge-logpage": "Dnevnik objedinjavanja naloga", + "usermerge-logpagetext": "Ovo je dnevnik radnja objedinjavanja naloga.", + "usermerge-noselfdelete": "Ne možete izbrisati ili objediniti {{GENDER:$1|sami sebe}}!", + "usermerge-protectedgroup": "Ne mogu da objedinim naloge {{GENDER:$1|korisnika|korisnice}}: Korisnik je u zaštićenoj grupi.", + "right-usermerge": "objedinjavanje naloga", + "action-usermerge": "objedinjavanje naloga", + "usermerge-autopagedelete": "Automatski se briše pri objedinjavanju naloga.", + "usermerge-page-unmoved": "Ne mogu da premestim stranicu $1 u $2.", + "usermerge-move-log": "Automatski premešteno pri objedinjavanju naloga „$1“ i „[[User:$2|$2]]“.", + "logentry-usermerge-mergeuser": "$1 je {{GENDER:$2|objedinio|objedinila}} korisnički nalog „$4” ($5) u {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 je {{GENDER:$2|izbrisao|izbrisala}} korisnički nalog „$4” ($5)", + "log-action-filter-usermerge": "Tip radnje:", + "log-action-filter-usermerge-mergeuser": "Objedinjavanje korisničkog naloga", + "log-action-filter-usermerge-deleteuser": "Brisanje korisničkog naloga" } diff --git a/UserMerge/i18n/stq.json b/UserMerge/i18n/stq.json index 10d95a42..4fd66243 100644 --- a/UserMerge/i18n/stq.json +++ b/UserMerge/i18n/stq.json @@ -6,7 +6,6 @@ }, "usermerge": "Benutserkonten touhoopefiere un läskje", "usermerge-desc": "[[Special:UserMerge|Fiert Benutserkonten in ju Wiki-Doatenbank touhoope]] - dät oolde Benutserkonto wäd ätter ju Touhoopefierenge läsked. Ärfoardert dät ''usermerge''-Gjucht.", - "usermerge-badolduser": "Uungultigen oolden Benutsernoome", "usermerge-badnewuser": "Uungultigen näien Benutsernoome", "usermerge-nonewuser": "Loosen näien Benutsernoome - der is ne Touhoopefierenge mäd „$1“ fermoudjen.<br />\nKlik ap „{{int:usermerge-submit}}“ toun Uutfieren.", "usermerge-noolduser": "Loosen oolden Benutsernoome", @@ -16,9 +15,7 @@ "usermerge-submit": "Benutserkonten touhoopefiere", "usermerge-badtoken": "Uungultich Beoarbaidjen-Token", "usermerge-userdeleted": "„$1“ ($2) wuud läsked.", - "usermerge-userdeleted-log": "Läskeden Benutsernoome: „$2“ ($3)", "usermerge-success": "Ju Touhoopefierenge fon „$1“ ($2) ätter „$3“ ($4) is fulboodich.", - "usermerge-success-log": "Benutsernoome „$2“ ($3) touhoopefierd mäd „$4“ ($5)", "usermerge-logpage": "Benutserkonten-Touhoopefierenge-Logbouk", "usermerge-logpagetext": "Dit is dät Logbouk fon do Benutserkonten-Touhoopefierengen.", "usermerge-noselfdelete": "Touhoopefierenge mäd aan sälwen is nit muugelk!", diff --git a/UserMerge/i18n/sv.json b/UserMerge/i18n/sv.json index a19db006..b695b4d9 100644 --- a/UserMerge/i18n/sv.json +++ b/UserMerge/i18n/sv.json @@ -12,7 +12,6 @@ }, "usermerge": "Slå ihop och radera användarkonton", "usermerge-desc": "Ger möjlighet att [[Special:UserMerge|slå samman användarkonton]] genom att alla referenser till en användare byts ut till en annan användare i databasen, samt att efter sammanslagning radera gamla konton. Kräver behörigheten ''usermerge''.", - "usermerge-badolduser": "Ogiltigt gammalt användarnamn", "usermerge-badnewuser": "Ogiltigt nytt användarnamn", "usermerge-nonewuser": "Tomt nytt användarnamn. Antar sammanslagning till \"{{GENDER:$1|$1}}\".<br />\nKlicka på \"{{int:usermerge-submit}}\" för att godkänna.", "usermerge-noolduser": "Gammalt användarnamn tomt", @@ -24,9 +23,7 @@ "usermerge-submit": "Förena konton", "usermerge-badtoken": "Ogiltigt redigeringstecken", "usermerge-userdeleted": "$1 ($2) har raderats.", - "usermerge-userdeleted-log": "raderade användarkontot \"$2\" ($3)", "usermerge-success": "Sammanslagning från $1 ($2) till $3 ($4) har slutförts.", - "usermerge-success-log": "slog samman användare \"$2\" ($3) med \"[[User:$4|$4]]\" ($5)", "usermerge-logpage": "Användarsammanslagningslogg", "usermerge-logpagetext": "Det här är en logg över sammanslagningar av användarkonton.", "usermerge-noselfdelete": "Du kan inte radera eller slå samman {{GENDER:$1|ditt}} eget konto!", @@ -35,5 +32,9 @@ "action-usermerge": "slå ihop användarkonton", "usermerge-autopagedelete": "Ta bort sida automatiskt när användare sammanfogas", "usermerge-page-unmoved": "Sidan $1 kan inte tas bort till $2", - "usermerge-move-log": "Ta automatiskt bort sidan när du slår ihop användare \"$1\" med \"[[User:$2|]]\"" + "usermerge-move-log": "Ta automatiskt bort sidan när du slår ihop användare \"$1\" med \"[[User:$2|]]\"", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|slog samman}} användarkontot \"$4\" ($5) till {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|raderade}} användarkonto \"$4\" ($5)", + "log-action-filter-usermerge": "Typ av åtgärd:", + "log-action-filter-usermerge-deleteuser": "Radering av användarkonto" } diff --git a/UserMerge/i18n/szl.json b/UserMerge/i18n/szl.json index c410313a..5bfc0a12 100644 --- a/UserMerge/i18n/szl.json +++ b/UserMerge/i18n/szl.json @@ -1,12 +1,12 @@ { "@metadata": { "authors": [ - "Lajsikonik" + "Lajsikonik", + "Uostofchuodnego" ] }, "usermerge": "Skupluj a wyćep użytkowńikůw", "usermerge-desc": "[[Special:UserMerge|Kupluje odwołańo lů jednygo użytkowńika do drugigo]] we baźe danych wiki – wyćepuje tyż starygo użytkowńika po skuplowańu. Wymogo uprowńyńo ''usermerge''", - "usermerge-badolduser": "Felerne stare mjano użytkowńika", "usermerge-badnewuser": "Felerne nowe mjano użytkowńika", "usermerge-nonewuser": "Puste mjano nowygo użytkowńika – przyjynto, aże nastůmpi integracyjo do $1. <br />Naciś \"{{int:usermerge-submit}}\", coby zaakceptować.", "usermerge-noolduser": "Puste stare mjano użytkowńika", @@ -14,13 +14,11 @@ "usermerge-newuser": "Nowy użytkowńik (kupluj s)", "usermerge-deleteolduser": "Wyćepać starygo użytkowńika?", "usermerge-submit": "Kupluj użytkowńikůw", - "usermerge-badtoken": "Ńyprowidłowy żetůn sprowjyńo", + "usermerge-badtoken": "Niynŏleżny tokyn edycyje.", "usermerge-userdeleted": "$1 ($2) zostoł wyćepany.", - "usermerge-userdeleted-log": "wyćepoł użytkowńika „$2” ($3)", "usermerge-success": "Kuplowańy $1 ($2) s $3 ($4) zakończůne.", - "usermerge-success-log": "skuplowoł użytkowńika „$2” ($3) do „$4” ($5)", - "usermerge-logpage": "Rejer kuplowańo użytkowńików", - "usermerge-logpagetext": "To je rejer uoperacyji kuplowańo użytkowńikůw.", + "usermerge-logpage": "Regest kuplowaniŏ używŏczōw", + "usermerge-logpagetext": "To je regest kuplowań używŏczōw.", "usermerge-noselfdelete": "Ńy idźe wyćepać abo kuplować samygo śebje!", "usermerge-protectedgroup": "Ńy idźe skulować użytkowńika - je uůn człůnkym zabezpjeczůnyj grupy.", "right-usermerge": "Kuplowańy użytkowńikůw" diff --git a/UserMerge/i18n/te.json b/UserMerge/i18n/te.json index ba4fa51b..9061597f 100644 --- a/UserMerge/i18n/te.json +++ b/UserMerge/i18n/te.json @@ -5,7 +5,6 @@ ] }, "usermerge": "వాడుకరి విలీనం మరియు తొలగింపు", - "usermerge-badolduser": "తప్పుడు పాత వాడుకరిపేరు", "usermerge-badnewuser": "తప్పుడు కొత్త వాడుకరిపేరు", "usermerge-noolduser": "పాత వాడుకరిపేరు ఖాళీగా ఉంది", "usermerge-fieldset": "విలీనించాల్సిన వాడుకరిపేర్లు", @@ -14,9 +13,7 @@ "usermerge-deleteolduser": "పాత వాడుకరిని తొలగించు", "usermerge-submit": "వాడుకరిని విలీనం చేయ్యండి", "usermerge-userdeleted": "$1 ($2)ని తొలగించాం.", - "usermerge-userdeleted-log": "వాడుకరిని తొలగించాం: $2 ($3)", "usermerge-success": "$1 ($2) నుండి $3 ($4) కి విలీనం పూర్తయ్యింది.", - "usermerge-success-log": "$2 ($3) వాడుకరి $4 ($5)లో విలీనమయ్యారు", "usermerge-logpage": "వాడుకరి విలీనాల చిట్టా", "usermerge-logpagetext": "ఇది వాడుకరి విలీనాల చిట్టా.", "usermerge-noselfdelete": "మిమ్మల్ని మీరే తొలగించుకోలేరు లేదా మీలో విలీనం కాలేరు!", diff --git a/UserMerge/i18n/tg-cyrl.json b/UserMerge/i18n/tg-cyrl.json index b359b4d6..a6422e4a 100644 --- a/UserMerge/i18n/tg-cyrl.json +++ b/UserMerge/i18n/tg-cyrl.json @@ -5,14 +5,12 @@ ] }, "usermerge": "Идгом ва ҳафзи корбар", - "usermerge-badolduser": "Номи корбарии кӯҳнаи номӯътабар", "usermerge-badnewuser": "Номи корбарии ҷадидӣ номӯътабар", "usermerge-noolduser": "Холӣ кардани номи корбарии кӯҳна", "usermerge-olduser": "Корбари кӯҳна (идғом аз)", "usermerge-newuser": "Корбари ҷадид (идғом ба)", "usermerge-deleteolduser": "Ҳазви корбари кӯҳна", "usermerge-submit": "Идғоми корбар", - "usermerge-userdeleted-log": "Корбари ҳазфшуда: $2 ($3)", "usermerge-logpage": "Гузориши идғоми корбар", "usermerge-logpagetext": "Ин гузориши амалҳои идғоми корбар аст." } diff --git a/UserMerge/i18n/tg-latn.json b/UserMerge/i18n/tg-latn.json index fc646421..60fbb835 100644 --- a/UserMerge/i18n/tg-latn.json +++ b/UserMerge/i18n/tg-latn.json @@ -5,11 +5,9 @@ ] }, "usermerge": "Idgom va hafzi korbar", - "usermerge-badolduser": "Nomi korbariji kūhnai nomū'tabar", "usermerge-badnewuser": "Nomi korbariji çadidī nomū'tabar", "usermerge-noolduser": "Xolī kardani nomi korbariji kūhna", "usermerge-submit": "Idƣomi korbar", - "usermerge-userdeleted-log": "Korbari hazfşuda: $2 ($3)", "usermerge-logpage": "Guzorişi idƣomi korbar", "usermerge-logpagetext": "In guzorişi amalhoi idƣomi korbar ast." } diff --git a/UserMerge/i18n/tl.json b/UserMerge/i18n/tl.json index 5db9754f..21d6a9e4 100644 --- a/UserMerge/i18n/tl.json +++ b/UserMerge/i18n/tl.json @@ -6,7 +6,6 @@ }, "usermerge": "Pagsanibin at burahin ang mga tagagamit", "usermerge-desc": "[[Special:UserMerge|Nagsasanib ng mga sanggunian mula sa isang tagagamit patungo sa ibang tagagamit]] sa loob ng kalipunan ng dato ng wiki - magbubura din ng lumang mga tagagamit kasunod ng pagsasanib. Nangangailangan ng mga karapatang \"tagagamitpagsasanib\"", - "usermerge-badolduser": "Hindi tanggap na lumang pangalan ng tagagamit", "usermerge-badnewuser": "Hindi tanggap na bagong pangalan ng tagagamit", "usermerge-nonewuser": "Tanggalan ng laman ang bagong pangalan ng tagagamit - ipinapalagay na isasanib sa $1.<br />\nPindutin ang \"{{int:usermerge-submit}}\" upang tanggapin.", "usermerge-noolduser": "Tanggalan ng laman ang lumang pangalan ng tagagamit", @@ -17,9 +16,7 @@ "usermerge-submit": "Isanib ang tagagamit", "usermerge-badtoken": "Hindi tanggap na pananda ng pagbabago", "usermerge-userdeleted": "Nabura na ang $1 ($2).", - "usermerge-userdeleted-log": "Binurang tagagamit: $2 ($3)", "usermerge-success": "Ganap na ang pagsanib mula sa $1 ($2) patungo sa $3 ($4).", - "usermerge-success-log": "Tagagamit na $2 ($3) isinanib sa $4 ($5)", "usermerge-logpage": "Talaan ng pagsasanib ng tagagamit", "usermerge-logpagetext": "Isa itong talaan ng mga galaw na pangpagsasanib ng tagagamit.", "usermerge-noselfdelete": "Hindi ka maaaring magbura o sumanib mula sa sarili mo!", diff --git a/UserMerge/i18n/tr.json b/UserMerge/i18n/tr.json index e12a614b..4b86c261 100644 --- a/UserMerge/i18n/tr.json +++ b/UserMerge/i18n/tr.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "BaRaN6161 TURK", "Joseph", "Karduelis", "Srhat", @@ -9,23 +10,30 @@ }, "usermerge": "Kullanıcıları birleştir ve sil", "usermerge-desc": "Viki veritabanında [[Special:UserMerge|referansları bir kullanıcıdan diğerine birleştirir]] - birleşmeyi mütakip eski kullanıcıları da siler. ''Kullanıcıbirleştir'' ayrıcalığı gerekir", - "usermerge-badolduser": "Geçersiz eski kullanıcı adı", "usermerge-badnewuser": "Geçersiz yeni kullanıcı", - "usermerge-nonewuser": "Yeni boş kullanıcıadı - \"$1\" ile birleştirme varsayılıyor.<br />\nKabul etmek için \"{{int:usermerge-submit}}\"e tıklayın.", + "usermerge-nonewuser": "Boş yeni kullanıcı adı. \"{{GENDER:$1|$1}}\" şeklinde birleştirme varsayılıyor.<br />\nKabul etmek için \"{{int:usermerge-submit}}\" düğmesini tıklayın.", "usermerge-noolduser": "Boş eski kullanıcı adı", + "usermerge-same-old-and-new-user": "Eski ve yeni kullanıcı adlarının farklı olması gerekir.", "usermerge-fieldset": "Birleştirilecek kullanıcı adları", "usermerge-olduser": "Eski kullanıcı (dan birleştir):", "usermerge-newuser": "Yeni kullanıcı (e birleştir):", "usermerge-deleteolduser": "Eski kullanıcıyı sil", "usermerge-submit": "Kullanıcıyı birleştir", "usermerge-badtoken": "Geçersiz değişiklik dizgeciği", - "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) silindi.", - "usermerge-userdeleted-log": "Silinen kullanıcı: $2 ($3)", - "usermerge-success": "{{GENDER:$1|$1}} ($2) kullanıcısından {{GENDER:$3|$3}} ($4) kullanıcısına birleştirme tamamlandı.", - "usermerge-success-log": "{{GENDER:$2|$2}} ($3) kullanıcısı {{GENDER:$4|$4}} ($5) kullanıcısıyla birleştirildi", + "usermerge-userdeleted": "$1 ($2) silindi.", + "usermerge-success": "$1 ($2) kullanıcısından $3 ($4) kullanıcısına birleştirme tamamlandı.", "usermerge-logpage": "Kullanıcı birleştirme günlüğü", "usermerge-logpagetext": "Bu bir kullanıcı birleştirme eylemleri günlüğüdür.", "usermerge-noselfdelete": "{{GENDER:$1|kendinizi}} birleştiremez ya da silemezsiniz!", - "usermerge-protectedgroup": "{{GENDER:$1|kullanıcısından}}:birleştirilemiyor: Kullanıcı korunan bir grupta bulunuyor.", - "right-usermerge": "Kullanıcıları birleştir" + "usermerge-protectedgroup": "{{GENDER:$1|Kullanıcısından}} birleştirilemiyor: kullanıcı korunan bir grupta bulunuyor.", + "right-usermerge": "Kullanıcıları birleştir", + "action-usermerge": "kullanıcıları birleştir", + "usermerge-autopagedelete": "Kullanıcıları birleştirirken otomatik olarak silinen sayfa", + "usermerge-page-unmoved": "$1 sayfası $2 taşınamadı.", + "usermerge-move-log": "\"$1\" hesabı \"[[User:$2|$2]]\" ile birleştirilirken otomatik olarak sayfa taşındı", + "logentry-usermerge-mergeuser": "$1 kullanıcı hesabını \"$4\" ($5) {{GENDER:$8|$6}} olarak ($7) {{GENDER:$2|birleştirildi}}", + "logentry-usermerge-deleteuser": "$1 kullanıcı hesabı {{GENDER:$2|sildi}} \"$4\" ($5)", + "log-action-filter-usermerge": "Faaliyet türü:", + "log-action-filter-usermerge-mergeuser": "Kullanıcı hesabı birleştirme", + "log-action-filter-usermerge-deleteuser": "Kullanıcı hesabı silme" } diff --git a/UserMerge/i18n/uk.json b/UserMerge/i18n/uk.json index 5e5f02f5..5c2d2035 100644 --- a/UserMerge/i18n/uk.json +++ b/UserMerge/i18n/uk.json @@ -3,6 +3,7 @@ "authors": [ "Ahonc", "Andriykopanytsia", + "Piramidion", "Steve.rusyn", "SteveR", "Ата" @@ -10,7 +11,6 @@ }, "usermerge": "Об'єднання і вилучення облікових записів", "usermerge-desc": "[[Special:UserMerge|Переводить зв'язки з одного користувача на іншого]] у базі даних вікі, старі користувачі будуть вилучатися. Вимагає прав ''usermerge''", - "usermerge-badolduser": "Неправильне старе ім'я користувача", "usermerge-badnewuser": "Неправильне нове ім'я користувача", "usermerge-nonewuser": "Порожнє ім'я користувача. Припускається злиття з «{{GENDER:$1|$1}}».<br />\nНатисніть «{{int:usermerge-submit}}», щоб підтвердити дію.", "usermerge-noolduser": "Порожнє старе ім'я користувача", @@ -21,17 +21,20 @@ "usermerge-deleteolduser": "Вилучити старий обліковий запис", "usermerge-submit": "Об'єднати користувачів", "usermerge-badtoken": "Недійсний маркер редагування", - "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|був вилучений|була вилучена}}.", - "usermerge-userdeleted-log": "Вилучений користувач: $2 ($3)", - "usermerge-success": "Об'єднання {{GENDER:$1|$1}} ($2) з {{GENDER:$3|$3}} ($4) завершене.", - "usermerge-success-log": "{{GENDER:$2|Користувач|Користувачка}} $2 ($3) {{GENDER:$2|приєднаний|приєднана}} до {{GENDER:$4|$4}} ($5)", + "usermerge-userdeleted": "$1 ($2) вилучено.", + "usermerge-success": "Приєднання $1 ($2) до $3 ($4) завершено.", "usermerge-logpage": "Журнал об'єднання користувачів", "usermerge-logpagetext": "Це журнал об'єднання облікових записів.", "usermerge-noselfdelete": "Ви не можете вилучати або приєднувати {{GENDER:$1|самого себе|саму себе}}!", - "usermerge-protectedgroup": "Неможливо об'єднати {{GENDER:$1|користувача|користувачку}} — користувач належить до захищеної групи.", - "right-usermerge": "об'єднування користувачів", + "usermerge-protectedgroup": "Неможливо приєднати {{GENDER:$1|користувача|користувачку}}: {{GENDER:$1|користувач|користувачка}} належить до захищеної групи.", + "right-usermerge": "Об'єднування користувачів", "action-usermerge": "об'єднування користувачів", - "usermerge-autopagedelete": "Автоматично видаляються при об'єднанні користувачів", + "usermerge-autopagedelete": "Автоматичне вилучення сторінки при об'єднанні користувачів", "usermerge-page-unmoved": "Сторінка $1 не може бути перейменована на $2.", - "usermerge-move-log": "Автоматичне перейменування сторінки при об'єднанні користувача «[[User:$1|$1]]» з «[[User:$2|{{GENDER:$2|$2}}]]»" + "usermerge-move-log": "Автоматичне перейменування сторінки при приєднанні облікового запису «$1» до «[[User:$2|$2]]»", + "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|приєднав|приєднала}} обліковий запис користувача «$4» ($5) до {{GENDER:$8|$6}} ($7)", + "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|вилучив|вилучила}} обліковий запис користувача «$4» ($5)", + "log-action-filter-usermerge": "Тип дії:", + "log-action-filter-usermerge-mergeuser": "Об'єднання облікових записів користувачів", + "log-action-filter-usermerge-deleteuser": "Вилучення облікових записів користувачів" } diff --git a/UserMerge/i18n/ur.json b/UserMerge/i18n/ur.json index 90eaf0dd..82936533 100644 --- a/UserMerge/i18n/ur.json +++ b/UserMerge/i18n/ur.json @@ -1,14 +1,12 @@ { "@metadata": { "authors": [ - "Zainab Meher", - "BukhariSaeed" + "BukhariSaeed", + "Zainab Meher" ] }, "usermerge-userdeleted": "$1 ($2) حذف کیا جا چکا ہے۔", - "usermerge-userdeleted-log": "\"$2\" ($3) صارف کا کھاتہ حذف کر دیا گیا", "usermerge-success": " $1 ($2) کا $3 ($4) میں حذف مکمل ہو گیا ہے۔", - "usermerge-success-log": " \"$2\" ($3) کا کھاتہ \"[[User:$4|$4]]\" ($5) میں ضم کر دیا گیا", "usermerge-autopagedelete": "صارفین کو ضم کرنے کے دوران میں صفحہ خودکار طریقے سے حذف کر دیا گیا", "usermerge-move-log": "\"$1\" کھاتے کو ضم کرنے کے دوران صفحے کو خودکار طور پر \"[[User:$2|$2]]\"میں منتقل کر دیا گیا" } diff --git a/UserMerge/i18n/uz.json b/UserMerge/i18n/uz.json index 6c8a665b..4311aab6 100644 --- a/UserMerge/i18n/uz.json +++ b/UserMerge/i18n/uz.json @@ -5,7 +5,5 @@ "Sociologist" ] }, - "usermerge-userdeleted-log": "Foydalanuvchi $2 ($3) chetlatilgan", - "usermerge-success-log": "Foydalanuvchi $2 ($3) {{GENDER:$4|$4}} ($5) bilan birlashtirilgan", "usermerge-logpage": "Foydalanuvchilarni birlashtirish qaydlari" } diff --git a/UserMerge/i18n/vep.json b/UserMerge/i18n/vep.json index f0dde01c..83a706b5 100644 --- a/UserMerge/i18n/vep.json +++ b/UserMerge/i18n/vep.json @@ -4,7 +4,6 @@ "Игорь Бродский" ] }, - "usermerge-badolduser": "Vär vanh kävutajan nimi", "usermerge-badnewuser": "Vär uz' kävutajan nimi", "usermerge-deleteolduser": "Čuta poiš vanh kävutajan nimi", "right-usermerge": "Ühtenzoitta kävutajid" diff --git a/UserMerge/i18n/vi.json b/UserMerge/i18n/vi.json index d138d462..5523e799 100644 --- a/UserMerge/i18n/vi.json +++ b/UserMerge/i18n/vi.json @@ -7,7 +7,6 @@ }, "usermerge": "Trộn và xóa thành viên", "usermerge-desc": "[[Special:UserMerge|Trộn các tham chiếu từ thành viên này sang một thành viên khác]] trong cơ sở dữ liệu wiki – đồng thời xóa thành viên cũ sau khi trộn. Cần phải có quyền ''usermerge''", - "usermerge-badolduser": "Tên thành viên cũ không hợp lệ", "usermerge-badnewuser": "Tên thành viên mới không hợp lệ", "usermerge-nonewuser": "Tên thành viên mới đã để trống. Có lẽ nên trộn với với “$1”.<br />\nNhấn “{{int:usermerge-submit}}” để chấp nhận.", "usermerge-noolduser": "Tên thành viên cũ trống", @@ -19,9 +18,7 @@ "usermerge-submit": "Trộn thành viên", "usermerge-badtoken": "Thẻ sửa đổi không hợp lệ", "usermerge-userdeleted": "$1 ($2) đã bị xóa.", - "usermerge-userdeleted-log": "Người đã xóa: $2 ($3)", "usermerge-success": "Việc trộn từ $1 ($2) đến $3 ($4) đã hoàn thành.", - "usermerge-success-log": "Thành viên $2 ($3) đã được trộn sang $4 ($5)", "usermerge-logpage": "Nhật trình trộn thành viên", "usermerge-logpagetext": "Đây là nhật trình ghi lại các tác vụ trộn thành viên.", "usermerge-noselfdelete": "Bạn không thể xóa hoặc trộn từ {{GENDER:$1}}chính bạn!", diff --git a/UserMerge/i18n/vo.json b/UserMerge/i18n/vo.json index 3cc4b23d..e1346f1c 100644 --- a/UserMerge/i18n/vo.json +++ b/UserMerge/i18n/vo.json @@ -5,10 +5,8 @@ "Smeira" ] }, - "usermerge-badolduser": "Gebananem büik no lonöfon", "usermerge-badnewuser": "Gebananem nulik no lonöfon", "usermerge-noolduser": "Vagükön gebananemi büik", "usermerge-deleteolduser": "Moükön gebani vönedik", - "usermerge-userdeleted": "$1 ($2) pemoükon.", - "usermerge-userdeleted-log": "Moükön gebani: $2 ($3)" + "usermerge-userdeleted": "$1 ($2) pemoükon." } diff --git a/UserMerge/i18n/yue.json b/UserMerge/i18n/yue.json index f8630a49..15d47b65 100644 --- a/UserMerge/i18n/yue.json +++ b/UserMerge/i18n/yue.json @@ -1,7 +1,8 @@ { - "@metadata": [], + "@metadata": { + "authors": [] + }, "usermerge": "用戶合併同刪除", - "usermerge-badolduser": "無效嘅舊用戶名", "usermerge-badnewuser": "無效嘅新用戶名", "usermerge-nonewuser": "清除新用戶名 - 假設合併到$1。<br />撳<em>{{int:usermerge-submit}}</em>去接受。", "usermerge-noolduser": "清除舊用戶名", diff --git a/UserMerge/i18n/zh-hans.json b/UserMerge/i18n/zh-hans.json index d17b0646..def2296f 100644 --- a/UserMerge/i18n/zh-hans.json +++ b/UserMerge/i18n/zh-hans.json @@ -6,14 +6,13 @@ "Gzdavidwong", "Hzy980512", "Liangent", + "Liuxinyu970226", "Yfdyh000", - "乌拉跨氪", - "Liuxinyu970226" + "乌拉跨氪" ] }, "usermerge": "用户合并和删除", "usermerge-desc": "将在wiki数据库中[[Special:UserMerge|合并一个用户到另一个用户]] - 合并后删除旧用户。需要''usermerge''权限", - "usermerge-badolduser": "无效的旧用户名", "usermerge-badnewuser": "无效的新用户名", "usermerge-nonewuser": "新用户名为空,将假设合并到{{GENDER:$1|$1}},<br />点击“{{int:usermerge-submit}}”以确定。", "usermerge-noolduser": "清除旧用户名", @@ -25,9 +24,7 @@ "usermerge-submit": "合并用户", "usermerge-badtoken": "无效的编辑令牌。", "usermerge-userdeleted": "$1($2)已删除。", - "usermerge-userdeleted-log": "已删除用户账户“$2”($3)", "usermerge-success": "由$1($2)到$3($4)的合并已经完成。", - "usermerge-success-log": "账户“$2”($3)已合并到“[[User:$4|$4]]”($5)", "usermerge-logpage": "用户合并日志", "usermerge-logpagetext": "这是一份用户合并动作的记录。", "usermerge-noselfdelete": "您不能将{{GENDER:$1|自己}}删除或者合并!", diff --git a/UserMerge/i18n/zh-hant.json b/UserMerge/i18n/zh-hant.json index c1edcbe3..1b16ff04 100644 --- a/UserMerge/i18n/zh-hant.json +++ b/UserMerge/i18n/zh-hant.json @@ -1,18 +1,20 @@ { "@metadata": { "authors": [ + "Cwlin0416", + "Hello903hello", + "Kly", + "LNDDYL", "Liangent", "Liuxinyu970226", "Mark85296341", + "Winston Sung", "Wrightbus", - "Cwlin0416", - "LNDDYL", - "Hello903hello" + "Xiplus" ] }, "usermerge": "合併並刪除使用者", - "usermerge-desc": "可 [[Special:UserMerge|合併一位使用者至另一位使用者]],在合併之後會同時刪除舊使用者。 需要開啟 ''usermerge'' 權限", - "usermerge-badolduser": "無效的舊使用者名稱。", + "usermerge-desc": "可[[Special:UserMerge|合併一位使用者至另一位使用者]],在合併之後會同時刪除舊使用者。需要開啟 ''usermerge'' 權限", "usermerge-badnewuser": "無效的新使用者名稱。", "usermerge-nonewuser": "未填寫新使用者名稱。預設合併至 \"{{GENDER:$1|$1}}\"。<br />\n點選 {{int:usermerge-submit}} 繼續。", "usermerge-noolduser": "未填寫舊使用者名稱。", @@ -24,9 +26,7 @@ "usermerge-submit": "合併使用者", "usermerge-badtoken": "無效的編輯權杖。", "usermerge-userdeleted": "$1($2)已刪除。", - "usermerge-userdeleted-log": "已刪除使用者賬戶「$2」($3)", "usermerge-success": "已完成由 $1($2)至 $3($4)的合併。", - "usermerge-success-log": "使用者賬戶「$2」($3)已合併至「[[User:$4|$4]]」($5)", "usermerge-logpage": "使用者合併日誌", "usermerge-logpagetext": "此頁為使用者合併動作的記錄。", "usermerge-noselfdelete": "您無法刪除或合併{{GENDER:$1|自己}}!", @@ -35,5 +35,10 @@ "action-usermerge": "合併使用者", "usermerge-autopagedelete": "合併使用者時自動刪除頁面", "usermerge-page-unmoved": "頁面 $1 無法移動至 $2。", - "usermerge-move-log": "合併賬戶「$1」到「[[User:$2|$2]]」時已自動移動頁面" + "usermerge-move-log": "合併帳號「$1」到「[[User:$2|$2]]」時已自動移動頁面", + "logentry-usermerge-mergeuser": "$1{{GENDER:$2|已合併}}使用者帳號「$4」($5)至{{GENDER:$8|$6}}($7)", + "logentry-usermerge-deleteuser": "$1{{GENDER:$2|已刪除}}使用者帳號「$4」($5)", + "log-action-filter-usermerge": "操作類型:", + "log-action-filter-usermerge-mergeuser": "使用者帳號合併", + "log-action-filter-usermerge-deleteuser": "使用者帳號刪除" } diff --git a/UserMerge/includes/IUserMergeLogger.php b/UserMerge/includes/IUserMergeLogger.php index da9febc7..09db6a48 100644 --- a/UserMerge/includes/IUserMergeLogger.php +++ b/UserMerge/includes/IUserMergeLogger.php @@ -14,8 +14,8 @@ interface IUserMergeLogger { /** * Adds a user deletion log entry * - * @param User $perfomer + * @param User $performer * @param User $oldUser */ - public function addDeleteEntry( User $perfomer, User $oldUser ); + public function addDeleteEntry( User $performer, User $oldUser ); } diff --git a/UserMerge/includes/MergeUser.php b/UserMerge/includes/MergeUser.php index 6a959c2f..07e3b7a4 100644 --- a/UserMerge/includes/MergeUser.php +++ b/UserMerge/includes/MergeUser.php @@ -1,10 +1,11 @@ <?php + +use MediaWiki\Block\DatabaseBlock; use MediaWiki\MediaWikiServices; use Wikimedia\Rdbms\IDatabase; /** * Contains the actual database backend logic for merging users - * */ class MergeUser { /** @@ -103,19 +104,21 @@ class MergeUser { /** * @param IDatabase $dbw * @return void - * @suppress PhanTypeMismatchArgument Phan thinks that $newBlock and $oldBlock are both null when - * Block::newFromRow is called, although the previous if/elseif returns if any of them is null. */ private function mergeBlocks( IDatabase $dbw ) { $dbw->startAtomic( __METHOD__ ); // Pull blocks directly from master + $qi = DatabaseBlock::getQueryInfo(); $rows = $dbw->select( - 'ipblocks', - '*', + $qi['tables'], + array_merge( $qi['fields'], [ 'ipb_user' ] ), [ 'ipb_user' => [ $this->oldUser->getId(), $this->newUser->getId() ], - ] + ], + __METHOD__, + [], + $qi['joins'] ); $newBlock = null; @@ -128,15 +131,13 @@ class MergeUser { } } - if ( !$newBlock && !$oldBlock ) { - // No one is blocked, yaaay - $dbw->endAtomic( __METHOD__ ); - return; - } elseif ( $newBlock && !$oldBlock ) { + if ( !$oldBlock ) { + // No one is blocked or // Only the new user is blocked, so nothing to do. $dbw->endAtomic( __METHOD__ ); return; - } elseif ( $oldBlock && !$newBlock ) { + } + if ( !$newBlock ) { // Just move the old block to the new username $dbw->update( 'ipblocks', @@ -150,8 +151,8 @@ class MergeUser { // Okay, let's pick the "strongest" block, and re-apply it to // the new user. - $oldBlockObj = Block::newFromRow( $oldBlock ); - $newBlockObj = Block::newFromRow( $newBlock ); + $oldBlockObj = DatabaseBlock::newFromRow( $oldBlock ); + $newBlockObj = DatabaseBlock::newFromRow( $newBlock ); $winner = $this->chooseBlock( $oldBlockObj, $newBlockObj ); if ( $winner->getId() === $newBlockObj->getId() ) { @@ -170,11 +171,11 @@ class MergeUser { } /** - * @param Block $b1 - * @param Block $b2 - * @return Block + * @param DatabaseBlock $b1 + * @param DatabaseBlock $b2 + * @return DatabaseBlock */ - private function chooseBlock( Block $b1, Block $b2 ) { + private function chooseBlock( DatabaseBlock $b1, DatabaseBlock $b2 ) { // First, see if one is longer than the other. if ( $b1->getExpiry() !== $b2->getExpiry() ) { // This works for infinite blocks because: @@ -187,12 +188,21 @@ class MergeUser { } // Next check what they block, in order + $blockProps = []; + foreach ( [ $b1, $b2 ] as $block ) { + $blockProps[] = [ + 'block' => $block, + 'createaccount' => $block->isCreateAccountBlocked(), + 'sendemail' => $block->isEmailBlocked(), + 'editownusertalk' => !$block->isUsertalkEditAllowed(), + ]; + } foreach ( [ 'createaccount', 'sendemail', 'editownusertalk' ] as $action ) { - if ( $b1->prevents( $action ) xor $b2->prevents( $action ) ) { - if ( $b1->prevents( $action ) ) { - return $b1; + if ( $blockProps[0][$action] xor $blockProps[1][$action] ) { + if ( $blockProps[0][$action] ) { + return $blockProps[0]['block']; } else { - return $b2; + return $blockProps[1]['block']; } } } @@ -210,7 +220,7 @@ class MergeUser { } if ( defined( 'ActorMigration::MIGRATION_STAGE_SCHEMA_COMPAT' ) ) { - return (bool)( $stage & SCHEMA_COMPAT_WRITE_OLD ); + return (bool)( (int)$stage & SCHEMA_COMPAT_WRITE_OLD ); } else { return $stage < MIGRATION_NEW; } @@ -240,43 +250,38 @@ class MergeUser { * @param string $fnameTrxOwner */ private function mergeDatabaseTables( $fnameTrxOwner ) { - global $wgActorTableSchemaMigrationStage; - // Fields to update with the format: // [ // tableName, idField, textField, // 'batchKey' => unique field, 'options' => array(), 'db' => IDatabase // 'actorId' => actor ID field, + // 'actorStage' => actor schema migration stage // ]; // textField, batchKey, db, and options are optional $updateFields = [ [ 'archive', 'ar_user', 'ar_user_text', 'batchKey' => 'ar_id', 'actorId' => 'ar_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'revision', 'rev_user', 'rev_user_text', 'batchKey' => 'rev_id', 'actorId' => '', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'filearchive', 'fa_user', 'fa_user_text', 'batchKey' => 'fa_id', 'actorId' => 'fa_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'image', 'img_user', 'img_user_text', 'batchKey' => 'img_name', 'actorId' => 'img_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'oldimage', 'oi_user', 'oi_user_text', 'batchKey' => 'oi_archive_name', - 'actorId' => 'oi_actor', 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorId' => 'oi_actor', 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'recentchanges', 'rc_user', 'rc_user_text', 'batchKey' => 'rc_id', 'actorId' => 'rc_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'logging', 'log_user', 'log_user_text', 'batchKey' => 'log_id', 'actorId' => 'log_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'ipblocks', 'ipb_by', 'ipb_by_text', 'batchKey' => 'ipb_id', 'actorId' => 'ipb_by_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage ], + 'actorStage' => SCHEMA_COMPAT_NEW ], [ 'watchlist', 'wl_user', 'batchKey' => 'wl_title' ], [ 'user_groups', 'ug_user', 'options' => [ 'IGNORE' ] ], [ 'user_properties', 'up_user', 'options' => [ 'IGNORE' ] ], [ 'user_former_groups', 'ufg_user', 'options' => [ 'IGNORE' ] ], + [ 'revision_actor_temp', 'batchKey' => 'revactor_rev', 'actorId' => 'revactor_actor', + 'actorStage' => SCHEMA_COMPAT_NEW ], ]; - if ( $this->stageNeedsActor( $wgActorTableSchemaMigrationStage ) ) { - $updateFields[] = [ - 'revision_actor_temp', 'batchKey' => 'revactor_rev', 'actorId' => 'revactor_actor', - 'actorStage' => $wgActorTableSchemaMigrationStage - ]; - } Hooks::run( 'UserMergeAccountFields', [ &$updateFields ] ); @@ -298,16 +303,18 @@ class MergeUser { continue; } - $options = isset( $fieldInfo['options'] ) ? $fieldInfo['options'] : []; + $options = $fieldInfo['options'] ?? []; unset( $fieldInfo['options'] ); - $db = isset( $fieldInfo['db'] ) ? $fieldInfo['db'] : $dbw; + $db = $fieldInfo['db'] ?? $dbw; unset( $fieldInfo['db'] ); $tableName = array_shift( $fieldInfo ); $idField = array_shift( $fieldInfo ); - $keyField = isset( $fieldInfo['batchKey'] ) ? $fieldInfo['batchKey'] : null; + $keyField = $fieldInfo['batchKey'] ?? null; unset( $fieldInfo['batchKey'] ); - if ( isset( $fieldInfo['actorId'] ) && !$this->stageNeedsUser( $fieldInfo['actorStage'] ) ) { + if ( isset( $fieldInfo['actorId'] ) && isset( $fieldInfo['actorStage'] ) && + !$this->stageNeedsUser( $fieldInfo['actorStage'] ) + ) { continue; } unset( $fieldInfo['actorId'], $fieldInfo['actorStage'] ); @@ -357,22 +364,22 @@ class MergeUser { } } - if ( $this->stageNeedsActor( $wgActorTableSchemaMigrationStage ) && - $this->oldUser->getActorId() - ) { + if ( $this->oldUser->getActorId() ) { $oldActorId = $this->oldUser->getActorId(); - $newActorId = $this->newUser->getActorId( $db ); + $newActorId = $this->newUser->getActorId( $dbw ); foreach ( $updateFields as $fieldInfo ) { - if ( empty( $fieldInfo['actorId'] ) || !$this->stageNeedsActor( $fieldInfo['actorStage'] ) ) { + if ( empty( $fieldInfo['actorId'] ) || empty( $fieldInfo['actorStage'] ) || + !$this->stageNeedsActor( $fieldInfo['actorStage'] ) + ) { continue; } - $options = isset( $fieldInfo['options'] ) ? $fieldInfo['options'] : []; - $db = isset( $fieldInfo['db'] ) ? $fieldInfo['db'] : $dbw; + $options = $fieldInfo['options'] ?? []; + $db = $fieldInfo['db'] ?? $dbw; $tableName = array_shift( $fieldInfo ); $idField = $fieldInfo['actorId']; - $keyField = isset( $fieldInfo['batchKey'] ) ? $fieldInfo['batchKey'] : null; + $keyField = $fieldInfo['batchKey'] ?? null; if ( $db->trxLevel() || $keyField === null ) { // Can't batch/wait when in a transaction or when no batch key is given @@ -418,7 +425,9 @@ class MergeUser { } } - $dbw->delete( 'user_newtalk', [ 'user_id' => $this->oldUser->getId() ] ); + $dbw->delete( 'user_newtalk', [ 'user_id' => $this->oldUser->getId() ], __METHOD__ ); + $this->oldUser->clearInstanceCache(); + $this->newUser->clearInstanceCache(); Hooks::run( 'MergeAccountFromTo', [ &$this->oldUser, &$this->newUser ] ); } @@ -496,18 +505,17 @@ class MergeUser { * Deletes the old user page when the target user page exists * * @todo This code is a duplicate of Renameuser and GlobalRename - * @suppress PhanParamTooMany Several calls to $message, which is a variadic closure * * @param User $performer * @param callable $msg Function that returns a Message object * @return array Array of old name (string) => new name (Title) where the move failed */ private function movePages( User $performer, /* callable */ $msg ) { - global $wgContLang, $wgUser; + $contLang = MediaWikiServices::getInstance()->getContentLanguage(); $oldusername = trim( str_replace( '_', ' ', $this->oldUser->getName() ) ); $oldusername = Title::makeTitle( NS_USER, $oldusername ); - $newusername = Title::makeTitleSafe( NS_USER, $wgContLang->ucfirst( $this->newUser->getName() ) ); + $newusername = Title::makeTitleSafe( NS_USER, $contLang->ucfirst( $this->newUser->getName() ) ); # select all user pages and sub-pages $dbr = wfGetDB( DB_REPLICA ); @@ -518,17 +526,14 @@ class MergeUser { 'page_namespace' => [ NS_USER, NS_USER_TALK ], 'page_title' . $dbr->buildLike( $oldusername->getDBkey() . '/', $dbr->anyString() ) . ' OR page_title = ' . $dbr->addQuotes( $oldusername->getDBkey() ), - ] + ], + __METHOD__ ); $message = function ( /* ... */ ) use ( $msg ) { return call_user_func_array( $msg, func_get_args() ); }; - // Need to set $wgUser to attribute log properly. - $oldUser = $wgUser; - $wgUser = $performer; - $failedMoves = []; foreach ( $pages as $row ) { $oldPage = Title::makeTitleSafe( $row->page_namespace, $row->page_title ); @@ -537,46 +542,36 @@ class MergeUser { if ( $this->newUser->getName() === 'Anonymous' ) { # delete ALL old pages if ( $oldPage->exists() ) { - $error = ''; - $oldPageArticle = new Article( $oldPage, 0 ); - $oldPageArticle->doDeleteArticle( - $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(), - false, null, null, $error, true - ); + $this->deletePage( $message, $performer, $oldPage ); } } elseif ( $newPage->exists() - && !$oldPage->isValidMoveTarget( $newPage ) + && !MediaWikiServices::getInstance() + ->getMovePageFactory() + ->newMovePage( $oldPage, $newPage ) + ->isValidMove() + ->isOk() && $newPage->getLength() > 0 ) { # delete old pages that can't be moved - $error = ''; - $oldPageArticle = new Article( $oldPage, 0 ); - $oldPageArticle->doDeleteArticle( - $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(), - false, null, null, $error, true - ); - + $this->deletePage( $message, $performer, $oldPage ); } else { # move content to new page # delete target page if it exists and is blank if ( $newPage->exists() ) { - $error = ''; - $newPageArticle = new Article( $newPage, 0 ); - $newPageArticle->doDeleteArticle( - $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(), - false, null, null, $error, true - ); + $this->deletePage( $message, $performer, $newPage ); } # move to target location - $errors = $oldPage->moveTo( - $newPage, - false, - $message( - 'usermerge-move-log', - $oldusername->getText(), - $newusername->getText() )->inContentLanguage()->text() - ); - if ( $errors !== true ) { + $status = MediaWikiServices::getInstance() + ->getMovePageFactory() + ->newMovePage( $oldPage, $newPage ) + ->move( + $performer, + $message( + 'usermerge-move-log', + $oldusername->getText(), + $newusername->getText() )->inContentLanguage()->text() + ); + if ( !$status->isOk() ) { $failedMoves[$oldPage->getPrefixedText()] = $newPage; } @@ -588,22 +583,43 @@ class MergeUser { ); if ( !$dbr->numRows( $res ) ) { # nothing links here, so delete unmoved page/redirect - $error = ''; - $oldPageArticle = new Article( $oldPage, 0 ); - $oldPageArticle->doDeleteArticle( - $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(), - false, null, null, $error, true - ); + $this->deletePage( $message, $performer, $oldPage ); } } } - $wgUser = $oldUser; - return $failedMoves; } /** + * Helper to delete pages + * + * @param callable $msg + * @param User $user + * @param Title $title + */ + private function deletePage( $msg, User $user, Title $title ) { + $wikipage = WikiPage::factory( $title ); + $reason = $msg( 'usermerge-autopagedelete' )->inContentLanguage()->text(); + $error = ''; + if ( version_compare( MW_VERSION, '1.35', '<' ) ) { + $wikipage->doDeleteArticle( $reason, false, null, null, $error, $user, true ); + } else { + $wikipage->doDeleteArticleReal( + $reason, + $user, + false, + null, // Unused + $error, + null, // Unused + [], + 'delete', + true + ); + } + } + + /** * Function to delete users following a successful mergeUser call. * * Removes rows from the user, user_groups, user_properties @@ -635,14 +651,15 @@ class MergeUser { foreach ( $tablesToDelete as $table => $field ) { // Check if a different database object was passed (Echo or Flow) if ( is_array( $field ) ) { - $db = isset( $field['db'] ) ? $field['db'] : $dbw; + $db = $field['db'] ?? $dbw; $field = $field[0]; } else { $db = $dbw; } $db->delete( $table, - [ $field => $this->oldUser->getId() ] + [ $field => $this->oldUser->getId() ], + __METHOD__ ); } diff --git a/UserMerge/includes/SpecialUserMerge.php b/UserMerge/includes/SpecialUserMerge.php index 76f2b96c..a4c171bf 100644 --- a/UserMerge/includes/SpecialUserMerge.php +++ b/UserMerge/includes/SpecialUserMerge.php @@ -26,15 +26,11 @@ class SpecialUserMerge extends FormSpecialPage { protected function getFormFields() { return [ 'olduser' => [ - 'type' => 'text', + 'type' => 'user', + 'exists' => true, 'label-message' => 'usermerge-olduser', 'required' => true, 'validation-callback' => function ( $val ) { - // only pass strings to User::newFromName - if ( !is_string( $val ) ) { - return true; - } - $key = $this->validateOldUser( $val ); if ( is_string( $key ) || is_array( $key ) ) { return $this->msg( $key )->escaped(); @@ -43,7 +39,7 @@ class SpecialUserMerge extends FormSpecialPage { }, ], 'newuser' => [ - 'type' => 'text', + 'type' => 'user', 'required' => true, 'label-message' => 'usermerge-newuser', 'validation-callback' => function ( $val ) { @@ -73,9 +69,6 @@ class SpecialUserMerge extends FormSpecialPage { */ public function validateOldUser( $val ) { $oldUser = User::newFromName( $val ); - if ( !$oldUser || $oldUser->getId() === 0 ) { - return 'usermerge-badolduser'; - } if ( $this->getUser()->getId() === $oldUser->getId() ) { return [ 'usermerge-noselfdelete', $this->getUser()->getName() ]; } diff --git a/UserMerge/package-lock.json b/UserMerge/package-lock.json new file mode 100644 index 00000000..fb7680bd --- /dev/null +++ b/UserMerge/package-lock.json @@ -0,0 +1,1756 @@ +{ + "name": "usermerge", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", + "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "acorn": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", + "dev": true + }, + "acorn-jsx": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz", + "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==", + "dev": true + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-escapes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz", + "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "coffeescript": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz", + "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=", + "dev": true + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "dateformat": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz", + "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1", + "meow": "^3.3.0" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "eslint-config-wikimedia": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.15.3.tgz", + "integrity": "sha512-MGfUwNoW2IckRismX3L8a/CI1CKkYyXHiIyAqiu27TCQwrDubryI+rtuuFYozauB3LC5WSIOnW2m1ZljtPvPPg==", + "dev": true, + "requires": { + "eslint": "^6.8.0", + "eslint-plugin-es": "^3.0.0", + "eslint-plugin-json": "^2.1.1", + "eslint-plugin-mediawiki": "^0.2.3", + "eslint-plugin-no-jquery": "^2.3.2", + "eslint-plugin-qunit": "^4.0.0", + "eslint-plugin-vue": "^6.1.2" + } + }, + "eslint-plugin-es": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.0.tgz", + "integrity": "sha512-6/Jb/J/ZvSebydwbBJO1R9E5ky7YeElfK56Veh7e4QGFHCXoIXGH9HhVz+ibJLM3XJ1XjP+T7rKBLUa/Y7eIng==", + "dev": true, + "requires": { + "eslint-utils": "^2.0.0", + "regexpp": "^3.0.0" + }, + "dependencies": { + "eslint-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz", + "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true + } + } + }, + "eslint-plugin-json": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-2.1.1.tgz", + "integrity": "sha512-Ktsab8ij33V2KFLhh4alC1FYztdmbV32DeMZYYUCZm4kKLW1s4DrleKKgtbAHSJsmshCK5QGOZtfyc2r3jCRsg==", + "dev": true, + "requires": { + "lodash": "^4.17.15", + "vscode-json-languageservice": "^3.5.1" + }, + "dependencies": { + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + } + } + }, + "eslint-plugin-mediawiki": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-mediawiki/-/eslint-plugin-mediawiki-0.2.3.tgz", + "integrity": "sha512-/6CB/VdwZHIsPZ5gZJ3amwHUbEgbL6DZULXWTRwKoS+2q5t8TS1hu+EX83a1hPrxGWFusfV+bvgOi15aXVXi4Q==", + "dev": true, + "requires": { + "eslint-plugin-vue": "^6.2.2" + } + }, + "eslint-plugin-no-jquery": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-2.3.2.tgz", + "integrity": "sha512-8M9GByb/JOO+dktgbFeC/YAMaqlscInO3fH3A9fLxZduH1NTXsIAUrimas6zDwOLBvEXpRaEZycc2QAl+W+Agw==", + "dev": true + }, + "eslint-plugin-qunit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-qunit/-/eslint-plugin-qunit-4.0.0.tgz", + "integrity": "sha512-+0i2xcYryUoLawi47Lp0iJKzkP931G5GXwIOq1KBKQc2pknV1VPjfE6b4mI2mR2RnL7WRoS30YjwC9SjQgJDXQ==", + "dev": true + }, + "eslint-plugin-vue": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-6.2.2.tgz", + "integrity": "sha512-Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ==", + "dev": true, + "requires": { + "natural-compare": "^1.4.0", + "semver": "^5.6.0", + "vue-eslint-parser": "^7.0.0" + } + }, + "eslint-scope": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", + "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "eslint-visitor-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", + "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", + "dev": true + }, + "espree": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz", + "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==", + "dev": true, + "requires": { + "acorn": "^7.1.0", + "acorn-jsx": "^5.1.0", + "eslint-visitor-keys": "^1.1.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "eventemitter2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", + "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=", + "dev": true + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "figures": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz", + "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "findup-sync": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", + "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=", + "dev": true, + "requires": { + "glob": "~5.0.0" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", + "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "getobject": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz", + "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=", + "dev": true + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", + "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz", + "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "dev": true + }, + "grunt": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.1.0.tgz", + "integrity": "sha512-+NGod0grmviZ7Nzdi9am7vuRS/h76PcWDsV635mEXF0PEQMUV6Kb+OjTdsVxbi0PZmfQOjCMKb3w8CVZcqsn1g==", + "dev": true, + "requires": { + "coffeescript": "~1.10.0", + "dateformat": "~1.0.12", + "eventemitter2": "~0.4.13", + "exit": "~0.1.1", + "findup-sync": "~0.3.0", + "glob": "~7.0.0", + "grunt-cli": "~1.2.0", + "grunt-known-options": "~1.1.0", + "grunt-legacy-log": "~2.0.0", + "grunt-legacy-util": "~1.1.1", + "iconv-lite": "~0.4.13", + "js-yaml": "~3.13.1", + "minimatch": "~3.0.2", + "mkdirp": "~1.0.3", + "nopt": "~3.0.6", + "path-is-absolute": "~1.0.0", + "rimraf": "~2.6.2" + }, + "dependencies": { + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "grunt-cli": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz", + "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=", + "dev": true, + "requires": { + "findup-sync": "~0.3.0", + "grunt-known-options": "~1.1.0", + "nopt": "~3.0.6", + "resolve": "~1.1.0" + } + }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", + "dev": true + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "grunt-banana-checker": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/grunt-banana-checker/-/grunt-banana-checker-0.9.0.tgz", + "integrity": "sha512-SqPiB6OazWqR8USL0NymtuT5Br3mD9WBBsM1rHC/3wIi2SrZNM6/+j9CIeuEM5oCn+AtO2Y0+rzzFyOdC9afAg==", + "dev": true + }, + "grunt-eslint": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/grunt-eslint/-/grunt-eslint-22.0.0.tgz", + "integrity": "sha512-I7vIU4x/mb20fmA6TAmLx6Wzn7mfs8ZXeuk7LbP2ujKVFV7KZmJ3qXUyqe2wnD+v/74Rs5uYOZrLL8EoBmlG9Q==", + "dev": true, + "requires": { + "chalk": "^2.1.0", + "eslint": "^6.0.1" + } + }, + "grunt-known-options": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz", + "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==", + "dev": true + }, + "grunt-legacy-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz", + "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==", + "dev": true, + "requires": { + "colors": "~1.1.2", + "grunt-legacy-log-utils": "~2.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.5" + } + }, + "grunt-legacy-log-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz", + "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==", + "dev": true, + "requires": { + "chalk": "~2.4.1", + "lodash": "~4.17.10" + } + }, + "grunt-legacy-util": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz", + "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==", + "dev": true, + "requires": { + "async": "~1.5.2", + "exit": "~0.1.1", + "getobject": "~0.1.0", + "hooker": "~0.2.3", + "lodash": "~4.17.10", + "underscore.string": "~3.3.4", + "which": "~1.3.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "hooker": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", + "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "inquirer": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz", + "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^2.4.2", + "cli-cursor": "^3.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", + "run-async": "^2.2.0", + "rxjs": "^6.5.3", + "string-width": "^4.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "jsonc-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz", + "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + } + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mkdirp": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", + "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", + "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "resolve": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", + "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + } + } + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + } + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + }, + "underscore.string": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz", + "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==", + "dev": true, + "requires": { + "sprintf-js": "^1.0.3", + "util-deprecate": "^1.0.2" + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "v8-compile-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", + "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "vscode-json-languageservice": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-3.5.2.tgz", + "integrity": "sha512-9cUvBq00O08lpWVVOx6tQ1yLxCHss79nsUdEAVYGomRyMbnPBmc0AkYPcXI9WK1EM6HBo0R9Zo3NjFhcICpy4A==", + "dev": true, + "requires": { + "jsonc-parser": "^2.2.1", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-types": "^3.15.1", + "vscode-nls": "^4.1.1", + "vscode-uri": "^2.1.1" + } + }, + "vscode-languageserver-textdocument": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.1.tgz", + "integrity": "sha512-UIcJDjX7IFkck7cSkNNyzIz5FyvpQfY7sdzVy+wkKN/BLaD4DQ0ppXQrKePomCxTS7RrolK1I0pey0bG9eh8dA==", + "dev": true + }, + "vscode-languageserver-types": { + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", + "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", + "dev": true + }, + "vscode-nls": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/vscode-nls/-/vscode-nls-4.1.2.tgz", + "integrity": "sha512-7bOHxPsfyuCqmP+hZXscLhiHwe7CSuFE4hyhbs22xPIhQ4jv99FcR4eBzfYYVLP356HNFpdvz63FFb/xw6T4Iw==", + "dev": true + }, + "vscode-uri": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.1.1.tgz", + "integrity": "sha512-eY9jmGoEnVf8VE8xr5znSah7Qt1P/xsCdErz+g8HYZtJ7bZqKH5E3d+6oVNm1AC/c6IHUDokbmVXKOi4qPAC9A==", + "dev": true + }, + "vue-eslint-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.0.0.tgz", + "integrity": "sha512-yR0dLxsTT7JfD2YQo9BhnQ6bUTLsZouuzt9SKRP7XNaZJV459gvlsJo4vT2nhZ/2dH9j3c53bIx9dnqU2prM9g==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "eslint-scope": "^5.0.0", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "lodash": "^4.17.15" + }, + "dependencies": { + "lodash": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", + "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", + "dev": true + } + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + } + } +} diff --git a/UserMerge/package.json b/UserMerge/package.json index 48588196..bd2382f4 100644 --- a/UserMerge/package.json +++ b/UserMerge/package.json @@ -7,9 +7,9 @@ "test": "grunt test" }, "devDependencies": { - "grunt": "1.0.3", - "grunt-banana-checker": "0.6.0", - "grunt-contrib-jshint": "1.1.0", - "grunt-jsonlint": "1.1.0" + "eslint-config-wikimedia": "0.15.3", + "grunt": "1.1.0", + "grunt-banana-checker": "0.9.0", + "grunt-eslint": "22.0.0" } } diff --git a/UserMerge/tests/phan/config.php b/UserMerge/tests/phan/config.php deleted file mode 100644 index f2660b8a..00000000 --- a/UserMerge/tests/phan/config.php +++ /dev/null @@ -1,3 +0,0 @@ -<?php - -return require __DIR__ . '/../../vendor/mediawiki/mediawiki-phan-config/src/config.php'; diff --git a/UserMerge/tests/phpunit/MergeUserTest.php b/UserMerge/tests/phpunit/MergeUserTest.php index 06d8a287..fd60d335 100644 --- a/UserMerge/tests/phpunit/MergeUserTest.php +++ b/UserMerge/tests/phpunit/MergeUserTest.php @@ -1,7 +1,8 @@ <?php /** - * @todo this should use the Database group + * @todo this should better use the Database group + * @group Database */ class MergeUserTest extends MediaWikiTestCase { @@ -20,6 +21,15 @@ class MergeUserTest extends MediaWikiTestCase { return $user; } + public function setUp() : void { + parent::setUp(); + + $this->tablesUsed[] = 'page'; + $this->tablesUsed[] = 'revision'; + $this->tablesUsed[] = 'comment'; + $this->tablesUsed[] = 'user'; + } + /** * Clear all instance caches * @@ -40,12 +50,12 @@ class MergeUserTest extends MediaWikiTestCase { $user2 = $this->getNewTestUser(); $user2->addToDatabase(); - $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) ); - $mu->merge( $this->getMock( 'User' ) ); + $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) ); + $mu->merge( $this->createMock( User::class ) ); $this->reallyClearInstanceCache( $user1 ); $this->reallyClearInstanceCache( $user2 ); - $this->assertEquals( null, $user1->getOption( 'foo' ) ); + $this->assertNull( $user1->getOption( 'foo' ) ); $this->assertEquals( 'baz', $user2->getOption( 'foo' ) ); } @@ -59,8 +69,8 @@ class MergeUserTest extends MediaWikiTestCase { $user2 = $this->getNewTestUser(); $user2->addGroup( 'group2' ); - $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) ); - $mu->merge( $this->getMock( 'User' ) ); + $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) ); + $mu->merge( $this->createMock( User::class ) ); $this->reallyClearInstanceCache( $user1 ); $this->reallyClearInstanceCache( $user2 ); @@ -79,11 +89,11 @@ class MergeUserTest extends MediaWikiTestCase { $this->reallyClearInstanceCache( $user1 ); $this->assertGreaterThan( 0, $user1->getId() ); - $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) ); - $mu->delete( $this->getMock( 'User' ), 'wfMessage' ); + $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) ); + $mu->delete( $this->createMock( User::class ), 'wfMessage' ); $this->reallyClearInstanceCache( $user1 ); - $this->assertEquals( 0, $user1->getId() ); + $this->assertSame( 0, $user1->getId() ); } /** @@ -100,12 +110,33 @@ class MergeUserTest extends MediaWikiTestCase { $count++; } - $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) ); - $mu->merge( $this->getMock( 'User' ) ); + $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) ); + $mu->merge( $this->createMock( User::class ) ); $this->reallyClearInstanceCache( $user1 ); $this->reallyClearInstanceCache( $user2 ); - $this->assertEquals( 0, $user1->getEditCount() ); + $this->assertSame( 0, $user1->getEditCount() ); $this->assertEquals( 21, $user2->getEditCount() ); } + + /** + * @covers MergeUser::movePages + */ + public function testMovePages() { + $user1 = $this->getNewTestUser(); + $user1->addToDatabase(); + $user2 = $this->getNewTestUser(); + $user2->addToDatabase(); + + $userpage1 = $user1->getUserPage(); + $this->getExistingTestPage( $userpage1 ); + + $userpage2 = $user2->getUserPage(); + $this->assertFalse( $userpage2->exists( Title::READ_LATEST ) ); + + $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) ); + $mu->delete( $this->getTestSysop()->getUser(), 'wfMessage' ); + + $this->assertTrue( $userpage2->exists( Title::READ_LATEST ) ); + } } diff --git a/UserMerge/version b/UserMerge/version deleted file mode 100644 index d117710b..00000000 --- a/UserMerge/version +++ /dev/null @@ -1,4 +0,0 @@ -UserMerge: REL1_32 -2019-01-13T20:10:45 - -66c7030 |