Compare commits
1 commit
Author | SHA1 | Date | |
---|---|---|---|
![]() |
55af9b59c1 |
88 changed files with 676 additions and 7478 deletions
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"root": true,
|
|
||||||
"extends": [
|
|
||||||
"wikimedia/client-es5",
|
|
||||||
"wikimedia/jquery",
|
|
||||||
"wikimedia/mediawiki"
|
|
||||||
]
|
|
||||||
}
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -5,4 +5,3 @@
|
||||||
node_modules/
|
node_modules/
|
||||||
/composer.lock
|
/composer.lock
|
||||||
/vendor/
|
/vendor/
|
||||||
/.eslintcache
|
|
||||||
|
|
|
@ -2,5 +2,5 @@
|
||||||
host=gerrit.wikimedia.org
|
host=gerrit.wikimedia.org
|
||||||
port=29418
|
port=29418
|
||||||
project=mediawiki/extensions/ContributionScores
|
project=mediawiki/extensions/ContributionScores
|
||||||
track=1
|
defaultbranch=REL1_27
|
||||||
defaultrebase=0
|
defaultrebase=0
|
1
.jshintignore
Normal file
1
.jshintignore
Normal file
|
@ -0,0 +1 @@
|
||||||
|
node_modules
|
12
.phpcs.xml
12
.phpcs.xml
|
@ -1,12 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<ruleset>
|
|
||||||
<rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
|
|
||||||
<exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic" />
|
|
||||||
<exclude name="MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage" />
|
|
||||||
<exclude name="PSR12.Properties.ConstantVisibility.NotFound" />
|
|
||||||
<exclude name="Squiz.Scope.MethodScope.Missing" />
|
|
||||||
</rule>
|
|
||||||
<file>.</file>
|
|
||||||
<arg name="extensions" value="php" />
|
|
||||||
<arg name="encoding" value="UTF-8" />
|
|
||||||
</ruleset>
|
|
|
@ -1 +0,0 @@
|
||||||
The development of this software is covered by a [Code of Conduct](https://www.mediawiki.org/wiki/Special:MyLanguage/Code_of_Conduct).
|
|
|
@ -5,275 +5,261 @@
|
||||||
* @file
|
* @file
|
||||||
* @ingroup Extensions
|
* @ingroup Extensions
|
||||||
*/
|
*/
|
||||||
|
// @codingStandardsIgnoreFile
|
||||||
|
|
||||||
$specialPageAliases = [];
|
$specialPageAliases = array();
|
||||||
|
|
||||||
/** English (English) */
|
/** English (English) */
|
||||||
$specialPageAliases['en'] = [
|
$specialPageAliases['en'] = array(
|
||||||
'ContributionScores' => [ 'ContributionScores' ],
|
'ContributionScores' => array( 'ContributionScores' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Arabic (العربية) */
|
/** Arabic (العربية) */
|
||||||
$specialPageAliases['ar'] = [
|
$specialPageAliases['ar'] = array(
|
||||||
'ContributionScores' => [ 'نتائج_المساهمة' ],
|
'ContributionScores' => array( 'نتائج_المساهمة' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Aramaic (ܐܪܡܝܐ) */
|
/** Aramaic (ܐܪܡܝܐ) */
|
||||||
$specialPageAliases['arc'] = [
|
$specialPageAliases['arc'] = array(
|
||||||
'ContributionScores' => [ 'ܦܠܛ̈ܐ_ܕܫܘܬܦܘ̈ܬܐ' ],
|
'ContributionScores' => array( 'ܦܠܛ̈ܐ_ܕܫܘܬܦܘ̈ܬܐ' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Egyptian Arabic (مصرى) */
|
/** Egyptian Arabic (مصرى) */
|
||||||
$specialPageAliases['arz'] = [
|
$specialPageAliases['arz'] = array(
|
||||||
'ContributionScores' => [ 'نتايج_المساهمه' ],
|
'ContributionScores' => array( 'نتايج_المساهمه' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Assamese (অসমীয়া) */
|
/** Assamese (অসমীয়া) */
|
||||||
$specialPageAliases['as'] = [
|
$specialPageAliases['as'] = array(
|
||||||
'ContributionScores' => [ 'বৰঙনিৰ_মূল্যায়ন' ],
|
'ContributionScores' => array( 'বৰঙনিৰ_মূল্যায়ন' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Avaric (авар) */
|
/** Avaric (авар) */
|
||||||
$specialPageAliases['av'] = [
|
$specialPageAliases['av'] = array(
|
||||||
'ContributionScores' => [ 'Очки_вклада' ],
|
'ContributionScores' => array( 'Очки_вклада' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Bashkir (башҡортса) */
|
/** Bashkir (башҡортса) */
|
||||||
$specialPageAliases['ba'] = [
|
$specialPageAliases['ba'] = array(
|
||||||
'ContributionScores' => [ 'Өлөш_мәрәйҙәре' ],
|
'ContributionScores' => array( 'Өлөш_мәрәйҙәре' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Western Balochi (بلوچی رخشانی) */
|
/** Western Balochi (بلوچی رخشانی) */
|
||||||
$specialPageAliases['bgn'] = [
|
$specialPageAliases['bgn'] = array(
|
||||||
'ContributionScores' => [ 'شراکتانی_امتیاز_ئان' ],
|
'ContributionScores' => array( 'شراکتانی_امتیاز_ئان' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Banjar (Bahasa Banjar) */
|
/** Banjar (Bahasa Banjar) */
|
||||||
$specialPageAliases['bjn'] = [
|
$specialPageAliases['bjn'] = array(
|
||||||
'ContributionScores' => [ 'Skor_sumbangan' ],
|
'ContributionScores' => array( 'Skor_sumbangan' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Bengali (বাংলা) */
|
|
||||||
$specialPageAliases['bn'] = [
|
|
||||||
'ContributionScores' => [ 'অবদানের_স্কোর' ],
|
|
||||||
];
|
|
||||||
|
|
||||||
/** Breton (brezhoneg) */
|
/** Breton (brezhoneg) */
|
||||||
$specialPageAliases['br'] = [
|
$specialPageAliases['br'] = array(
|
||||||
'ContributionScores' => [ 'Skor_Degasadennoù' ],
|
'ContributionScores' => array( 'Skor_Degasadennoù' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Bosnian (bosanski) */
|
/** Bosnian (bosanski) */
|
||||||
$specialPageAliases['bs'] = [
|
$specialPageAliases['bs'] = array(
|
||||||
'ContributionScores' => [ 'DoprinosiBodovi' ],
|
'ContributionScores' => array( 'DoprinosiBodovi' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
|
/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
|
||||||
$specialPageAliases['cdo'] = [
|
$specialPageAliases['cdo'] = array(
|
||||||
'ContributionScores' => [ '貢獻分數' ],
|
'ContributionScores' => array( '貢獻分數' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** German (Deutsch) */
|
/** German (Deutsch) */
|
||||||
$specialPageAliases['de'] = [
|
$specialPageAliases['de'] = array(
|
||||||
'ContributionScores' => [ 'Beitragspunkte' ],
|
'ContributionScores' => array( 'Beitragspunkte' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Zazaki (Zazaki) */
|
/** Zazaki (Zazaki) */
|
||||||
$specialPageAliases['diq'] = [
|
$specialPageAliases['diq'] = array(
|
||||||
'ContributionScores' => [ 'SqoréDekerdışan' ],
|
'ContributionScores' => array( 'SqoréDekerdışan' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Esperanto (Esperanto) */
|
/** Esperanto (Esperanto) */
|
||||||
$specialPageAliases['eo'] = [
|
$specialPageAliases['eo'] = array(
|
||||||
'ContributionScores' => [ 'Poentaro_de_kontribuoj', 'Kontribuatingoj' ],
|
'ContributionScores' => array( 'Poentaro_de_kontribuoj', 'Kontribuatingoj' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Estonian (eesti) */
|
/** Estonian (eesti) */
|
||||||
$specialPageAliases['et'] = [
|
$specialPageAliases['et'] = array(
|
||||||
'ContributionScores' => [ 'Kaastööpunktid' ],
|
'ContributionScores' => array( 'Kaastööpunktid' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Persian (فارسی) */
|
/** Persian (فارسی) */
|
||||||
$specialPageAliases['fa'] = [
|
$specialPageAliases['fa'] = array(
|
||||||
'ContributionScores' => [ 'امتیازهای_مشارکت' ],
|
'ContributionScores' => array( 'امتیازهای_مشارکت' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Finnish (suomi) */
|
/** Finnish (suomi) */
|
||||||
$specialPageAliases['fi'] = [
|
$specialPageAliases['fi'] = array(
|
||||||
'ContributionScores' => [ 'Muokkauspisteet' ],
|
'ContributionScores' => array( 'Muokkauspisteet' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Galician (galego) */
|
/** Galician (galego) */
|
||||||
$specialPageAliases['gl'] = [
|
$specialPageAliases['gl'] = array(
|
||||||
'ContributionScores' => [ 'Puntuación_das_contribucións' ],
|
'ContributionScores' => array( 'Puntuación_das_contribucións' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Hebrew (עברית) */
|
/** Hebrew (עברית) */
|
||||||
$specialPageAliases['he'] = [
|
$specialPageAliases['he'] = array(
|
||||||
'ContributionScores' => [ 'דירוג_תרומות' ],
|
'ContributionScores' => array( 'דירוג_תרומות' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Haitian (Kreyòl ayisyen) */
|
/** Haitian (Kreyòl ayisyen) */
|
||||||
$specialPageAliases['ht'] = [
|
$specialPageAliases['ht'] = array(
|
||||||
'ContributionScores' => [ 'PwentajKontribisyon' ],
|
'ContributionScores' => array( 'PwentajKontribisyon' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Hungarian (magyar) */
|
/** Hungarian (magyar) */
|
||||||
$specialPageAliases['hu'] = [
|
$specialPageAliases['hu'] = array(
|
||||||
'ContributionScores' => [ 'Szerkesztési_pontok' ],
|
'ContributionScores' => array( 'Szerkesztési_pontok' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Interlingua (interlingua) */
|
/** Interlingua (interlingua) */
|
||||||
$specialPageAliases['ia'] = [
|
$specialPageAliases['ia'] = array(
|
||||||
'ContributionScores' => [ 'Scores_de_contributiones' ],
|
'ContributionScores' => array( 'Scores_de_contributiones' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Indonesian (Bahasa Indonesia) */
|
/** Indonesian (Bahasa Indonesia) */
|
||||||
$specialPageAliases['id'] = [
|
$specialPageAliases['id'] = array(
|
||||||
'ContributionScores' => [ 'Skor_kontribusi', 'SkorKontribusi' ],
|
'ContributionScores' => array( 'Skor_kontribusi', 'SkorKontribusi' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Italian (italiano) */
|
/** Italian (italiano) */
|
||||||
$specialPageAliases['it'] = [
|
$specialPageAliases['it'] = array(
|
||||||
'ContributionScores' => [ 'PunteggiContributi' ],
|
'ContributionScores' => array( 'PunteggiContributi' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Japanese (日本語) */
|
/** Japanese (日本語) */
|
||||||
$specialPageAliases['ja'] = [
|
$specialPageAliases['ja'] = array(
|
||||||
'ContributionScores' => [ '貢献スコア', '貢献得点' ],
|
'ContributionScores' => array( '貢献スコア', '貢献得点' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Khmer (ភាសាខ្មែរ) */
|
/** Khmer (ភាសាខ្មែរ) */
|
||||||
$specialPageAliases['km'] = [
|
$specialPageAliases['km'] = array(
|
||||||
'ContributionScores' => [ 'ពិន្ទុអ្នករួមចំណែក' ],
|
'ContributionScores' => array( 'ពិន្ទុអ្នករួមចំណែក' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Korean (한국어) */
|
/** Korean (한국어) */
|
||||||
$specialPageAliases['ko'] = [
|
$specialPageAliases['ko'] = array(
|
||||||
'ContributionScores' => [ '기여점수' ],
|
'ContributionScores' => array( '기여점수' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Colognian (Ripoarisch) */
|
/** Colognian (Ripoarisch) */
|
||||||
$specialPageAliases['ksh'] = [
|
$specialPageAliases['ksh'] = array(
|
||||||
'ContributionScores' => [ 'MetmaacherZahle' ],
|
'ContributionScores' => array( 'MetmaacherZahle' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Ladino (Ladino) */
|
/** Ladino (Ladino) */
|
||||||
$specialPageAliases['lad'] = [
|
$specialPageAliases['lad'] = array(
|
||||||
'ContributionScores' => [ 'Resultados_de_ajustamientos' ],
|
'ContributionScores' => array( 'Resultados_de_ajustamientos' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Luxembourgish (Lëtzebuergesch) */
|
/** Luxembourgish (Lëtzebuergesch) */
|
||||||
$specialPageAliases['lb'] = [
|
$specialPageAliases['lb'] = array(
|
||||||
'ContributionScores' => [ 'Score_vun_de_Kontributiounen' ],
|
'ContributionScores' => array( 'Score_vun_de_Kontributiounen' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Northern Luri (لۊری شومالی) */
|
/** Northern Luri (لۊری شومالی) */
|
||||||
$specialPageAliases['lrc'] = [
|
$specialPageAliases['lrc'] = array(
|
||||||
'ContributionScores' => [ 'نئرخ_ھومیاری' ],
|
'ContributionScores' => array( 'نئرخ_ھومیاری' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Minangkabau (Baso Minangkabau) */
|
/** Minangkabau (Baso Minangkabau) */
|
||||||
$specialPageAliases['min'] = [
|
$specialPageAliases['min'] = array(
|
||||||
'ContributionScores' => [ 'SkorJariah' ],
|
'ContributionScores' => array( 'SkorJariah' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Macedonian (македонски) */
|
/** Macedonian (македонски) */
|
||||||
$specialPageAliases['mk'] = [
|
$specialPageAliases['mk'] = array(
|
||||||
'ContributionScores' => [ 'БодувањеНаПридонесите' ],
|
'ContributionScores' => array( 'БодувањеНаПридонесите' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Malayalam (മലയാളം) */
|
/** Malayalam (മലയാളം) */
|
||||||
$specialPageAliases['ml'] = [
|
$specialPageAliases['ml'] = array(
|
||||||
'ContributionScores' => [ 'സേവനസ്കോറുകൾ' ],
|
'ContributionScores' => array( 'സേവനസ്കോറുകൾ' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Marathi (मराठी) */
|
/** Marathi (मराठी) */
|
||||||
$specialPageAliases['mr'] = [
|
$specialPageAliases['mr'] = array(
|
||||||
'ContributionScores' => [ 'योगदानप्राविण्य' ],
|
'ContributionScores' => array( 'योगदानप्राविण्य' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Norwegian Bokmål (norsk bokmål) */
|
/** Norwegian Bokmål (norsk bokmål) */
|
||||||
$specialPageAliases['nb'] = [
|
$specialPageAliases['nb'] = array(
|
||||||
'ContributionScores' => [ 'Bidragspoeng' ],
|
'ContributionScores' => array( 'Bidragspoeng' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Low Saxon (Netherlands) (Nedersaksies) */
|
/** Low Saxon (Netherlands) (Nedersaksies) */
|
||||||
$specialPageAliases['nds-nl'] = [
|
$specialPageAliases['nds-nl'] = array(
|
||||||
'ContributionScores' => [ 'Biedragentelling' ],
|
'ContributionScores' => array( 'Biedragentelling' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Dutch (Nederlands) */
|
/** Dutch (Nederlands) */
|
||||||
$specialPageAliases['nl'] = [
|
$specialPageAliases['nl'] = array(
|
||||||
'ContributionScores' => [ 'Gebruikersscores', 'Bijdragenscores' ],
|
'ContributionScores' => array( 'Gebruikersscores', 'Bijdragenscores' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Polish (polski) */
|
/** Polish (polski) */
|
||||||
$specialPageAliases['pl'] = [
|
$specialPageAliases['pl'] = array(
|
||||||
'ContributionScores' => [ 'Punkty_za_edycje' ],
|
'ContributionScores' => array( 'Punkty_za_edycje' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Russian (русский) */
|
/** Russian (русский) */
|
||||||
$specialPageAliases['ru'] = [
|
$specialPageAliases['ru'] = array(
|
||||||
'ContributionScores' => [ 'Очки_вклада' ],
|
'ContributionScores' => array( 'Очки_вклада' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Sanskrit (संस्कृतम्) */
|
/** Sanskrit (संस्कृतम्) */
|
||||||
$specialPageAliases['sa'] = [
|
$specialPageAliases['sa'] = array(
|
||||||
'ContributionScores' => [ 'योगदानप्राप्ताङ्क' ],
|
'ContributionScores' => array( 'योगदानप्राप्ताङ्क' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Sicilian (sicilianu) */
|
/** Sicilian (sicilianu) */
|
||||||
$specialPageAliases['scn'] = [
|
$specialPageAliases['scn'] = array(
|
||||||
'ContributionScores' => [ 'PunteggiContribuzione' ],
|
'ContributionScores' => array( 'PunteggiContribuzione' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Slovak (slovenčina) */
|
/** Slovak (slovenčina) */
|
||||||
$specialPageAliases['sk'] = [
|
$specialPageAliases['sk'] = array(
|
||||||
'ContributionScores' => [ 'SkórePríspevkov' ],
|
'ContributionScores' => array( 'SkórePríspevkov' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Serbian Cyrillic (српски (ћирилица)) */
|
|
||||||
$specialPageAliases['sr-ec'] = [
|
|
||||||
'ContributionScores' => [ 'ОценеДоприноса' ],
|
|
||||||
];
|
|
||||||
|
|
||||||
/** Serbian Latin (srpski (latinica)) */
|
|
||||||
$specialPageAliases['sr-el'] = [
|
|
||||||
'ContributionScores' => [ 'OceneDoprinosa' ],
|
|
||||||
];
|
|
||||||
|
|
||||||
/** Swedish (svenska) */
|
/** Swedish (svenska) */
|
||||||
$specialPageAliases['sv'] = [
|
$specialPageAliases['sv'] = array(
|
||||||
'ContributionScores' => [ 'Bidragspoäng' ],
|
'ContributionScores' => array( 'Bidragspoäng' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Thai (ไทย) */
|
/** Thai (ไทย) */
|
||||||
$specialPageAliases['th'] = [
|
$specialPageAliases['th'] = array(
|
||||||
'ContributionScores' => [ 'คะแนนการเขียน' ],
|
'ContributionScores' => array( 'คะแนนการเขียน' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Tagalog (Tagalog) */
|
/** Tagalog (Tagalog) */
|
||||||
$specialPageAliases['tl'] = [
|
$specialPageAliases['tl'] = array(
|
||||||
'ContributionScores' => [ 'Mga_puntos_ng_ambag' ],
|
'ContributionScores' => array( 'Mga_puntos_ng_ambag' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Turkish (Türkçe) */
|
/** Turkish (Türkçe) */
|
||||||
$specialPageAliases['tr'] = [
|
$specialPageAliases['tr'] = array(
|
||||||
'ContributionScores' => [ 'KatkıSkorları', 'KatkıPuanları' ],
|
'ContributionScores' => array( 'KatkıSkorları', 'KatkıPuanları' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Ukrainian (українська) */
|
/** Ukrainian (українська) */
|
||||||
$specialPageAliases['uk'] = [
|
$specialPageAliases['uk'] = array(
|
||||||
'ContributionScores' => [ 'Очки_внеску', 'Очки_вклада' ],
|
'ContributionScores' => array( 'Очки_внеску' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Simplified Chinese (中文(简体)) */
|
/** Simplified Chinese (中文(简体)) */
|
||||||
$specialPageAliases['zh-hans'] = [
|
$specialPageAliases['zh-hans'] = array(
|
||||||
'ContributionScores' => [ '贡献得分' ],
|
'ContributionScores' => array( '贡献得分' ),
|
||||||
];
|
);
|
||||||
|
|
||||||
/** Traditional Chinese (中文(繁體)) */
|
/** Traditional Chinese (中文(繁體)) */
|
||||||
$specialPageAliases['zh-hant'] = [
|
$specialPageAliases['zh-hant'] = array(
|
||||||
'ContributionScores' => [ '貢獻分數' ],
|
'ContributionScores' => array( '貢獻分數' ),
|
||||||
];
|
);
|
93
ContributionScores.php
Normal file
93
ContributionScores.php
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
<?php
|
||||||
|
/** \file
|
||||||
|
* \brief Contains setup code for the Contribution Scores Extension.
|
||||||
|
*/
|
||||||
|
|
||||||
|
# Not a valid entry point, skip unless MEDIAWIKI is defined
|
||||||
|
if ( !defined( 'MEDIAWIKI' ) ) {
|
||||||
|
echo 'Contribution Scores extension';
|
||||||
|
exit( 1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
$wgExtensionCredits['specialpage'][] = [
|
||||||
|
'path' => __FILE__,
|
||||||
|
'name' => 'Contribution Scores',
|
||||||
|
'url' => 'https://www.mediawiki.org/wiki/Extension:Contribution_Scores',
|
||||||
|
'author' => 'Tim Laqua',
|
||||||
|
'descriptionmsg' => 'contributionscores-desc',
|
||||||
|
'version' => '1.25.0'
|
||||||
|
];
|
||||||
|
|
||||||
|
define( 'CONTRIBUTIONSCORES_MAXINCLUDELIMIT', 50 );
|
||||||
|
$wgContribScoreReports = null;
|
||||||
|
|
||||||
|
// These settings can be overridden in LocalSettings.php.
|
||||||
|
|
||||||
|
// Set to true to exclude bots from the reporting.
|
||||||
|
$wgContribScoreIgnoreBlockedUsers = false;
|
||||||
|
|
||||||
|
// Set to true to exclude blocked users from the reporting.
|
||||||
|
$wgContribScoreIgnoreBots = false;
|
||||||
|
|
||||||
|
// Set to true to use real user names when available. Only for MediaWiki 1.19 and later.
|
||||||
|
$wgContribScoresUseRealName = false;
|
||||||
|
|
||||||
|
// Set to true to disable cache for parser function and inclusion of table.
|
||||||
|
$wgContribScoreDisableCache = false;
|
||||||
|
|
||||||
|
$wgAutoloadClasses['ContributionScores'] = __DIR__ . '/ContributionScores_body.php';
|
||||||
|
$wgSpecialPages['ContributionScores'] = 'ContributionScores';
|
||||||
|
|
||||||
|
$wgMessagesDirs['ContributionScores'] = __DIR__ . '/i18n';
|
||||||
|
$wgExtensionMessagesFiles['ContributionScoresAlias'] = __DIR__ . '/ContributionScores.alias.php';
|
||||||
|
$wgExtensionMessagesFiles['ContributionScoresMagic'] =
|
||||||
|
__DIR__ . '/ContributionScores.i18n.magic.php';
|
||||||
|
|
||||||
|
$wgHooks['ParserFirstCallInit'][] = 'efContributionScores_Setup';
|
||||||
|
|
||||||
|
function efContributionScores_Setup( &$parser ) {
|
||||||
|
$parser->setFunctionHook( 'cscore', 'efContributionScores_Render' );
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
function efContributionScores_Render( &$parser, $usertext, $metric = 'score' ) {
|
||||||
|
global $wgContribScoreDisableCache;
|
||||||
|
|
||||||
|
if ( $wgContribScoreDisableCache ) {
|
||||||
|
$parser->disableCache();
|
||||||
|
}
|
||||||
|
|
||||||
|
$user = User::newFromName( $usertext );
|
||||||
|
$dbr = wfGetDB( DB_SLAVE );
|
||||||
|
|
||||||
|
if ( $user instanceof User && $user->isLoggedIn() ) {
|
||||||
|
global $wgLang;
|
||||||
|
|
||||||
|
if ( $metric == 'score' ) {
|
||||||
|
$res = $dbr->select( 'revision',
|
||||||
|
'COUNT(DISTINCT rev_page)+SQRT(COUNT(rev_id)-COUNT(DISTINCT rev_page))*2 AS wiki_rank',
|
||||||
|
[ 'rev_user' => $user->getID() ] );
|
||||||
|
$row = $dbr->fetchObject( $res );
|
||||||
|
$output = $wgLang->formatNum( round( $row->wiki_rank, 0 ) );
|
||||||
|
} elseif ( $metric == 'changes' ) {
|
||||||
|
$res = $dbr->select( 'revision',
|
||||||
|
'COUNT(rev_id) AS rev_count',
|
||||||
|
[ 'rev_user' => $user->getID() ] );
|
||||||
|
$row = $dbr->fetchObject( $res );
|
||||||
|
$output = $wgLang->formatNum( $row->rev_count );
|
||||||
|
} elseif ( $metric == 'pages' ) {
|
||||||
|
$res = $dbr->select( 'revision',
|
||||||
|
'COUNT(DISTINCT rev_page) AS page_count',
|
||||||
|
[ 'rev_user' => $user->getID() ] );
|
||||||
|
$row = $dbr->fetchObject( $res );
|
||||||
|
$output = $wgLang->formatNum( $row->page_count );
|
||||||
|
} else {
|
||||||
|
$output = wfMessage( 'contributionscores-invalidmetric' )->text();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$output = wfMessage( 'contributionscores-invalidusername' )->text();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $parser->insertStripItem( $output, $parser->mStripState );
|
||||||
|
}
|
274
ContributionScores_body.php
Normal file
274
ContributionScores_body.php
Normal file
|
@ -0,0 +1,274 @@
|
||||||
|
<?php
|
||||||
|
/** \file
|
||||||
|
* \brief Contains code for the ContributionScores Class (extends SpecialPage).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/// Special page class for the Contribution Scores extension
|
||||||
|
/**
|
||||||
|
* Special page that generates a list of wiki contributors based
|
||||||
|
* on edit diversity (unique pages edited) and edit volume (total
|
||||||
|
* number of edits.
|
||||||
|
*
|
||||||
|
* @ingroup Extensions
|
||||||
|
* @author Tim Laqua <t.laqua@gmail.com>
|
||||||
|
*/
|
||||||
|
class ContributionScores extends IncludableSpecialPage {
|
||||||
|
public function __construct() {
|
||||||
|
parent::__construct( 'ContributionScores' );
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Generates a "Contribution Scores" table for a given LIMIT and date range
|
||||||
|
/**
|
||||||
|
* Function generates Contribution Scores tables in HTML format (not wikiText)
|
||||||
|
*
|
||||||
|
* @param $days int Days in the past to run report for
|
||||||
|
* @param $limit int Maximum number of users to return (default 50)
|
||||||
|
* @param $title Title (default null)
|
||||||
|
* @param $options array of options (default none; nosort/notools)
|
||||||
|
* @return Html Table representing the requested Contribution Scores.
|
||||||
|
*/
|
||||||
|
function genContributionScoreTable( $days, $limit, $title = null, $options = 'none' ) {
|
||||||
|
global $wgContribScoreIgnoreBots, $wgContribScoreIgnoreBlockedUsers, $wgContribScoresUseRealName;
|
||||||
|
|
||||||
|
$opts = explode( ',', strtolower( $options ) );
|
||||||
|
|
||||||
|
$dbr = wfGetDB( DB_SLAVE );
|
||||||
|
|
||||||
|
$userTable = $dbr->tableName( 'user' );
|
||||||
|
$userGroupTable = $dbr->tableName( 'user_groups' );
|
||||||
|
$revTable = $dbr->tableName( 'revision' );
|
||||||
|
$ipBlocksTable = $dbr->tableName( 'ipblocks' );
|
||||||
|
|
||||||
|
$sqlWhere = "";
|
||||||
|
$nextPrefix = "WHERE";
|
||||||
|
|
||||||
|
if ( $days > 0 ) {
|
||||||
|
$date = time() - ( 60 * 60 * 24 * $days );
|
||||||
|
$dateString = $dbr->timestamp( $date );
|
||||||
|
$sqlWhere .= " {$nextPrefix} rev_timestamp > '$dateString'";
|
||||||
|
$nextPrefix = "AND";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( $wgContribScoreIgnoreBlockedUsers ) {
|
||||||
|
$sqlWhere .= " {$nextPrefix} rev_user NOT IN " .
|
||||||
|
"(SELECT ipb_user FROM {$ipBlocksTable} WHERE ipb_user <> 0)";
|
||||||
|
$nextPrefix = "AND";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( $wgContribScoreIgnoreBots ) {
|
||||||
|
$sqlWhere .= " {$nextPrefix} rev_user NOT IN " .
|
||||||
|
"(SELECT ug_user FROM {$userGroupTable} WHERE ug_group='bot')";
|
||||||
|
}
|
||||||
|
|
||||||
|
$sqlMostPages = "SELECT rev_user,
|
||||||
|
COUNT(DISTINCT rev_page) AS page_count,
|
||||||
|
COUNT(rev_id) AS rev_count
|
||||||
|
FROM {$revTable}
|
||||||
|
{$sqlWhere}
|
||||||
|
GROUP BY rev_user
|
||||||
|
ORDER BY page_count DESC
|
||||||
|
LIMIT {$limit}";
|
||||||
|
|
||||||
|
$sqlMostRevs = "SELECT rev_user,
|
||||||
|
COUNT(DISTINCT rev_page) AS page_count,
|
||||||
|
COUNT(rev_id) AS rev_count
|
||||||
|
FROM {$revTable}
|
||||||
|
{$sqlWhere}
|
||||||
|
GROUP BY rev_user
|
||||||
|
ORDER BY rev_count DESC
|
||||||
|
LIMIT {$limit}";
|
||||||
|
|
||||||
|
$sql = "SELECT user_id, " .
|
||||||
|
"user_name, " .
|
||||||
|
"user_real_name, " .
|
||||||
|
"page_count, " .
|
||||||
|
"rev_count, " .
|
||||||
|
"page_count+SQRT(rev_count-page_count)*2 AS wiki_rank " .
|
||||||
|
"FROM $userTable u JOIN (($sqlMostPages) UNION ($sqlMostRevs)) s ON (user_id=rev_user) " .
|
||||||
|
"ORDER BY wiki_rank DESC " .
|
||||||
|
"LIMIT $limit";
|
||||||
|
|
||||||
|
$res = $dbr->query( $sql );
|
||||||
|
|
||||||
|
$sortable = in_array( 'nosort', $opts ) ? '' : ' sortable';
|
||||||
|
|
||||||
|
$output = "<table class=\"wikitable contributionscores plainlinks{$sortable}\" >\n" .
|
||||||
|
"<tr class='header'>\n" .
|
||||||
|
Html::element( 'th', [], $this->msg( 'contributionscores-rank' )->text() ) .
|
||||||
|
Html::element( 'th', [], $this->msg( 'contributionscores-score' )->text() ) .
|
||||||
|
Html::element( 'th', [], $this->msg( 'contributionscores-pages' )->text() ) .
|
||||||
|
Html::element( 'th', [], $this->msg( 'contributionscores-changes' )->text() ) .
|
||||||
|
Html::element( 'th', [], $this->msg( 'contributionscores-username' )->text() );
|
||||||
|
|
||||||
|
$altrow = '';
|
||||||
|
$user_rank = 1;
|
||||||
|
|
||||||
|
$lang = $this->getLanguage();
|
||||||
|
foreach ( $res as $row ) {
|
||||||
|
// Use real name if option used and real name present.
|
||||||
|
if ( $wgContribScoresUseRealName && $row->user_real_name !== '' ) {
|
||||||
|
$userLink = Linker::userLink(
|
||||||
|
$row->user_id,
|
||||||
|
$row->user_name,
|
||||||
|
$row->user_real_name
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
$userLink = Linker::userLink(
|
||||||
|
$row->user_id,
|
||||||
|
$row->user_name
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
$output .= Html::closeElement( 'tr' );
|
||||||
|
$output .= "<tr class='{$altrow}'>\n" .
|
||||||
|
"<td class='content' style='padding-right:10px;text-align:right;'>" .
|
||||||
|
$lang->formatNum( round( $user_rank, 0 ) ) .
|
||||||
|
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
||||||
|
$lang->formatNum( round( $row->wiki_rank, 0 ) ) .
|
||||||
|
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
||||||
|
$lang->formatNum( $row->page_count ) .
|
||||||
|
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
||||||
|
$lang->formatNum( $row->rev_count ) .
|
||||||
|
"\n</td><td class='content'>" .
|
||||||
|
$userLink;
|
||||||
|
|
||||||
|
# Option to not display user tools
|
||||||
|
if ( !in_array( 'notools', $opts ) ) {
|
||||||
|
$output .= Linker::userToolLinks( $row->user_id, $row->user_name );
|
||||||
|
}
|
||||||
|
|
||||||
|
$output .= Html::closeElement( 'td' ) . "\n";
|
||||||
|
|
||||||
|
if ( $altrow == '' && empty( $sortable ) ) {
|
||||||
|
$altrow = 'odd ';
|
||||||
|
} else {
|
||||||
|
$altrow = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
$user_rank++;
|
||||||
|
}
|
||||||
|
$output .= Html::closeElement( 'tr' );
|
||||||
|
$output .= Html::closeElement( 'table' );
|
||||||
|
|
||||||
|
$dbr->freeResult( $res );
|
||||||
|
|
||||||
|
if ( !empty( $title ) ) {
|
||||||
|
$output = Html::rawElement( 'table',
|
||||||
|
[
|
||||||
|
'style' => 'border-spacing: 0; padding: 0',
|
||||||
|
'class' => 'contributionscores-wrapper',
|
||||||
|
'lang' => htmlspecialchars( $lang->getCode() ),
|
||||||
|
'dir' => $lang->getDir()
|
||||||
|
],
|
||||||
|
"\n" .
|
||||||
|
"<tr>\n" .
|
||||||
|
"<td style='padding: 0px;'>{$title}</td>\n" .
|
||||||
|
"</tr>\n" .
|
||||||
|
"<tr>\n" .
|
||||||
|
"<td style='padding: 0px;'>{$output}</td>\n" .
|
||||||
|
"</tr>\n"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $output;
|
||||||
|
}
|
||||||
|
|
||||||
|
function execute( $par ) {
|
||||||
|
$this->setHeaders();
|
||||||
|
|
||||||
|
if ( $this->including() ) {
|
||||||
|
$this->showInclude( $par );
|
||||||
|
} else {
|
||||||
|
$this->showPage();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when being included on a normal wiki page.
|
||||||
|
* Cache is disabled so it can depend on the user language.
|
||||||
|
* @param $par
|
||||||
|
*/
|
||||||
|
function showInclude( $par ) {
|
||||||
|
$days = null;
|
||||||
|
$limit = null;
|
||||||
|
$options = 'none';
|
||||||
|
|
||||||
|
if ( !empty( $par ) ) {
|
||||||
|
$params = explode( '/', $par );
|
||||||
|
|
||||||
|
$limit = intval( $params[0] );
|
||||||
|
|
||||||
|
if ( isset( $params[1] ) ) {
|
||||||
|
$days = intval( $params[1] );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( isset( $params[2] ) ) {
|
||||||
|
$options = $params[2];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( empty( $limit ) || $limit < 1 || $limit > CONTRIBUTIONSCORES_MAXINCLUDELIMIT ) {
|
||||||
|
$limit = 10;
|
||||||
|
}
|
||||||
|
if ( is_null( $days ) || $days < 0 ) {
|
||||||
|
$days = 7;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( $days > 0 ) {
|
||||||
|
$reportTitle = $this->msg( 'contributionscores-days' )->numParams( $days )->text();
|
||||||
|
} else {
|
||||||
|
$reportTitle = $this->msg( 'contributionscores-allrevisions' )->text();
|
||||||
|
}
|
||||||
|
$reportTitle .= ' ' . $this->msg( 'contributionscores-top' )->numParams( $limit )->text();
|
||||||
|
$title = Xml::element( 'h4',
|
||||||
|
[ 'class' => 'contributionscores-title' ],
|
||||||
|
$reportTitle
|
||||||
|
) . "\n";
|
||||||
|
$this->getOutput()->addHTML( $this->genContributionScoreTable(
|
||||||
|
$days,
|
||||||
|
$limit,
|
||||||
|
$title,
|
||||||
|
$options
|
||||||
|
) );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the special page
|
||||||
|
*/
|
||||||
|
function showPage() {
|
||||||
|
global $wgContribScoreReports;
|
||||||
|
|
||||||
|
if ( !is_array( $wgContribScoreReports ) ) {
|
||||||
|
$wgContribScoreReports = [
|
||||||
|
[ 7, 50 ],
|
||||||
|
[ 30, 50 ],
|
||||||
|
[ 0, 50 ]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
$out = $this->getOutput();
|
||||||
|
$out->addWikiMsg( 'contributionscores-info' );
|
||||||
|
|
||||||
|
foreach ( $wgContribScoreReports as $scoreReport ) {
|
||||||
|
list( $days, $revs ) = $scoreReport;
|
||||||
|
if ( $days > 0 ) {
|
||||||
|
$reportTitle = $this->msg( 'contributionscores-days' )->numParams( $days )->text();
|
||||||
|
} else {
|
||||||
|
$reportTitle = $this->msg( 'contributionscores-allrevisions' )->text();
|
||||||
|
}
|
||||||
|
$reportTitle .= ' ' . $this->msg( 'contributionscores-top' )->numParams( $revs )->text();
|
||||||
|
$title = Xml::element( 'h2',
|
||||||
|
[ 'class' => 'contributionscores-title' ],
|
||||||
|
$reportTitle
|
||||||
|
) . "\n";
|
||||||
|
$out->addHTML( $title );
|
||||||
|
$out->addHTML( $this->genContributionScoreTable( $days, $revs ) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getGroupName() {
|
||||||
|
return 'wiki';
|
||||||
|
}
|
||||||
|
}
|
22
Gruntfile.js
22
Gruntfile.js
|
@ -1,26 +1,28 @@
|
||||||
/* eslint-env node, es6 */
|
/*jshint node:true */
|
||||||
module.exports = function ( grunt ) {
|
module.exports = function ( grunt ) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
|
grunt.loadNpmTasks( 'grunt-contrib-jshint' );
|
||||||
grunt.loadNpmTasks( 'grunt-banana-checker' );
|
grunt.loadNpmTasks( 'grunt-banana-checker' );
|
||||||
grunt.loadNpmTasks( 'grunt-eslint' );
|
grunt.loadNpmTasks( 'grunt-jsonlint' );
|
||||||
|
|
||||||
grunt.initConfig( {
|
grunt.initConfig( {
|
||||||
|
jshint: {
|
||||||
|
all: [
|
||||||
|
'*.js'
|
||||||
|
]
|
||||||
|
},
|
||||||
banana: {
|
banana: {
|
||||||
all: 'i18n'
|
all: 'i18n'
|
||||||
},
|
},
|
||||||
eslint: {
|
jsonlint: {
|
||||||
options: {
|
|
||||||
cache: true
|
|
||||||
},
|
|
||||||
all: [
|
all: [
|
||||||
'**/*.{js,json}',
|
'**/*.json',
|
||||||
'!node_modules/**',
|
'!node_modules/**'
|
||||||
'!vendor/**'
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
|
|
||||||
grunt.registerTask( 'test', [ 'eslint', 'banana' ] );
|
grunt.registerTask( 'test', [ 'jshint', 'jsonlint', 'banana' ] );
|
||||||
grunt.registerTask( 'default', 'test' );
|
grunt.registerTask( 'default', 'test' );
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,25 +1,13 @@
|
||||||
{
|
{
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"mediawiki/mediawiki-codesniffer": "45.0.0",
|
"jakub-onderka/php-parallel-lint": "0.9.2",
|
||||||
"mediawiki/minus-x": "1.1.3",
|
"mediawiki/mediawiki-codesniffer": "0.6.0"
|
||||||
"php-parallel-lint/php-console-highlighter": "1.0.0",
|
|
||||||
"php-parallel-lint/php-parallel-lint": "1.4.0"
|
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"fix": [
|
"fix": "phpcbf",
|
||||||
"minus-x fix .",
|
|
||||||
"phpcbf"
|
|
||||||
],
|
|
||||||
"test": [
|
"test": [
|
||||||
"parallel-lint . --exclude vendor --exclude node_modules",
|
"parallel-lint . --exclude vendor",
|
||||||
"@phpcs",
|
"phpcs -p -s"
|
||||||
"minus-x check ."
|
]
|
||||||
],
|
|
||||||
"phpcs": "phpcs -sp --cache"
|
|
||||||
},
|
|
||||||
"config": {
|
|
||||||
"allow-plugins": {
|
|
||||||
"dealerdirect/phpcodesniffer-composer-installer": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,64 +0,0 @@
|
||||||
{
|
|
||||||
"name": "ContributionScores",
|
|
||||||
"author": "Tim Laqua",
|
|
||||||
"url": "https://www.mediawiki.org/wiki/Extension:Contribution_Scores",
|
|
||||||
"descriptionmsg": "contributionscores-desc",
|
|
||||||
"version": "1.26.1",
|
|
||||||
"type": "specialpage",
|
|
||||||
"requires": {
|
|
||||||
"MediaWiki": ">= 1.34.0"
|
|
||||||
},
|
|
||||||
"SpecialPages": {
|
|
||||||
"ContributionScores": "ContributionScores"
|
|
||||||
},
|
|
||||||
"AutoloadClasses": {
|
|
||||||
"ContributionScores": "src/ContributionScores.php"
|
|
||||||
},
|
|
||||||
"Hooks": {
|
|
||||||
"ParserFirstCallInit": "ContributionScores::onParserFirstCallInit"
|
|
||||||
},
|
|
||||||
"MessagesDirs": {
|
|
||||||
"ContributionScores": [
|
|
||||||
"i18n"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"ExtensionMessagesFiles": {
|
|
||||||
"ContribScoreAlias": "ContributionScores.alias.php",
|
|
||||||
"ContribScoreMagic": "ContributionScores.i18n.magic.php"
|
|
||||||
},
|
|
||||||
"config": {
|
|
||||||
"ContribScoreReports": {
|
|
||||||
"value": null,
|
|
||||||
"description": "Each array defines a report - 7,50 is \"past 7 days \" and \"LIMIT 50 \" - Can be omitted."
|
|
||||||
},
|
|
||||||
"ContribScoreIgnoreBlockedUsers": {
|
|
||||||
"value": false,
|
|
||||||
"description": "Set to true to exclude blocked users from the reporting."
|
|
||||||
},
|
|
||||||
"ContribScoreIgnoreBots": {
|
|
||||||
"value": false,
|
|
||||||
"description": "Set to true to exclude bots users from the reporting."
|
|
||||||
},
|
|
||||||
"ContribScoreIgnoreUsernames": {
|
|
||||||
"value": [],
|
|
||||||
"description": "Array of usernames to exclude from the reporting."
|
|
||||||
},
|
|
||||||
"ContribScoresUseRealName": {
|
|
||||||
"value": false,
|
|
||||||
"description": "Set to true to use real user names when available."
|
|
||||||
},
|
|
||||||
"ContribScoreDisableCache": {
|
|
||||||
"value": false,
|
|
||||||
"description": "Set to true to disable cache for parser function and inclusion of table."
|
|
||||||
},
|
|
||||||
"ContribScoreUseRoughEditCount": {
|
|
||||||
"value": false,
|
|
||||||
"description": "Set to true to use the rough number of edits in user table, for performance issue."
|
|
||||||
},
|
|
||||||
"ContribScoreCacheTTL": {
|
|
||||||
"value": 30,
|
|
||||||
"description": "Cache the contribution scores data, in minutes."
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"manifest_version": 2
|
|
||||||
}
|
|
|
@ -4,8 +4,7 @@
|
||||||
"Meno25",
|
"Meno25",
|
||||||
"Mido",
|
"Mido",
|
||||||
"OsamaK",
|
"OsamaK",
|
||||||
"ترجمان05",
|
"ترجمان05"
|
||||||
"ديفيد"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "نتائج المساهمات",
|
"contributionscores": "نتائج المساهمات",
|
||||||
|
@ -15,7 +14,6 @@
|
||||||
"contributionscores-days": "{{PLURAL:$1||اليوم الماضي|اليومان الماضيان|ال$1 أيام الماضية|ال$1 يومًا الماضية|ال$1 يوم الماضية}}",
|
"contributionscores-days": "{{PLURAL:$1||اليوم الماضي|اليومان الماضيان|ال$1 أيام الماضية|ال$1 يومًا الماضية|ال$1 يوم الماضية}}",
|
||||||
"contributionscores-allrevisions": "كل الوقت",
|
"contributionscores-allrevisions": "كل الوقت",
|
||||||
"contributionscores-score": "النتيجة",
|
"contributionscores-score": "النتيجة",
|
||||||
"contributionscores-rank": "الرتبة",
|
|
||||||
"contributionscores-pages": "الصفحات",
|
"contributionscores-pages": "الصفحات",
|
||||||
"contributionscores-changes": "تغييرات",
|
"contributionscores-changes": "تغييرات",
|
||||||
"contributionscores-username": "اسم المستخدم",
|
"contributionscores-username": "اسم المستخدم",
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Benoit Rochon"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-pages": "Masinahikana",
|
|
||||||
"contributionscores-username": "Icinikasowin"
|
|
||||||
}
|
|
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Alp Er Tunqa",
|
"Mousa",
|
||||||
"Mousa"
|
"Alp Er Tunqa"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "چالیشماق امتیازلاری",
|
"contributionscores": "چالیشماق امتیازلاری",
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"DCLXVI",
|
"DCLXVI"
|
||||||
"StanProg"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Потребителска класация",
|
"contributionscores": "Потребителска класация",
|
||||||
"contributionscores-top": "(Най-добрите $1)",
|
"contributionscores-top": "(Най-добрите $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Последния ден|Последните $1 дни}}",
|
"contributionscores-days": "{{PLURAL:$1|Последния ден|Последните $1 дни}}",
|
||||||
"contributionscores-allrevisions": "За всички времена",
|
"contributionscores-allrevisions": "Всички редакции",
|
||||||
"contributionscores-score": "Точки",
|
"contributionscores-score": "Точки",
|
||||||
"contributionscores-pages": "Страници",
|
"contributionscores-pages": "Страници",
|
||||||
"contributionscores-changes": "Редакции",
|
"contributionscores-changes": "Редакции",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Ibrahim khashrowdi"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-username": "کار زوروکین نام"
|
|
||||||
}
|
|
|
@ -1,11 +1,10 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Aftab1995",
|
|
||||||
"Aftabuzzaman",
|
|
||||||
"Bellayet",
|
"Bellayet",
|
||||||
"Wikitanvir",
|
"Wikitanvir",
|
||||||
"আফতাবুজ্জামান"
|
"Aftab1995",
|
||||||
|
"Aftabuzzaman"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "অনুদানের স্কোর",
|
"contributionscores": "অনুদানের স্কোর",
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Skor an degasadennoù",
|
"contributionscores": "Skor an degasadennoù",
|
||||||
"contributionscores-desc": "Furchal a ra er bank roadennoù evit kavout [[Special:ContributionScores|kementadoù brasañ a zegasadennoù an implijerien]]",
|
"contributionscores-desc": "Furchal a ra er bank roadennoù evit kavout [[Special:ContributionScores|kementadoù brasañ a zegasadennoù an implijerien]]",
|
||||||
"contributionscores-info": "Da gentañ-penn e vuzul ar poenterezh an unpajennoù bet kemmet, en ur gemer e kont ar c'hementadoù kemmoù brasañ.",
|
"contributionscores-info": "Setu penaos e vez jedet ar poenterezh :\n*Ur (1) poent evit pep pajenn kemmet\n*Gwrizienn garrez (an niver hollek a gemmoù graet) - (niver a bajennoù disheñvel) * 2\nLakaat a ra ar formulenn-se al liesseurted war wel kentoc'h eget ar c'hementad.\nE berr gomzoù e talvez da jediñ an niver a bajennoù disheñvel kemmet en ur sellet a-dostoc'h ouzh ar c'hementadoù bras a gemmoù a seller outo evel pajennoù zo gwelloc'h an danvez anezho.",
|
||||||
"contributionscores-top": "(An $1 uhelañ)",
|
"contributionscores-top": "(An $1 uhelañ)",
|
||||||
"contributionscores-days": "E-kerzh an {{PLURAL:$1|devezh|$1 devezh}} diwezhañ",
|
"contributionscores-days": "E-kerzh an {{PLURAL:$1|devezh|$1 devezh}} diwezhañ",
|
||||||
"contributionscores-allrevisions": "A-viskoazh",
|
"contributionscores-allrevisions": "A-viskoazh",
|
||||||
|
|
|
@ -2,19 +2,16 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"CERminator",
|
"CERminator",
|
||||||
"KWiki",
|
"KWiki"
|
||||||
"Srdjan m",
|
|
||||||
"Srđan"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Rezultat doprinosa",
|
"contributionscores": "Rezultat doprinosa",
|
||||||
"contributionscores-desc": "Upit u wiki bazu podataka za najveći [[Special:ContributionScores|količinski korisnički doprinos]]",
|
"contributionscores-desc": "Upit u wiki bazu podataka za najveći [[Special:ContributionScores|količinski korisnički doprinos]]",
|
||||||
"contributionscores-info": "Ovaj rezultat prvenstveno mjeri broj uređivanja pojedinačnih stranica, uzimajući u obzir velike količine uređivanja.",
|
"contributionscores-info": "Rezultati se računaju na slijedeći naćin:\n*Jedan (1) bod za svaku pojedinu stranicu koja se uredi\n*Drugi korijen od (ukupno načinjenih promjena) - (ukupno pojedinih stranica) * 2\nRezultati koji se dobiju na ovaj način naglašavaju raznolikost uređivanja više od količine uređivanja.\nU osnovi, ovaj rezultat mjeri naročito broj uređivanja pojedinačnih stranica, sa utjecajem velike količine uređivanja - smatra se da utječe na bolji kvalitet stranice.",
|
||||||
"contributionscores-top": "(Najboljih $1)",
|
"contributionscores-top": "(Najboljih $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Posljednji $1 dan|Posljednja $1 dana|Posljednjih $1 dana}}",
|
"contributionscores-days": "{{PLURAL:$1|Posljednji $1 dan|Posljednja $1 dana|Posljednjih $1 dana}}",
|
||||||
"contributionscores-allrevisions": "Svo vrijeme",
|
"contributionscores-allrevisions": "Svo vrijeme",
|
||||||
"contributionscores-score": "Rezultat",
|
"contributionscores-score": "Rezultat",
|
||||||
"contributionscores-rank": "Rang",
|
|
||||||
"contributionscores-pages": "Stranice",
|
"contributionscores-pages": "Stranice",
|
||||||
"contributionscores-changes": "Izmjene",
|
"contributionscores-changes": "Izmjene",
|
||||||
"contributionscores-username": "Korisničko ime",
|
"contributionscores-username": "Korisničko ime",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Kirsan"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-username": "Pòzwa brëkòwnika"
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Robin Owain"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-score": "Sgor",
|
|
||||||
"contributionscores-changes": "Newidiadau"
|
|
||||||
}
|
|
|
@ -4,8 +4,7 @@
|
||||||
"Byrial",
|
"Byrial",
|
||||||
"Christian List",
|
"Christian List",
|
||||||
"Kaare",
|
"Kaare",
|
||||||
"Peter Alberti",
|
"Peter Alberti"
|
||||||
"Saederup92"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Bidragspoint",
|
"contributionscores": "Bidragspoint",
|
||||||
|
@ -15,7 +14,6 @@
|
||||||
"contributionscores-days": "Sidste {{PLURAL:$1|dag|$1 dage}}",
|
"contributionscores-days": "Sidste {{PLURAL:$1|dag|$1 dage}}",
|
||||||
"contributionscores-allrevisions": "Gennem tiden",
|
"contributionscores-allrevisions": "Gennem tiden",
|
||||||
"contributionscores-score": "Point",
|
"contributionscores-score": "Point",
|
||||||
"contributionscores-rank": "Rang",
|
|
||||||
"contributionscores-pages": "Sider",
|
"contributionscores-pages": "Sider",
|
||||||
"contributionscores-changes": "Ændringer",
|
"contributionscores-changes": "Ændringer",
|
||||||
"contributionscores-username": "Brugernavn",
|
"contributionscores-username": "Brugernavn",
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Statistik zu Benutzern",
|
"contributionscores": "Statistik zu Benutzern",
|
||||||
"contributionscores-desc": "Erweitert das Wiki um eine [[Special:ContributionScores|Spezialseite]] zum Ermitteln der Benutzer mit den meisten Beiträgen",
|
"contributionscores-desc": "Ergänzt eine [[Special:ContributionScores|Spezialseite]] zum Abfragen der Datenbank des Wikis bezüglich der Benutzer mit den meisten Beiträgen",
|
||||||
"contributionscores-info": "In die Bewertung fließen hauptsächlich einmalig bearbeitete Seiten unter Berücksichtigung einer hohen Bearbeitungszahl ein.",
|
"contributionscores-info": "In die Bewertung fließen hauptsächlich einmalig bearbeitete Seiten unter Berücksichtigung einer hohen Bearbeitungszahl ein.",
|
||||||
"contributionscores-top": "(Top $1)",
|
"contributionscores-top": "(Top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Letzter Tag|Letzte $1 Tage}}",
|
"contributionscores-days": "{{PLURAL:$1|Letzter Tag|Letzte $1 Tage}}",
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Erdemaslancan",
|
"Erdemaslancan",
|
||||||
"Marmase",
|
"Mirzali",
|
||||||
"Mirzali"
|
"Marmase"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Skorê iştıraqan",
|
"contributionscores": "Skorê iştıraqan",
|
||||||
|
@ -11,9 +11,9 @@
|
||||||
"contributionscores-info": "Ebe pawıtışê hecmê tedqiqê berzi ra, puwan raveri pelanê bêemsalanê vurniyayeyan senceno.",
|
"contributionscores-info": "Ebe pawıtışê hecmê tedqiqê berzi ra, puwan raveri pelanê bêemsalanê vurniyayeyan senceno.",
|
||||||
"contributionscores-top": "(Tewr Gırde $1)",
|
"contributionscores-top": "(Tewr Gırde $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Roca peyêne|$1 Rocê peyêni}}",
|
"contributionscores-days": "{{PLURAL:$1|Roca peyêne|$1 Rocê peyêni}}",
|
||||||
"contributionscores-allrevisions": "Her dem",
|
"contributionscores-allrevisions": "Çaxan de hemi",
|
||||||
"contributionscores-score": "Puwan",
|
"contributionscores-score": "Skor",
|
||||||
"contributionscores-rank": "Rêze",
|
"contributionscores-rank": "Rate",
|
||||||
"contributionscores-pages": "Peli",
|
"contributionscores-pages": "Peli",
|
||||||
"contributionscores-changes": "Vurnayışi",
|
"contributionscores-changes": "Vurnayışi",
|
||||||
"contributionscores-username": "Nameyê karberi",
|
"contributionscores-username": "Nameyê karberi",
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
"Consta",
|
"Consta",
|
||||||
"Crazymadlover",
|
"Crazymadlover",
|
||||||
"Omnipaedista",
|
"Omnipaedista",
|
||||||
"Protnet",
|
"ZaDiak",
|
||||||
"ZaDiak"
|
"Protnet"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Βαθμολογίες συνεισφοράς",
|
"contributionscores": "Βαθμολογίες συνεισφοράς",
|
||||||
"contributionscores-desc": "Εξετάζει την βάση δεδομένων του wiki για τον υψηλότερο [[Special:ContributionScores|όγκο συνεισφορών χρήστη]]",
|
"contributionscores-desc": "Εξετάζει την βάση δεδομένων του wiki για τον υψηλότερο [[Special:ContributionScores|όγκο συνεισφορών χρήστη]]",
|
||||||
"contributionscores-info": "Η βαθμολογία μετρά πρωτίστως μοναδικές σελίδες που έχουν τύχει επεξεργασίας, λαμβάνοντας υπ' όψιν και τον υψηλό όγκο επεξεργασίας.",
|
"contributionscores-info": "Η βαθμολογία μετρά πρωτίστως μοναδικές σελίδες που έχουν επεξεργαστεί, λαμβάνοντας υπ' όψιν και τον υψηλό όγκο επεξεργασίας.",
|
||||||
"contributionscores-top": "(Πρώτοι $1)",
|
"contributionscores-top": "(Πρώτοι $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Τελευταία ημέρα|Τελευταίες $1 ημέρες}}",
|
"contributionscores-days": "{{PLURAL:$1|Τελευταία ημέρα|Τελευταίες $1 ημέρες}}",
|
||||||
"contributionscores-allrevisions": "Όλων των εποχών",
|
"contributionscores-allrevisions": "Όλων των εποχών",
|
||||||
|
|
|
@ -2,22 +2,19 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Michawiki",
|
"Michawiki",
|
||||||
"Mirin",
|
|
||||||
"Robin van der Vliet",
|
|
||||||
"Yekrats"
|
"Yekrats"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Poentaro de Kontribuoj",
|
"contributionscores": "Poentaro de Kontribuoj",
|
||||||
"contributionscores-desc": "Informmendas la vikian datumbazon por la plej [[Special:ContributionScores|oftaj kontribuantoj]]",
|
"contributionscores-desc": "Informmendas la vikian datumbazon por la plej [[Special:ContributionScores|oftaj kontribuantoj]]",
|
||||||
"contributionscores-info": "La poentaroj precipe mezuras la nombrojn de unikaj redaktitaj paĝoj, kun konsiderado pri grandega kvanto de redaktoj.",
|
"contributionscores-info": "Poentaroj estas donataj jene:\n*Unu (1) poento por ĉiu unika paĝo redaktata\n*Kvadrata Radiko de (Tutaj Faritaj Redaktoj) - (Tutaj Unikaj Paĝoj) * 2\nPoentaroj kalkulitaj laŭ ĉi tiu maniero pezos redaktan diversecon super redaktan volumon.\nBaze, ĉi tiu poentaro mezuras ĉefe unikajn paĝojn redaktitajn, kun konsidero por altaj redakto-volumon - supozita esti pli altkvalita paĝo.",
|
||||||
"contributionscores-top": "(Plej alta $1)",
|
"contributionscores-top": "(Plej alta $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Lasta tago|Lastaj $1 tagoj}}",
|
"contributionscores-days": "{{PLURAL:$1|Lasta tago|Lastaj $1 tagoj}}",
|
||||||
"contributionscores-allrevisions": "Ĉiame",
|
"contributionscores-allrevisions": "Ĉiame",
|
||||||
"contributionscores-score": "Poentaro",
|
"contributionscores-score": "Poentaro",
|
||||||
"contributionscores-rank": "Rango",
|
|
||||||
"contributionscores-pages": "Paĝoj",
|
"contributionscores-pages": "Paĝoj",
|
||||||
"contributionscores-changes": "Ŝanĝoj",
|
"contributionscores-changes": "Ŝanĝoj",
|
||||||
"contributionscores-username": "Uzantnomo",
|
"contributionscores-username": "Salutnomo",
|
||||||
"contributionscores-invalidusername": "Nevalida uzantnomo",
|
"contributionscores-invalidusername": "Nevalida salutnomo",
|
||||||
"contributionscores-invalidmetric": "Nevalida parametro"
|
"contributionscores-invalidmetric": "Nevalida parametro"
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
"Fitoschido",
|
"Fitoschido",
|
||||||
"Ihojose",
|
"Ihojose",
|
||||||
"Imre",
|
"Imre",
|
||||||
"Macofe",
|
"Sanbec",
|
||||||
"Sanbec"
|
"Macofe"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Puntuaciones de contribuciones",
|
"contributionscores": "Puntuaciones de contribuciones",
|
||||||
|
|
8
i18n/ext.json
Normal file
8
i18n/ext.json
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"@metadata": {
|
||||||
|
"authors": [
|
||||||
|
"Better"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"contributionscores-days": "Úrtimus $1 dias"
|
||||||
|
}
|
|
@ -1,13 +1,13 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Alirezaaa",
|
|
||||||
"Ebraminio",
|
"Ebraminio",
|
||||||
"Huji",
|
"Huji",
|
||||||
"Mjbmr",
|
"Mjbmr",
|
||||||
"Reza1615",
|
"Reza1615",
|
||||||
"Tofighi",
|
"Tofighi",
|
||||||
"ZxxZxxZ"
|
"ZxxZxxZ",
|
||||||
|
"Alirezaaa"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "امتیاز مشارکت",
|
"contributionscores": "امتیاز مشارکت",
|
||||||
|
|
11
i18n/fi.json
11
i18n/fi.json
|
@ -1,25 +1,20 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"01miki10",
|
|
||||||
"Crt",
|
"Crt",
|
||||||
"Nike",
|
"Nike",
|
||||||
"Pxos",
|
|
||||||
"Pyscowicz",
|
|
||||||
"Str4nd",
|
"Str4nd",
|
||||||
"Stryn"
|
"Stryn"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Muokkauspisteet",
|
"contributionscores": "Muokkauspisteet",
|
||||||
"contributionscores-info": "Pistemäärä kuvaa ensisijaisesti muokattujen sivujen lukumäärää, mutta ottaa huomioon myös suuren muokkausmäärän yleisesti.",
|
"contributionscores-info": "Pisteet lasketaan seuraavalla kaavalla:\n* Yksi piste jokaisesta muokatusta sivusta\n* Neliöjuuri (muokkausten määrä) - (muokatut sivut) * 2\n\nNäin laskettuna pisteet painottavat monipuolisuutta määrän sijaan. Käytännössä pisteet mittaavat muokattujen sivujen määrää, ottaen huomioon muutosten suuren määrän.",
|
||||||
"contributionscores-top": "(top $1)",
|
"contributionscores-top": "(top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Viime päivä|Viimeiset $1 päivää}}",
|
"contributionscores-days": "{{PLURAL:$1|Viime päivä|Viimeiset $1 päivää}}",
|
||||||
"contributionscores-allrevisions": "Koko ajalta",
|
"contributionscores-allrevisions": "Koko ajalta",
|
||||||
"contributionscores-score": "Pisteet",
|
"contributionscores-score": "Pisteet",
|
||||||
"contributionscores-rank": "Sija",
|
|
||||||
"contributionscores-pages": "Sivuja",
|
"contributionscores-pages": "Sivuja",
|
||||||
"contributionscores-changes": "Muutoksia",
|
"contributionscores-changes": "Muutoksia",
|
||||||
"contributionscores-username": "Käyttäjänimi",
|
"contributionscores-username": "Käyttäjätunnus",
|
||||||
"contributionscores-invalidusername": "Virheellinen käyttäjänimi",
|
"contributionscores-invalidusername": "Virheellinen käyttäjätunnus"
|
||||||
"contributionscores-invalidmetric": "Virheellinen muuttuja"
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Pyscowicz"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores": "Mookkauspisteet"
|
|
||||||
}
|
|
|
@ -12,7 +12,7 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Pointage des contributions",
|
"contributionscores": "Pointage des contributions",
|
||||||
"contributionscores-desc": "Scrute la base de données wiki pour les plus importants [[Special:ContributionScores|volumes de contribution des utilisateurs]]",
|
"contributionscores-desc": "Scrute la base de données wiki pour les plus importants [[Special:ContributionScores|volumes de contribution des utilisateurs]]",
|
||||||
"contributionscores-info": "Le pointage mesure en priorité les pages uniques modifiées, en prenant en compte les gros volumes de modification.",
|
"contributionscores-info": "Le score mesure en priorité les pages uniques modifiées, en prenant en compte les gros volumes de modification.",
|
||||||
"contributionscores-top": "(Les $1 plus élevés)",
|
"contributionscores-top": "(Les $1 plus élevés)",
|
||||||
"contributionscores-days": "Dans {{PLURAL:$1|le dernier jour|les derniers $1 jours}}",
|
"contributionscores-days": "Dans {{PLURAL:$1|le dernier jour|les derniers $1 jours}}",
|
||||||
"contributionscores-allrevisions": "Tout le temps",
|
"contributionscores-allrevisions": "Tout le temps",
|
||||||
|
@ -21,6 +21,6 @@
|
||||||
"contributionscores-pages": "Pages",
|
"contributionscores-pages": "Pages",
|
||||||
"contributionscores-changes": "Changements",
|
"contributionscores-changes": "Changements",
|
||||||
"contributionscores-username": "Nom d’utilisateur",
|
"contributionscores-username": "Nom d’utilisateur",
|
||||||
"contributionscores-invalidusername": "Nom d’utilisateur incorrect",
|
"contributionscores-invalidusername": "Nom d’utilisateur invalide",
|
||||||
"contributionscores-invalidmetric": "Métrique incorrecte"
|
"contributionscores-invalidmetric": "Métrique incorrecte"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,9 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"PiefPafPier",
|
"Snakesteuben",
|
||||||
"Robin van der Vliet",
|
"Robin0van0der0vliet"
|
||||||
"Robin0van0der0vliet",
|
|
||||||
"Snakesteuben"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores-username": "Meidochnamme"
|
"contributionscores-username": "Brûkersnamme"
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
"authors": [
|
"authors": [
|
||||||
"Ansumang",
|
"Ansumang",
|
||||||
"Kaustubh",
|
"Kaustubh",
|
||||||
"Sfic",
|
|
||||||
"Siddhartha Ghai"
|
"Siddhartha Ghai"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -11,7 +10,7 @@
|
||||||
"contributionscores-desc": "[[Special:ContributionScores|सदस्य योगदान संख्या]]के अनुसार विकि डाटाबेस दर्शाता हैं",
|
"contributionscores-desc": "[[Special:ContributionScores|सदस्य योगदान संख्या]]के अनुसार विकि डाटाबेस दर्शाता हैं",
|
||||||
"contributionscores-top": "(पहले $1)",
|
"contributionscores-top": "(पहले $1)",
|
||||||
"contributionscores-days": "आखिरी {{PLURAL:$1|$1 दिन}}",
|
"contributionscores-days": "आखिरी {{PLURAL:$1|$1 दिन}}",
|
||||||
"contributionscores-allrevisions": "हर समय",
|
"contributionscores-allrevisions": "सभी अवतरण",
|
||||||
"contributionscores-score": "गुण",
|
"contributionscores-score": "गुण",
|
||||||
"contributionscores-pages": "पृष्ठ",
|
"contributionscores-pages": "पृष्ठ",
|
||||||
"contributionscores-changes": "बदलाव",
|
"contributionscores-changes": "बदलाव",
|
||||||
|
|
10
i18n/hr.json
10
i18n/hr.json
|
@ -3,21 +3,19 @@
|
||||||
"authors": [
|
"authors": [
|
||||||
"Dalibor Bosits",
|
"Dalibor Bosits",
|
||||||
"Ex13",
|
"Ex13",
|
||||||
"MaGa",
|
|
||||||
"SpeedyGonsales"
|
"SpeedyGonsales"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Najbolji suradnici",
|
"contributionscores": "Najbolji suradnici",
|
||||||
"contributionscores-desc": "Šalje upit bazi podataka za najveći [[Special:ContributionScores|broj suradničkih doprinosa]]",
|
"contributionscores-desc": "Šalje upit bazi podataka za najveći [[Special:ContributionScores|broj suradničkih doprinosa]]",
|
||||||
"contributionscores-info": "U prvom planu rezultat mjeri jedinstvene izmijenjene stranice, uzimajući u obzir veliku količinu uređivanja.",
|
"contributionscores-info": "Rezultat se dobiva kao suma slijedećih stavki:\n*1 bod za svaku stranicu koju ste uređivali\n* (kvadratni) korijen iz (broja ukupnih uređivanja) - (broja stranica koje ste uređivali) * 2\n\nRezultat dobiven na ovaj način daje veću težinu broju uređivanja različitih stranica nego ukupnom broju uređivanja. U osnovi, ovakav rezultat mjeri prvenstveno broj različitih stranica koje ste uređivali, uzimajući u obzir broj uređivanja, jer veći broj uređivanja na nekom članku daje kvalitetniji članak.",
|
||||||
"contributionscores-top": "(najboljih $1)",
|
"contributionscores-top": "(Najboljih $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Zadnji dan|Zadnjih $1 dana}}",
|
"contributionscores-days": "{{PLURAL:$1|Zadnji dan|Zadnjih $1 dana}}",
|
||||||
"contributionscores-allrevisions": "Sve vrijeme",
|
"contributionscores-allrevisions": "Sva uređivanja",
|
||||||
"contributionscores-score": "Rezultat",
|
"contributionscores-score": "Rezultat",
|
||||||
"contributionscores-rank": "Mjesto",
|
|
||||||
"contributionscores-pages": "Stranica",
|
"contributionscores-pages": "Stranica",
|
||||||
"contributionscores-changes": "Uređivanja",
|
"contributionscores-changes": "Uređivanja",
|
||||||
"contributionscores-username": "Suradničko ime",
|
"contributionscores-username": "Ime suradnika",
|
||||||
"contributionscores-invalidusername": "Nevaljano suradničko ime",
|
"contributionscores-invalidusername": "Nevaljano suradničko ime",
|
||||||
"contributionscores-invalidmetric": "Nevaljana metrika"
|
"contributionscores-invalidmetric": "Nevaljana metrika"
|
||||||
}
|
}
|
||||||
|
|
14
i18n/id.json
14
i18n/id.json
|
@ -2,18 +2,16 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"IvanLanin",
|
"IvanLanin",
|
||||||
"Rex",
|
"Rex"
|
||||||
"William Surya Permana"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Nilai kontribusi",
|
"contributionscores": "Skor kontribusi",
|
||||||
"contributionscores-desc": "Menghitung [[Special:ContributionScores|volume kontribusi pengguna]] terbanyak di basis data wiki",
|
"contributionscores-desc": "Menghitung [[Special:ContributionScores|jumlah kontribusi pengguna]] terbanyak di basis data wiki",
|
||||||
"contributionscores-info": "Nilai ini secara garis besar mengukur halaman unik yang disunting, dengan pertimbangan volume suntingan yang tinggi.",
|
"contributionscores-info": "Skor dihitung dengan cara berikut:\n* Satu (1) poin untuk setiap halaman tunggal yang disunting\n* Akar kuadrat dari (total suntingan) - (total halaman tunggal) * 2\nSkor dihitung dengan cara ini untuk menghasilkan jumlah tertimbang penyuntingan berbanding volume suntingan.\nPada dasarnya, skor ini menghitung jumlah halaman tunggal yang disunting, dengan pertimbangan di mana volume suntingan yang tinggi - diasumsikan sebagai halaman dengan kualitas lebih tinggi.",
|
||||||
"contributionscores-top": "($1 teratas)",
|
"contributionscores-top": "($1 tertinggi)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Hari|$1 hari}} terakhir",
|
"contributionscores-days": "{{PLURAL:$1|Hari|$1 hari}} terakhir",
|
||||||
"contributionscores-allrevisions": "Sepanjang masa",
|
"contributionscores-allrevisions": "Sepanjang masa",
|
||||||
"contributionscores-score": "Nilai",
|
"contributionscores-score": "Skor",
|
||||||
"contributionscores-rank": "Peringkat",
|
|
||||||
"contributionscores-pages": "Halaman",
|
"contributionscores-pages": "Halaman",
|
||||||
"contributionscores-changes": "Perubahan",
|
"contributionscores-changes": "Perubahan",
|
||||||
"contributionscores-username": "Nama pengguna",
|
"contributionscores-username": "Nama pengguna",
|
||||||
|
|
|
@ -6,12 +6,11 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Contes de contribution",
|
"contributionscores": "Contes de contribution",
|
||||||
"contributionscores-desc": "Calcula li funde de data del wiki por max alt [[Special:ContributionScores|volúmine de contribution de usator]]",
|
"contributionscores-desc": "Calcula li funde de data del wiki por max alt [[Special:ContributionScores|volúmine de contribution de usator]]",
|
||||||
"contributionscores-info": "Li calcul primarimen mesura págines unic redactet, considerant li alt volume de redactiones.",
|
"contributionscores-info": "Contes es calculat quam seque:\n*Un (1) punctu por chascun págine unic redactet\n*Fonte de quadrat de (total de redactiones fat) - (total unique pages) * 2\nContes calculat in ti diversitá de redaction in pesa maniere súper de volúmine de redaction.\nBasicmen, ti conte mesura primarimen págines unic redactet, che consideration por alt volúmine de redaction - suposit esser un págine de alt qualitá.",
|
||||||
"contributionscores-top": "(Prim $1)",
|
"contributionscores-top": "(Prim $1)",
|
||||||
"contributionscores-days": "Ultim {{PLURAL:$1|die|$1 dies}}",
|
"contributionscores-days": "Ultim {{PLURAL:$1|die|$1 dies}}",
|
||||||
"contributionscores-allrevisions": "Omni témpor",
|
"contributionscores-allrevisions": "Omni témpor",
|
||||||
"contributionscores-score": "Conte",
|
"contributionscores-score": "Conte",
|
||||||
"contributionscores-rank": "Classification",
|
|
||||||
"contributionscores-pages": "Págines",
|
"contributionscores-pages": "Págines",
|
||||||
"contributionscores-changes": "Changes",
|
"contributionscores-changes": "Changes",
|
||||||
"contributionscores-username": "Nómine de usator",
|
"contributionscores-username": "Nómine de usator",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Ukabia"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-username": "Ahàǹjìème"
|
|
||||||
}
|
|
12
i18n/io.json
12
i18n/io.json
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Joao Xavier"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-days": "Lasta {{PLURAL:$1|dio|$1 dii}}",
|
|
||||||
"contributionscores-score": "Nombro di punti",
|
|
||||||
"contributionscores-pages": "Pagini",
|
|
||||||
"contributionscores-changes": "Modifikuri",
|
|
||||||
"contributionscores-username": "Uzeronomo"
|
|
||||||
}
|
|
|
@ -2,8 +2,7 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"S.Örvarr.S",
|
"S.Örvarr.S",
|
||||||
"Snævar",
|
"Snævar"
|
||||||
"Sveinn í Felli"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Framleggjandastig",
|
"contributionscores": "Framleggjandastig",
|
||||||
|
@ -13,10 +12,7 @@
|
||||||
"contributionscores-days": "{{PLURAL:$1|Síðasta $1 daginn|Síðustu $1 dagana}}",
|
"contributionscores-days": "{{PLURAL:$1|Síðasta $1 daginn|Síðustu $1 dagana}}",
|
||||||
"contributionscores-allrevisions": "Allan tímann",
|
"contributionscores-allrevisions": "Allan tímann",
|
||||||
"contributionscores-score": "Stigafjöldi",
|
"contributionscores-score": "Stigafjöldi",
|
||||||
"contributionscores-rank": "Sæti",
|
|
||||||
"contributionscores-pages": "Síður",
|
"contributionscores-pages": "Síður",
|
||||||
"contributionscores-changes": "Breytingar",
|
"contributionscores-changes": "Breytingar",
|
||||||
"contributionscores-username": "Notandanafn",
|
"contributionscores-username": "Notandanafn"
|
||||||
"contributionscores-invalidusername": "Ógilt notandanafn",
|
|
||||||
"contributionscores-invalidmetric": "Ógild mæling"
|
|
||||||
}
|
}
|
||||||
|
|
17
i18n/jv.json
17
i18n/jv.json
|
@ -1,24 +1,21 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Diki Ananta",
|
|
||||||
"Meursault2004",
|
"Meursault2004",
|
||||||
"NoiX180",
|
|
||||||
"Pras",
|
"Pras",
|
||||||
"Sumbukompor"
|
"NoiX180"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Bijining pasumbang",
|
"contributionscores": "Stan sumbangan",
|
||||||
"contributionscores-desc": "Nglakokaké polling (angkèt) ing basis data kanggo [[Special:ContributionScores|volume kontribusi naraguna]]",
|
"contributionscores-desc": "Nglakokaké polling (angkèt) ing basis data kanggo [[Special:ContributionScores|volume kontribusi panganggo]]",
|
||||||
"contributionscores-info": "Skoré diétung kaya mangkéné:\n* Biji siji (1) per kaca unik sing disunting\n* Oyot (bs. Indonesia ''akar'') saka (Gunggungé Suntingan) - (Gunggungé Kaca-KAca Unik) * 2\nSkor sing diétung miturut cara iki bisa nyerminaké divèrsitas suntingan sadhuwuring volume suntingan.\nSacara dhasar, skor iki utamané ngétung kaca-kaca unik sing disunting, karo mélu nimbangaké volume suntingan dhuwur - diasumsèkaké kwalitas kacané luwih dhuwur.",
|
"contributionscores-info": "Skoré diétung kaya mangkéné:\n* Biji siji (1) per kaca unik sing disunting\n* Oyot (bs. Indonesia ''akar'') saka (Gunggungé Suntingan) - (Gunggungé Kaca-KAca Unik) * 2\nSkor sing diétung miturut cara iki bisa nyerminaké divèrsitas suntingan sadhuwuring volume suntingan.\nSacara dhasar, skor iki utamané ngétung kaca-kaca unik sing disunting, karo mélu nimbangaké volume suntingan dhuwur - diasumsèkaké kwalitas kacané luwih dhuwur.",
|
||||||
"contributionscores-top": "(Top $1)",
|
"contributionscores-top": "(Top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|dina|$1 dina}} pungkasan",
|
"contributionscores-days": "{{PLURAL:$1|dina|$1 dina}} pungkasan",
|
||||||
"contributionscores-allrevisions": "Sasuwéné wektu",
|
"contributionscores-allrevisions": "Kabèh Révisi",
|
||||||
"contributionscores-score": "Skor",
|
"contributionscores-score": "Skor",
|
||||||
"contributionscores-rank": "Rangking",
|
"contributionscores-pages": "Kaca-kaca",
|
||||||
"contributionscores-pages": "Kaca",
|
|
||||||
"contributionscores-changes": "Owah-owahan",
|
"contributionscores-changes": "Owah-owahan",
|
||||||
"contributionscores-username": "Jeneng naraguna",
|
"contributionscores-username": "Jeneng panganggo",
|
||||||
"contributionscores-invalidusername": "Jeneng naraguna ora sah",
|
"contributionscores-invalidusername": "Jeneng panganggo ora sah",
|
||||||
"contributionscores-invalidmetric": "Metrik ora sah"
|
"contributionscores-invalidmetric": "Metrik ora sah"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Belkacem77"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores": "Agmuḍ n uttekki",
|
|
||||||
"contributionscores-desc": "Ad yesleḍ taffa n isefka n iwikiyen ɣef [[Special:ContributionScores|tesmekta n ittekkiyen n iseqdacen]]",
|
|
||||||
"contributionscores-info": "Agmuḍ ad yektil di tazwara isebtar isufen yettwasnifel, ɣas ulama ddeqs n tesmekta n usinifel i yellan.",
|
|
||||||
"contributionscores-top": "($1 imezwura)",
|
|
||||||
"contributionscores-days": "Deg {{PLURAL:$1|wass aneggaru|$1 n wussan ineggura}}",
|
|
||||||
"contributionscores-allrevisions": "Si tazwara",
|
|
||||||
"contributionscores-score": "Agmuḍ",
|
|
||||||
"contributionscores-rank": "Amḍiq",
|
|
||||||
"contributionscores-pages": "Isebtar",
|
|
||||||
"contributionscores-changes": "Asnifel",
|
|
||||||
"contributionscores-username": "Isem n useqdac",
|
|
||||||
"contributionscores-invalidusername": "Yir isem n useqdac",
|
|
||||||
"contributionscores-invalidmetric": "Yir asekkat"
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Mirzali"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-score": "Puwan",
|
|
||||||
"contributionscores-rank": "Rêze",
|
|
||||||
"contributionscores-pages": "Peli",
|
|
||||||
"contributionscores-changes": "Vurnayışi",
|
|
||||||
"contributionscores-username": "Namê karberi"
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Rul1902"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-score": "အ်ုဏါင်းဏေဝ်ႋ",
|
|
||||||
"contributionscores-rank": "အ်ုထေါဟ်",
|
|
||||||
"contributionscores-pages": "လိက်မေံၜၠါ်လ်ုဖး",
|
|
||||||
"contributionscores-changes": "မ်ုအင်းလယ်လ်ုဖး",
|
|
||||||
"contributionscores-username": "ဆ်ုသုံႋဆာႋမိင်"
|
|
||||||
}
|
|
|
@ -1,7 +1,5 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": [],
|
||||||
"authors": []
|
|
||||||
},
|
|
||||||
"contributionscores": "Üles berw esepteri",
|
"contributionscores": "Üles berw esepteri",
|
||||||
"contributionscores-info": "Esepter kelesi deý sanaladı:\n*1 upaý ärbir tüzetilgen biregeý bet üşin\n*Mınanıñ şarşı tübiri (Barlıq İstelingen Tüzetwler) ‒ (Barlıq Biregeý Better) * 2\nOsı täsilmen sanalğan esepter tüzetw awqımındağı öñdew ärkelkiliginiñ salmağın ölşeýdi. Negizinde, bul esep aldımen tüzetilgen birkelki betterdi ölşeýdi, joğarğı öñdew awqımımen birge — joğarı sapalı bet jağdaýımen eseptep.",
|
"contributionscores-info": "Esepter kelesi deý sanaladı:\n*1 upaý ärbir tüzetilgen biregeý bet üşin\n*Mınanıñ şarşı tübiri (Barlıq İstelingen Tüzetwler) ‒ (Barlıq Biregeý Better) * 2\nOsı täsilmen sanalğan esepter tüzetw awqımındağı öñdew ärkelkiliginiñ salmağın ölşeýdi. Negizinde, bul esep aldımen tüzetilgen birkelki betterdi ölşeýdi, joğarğı öñdew awqımımen birge — joğarı sapalı bet jağdaýımen eseptep.",
|
||||||
"contributionscores-top": "(Joğarğı $1)",
|
"contributionscores-top": "(Joğarğı $1)",
|
||||||
|
|
|
@ -12,8 +12,7 @@
|
||||||
"contributionscores-days": "{{PLURAL:$1|ថ្ងៃ|$1 ថ្ងៃ}}ចុងក្រោយ",
|
"contributionscores-days": "{{PLURAL:$1|ថ្ងៃ|$1 ថ្ងៃ}}ចុងក្រោយ",
|
||||||
"contributionscores-allrevisions": "គ្រប់ពេល",
|
"contributionscores-allrevisions": "គ្រប់ពេល",
|
||||||
"contributionscores-score": "ពិន្ទុ",
|
"contributionscores-score": "ពិន្ទុ",
|
||||||
"contributionscores-rank": "ចំណាត់ថ្នាក់",
|
"contributionscores-pages": "ទំព័រនានា",
|
||||||
"contributionscores-pages": "ទំព័រ",
|
|
||||||
"contributionscores-changes": "បន្លាស់ប្ដូរ",
|
"contributionscores-changes": "បន្លាស់ប្ដូរ",
|
||||||
"contributionscores-username": "អត្តនាម",
|
"contributionscores-username": "អត្តនាម",
|
||||||
"contributionscores-invalidusername": "អត្តនាមមិនត្រឹមត្រូវ"
|
"contributionscores-invalidusername": "អត្តនាមមិនត្រឹមត្រូវ"
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
"authors": [
|
"authors": [
|
||||||
"Hym411",
|
"Hym411",
|
||||||
"Priviet",
|
"Priviet",
|
||||||
"Revi",
|
|
||||||
"Shirayuki",
|
"Shirayuki",
|
||||||
"아라"
|
"아라",
|
||||||
|
"Revi"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "기여 점수",
|
"contributionscores": "기여 점수",
|
||||||
|
|
|
@ -1,12 +1,10 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Balyozxane",
|
|
||||||
"George Animal"
|
"George Animal"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores-allrevisions": "Hemû dem",
|
"contributionscores-allrevisions": "Hemû dem",
|
||||||
"contributionscores-pages": "Rûpel",
|
"contributionscores-pages": "Rûpel",
|
||||||
"contributionscores-changes": "Guhartin",
|
|
||||||
"contributionscores-username": "Navê bikarhêner"
|
"contributionscores-username": "Navê bikarhêner"
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Bewäertung vun den Ännerungen",
|
"contributionscores": "Bewäertung vun den Ännerungen",
|
||||||
"contributionscores-desc": "Ufro un d'Wiki-Datebank no den héchste [[Special:ContributionScores|Benotzerscoren]]",
|
"contributionscores-desc": "Ufro un d'Wiki-Datebank no den héichste [[Special:ContributionScores|Benotzerscoren]]",
|
||||||
"contributionscores-info": "D'Bewäertung moosst Zuel vu geännerte Säite a consideréiert d'Zuel vun den Ännerungen.",
|
"contributionscores-info": "D'Bewäertung moosst Zuel vu geännerte Säite a consideréiert d'Zuel vun den Ännerungen.",
|
||||||
"contributionscores-top": "(Top $1)",
|
"contributionscores-top": "(Top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Leschten Dag|Lescht $1 Deeg}}",
|
"contributionscores-days": "{{PLURAL:$1|Leschten Dag|Lescht $1 Deeg}}",
|
||||||
|
|
|
@ -8,12 +8,11 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Biedraaghuuegdjes",
|
"contributionscores": "Biedraaghuuegdjes",
|
||||||
"contributionscores-desc": "Guuef 'n euverzich van [[Special:ContributionScores|gebroekers mit de meiste biedraag]] inne wiki.",
|
"contributionscores-desc": "Guuef 'n euverzich van [[Special:ContributionScores|gebroekers mit de meiste biedraag]] inne wiki.",
|
||||||
"contributionscores-info": "Dees score mètj veurnamelik 't aantaal unieke pagina's det is bewirk, dewiel e groeat aantaal bewirkinge waal in ach weurt genómme.",
|
"contributionscores-info": "Huuegdjes waere es vólg beraekendj:\n* Ein (1) pöntj veur edere apaart bewèrkdje pazjena\n* Wórtel van (totaal aantal gemaakdje bewèrkinger) - (totaal aantal apaarte pazjena's) × 2\nI huuegdjes die op dees wies beraekendj waere wäög divers bewèrkingsgedraag zwaorder es bewèrkingsvolume. In feite mèt dees huuegdje veurnamelik 't aantal apaarte pazjena's die zeen bewèrk, wiele 'n grót aantal bewèrkinger waal in ach wuuertj genaome, mit de aannaam det 't 'ne pazjena van 'n huuegere kwaliteit is.",
|
||||||
"contributionscores-top": "(Top $1)",
|
"contributionscores-top": "(Top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Lesten daag|Leste $1 daag}}",
|
"contributionscores-days": "{{PLURAL:$1|Lesten daag|Leste $1 daag}}",
|
||||||
"contributionscores-allrevisions": "Alle verzies",
|
"contributionscores-allrevisions": "Alle verzies",
|
||||||
"contributionscores-score": "Puntje",
|
"contributionscores-score": "Puntje",
|
||||||
"contributionscores-rank": "Rang",
|
|
||||||
"contributionscores-pages": "Pagina's",
|
"contributionscores-pages": "Pagina's",
|
||||||
"contributionscores-changes": "Bewèrkinger",
|
"contributionscores-changes": "Bewèrkinger",
|
||||||
"contributionscores-username": "Gebroeker",
|
"contributionscores-username": "Gebroeker",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Giromin Cangiaxo"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores": "Pontezzi contributi"
|
|
||||||
}
|
|
|
@ -5,11 +5,8 @@
|
||||||
"Hugo.arg"
|
"Hugo.arg"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores-top": "(Top $1)",
|
|
||||||
"contributionscores-days": "{{PLURAL:$1|Paskutinė diena|Paskutinės $1 dienos}}",
|
|
||||||
"contributionscores-allrevisions": "Viso laiko",
|
"contributionscores-allrevisions": "Viso laiko",
|
||||||
"contributionscores-score": "Rezultatas",
|
"contributionscores-score": "Rezultatas",
|
||||||
"contributionscores-rank": "Rangas",
|
|
||||||
"contributionscores-pages": "Puslapiai",
|
"contributionscores-pages": "Puslapiai",
|
||||||
"contributionscores-changes": "Pakeitimai",
|
"contributionscores-changes": "Pakeitimai",
|
||||||
"contributionscores-username": "Naudotojo vardas",
|
"contributionscores-username": "Naudotojo vardas",
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Оцени за придонеси",
|
"contributionscores": "Оцени за придонеси",
|
||||||
"contributionscores-desc": "Презема податоци од викибазата за [[Special:ContributionScores|корисници со највеќе придонеси]]",
|
"contributionscores-desc": "Презема податоци од викибазата за [[Special:ContributionScores|корисници со највеќе придонеси]]",
|
||||||
"contributionscores-info": "Салдото е мерка што изразува уредувања на одделни страници, со оглед на големиот број на уредувања.",
|
"contributionscores-info": "Салдото е мерка што изразува уредувања на засебни страници, со оглед на големиот број на уредувања.",
|
||||||
"contributionscores-top": "(Најдобри $1)",
|
"contributionscores-top": "(Најдобри $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Последниот ден|Последните $1 дена}}",
|
"contributionscores-days": "{{PLURAL:$1|Последниот ден|Последните $1 дена}}",
|
||||||
"contributionscores-allrevisions": "На сите времиња",
|
"contributionscores-allrevisions": "На сите времиња",
|
||||||
|
@ -16,5 +16,5 @@
|
||||||
"contributionscores-changes": "Измени",
|
"contributionscores-changes": "Измени",
|
||||||
"contributionscores-username": "Корисничко име",
|
"contributionscores-username": "Корисничко име",
|
||||||
"contributionscores-invalidusername": "Неправилно корисничко име",
|
"contributionscores-invalidusername": "Неправилно корисничко име",
|
||||||
"contributionscores-invalidmetric": "Грешно мерило"
|
"contributionscores-invalidmetric": "Грешна метрика"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Awangba Mangang"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-allrevisions": "ꯃꯇꯝ ꯄꯨꯂꯞ",
|
|
||||||
"contributionscores-rank": "ꯊꯥꯛ",
|
|
||||||
"contributionscores-pages": "ꯂꯃꯥꯏꯁꯤꯡ",
|
|
||||||
"contributionscores-changes": "ꯑꯍꯣꯡꯕꯁꯤꯡ",
|
|
||||||
"contributionscores-username": "ꯁꯤꯖꯤꯟꯅꯔꯤꯕ ꯃꯃꯤꯡ",
|
|
||||||
"contributionscores-invalidusername": "ꯁꯤꯖꯤꯟꯅꯔꯤꯕ ꯃꯃꯤꯡ ꯌꯥꯎꯗꯦ"
|
|
||||||
}
|
|
18
i18n/my.json
18
i18n/my.json
|
@ -1,18 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Dr Lotus Black",
|
|
||||||
"Ninjastrikers"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores": "ပံ့ပို့မှု ရမှတ်များ",
|
|
||||||
"contributionscores-top": "(ထိပ်ဆုံး $1)",
|
|
||||||
"contributionscores-days": "နောက်ဆုံး {{PLURAL:$1|ရက်|$1 ရက်}}",
|
|
||||||
"contributionscores-allrevisions": "တချိန်လုံး",
|
|
||||||
"contributionscores-score": "ရမှတ်",
|
|
||||||
"contributionscores-rank": "အဆင့်",
|
|
||||||
"contributionscores-pages": "စာမျက်နှာများ",
|
|
||||||
"contributionscores-changes": "အပြောင်းအလဲများ",
|
|
||||||
"contributionscores-username": "အသုံးပြုသူအမည်",
|
|
||||||
"contributionscores-invalidusername": "အသုံးပြုသူအမည် မမှန်ကန်ပါ"
|
|
||||||
}
|
|
|
@ -1,10 +1,9 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Akapochtli",
|
|
||||||
"Fluence"
|
"Fluence"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores-changes": "Tlapatlaliztli",
|
"contributionscores-changes": "Tlapatlaliztli",
|
||||||
"contributionscores-username": "Tequitiuhcatocaitll"
|
"contributionscores-username": "Tlatequitiltilīltōcāitl"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Danmichaelo",
|
"Nghtwlkr",
|
||||||
"Helland",
|
"Helland",
|
||||||
"Jon Harald Søby",
|
"Danmichaelo"
|
||||||
"Nghtwlkr"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Bidragspoeng",
|
"contributionscores": "Bidragspoeng",
|
||||||
|
|
13
i18n/ne.json
13
i18n/ne.json
|
@ -1,17 +1,8 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"RajeshPandey",
|
"RajeshPandey"
|
||||||
"पर्वत सुबेदी"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "योगदान प्राप्ताङ्कहरू",
|
"contributionscores-username": "प्रयोगकर्ता नाम"
|
||||||
"contributionscores-days": "अन्तिम {{PLURAL:$1|दिन|$1 दिनहरू}}",
|
|
||||||
"contributionscores-allrevisions": "सबै समय",
|
|
||||||
"contributionscores-score": "प्राप्ताङ्क",
|
|
||||||
"contributionscores-rank": "क्रम",
|
|
||||||
"contributionscores-pages": "पृष्ठहरू",
|
|
||||||
"contributionscores-changes": "परिवर्तनहरू",
|
|
||||||
"contributionscores-username": "प्रयोगकर्ता नाम",
|
|
||||||
"contributionscores-invalidusername": "अबैध प्रयोगकर्ता नाम"
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Puntatge de las contribucions",
|
"contributionscores": "Puntatge de las contribucions",
|
||||||
"contributionscores-desc": "Espia la basa de donadas wiki pels [[Special:ContributionScores|utilizaires que contribuisson mai]]",
|
"contributionscores-desc": "Espia la banca de donadas wiki pels [[Special:ContributionScores|utilizaires contribuissent mai]]",
|
||||||
"contributionscores-info": "La marca mesura en prioritat las paginas unicas modificadas, en prenent en compte los gròsses volums de modificacion.",
|
"contributionscores-info": "La marca mesura en prioritat las paginas unicas modificadas, en prenent en compte los gròsses volums de modificacion.",
|
||||||
"contributionscores-top": "(Melhor $1)",
|
"contributionscores-top": "(Melhor $1)",
|
||||||
"contributionscores-days": "Dins {{PLURAL:$1|lo darrièr jorn|los darrièrs $1 jorns}}",
|
"contributionscores-days": "Dins {{PLURAL:$1|lo darrièr jorn|los darrièrs $1 jorns}}",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"BukhariSaeed"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-changes": "ਤਬਦੀਲੀਆਂ"
|
|
||||||
}
|
|
|
@ -5,15 +5,13 @@
|
||||||
"Derbeth",
|
"Derbeth",
|
||||||
"Equadus",
|
"Equadus",
|
||||||
"McMonster",
|
"McMonster",
|
||||||
"Rail",
|
|
||||||
"Railfail536",
|
|
||||||
"Sp5uhe",
|
"Sp5uhe",
|
||||||
"Wpedzich"
|
"Wpedzich"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Punkty za edycje",
|
"contributionscores": "Punkty za edycje",
|
||||||
"contributionscores-desc": "Wylicza [[Special:ContributionScores|punkty za edycje]] dla użytkowników",
|
"contributionscores-desc": "Wylicza [[Special:ContributionScores|punkty za edycje]] dla użytkowników",
|
||||||
"contributionscores-info": "Wynik jest uzależniony przede wszystkim od liczby edytowanych unikalnych stron z uwzględnieniem dużej liczby edycji – zakładając wyższą wartość tworzenia nowych artykułów.",
|
"contributionscores-info": "Punkty za edycje naliczane są następującą metodą:\n*1 punkt za każdą edytowaną unikalną stronę\n*pierwiastek kwadratowy z (ogólna liczba edycji) - (wszystkich unikalnych stron) * 2\nTaki sposób naliczania pozwala wyważyć różnorodność edycji względem liczby edycji. Zasadniczo wynik uzależniony jest od liczby edytowanych unikalnych stron z uwzględnieniem dużej liczby edycji – zakładając wyższą wartość tworzenia nowych artykułów.",
|
||||||
"contributionscores-top": "($1 najlepszych)",
|
"contributionscores-top": "($1 najlepszych)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Ostatni 1 dzień|Ostatnie $1 dni|Ostatnich $1 dni}}",
|
"contributionscores-days": "{{PLURAL:$1|Ostatni 1 dzień|Ostatnie $1 dni|Ostatnich $1 dni}}",
|
||||||
"contributionscores-allrevisions": "Cała aktywność",
|
"contributionscores-allrevisions": "Cała aktywność",
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Abbas dhothar",
|
|
||||||
"BukhariSaeed"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-days": "پچھلے{{PLURAL:$1|دن|$1 دناں}}",
|
|
||||||
"contributionscores-changes": "تبدیلیاں",
|
|
||||||
"contributionscores-username": "ورتن آلے دا ناں"
|
|
||||||
}
|
|
|
@ -1,15 +1,11 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Ahmed-Najib-Biabani-Ibrahimkhel",
|
"Ahmed-Najib-Biabani-Ibrahimkhel"
|
||||||
"Amjad Khan",
|
|
||||||
"Baloch Khan"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores-days": "وروستۍ {{PLURAL:$1|ورځ|$1 ورځې}}",
|
"contributionscores-days": "وروستۍ {{PLURAL:$1|ورځ|$1 ورځې}}",
|
||||||
"contributionscores-allrevisions": "هر وخت",
|
"contributionscores-allrevisions": "هر وخت",
|
||||||
"contributionscores-score": "سکور (ګولونه)",
|
|
||||||
"contributionscores-rank": "رتبه",
|
|
||||||
"contributionscores-pages": "مخونه",
|
"contributionscores-pages": "مخونه",
|
||||||
"contributionscores-changes": "بدلونونه",
|
"contributionscores-changes": "بدلونونه",
|
||||||
"contributionscores-username": "کارن-نوم",
|
"contributionscores-username": "کارن-نوم",
|
||||||
|
|
|
@ -1,24 +1,21 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"!Silent",
|
|
||||||
"Brunoy Anastasiya Seryozhenko",
|
"Brunoy Anastasiya Seryozhenko",
|
||||||
"Crazymadlover",
|
"Crazymadlover",
|
||||||
"Eduardo.mps",
|
"Eduardo.mps",
|
||||||
"Giro720",
|
"Giro720",
|
||||||
"HenriqueCrang",
|
|
||||||
"Luckas",
|
"Luckas",
|
||||||
"Opraco"
|
"HenriqueCrang"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Pontuação de contribuições",
|
"contributionscores": "Pontuação de contribuições",
|
||||||
"contributionscores-desc": "Inquire a base de dados wiki sobre os mais altos [[Special:ContributionScores|volumes de contribuição dos utilizadores]]",
|
"contributionscores-desc": "Inquire a base de dados wiki sobre os mais altos [[Special:ContributionScores|volumes de contribuição dos utilizadores]]",
|
||||||
"contributionscores-info": "A pontuação mede, principalmente, as páginas únicas editadas, tendo em consideração o alto volume de edições.",
|
"contributionscores-info": "As pontuações são calculadas da seguinte forma:\n*1 ponto por cada página única editada\n*Raiz quadrada de (Total de Edições Feitas) - (Total de Páginas Únicas) * 2\nPontuações calculadas desta forma pesam a diversidade de edições relativamente ao volume de edições. Basicamente, esta pontuação mede primariamente páginas únicas editadas, com consideração pelo alto volume de edições - assumindo serem páginas de qualidade mais alta.",
|
||||||
"contributionscores-top": "(top $1)",
|
"contributionscores-top": "(Top $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Último dia|Últimos $1 dias}}",
|
"contributionscores-days": "Últimos {{PLURAL:$1|día|$1 días}}",
|
||||||
"contributionscores-allrevisions": "Desde sempre",
|
"contributionscores-allrevisions": "Desde sempre",
|
||||||
"contributionscores-score": "Pontuação",
|
"contributionscores-score": "Pontuação",
|
||||||
"contributionscores-rank": "Classificação",
|
|
||||||
"contributionscores-pages": "Páginas",
|
"contributionscores-pages": "Páginas",
|
||||||
"contributionscores-changes": "Mudanças",
|
"contributionscores-changes": "Mudanças",
|
||||||
"contributionscores-username": "Nome de usuário",
|
"contributionscores-username": "Nome de usuário",
|
||||||
|
|
|
@ -1,12 +1,11 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Fúlvio",
|
|
||||||
"Hamilton Abreu",
|
"Hamilton Abreu",
|
||||||
"Malafaya",
|
"Malafaya",
|
||||||
"Vitorvicentevalente",
|
|
||||||
"Waldir",
|
"Waldir",
|
||||||
"Waldyrious"
|
"Vitorvicentevalente",
|
||||||
|
"Fúlvio"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Pontuação de contribuições",
|
"contributionscores": "Pontuação de contribuições",
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
"Jon Harald Søby",
|
"Jon Harald Søby",
|
||||||
"JtFuruhata",
|
"JtFuruhata",
|
||||||
"Kalan",
|
"Kalan",
|
||||||
"Liuxinyu970226",
|
|
||||||
"Mormegil",
|
"Mormegil",
|
||||||
"Purodha",
|
"Purodha",
|
||||||
"Raymond",
|
"Raymond",
|
||||||
"Shirayuki",
|
"Shirayuki",
|
||||||
|
"Liuxinyu970226",
|
||||||
"Tacsipacsi"
|
"Tacsipacsi"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"AlimanRuna"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-days": "Qayna {{PLURAL:$1|p'unchaw|$1 p'unchawkuna}}"
|
|
||||||
}
|
|
|
@ -2,7 +2,6 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Ahonc",
|
"Ahonc",
|
||||||
"Kaganer",
|
|
||||||
"Kalan",
|
"Kalan",
|
||||||
"Lockal",
|
"Lockal",
|
||||||
"Okras",
|
"Okras",
|
||||||
|
@ -12,7 +11,7 @@
|
||||||
},
|
},
|
||||||
"contributionscores": "Оценка вклада",
|
"contributionscores": "Оценка вклада",
|
||||||
"contributionscores-desc": "Определяет из базы данных [[Special:ContributionScores|участников с наибольшим числом правок]]",
|
"contributionscores-desc": "Определяет из базы данных [[Special:ContributionScores|участников с наибольшим числом правок]]",
|
||||||
"contributionscores-info": "Оценка рассчитывается в первую очередь по количеству отредактированных уникальных страниц, с учётом величины сделанных изменений.",
|
"contributionscores-info": "Оценка рассчитывается в первую очередь по количеству отредактированных уникальных страниц, с учётом большего объёма редактирования.",
|
||||||
"contributionscores-top": "(лучшие $1)",
|
"contributionscores-top": "(лучшие $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|1=Последний день|Последний $1 день|Последние $1 дня|Последние $1 дней}}",
|
"contributionscores-days": "{{PLURAL:$1|1=Последний день|Последний $1 день|Последние $1 дня|Последние $1 дней}}",
|
||||||
"contributionscores-allrevisions": "За всё время",
|
"contributionscores-allrevisions": "За всё время",
|
||||||
|
|
12
i18n/sd.json
12
i18n/sd.json
|
@ -1,12 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Mehtab ahmed",
|
|
||||||
"Tweety"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-days": "گذريل {{PLURAL:$1|ڏينھن|$1 ڏينھن}}",
|
|
||||||
"contributionscores-pages": "صفحا",
|
|
||||||
"contributionscores-changes": "بدلاءَ",
|
|
||||||
"contributionscores-username": "واپرائيندڙ-نانءُ"
|
|
||||||
}
|
|
20
i18n/sh.json
20
i18n/sh.json
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Vlad5250"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores": "Ocjene za doprinose",
|
|
||||||
"contributionscores-desc": "Preuzima podatke s wikibaze podataka za [[Special:ContributionScores|korisnike s najviše doprinosa]]",
|
|
||||||
"contributionscores-info": "Saldo je mjera koja izražava uređivanja pojedinačnih stranica, uzimajući u obzir velike količine uređivanja.",
|
|
||||||
"contributionscores-top": "(Najboljih $1)",
|
|
||||||
"contributionscores-days": "{{PLURAL:$1|Posljednji $1 dan|Posljednja $1 dana|Posljednjih $1 dana}}",
|
|
||||||
"contributionscores-allrevisions": "Svih vremena",
|
|
||||||
"contributionscores-score": "Ocjena",
|
|
||||||
"contributionscores-rank": "Rang",
|
|
||||||
"contributionscores-pages": "Stranice",
|
|
||||||
"contributionscores-changes": "Izmjene",
|
|
||||||
"contributionscores-username": "Korisničko ime",
|
|
||||||
"contributionscores-invalidusername": "Nevaljano korisničko ime",
|
|
||||||
"contributionscores-invalidmetric": "Nevaljana metrika"
|
|
||||||
}
|
|
11
i18n/sk.json
11
i18n/sk.json
|
@ -2,19 +2,16 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Helix84",
|
"Helix84",
|
||||||
"Luky001",
|
"Teslaton"
|
||||||
"Teslaton",
|
|
||||||
"Yardom78"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Skóre príspevkov",
|
"contributionscores": "Skóre príspevkov",
|
||||||
"contributionscores-desc": "Získava údaje z databázy wiki o [[Special:ContributionScores|množstve používateľských príspevkov]]",
|
"contributionscores-desc": "Zisťuje naväčší [[Special:ContributionScores|objem používateľských príspevkov]] z databázy wiki",
|
||||||
"contributionscores-info": "Skóre primárne meria jedinečné editované stránky s ohľadom na veľké množstvo úprav.",
|
"contributionscores-info": "Skóre sa počíta nasledovne:\n*1 bod za každú jedinečnú stránku, ktorú používateľ upravoval\n*Odmocnina z (celkom úprav) - (celkom jedinečných stránok) * 2\nSkóre vypočítané týmto spôsobom vážia diverzitu úprav viac ako objem úprav. V podstate toto skóre meria najmä počet upravovaných jedinečných stránok s prihliadnutím na vysoký objem úprav; čo sa pokladá za stránku vyššej kvality.",
|
||||||
"contributionscores-top": "(Najlepších $1)",
|
"contributionscores-top": "(Najlepších $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Posledný $1 deň|Posledné $1 dni|Posledných $1 dní}}",
|
"contributionscores-days": "{{PLURAL:$1|Posledný $1 deň|Posledné $1 dni|Posledných $1 dní}}",
|
||||||
"contributionscores-allrevisions": "Celkom",
|
"contributionscores-allrevisions": "Celá história",
|
||||||
"contributionscores-score": "Skóre",
|
"contributionscores-score": "Skóre",
|
||||||
"contributionscores-rank": "Poradie",
|
|
||||||
"contributionscores-pages": "Stránky",
|
"contributionscores-pages": "Stránky",
|
||||||
"contributionscores-changes": "Zmeny",
|
"contributionscores-changes": "Zmeny",
|
||||||
"contributionscores-username": "Používateľské meno",
|
"contributionscores-username": "Používateľské meno",
|
||||||
|
|
|
@ -1,23 +1,16 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Acamicamacaraca",
|
|
||||||
"Kizule",
|
|
||||||
"Milicevic01",
|
"Milicevic01",
|
||||||
"Rancher",
|
"Rancher",
|
||||||
"Sasa Stefanovic",
|
"Sasa Stefanovic",
|
||||||
"Zoranzoki21",
|
|
||||||
"Михајло Анђелковић"
|
"Михајло Анђелковић"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Оцене доприноса",
|
|
||||||
"contributionscores-desc": "Анкетира вики базу података за највиши [[Special:ContributionScores|волумен доприноса корисника]]",
|
|
||||||
"contributionscores-info": "Резултат првенствено мери јединствене измењене странице, узимајући у обзир велику количину уређивања.",
|
|
||||||
"contributionscores-top": "(првих $1)",
|
"contributionscores-top": "(првих $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|1=Последњег дана|Последњих $1 дана}}",
|
"contributionscores-days": "{{PLURAL:$1|1=Последњег дана|Последњих $1 дана}}",
|
||||||
"contributionscores-allrevisions": "Свих времена",
|
"contributionscores-allrevisions": "Свих времена",
|
||||||
"contributionscores-score": "Резултат",
|
"contributionscores-score": "Оцена",
|
||||||
"contributionscores-rank": "Ранг",
|
|
||||||
"contributionscores-pages": "Странице",
|
"contributionscores-pages": "Странице",
|
||||||
"contributionscores-changes": "Измене",
|
"contributionscores-changes": "Измене",
|
||||||
"contributionscores-username": "Корисничко име",
|
"contributionscores-username": "Корисничко име",
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
"contributionscores-score": "Peunteun",
|
"contributionscores-score": "Peunteun",
|
||||||
"contributionscores-pages": "Kaca",
|
"contributionscores-pages": "Kaca",
|
||||||
"contributionscores-changes": "Parobahan",
|
"contributionscores-changes": "Parobahan",
|
||||||
"contributionscores-username": "Sandiasma",
|
"contributionscores-username": "Landihan",
|
||||||
"contributionscores-invalidusername": "Pamaké teu cocog",
|
"contributionscores-invalidusername": "Pamaké teu cocog",
|
||||||
"contributionscores-invalidmetric": "matrik teu cocog"
|
"contributionscores-invalidmetric": "matrik teu cocog"
|
||||||
}
|
}
|
||||||
|
|
12
i18n/th.json
12
i18n/th.json
|
@ -1,22 +1,16 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Aefgh39622",
|
|
||||||
"Ans",
|
|
||||||
"Woraponboonkerd"
|
"Woraponboonkerd"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "คะแนนการแก้ไข",
|
"contributionscores": "คะแนนการแก้ไข",
|
||||||
"contributionscores-desc": "จัดอันดับฐานข้อมูลของวิกิสำหรับ[[Special:ContributionScores|ผู้ใ้ช้ที่มีจำนวนการแก้ไขสูงสุด]]",
|
"contributionscores-desc": "จัดอันดับฐานข้อมูลของวิกิสำหรับ[[Special:ContributionScores|ผู้ใ้ช้ที่มีจำนวนการแก้ไขสูงสุด]]",
|
||||||
"contributionscores-info": "คะแนนคิดจากจำนวนหน้าที่เข้าร่วมแก้ไข พร้อมพิจารณาปริมาณการแก้ไขเป็นหลัก",
|
"contributionscores-info": "วิธีการคิดคะแนนเป็นดังต่อไปนี้:\n* หนึ่ง (1) คะแนนต่อจำนวนหน้าที่เข้าร่วมแก้ไข (ชื่อของหน้าไม่ซ้ำกัน)\n* รากที่สองของจำนวนการแก้ไขทั้งหมด - จำนวนหน้าทั้งหมดที่ร่วมแก้ไข * 2\nคะแนนจะถูกคิดโดยให้น้ำหนักของการแก้ไขที่หลากหลายมากกว่าจำนวนการแก้ไข\nโดยทั่วไป คะแนนนี้ชี้วัดถึงจำนวนหน้าต่างๆ ที่เข้าร่วมแก้ไข โดยคำนึงถึงจำนวนการแก้ไขทั้งหมดด้วย จึงคาดการณ์ได้ว่าจะทำให้มีหน้าที่มีคุณภาพสูงขึ้น",
|
||||||
"contributionscores-top": "($1 อันดับแรก)",
|
|
||||||
"contributionscores-days": "$1 {{PLURAL:$1|วัน|วัน}} ที่แล้ว",
|
"contributionscores-days": "$1 {{PLURAL:$1|วัน|วัน}} ที่แล้ว",
|
||||||
"contributionscores-allrevisions": "ตลอดเวลา",
|
|
||||||
"contributionscores-score": "คะแนน",
|
"contributionscores-score": "คะแนน",
|
||||||
"contributionscores-rank": "การจัดอันดับ",
|
|
||||||
"contributionscores-pages": "จำนวนหน้า",
|
"contributionscores-pages": "จำนวนหน้า",
|
||||||
"contributionscores-changes": "การเปลี่ยนแปลง",
|
"contributionscores-changes": "จำนวนการเปลี่ยนแปลง",
|
||||||
"contributionscores-username": "ชื่อผู้ใช้",
|
"contributionscores-username": "ชื่อผู้ใช้",
|
||||||
"contributionscores-invalidusername": "ชื่อผู้ใช้ไม่ถูกต้อง",
|
"contributionscores-invalidusername": "ชื่อผู้ใช้ไม่ถูกต้อง"
|
||||||
"contributionscores-invalidmetric": "เกณฑ์ชี้วัดไม่ถูกต้อง"
|
|
||||||
}
|
}
|
||||||
|
|
10
i18n/ti.json
10
i18n/ti.json
|
@ -1,10 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Joanmp17"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-pages": "ገጻት",
|
|
||||||
"contributionscores-changes": "ለውጥታት",
|
|
||||||
"contributionscores-username": "ስም ተጠቃሚ"
|
|
||||||
}
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Hedda",
|
|
||||||
"Joseph",
|
"Joseph",
|
||||||
"Karduelis",
|
"Karduelis",
|
||||||
"Mach",
|
"Mach",
|
||||||
|
@ -9,14 +8,13 @@
|
||||||
"Vito Genovese"
|
"Vito Genovese"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Katkı puanları",
|
"contributionscores": "Katkı skorları",
|
||||||
"contributionscores-desc": "En yüksek [[Special:ContributionScores|kullanıcı katkı hacmi]] için viki veritabanını sorgular",
|
"contributionscores-desc": "En yüksek [[Special:ContributionScores|kullanıcı katkı hacmi]] için viki veritabanını sorgular",
|
||||||
"contributionscores-info": "Puanlama, öncelikle yüksek düzenleme hacmi dikkate alınarak düzenlenmiş benzersiz sayfaları ölçer.",
|
"contributionscores-info": "Skorlar aşağıdaki şekilde hesaplanmaktadır:\n*Değişiklik yapılan her farklı sayfa için bir (1) puan\n*(Yapılan toplam değişiklik) - (toplam farklı sayfa) * 2 işleminin karekökü\nBu şekilde hesaplanan skorlar, değişiklik sayısı ile değişiklik çeşitliliği arasında ağırlık kurmaktadır.\nTemel olarak bu skor, yüksek değişiklik sayısının yüksek kaliteli bir sayfa olduğu varsayımıyla değişiklik yapılan farklı sayfa sayısını ölçmektedir.",
|
||||||
"contributionscores-top": "(Zirvedeki $1 kişi)",
|
"contributionscores-top": "(En yüksek $1)",
|
||||||
"contributionscores-days": "Son $1 {{PLURAL:$1|gün|gün}}",
|
"contributionscores-days": "Son $1 {{PLURAL:$1|gün|gün}}",
|
||||||
"contributionscores-allrevisions": "Tüm zamanlar",
|
"contributionscores-allrevisions": "Tüm zamanlar",
|
||||||
"contributionscores-score": "Puan",
|
"contributionscores-score": "Puan",
|
||||||
"contributionscores-rank": "Sıralama",
|
|
||||||
"contributionscores-pages": "Sayfalar",
|
"contributionscores-pages": "Sayfalar",
|
||||||
"contributionscores-changes": "Değişiklikler",
|
"contributionscores-changes": "Değişiklikler",
|
||||||
"contributionscores-username": "Kullanıcı adı",
|
"contributionscores-username": "Kullanıcı adı",
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Ерней",
|
|
||||||
"Ильнар"
|
"Ильнар"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -11,10 +10,10 @@
|
||||||
"contributionscores-top": "(Иң әйбәт $1)",
|
"contributionscores-top": "(Иң әйбәт $1)",
|
||||||
"contributionscores-days": "Соңгы {{PLURAL:$1|$1 көн өчен}}",
|
"contributionscores-days": "Соңгы {{PLURAL:$1|$1 көн өчен}}",
|
||||||
"contributionscores-allrevisions": "Бөтен вакыт өчен",
|
"contributionscores-allrevisions": "Бөтен вакыт өчен",
|
||||||
"contributionscores-score": "Бәя",
|
"contributionscores-score": "Билге",
|
||||||
"contributionscores-rank": "Ранг",
|
"contributionscores-rank": "Ранг",
|
||||||
"contributionscores-pages": "Битләр",
|
"contributionscores-pages": "Битләр саны",
|
||||||
"contributionscores-changes": "Төзәтмәләр",
|
"contributionscores-changes": "Үзгәртүләр",
|
||||||
"contributionscores-username": "Кулланучы исеме",
|
"contributionscores-username": "Кулланучы исеме",
|
||||||
"contributionscores-invalidusername": "Кулланучының исеме дөрес түгел",
|
"contributionscores-invalidusername": "Кулланучының исеме дөрес түгел",
|
||||||
"contributionscores-invalidmetric": "Ялгыш билгеләү"
|
"contributionscores-invalidmetric": "Ялгыш билгеләү"
|
||||||
|
|
|
@ -1,18 +1,17 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Candalua",
|
"Candalua"
|
||||||
"Fierodelveneto"
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "Ponteji contribusion",
|
"contributionscores": "Puntegi contributi",
|
||||||
"contributionscores-desc": "Intèroga el database de la wiki par el pi grando [[Special:ContributionScores|volume de contributi utente]]",
|
"contributionscores-desc": "Intèroga el database de la wiki par el pi grando [[Special:ContributionScores|volume de contributi utente]]",
|
||||||
"contributionscores-info": "I punti i vien calcolà come segue:\n*Un (1) punto par ogni diversa pagina modificà\n*Raìsa quadrata de (Tute le modifiche fate) - (Total de le pagine modificà) * 2\nFasendo i conti in sta maniera pesa piassè la diversità de le modifiche rispeto al nùmaro dei contributi.\nIn sostansa, sto puntegio el tien conto sopratuto de le diverse pagine modificà, tegnendo in considerazion anca un alto volume de modifiche - che fa pensar a na pi alta qualità de la pagina modificà.",
|
"contributionscores-info": "I punti i vien calcolà come segue:\n*Un (1) punto par ogni diversa pagina modificà\n*Raìsa quadrata de (Tute le modifiche fate) - (Total de le pagine modificà) * 2\nFasendo i conti in sta maniera pesa piassè la diversità de le modifiche rispeto al nùmaro dei contributi.\nIn sostansa, sto puntegio el tien conto sopratuto de le diverse pagine modificà, tegnendo in considerazion anca un alto volume de modifiche - che fa pensar a na pi alta qualità de la pagina modificà.",
|
||||||
"contributionscores-top": "(Ultimi $1)",
|
"contributionscores-top": "(Ultimi $1)",
|
||||||
"contributionscores-days": "{{PLURAL:$1|Ultimo zòrno|Ultimi $1 zòrni}}",
|
"contributionscores-days": "{{PLURAL:$1|Ultimo zòrno|Ultimi $1 zòrni}}",
|
||||||
"contributionscores-allrevisions": "Tute le revision",
|
"contributionscores-allrevisions": "Tute le revision",
|
||||||
"contributionscores-score": "Puntegio",
|
"contributionscores-score": "Puntegio",
|
||||||
"contributionscores-pages": "Pàjine",
|
"contributionscores-pages": "Pagine",
|
||||||
"contributionscores-changes": "Canbiamenti",
|
"contributionscores-changes": "Canbiamenti",
|
||||||
"contributionscores-username": "Nome utente",
|
"contributionscores-username": "Nome utente",
|
||||||
"contributionscores-invalidusername": "Nome utente mia valido",
|
"contributionscores-invalidusername": "Nome utente mia valido",
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Minh Nguyen",
|
"Minh Nguyen",
|
||||||
"Phjtieudoc",
|
|
||||||
"Vinhtantran"
|
"Vinhtantran"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -14,7 +13,7 @@
|
||||||
"contributionscores-allrevisions": "Từ trước đến nay",
|
"contributionscores-allrevisions": "Từ trước đến nay",
|
||||||
"contributionscores-score": "Điểm số",
|
"contributionscores-score": "Điểm số",
|
||||||
"contributionscores-pages": "Trang",
|
"contributionscores-pages": "Trang",
|
||||||
"contributionscores-changes": "Thay đổi",
|
"contributionscores-changes": "Các thay đổi",
|
||||||
"contributionscores-username": "Tên người dùng",
|
"contributionscores-username": "Tên người dùng",
|
||||||
"contributionscores-invalidusername": "Tên người dùng không hợp lệ",
|
"contributionscores-invalidusername": "Tên người dùng không hợp lệ",
|
||||||
"contributionscores-invalidmetric": "Chuẩn đo không hợp lệ"
|
"contributionscores-invalidmetric": "Chuẩn đo không hợp lệ"
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Moon0319",
|
|
||||||
"PhiLiP",
|
"PhiLiP",
|
||||||
"Roy17",
|
|
||||||
"Shinjiman",
|
"Shinjiman",
|
||||||
"Shirayuki",
|
"Shirayuki",
|
||||||
"Yueman"
|
"Yueman"
|
||||||
|
@ -14,7 +12,7 @@
|
||||||
"contributionscores-info": "呢個分數係會依主要嘅唯一編輯過嘅頁,同埋考慮高編輯量。",
|
"contributionscores-info": "呢個分數係會依主要嘅唯一編輯過嘅頁,同埋考慮高編輯量。",
|
||||||
"contributionscores-top": "(最高$1名)",
|
"contributionscores-top": "(最高$1名)",
|
||||||
"contributionscores-days": "最近$1日",
|
"contributionscores-days": "最近$1日",
|
||||||
"contributionscores-allrevisions": "有史以來",
|
"contributionscores-allrevisions": "全部時間",
|
||||||
"contributionscores-score": "分數",
|
"contributionscores-score": "分數",
|
||||||
"contributionscores-rank": "等級",
|
"contributionscores-rank": "等級",
|
||||||
"contributionscores-pages": "版",
|
"contributionscores-pages": "版",
|
||||||
|
|
|
@ -1,19 +1,18 @@
|
||||||
{
|
{
|
||||||
"@metadata": {
|
"@metadata": {
|
||||||
"authors": [
|
"authors": [
|
||||||
"Cwlin0416",
|
|
||||||
"Kly",
|
|
||||||
"LNDDYL",
|
|
||||||
"Liuxinyu970226",
|
|
||||||
"Mark85296341",
|
"Mark85296341",
|
||||||
"PhiLiP",
|
"PhiLiP",
|
||||||
"Shinjiman",
|
"Shinjiman",
|
||||||
"Shirayuki",
|
"Shirayuki",
|
||||||
"Simon Shek"
|
"Simon Shek",
|
||||||
|
"Cwlin0416",
|
||||||
|
"Liuxinyu970226",
|
||||||
|
"LNDDYL"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"contributionscores": "貢獻分數",
|
"contributionscores": "貢獻分數",
|
||||||
"contributionscores-desc": "調查 Wiki 資料庫中[[Special:ContributionScores|貢獻最多的使用者]]",
|
"contributionscores-desc": "調查 Wiki 資料庫中 [[Special:ContributionScores|貢獻最多的使用者]]",
|
||||||
"contributionscores-info": "此分數主要以編輯個別頁面數量計算並考慮編輯次數。",
|
"contributionscores-info": "此分數主要以編輯個別頁面數量計算並考慮編輯次數。",
|
||||||
"contributionscores-top": "(前 $1 名)",
|
"contributionscores-top": "(前 $1 名)",
|
||||||
"contributionscores-days": "最近 {{PLURAL:$1|天|$1 天}}",
|
"contributionscores-days": "最近 {{PLURAL:$1|天|$1 天}}",
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
{
|
|
||||||
"@metadata": {
|
|
||||||
"authors": [
|
|
||||||
"Liuxinyu970226"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"contributionscores-username": "用戶名稱"
|
|
||||||
}
|
|
6332
package-lock.json
generated
6332
package-lock.json
generated
File diff suppressed because it is too large
Load diff
11
package.json
11
package.json
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
"name": "ContributionScores",
|
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "grunt test"
|
"test": "grunt test"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"eslint-config-wikimedia": "0.28.2",
|
"grunt": "0.4.5",
|
||||||
"grunt": "1.6.1",
|
"grunt-cli": "0.1.13",
|
||||||
"grunt-banana-checker": "0.13.0",
|
"grunt-contrib-jshint": "0.11.3",
|
||||||
"grunt-eslint": "24.3.0"
|
"grunt-jscs": "2.5.0",
|
||||||
|
"grunt-jsonlint": "1.0.7",
|
||||||
|
"grunt-banana-checker": "0.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
8
phpcs.xml
Normal file
8
phpcs.xml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<ruleset>
|
||||||
|
<rule ref="vendor/mediawiki/mediawiki-codesniffer/MediaWiki"/>
|
||||||
|
<file>.</file>
|
||||||
|
<arg name="extensions" value="php,php5,inc"/>
|
||||||
|
<arg name="encoding" value="utf8"/>
|
||||||
|
<exclude-pattern>vendor</exclude-pattern>
|
||||||
|
</ruleset>
|
|
@ -1,436 +0,0 @@
|
||||||
<?php
|
|
||||||
/** \file
|
|
||||||
* \brief Contains code for the ContributionScores Class (extends SpecialPage).
|
|
||||||
*/
|
|
||||||
|
|
||||||
use MediaWiki\MediaWikiServices;
|
|
||||||
|
|
||||||
/// Special page class for the Contribution Scores extension
|
|
||||||
/**
|
|
||||||
* Special page that generates a list of wiki contributors based
|
|
||||||
* on edit diversity (unique pages edited) and edit volume (total
|
|
||||||
* number of edits.
|
|
||||||
*
|
|
||||||
* @ingroup Extensions
|
|
||||||
* @author Tim Laqua <t.laqua@gmail.com>
|
|
||||||
*/
|
|
||||||
class ContributionScores extends IncludableSpecialPage {
|
|
||||||
const CONTRIBUTIONSCORES_MAXINCLUDELIMIT = 50;
|
|
||||||
|
|
||||||
public function __construct() {
|
|
||||||
parent::__construct( 'ContributionScores' );
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function onParserFirstCallInit( Parser $parser ) {
|
|
||||||
$parser->setFunctionHook( 'cscore', [ self::class, 'efContributionScoresRender' ] );
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function efContributionScoresRender( $parser, $usertext, $metric = 'score' ) {
|
|
||||||
global $wgContribScoreDisableCache, $wgContribScoreUseRoughEditCount;
|
|
||||||
|
|
||||||
if ( $wgContribScoreDisableCache ) {
|
|
||||||
$parser->getOutput()->updateCacheExpiry( 0 );
|
|
||||||
}
|
|
||||||
|
|
||||||
$user = User::newFromName( $usertext );
|
|
||||||
$loadBalancer = MediaWikiServices::getInstance()->getDBLoadBalancer();
|
|
||||||
$dbr = $loadBalancer->getConnection( DB_REPLICA );
|
|
||||||
|
|
||||||
if ( $user instanceof User && $user->isRegistered() ) {
|
|
||||||
global $wgLang;
|
|
||||||
$revVar = $wgContribScoreUseRoughEditCount ? 'user_editcount' : 'COUNT(rev_id)';
|
|
||||||
|
|
||||||
$revWhere = ActorMigration::newMigration()->getWhere( $dbr, 'rev_user', $user );
|
|
||||||
if ( $metric == 'score' ) {
|
|
||||||
$row = $dbr->selectRow(
|
|
||||||
[ 'revision' ] + $revWhere['tables'],
|
|
||||||
[ 'wiki_rank' => "COUNT(DISTINCT rev_page)+SQRT($revVar-COUNT(DISTINCT rev_page))*2" ],
|
|
||||||
$revWhere['conds'],
|
|
||||||
__METHOD__,
|
|
||||||
[],
|
|
||||||
$revWhere['joins']
|
|
||||||
);
|
|
||||||
$output = $wgLang->formatNum( round( $row->wiki_rank, 0 ) );
|
|
||||||
} elseif ( $metric == 'changes' ) {
|
|
||||||
$row = $dbr->selectRow(
|
|
||||||
[ 'revision' ] + $revWhere['tables'],
|
|
||||||
[ 'rev_count' => $revVar ],
|
|
||||||
$revWhere['conds'],
|
|
||||||
__METHOD__,
|
|
||||||
[],
|
|
||||||
$revWhere['joins']
|
|
||||||
);
|
|
||||||
$output = $wgLang->formatNum( $row->rev_count );
|
|
||||||
} elseif ( $metric == 'pages' ) {
|
|
||||||
$row = $dbr->selectRow(
|
|
||||||
[ 'revision' ] + $revWhere['tables'],
|
|
||||||
[ 'page_count' => 'COUNT(DISTINCT rev_page)' ],
|
|
||||||
$revWhere['conds'],
|
|
||||||
__METHOD__,
|
|
||||||
[],
|
|
||||||
$revWhere['joins']
|
|
||||||
);
|
|
||||||
$output = $wgLang->formatNum( $row->page_count );
|
|
||||||
} else {
|
|
||||||
$output = wfMessage( 'contributionscores-invalidmetric' )->text();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$output = wfMessage( 'contributionscores-invalidusername' )->text();
|
|
||||||
}
|
|
||||||
return $parser->insertStripItem( $output, $parser->getStripState() );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Function fetch Contribution Scores data from database
|
|
||||||
*
|
|
||||||
* @param int $days Days in the past to run report for
|
|
||||||
* @param int $limit Maximum number of users to return (default 50)
|
|
||||||
* @return array Data including the requested Contribution Scores.
|
|
||||||
*/
|
|
||||||
public static function getContributionScoreData( $days, $limit ) {
|
|
||||||
global $wgContribScoreIgnoreBots, $wgContribScoreIgnoreBlockedUsers, $wgContribScoreIgnoreUsernames,
|
|
||||||
$wgContribScoreUseRoughEditCount;
|
|
||||||
|
|
||||||
$loadBalancer = MediaWikiServices::getInstance()->getDBLoadBalancer();
|
|
||||||
$dbr = $loadBalancer->getConnection( DB_REPLICA );
|
|
||||||
|
|
||||||
$revQuery = ActorMigration::newMigration()->getJoin( 'rev_user' );
|
|
||||||
$revQuery['tables'] = array_merge( [ 'revision' ], $revQuery['tables'] );
|
|
||||||
|
|
||||||
$revUser = $revQuery['fields']['rev_user'];
|
|
||||||
$revUsername = $revQuery['fields']['rev_user_text'];
|
|
||||||
|
|
||||||
$sqlWhere = [];
|
|
||||||
|
|
||||||
if ( $days > 0 ) {
|
|
||||||
$date = time() - ( 60 * 60 * 24 * $days );
|
|
||||||
$sqlWhere[] = 'rev_timestamp > ' . $dbr->addQuotes( $dbr->timestamp( $date ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
$sqlVars = [
|
|
||||||
'rev_user' => $revUser,
|
|
||||||
'page_count' => 'COUNT(DISTINCT rev_page)'
|
|
||||||
];
|
|
||||||
if ( $wgContribScoreUseRoughEditCount ) {
|
|
||||||
$revQuery['tables'][] = 'user';
|
|
||||||
$revQuery['joins']['user'] = [ 'LEFT JOIN', [ "$revUser != 0", "user_id = $revUser" ] ];
|
|
||||||
$sqlVars['rev_count'] = 'user_editcount';
|
|
||||||
} else {
|
|
||||||
$sqlVars['rev_count'] = 'COUNT(rev_id)';
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( $wgContribScoreIgnoreBlockedUsers ) {
|
|
||||||
$sqlWhere[] = "{$revUser} NOT IN " .
|
|
||||||
$dbr->buildSelectSubquery( [
|
|
||||||
'block',
|
|
||||||
'block_target'
|
|
||||||
],
|
|
||||||
'bt_user',
|
|
||||||
'bt_user <> 0',
|
|
||||||
__METHOD__,
|
|
||||||
[],
|
|
||||||
[
|
|
||||||
'block_target' => [ 'JOIN', [
|
|
||||||
'bl_target=bt_id'
|
|
||||||
] ]
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( $wgContribScoreIgnoreBots ) {
|
|
||||||
$sqlWhere[] = "{$revUser} NOT IN " .
|
|
||||||
$dbr->buildSelectSubquery( 'user_groups', 'ug_user', [
|
|
||||||
'ug_group' => 'bot',
|
|
||||||
'ug_expiry IS NULL OR ug_expiry >= ' . $dbr->addQuotes( $dbr->timestamp() )
|
|
||||||
], __METHOD__ );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( count( $wgContribScoreIgnoreUsernames ) ) {
|
|
||||||
$listIgnoredUsernames = $dbr->makeList( $wgContribScoreIgnoreUsernames );
|
|
||||||
$sqlWhere[] = "{$revUsername} NOT IN ($listIgnoredUsernames)";
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( $dbr->unionSupportsOrderAndLimit() ) {
|
|
||||||
$order = [
|
|
||||||
'GROUP BY' => 'rev_user',
|
|
||||||
'ORDER BY' => 'page_count DESC',
|
|
||||||
'LIMIT' => $limit
|
|
||||||
];
|
|
||||||
} else {
|
|
||||||
$order = [ 'GROUP BY' => 'rev_user' ];
|
|
||||||
}
|
|
||||||
|
|
||||||
$sqlMostPages = $dbr->selectSQLText(
|
|
||||||
$revQuery['tables'],
|
|
||||||
$sqlVars,
|
|
||||||
$sqlWhere,
|
|
||||||
__METHOD__,
|
|
||||||
$order,
|
|
||||||
$revQuery['joins']
|
|
||||||
);
|
|
||||||
|
|
||||||
if ( $dbr->unionSupportsOrderAndLimit() ) {
|
|
||||||
$order['ORDER BY'] = 'rev_count DESC';
|
|
||||||
}
|
|
||||||
|
|
||||||
$sqlMostRevs = $dbr->selectSQLText(
|
|
||||||
$revQuery['tables'],
|
|
||||||
$sqlVars,
|
|
||||||
$sqlWhere,
|
|
||||||
__METHOD__,
|
|
||||||
$order,
|
|
||||||
$revQuery['joins']
|
|
||||||
);
|
|
||||||
|
|
||||||
$sqlMostPagesOrRevs = $dbr->unionQueries( [ $sqlMostPages, $sqlMostRevs ], false );
|
|
||||||
$res = $dbr->select(
|
|
||||||
[
|
|
||||||
'u' => 'user',
|
|
||||||
's' => new Wikimedia\Rdbms\Subquery( $sqlMostPagesOrRevs ),
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'user_id',
|
|
||||||
'user_name',
|
|
||||||
'user_real_name',
|
|
||||||
'page_count',
|
|
||||||
'rev_count',
|
|
||||||
'wiki_rank' => 'page_count+SQRT(rev_count-page_count)*2',
|
|
||||||
],
|
|
||||||
[],
|
|
||||||
__METHOD__,
|
|
||||||
[
|
|
||||||
'ORDER BY' => 'wiki_rank DESC',
|
|
||||||
'LIMIT' => $limit,
|
|
||||||
],
|
|
||||||
[
|
|
||||||
's' => [
|
|
||||||
'JOIN',
|
|
||||||
'user_id=rev_user'
|
|
||||||
]
|
|
||||||
]
|
|
||||||
);
|
|
||||||
$ret = iterator_to_array( $res );
|
|
||||||
return $ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Generates a "Contribution Scores" table for a given LIMIT and date range
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Function generates Contribution Scores tables in HTML format (not wikiText)
|
|
||||||
*
|
|
||||||
* @param int $days Days in the past to run report for
|
|
||||||
* @param int $limit Maximum number of users to return (default 50)
|
|
||||||
* @param string|null $title The title of the table
|
|
||||||
* @param array $options array of options (default none; nosort/notools)
|
|
||||||
* @return string Html Table representing the requested Contribution Scores.
|
|
||||||
*/
|
|
||||||
function genContributionScoreTable( $days, $limit, $title = null, $options = 'none' ) {
|
|
||||||
global $wgContribScoresUseRealName, $wgContribScoreCacheTTL;
|
|
||||||
|
|
||||||
$opts = explode( ',', strtolower( $options ) );
|
|
||||||
|
|
||||||
$sortable = in_array( 'nosort', $opts ) ? '' : ' sortable';
|
|
||||||
|
|
||||||
$output = "<table class=\"wikitable contributionscores plainlinks{$sortable}\" >\n" .
|
|
||||||
"<tr class='header'>\n" .
|
|
||||||
Html::element( 'th', [], $this->msg( 'contributionscores-rank' )->text() ) .
|
|
||||||
Html::element( 'th', [], $this->msg( 'contributionscores-score' )->text() ) .
|
|
||||||
Html::element( 'th', [], $this->msg( 'contributionscores-pages' )->text() ) .
|
|
||||||
Html::element( 'th', [], $this->msg( 'contributionscores-changes' )->text() ) .
|
|
||||||
Html::element( 'th', [], $this->msg( 'contributionscores-username' )->text() );
|
|
||||||
|
|
||||||
$cache = MediaWikiServices::getInstance()->getMainWANObjectCache();
|
|
||||||
$data = $cache->getWithSetCallback(
|
|
||||||
$cache->makeKey( 'contributionscores', 'data-' . (string)$days ),
|
|
||||||
$wgContribScoreCacheTTL * 60,
|
|
||||||
function () use ( $days ) {
|
|
||||||
// Use max limit, as limit doesn't matter with performance.
|
|
||||||
// Avoid purge multiple times since limit on transclusion can be vary.
|
|
||||||
return self::getContributionScoreData( $days, self::CONTRIBUTIONSCORES_MAXINCLUDELIMIT );
|
|
||||||
} );
|
|
||||||
|
|
||||||
$lang = $this->getLanguage();
|
|
||||||
|
|
||||||
$altrow = '';
|
|
||||||
$user_rank = 1;
|
|
||||||
|
|
||||||
foreach ( $data as $row ) {
|
|
||||||
if ( $user_rank > $limit ) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use real name if option used and real name present.
|
|
||||||
if ( $wgContribScoresUseRealName && $row->user_real_name !== '' ) {
|
|
||||||
$userLink = Linker::userLink(
|
|
||||||
$row->user_id,
|
|
||||||
$row->user_name,
|
|
||||||
$row->user_real_name
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
$userLink = Linker::userLink(
|
|
||||||
$row->user_id,
|
|
||||||
$row->user_name
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
$output .= Html::closeElement( 'tr' );
|
|
||||||
$output .= "<tr class='{$altrow}'>\n" .
|
|
||||||
"<td class='content' style='padding-right:10px;text-align:right;'>" .
|
|
||||||
$lang->formatNum( $user_rank ) .
|
|
||||||
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
|
||||||
$lang->formatNum( round( $row->wiki_rank, 0 ) ) .
|
|
||||||
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
|
||||||
$lang->formatNum( $row->page_count ) .
|
|
||||||
"\n</td><td class='content' style='padding-right:10px;text-align:right;'>" .
|
|
||||||
$lang->formatNum( $row->rev_count ) .
|
|
||||||
"\n</td><td class='content'>" .
|
|
||||||
$userLink;
|
|
||||||
|
|
||||||
# Option to not display user tools
|
|
||||||
if ( !in_array( 'notools', $opts ) ) {
|
|
||||||
$output .= Linker::userToolLinks( $row->user_id, $row->user_name );
|
|
||||||
}
|
|
||||||
|
|
||||||
$output .= Html::closeElement( 'td' ) . "\n";
|
|
||||||
|
|
||||||
if ( $altrow == '' && empty( $sortable ) ) {
|
|
||||||
$altrow = 'odd ';
|
|
||||||
} else {
|
|
||||||
$altrow = '';
|
|
||||||
}
|
|
||||||
|
|
||||||
$user_rank++;
|
|
||||||
}
|
|
||||||
$output .= Html::closeElement( 'tr' );
|
|
||||||
$output .= Html::closeElement( 'table' );
|
|
||||||
|
|
||||||
// Transcluded on a normal wiki page.
|
|
||||||
if ( !empty( $title ) ) {
|
|
||||||
$output = Html::rawElement( 'table',
|
|
||||||
[
|
|
||||||
'style' => 'border-spacing: 0; padding: 0',
|
|
||||||
'class' => 'contributionscores-wrapper',
|
|
||||||
'lang' => htmlspecialchars( $lang->getCode() ),
|
|
||||||
'dir' => $lang->getDir()
|
|
||||||
],
|
|
||||||
"\n" .
|
|
||||||
"<tr>\n" .
|
|
||||||
"<td style='padding: 0px;'>{$title}</td>\n" .
|
|
||||||
"</tr>\n" .
|
|
||||||
"<tr>\n" .
|
|
||||||
"<td style='padding: 0px;'>{$output}</td>\n" .
|
|
||||||
"</tr>\n"
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $output;
|
|
||||||
}
|
|
||||||
|
|
||||||
function execute( $par ) {
|
|
||||||
$this->setHeaders();
|
|
||||||
|
|
||||||
if ( $this->including() ) {
|
|
||||||
$this->showInclude( $par );
|
|
||||||
} else {
|
|
||||||
$this->showPage();
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Called when being included on a normal wiki page.
|
|
||||||
* Cache is disabled so it can depend on the user language.
|
|
||||||
* @param string|null $par A subpage give to the special page
|
|
||||||
*/
|
|
||||||
function showInclude( $par ) {
|
|
||||||
$days = null;
|
|
||||||
$limit = null;
|
|
||||||
$options = 'none';
|
|
||||||
|
|
||||||
if ( !empty( $par ) ) {
|
|
||||||
$params = explode( '/', $par );
|
|
||||||
|
|
||||||
$limit = intval( $params[0] );
|
|
||||||
|
|
||||||
if ( isset( $params[1] ) ) {
|
|
||||||
$days = intval( $params[1] );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( isset( $params[2] ) ) {
|
|
||||||
$options = $params[2];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( empty( $limit ) || $limit < 1 || $limit > self::CONTRIBUTIONSCORES_MAXINCLUDELIMIT ) {
|
|
||||||
$limit = 10;
|
|
||||||
}
|
|
||||||
if ( $days === null || $days < 0 ) {
|
|
||||||
$days = 7;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( $days > 0 ) {
|
|
||||||
$reportTitle = $this->msg( 'contributionscores-days' )->numParams( $days )->text();
|
|
||||||
} else {
|
|
||||||
$reportTitle = $this->msg( 'contributionscores-allrevisions' )->text();
|
|
||||||
}
|
|
||||||
$reportTitle .= ' ' . $this->msg( 'contributionscores-top' )->numParams( $limit )->text();
|
|
||||||
$title = Xml::element( 'h4',
|
|
||||||
[ 'class' => 'contributionscores-title' ],
|
|
||||||
$reportTitle
|
|
||||||
) . "\n";
|
|
||||||
$this->getOutput()->addHTML( $this->genContributionScoreTable(
|
|
||||||
$days,
|
|
||||||
$limit,
|
|
||||||
$title,
|
|
||||||
$options
|
|
||||||
) );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the special page
|
|
||||||
*/
|
|
||||||
function showPage() {
|
|
||||||
global $wgContribScoreReports;
|
|
||||||
|
|
||||||
if ( !is_array( $wgContribScoreReports ) ) {
|
|
||||||
$wgContribScoreReports = [
|
|
||||||
[ 7, 50 ],
|
|
||||||
[ 30, 50 ],
|
|
||||||
[ 0, 50 ]
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
$out = $this->getOutput();
|
|
||||||
$out->addWikiMsg( 'contributionscores-info' );
|
|
||||||
|
|
||||||
foreach ( $wgContribScoreReports as $scoreReport ) {
|
|
||||||
[ $days, $revs ] = $scoreReport;
|
|
||||||
if ( $days > 0 ) {
|
|
||||||
$reportTitle = $this->msg( 'contributionscores-days' )->numParams( $days )->text();
|
|
||||||
} else {
|
|
||||||
$reportTitle = $this->msg( 'contributionscores-allrevisions' )->text();
|
|
||||||
}
|
|
||||||
$reportTitle .= ' ' . $this->msg( 'contributionscores-top' )->numParams( $revs )->text();
|
|
||||||
$title = Xml::element( 'h2',
|
|
||||||
[ 'class' => 'contributionscores-title' ],
|
|
||||||
$reportTitle
|
|
||||||
) . "\n";
|
|
||||||
$out->addHTML( $title );
|
|
||||||
$out->addHTML( $this->genContributionScoreTable( $days, $revs ) );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function maxIncludeCacheTime() {
|
|
||||||
global $wgContribScoreDisableCache, $wgContribScoreCacheTTL;
|
|
||||||
return $wgContribScoreDisableCache ? 0 : $wgContribScoreCacheTTL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @inheritDoc
|
|
||||||
*/
|
|
||||||
protected function getGroupName() {
|
|
||||||
return 'wiki';
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Add table
Reference in a new issue