Merge "(bug 43184) bogus script path in Special:Version"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Wed, 19 Dec 2012 16:02:18 +0000 (16:02 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Wed, 19 Dec 2012 16:02:18 +0000 (16:02 +0000)
19 files changed:
includes/OutputHandler.php
includes/Title.php
includes/actions/InfoAction.php
includes/api/ApiUpload.php
includes/installer/Installer.i18n.php
includes/parser/Preprocessor.php
includes/resourceloader/ResourceLoaderWikiModule.php
languages/messages/MessagesAzb.php
languages/messages/MessagesCa.php
languages/messages/MessagesCs.php
languages/messages/MessagesJa.php
languages/messages/MessagesKa.php
languages/messages/MessagesKo.php
languages/messages/MessagesPl.php
languages/messages/MessagesPms.php
languages/messages/MessagesPt_br.php
languages/messages/MessagesQqq.php
languages/messages/MessagesYi.php
tests/phpunit/install-phpunit.sh

index 78435e4..abf091e 100644 (file)
@@ -156,7 +156,7 @@ function wfMangleFlashPolicy( $s ) {
  * @param $length int
  */
 function wfDoContentLength( $length ) {
-       if ( !headers_sent() && $_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.0' ) {
+       if ( !headers_sent() && isset( $_SERVER['SERVER_PROTOCOL'] ) && $_SERVER['SERVER_PROTOCOL'] == 'HTTP/1.0' ) {
                header( "Content-Length: $length" );
        }
 }
index 896218b..bdaa66f 100644 (file)
@@ -4461,6 +4461,7 @@ class Title {
         * @return Bool true if the update succeded
         */
        public function invalidateCache() {
+               global $wgMemc;
                if ( wfReadOnly() ) {
                        return false;
                }
@@ -4472,6 +4473,14 @@ class Title {
                        __METHOD__
                );
                HTMLFileCache::clearFileCache( $this );
+
+               // Clear page info.
+               $revision = WikiPage::factory( $this )->getRevision();
+               if( $revision !== null ) {
+                       $memcKey = wfMemcKey( 'infoaction', $this->getPrefixedText(), $revision->getId() );
+                       $success = $success && $wgMemc->delete( $memcKey );
+               }
+
                return $success;
        }
 
index 29c3d7e..fb8aea6 100644 (file)
@@ -165,15 +165,21 @@ class InfoAction extends FormlessAction {
         * @return array
         */
        protected function pageInfo() {
-               global $wgContLang, $wgRCMaxAge;
+               global $wgContLang, $wgRCMaxAge, $wgMemc;
 
                $user = $this->getUser();
                $lang = $this->getLanguage();
                $title = $this->getTitle();
                $id = $title->getArticleID();
 
-               // Get page information that would be too "expensive" to retrieve by normal means
-               $pageCounts = self::pageCounts( $title, $user );
+               $memcKey = wfMemcKey( 'infoaction', $title->getPrefixedText(), $this->page->getRevision()->getId() );
+               $pageCounts = $wgMemc->get( $memcKey );
+               if ( $pageCounts === false ) {
+                       // Get page information that would be too "expensive" to retrieve by normal means
+                       $pageCounts = self::pageCounts( $title );
+
+                       $wgMemc->set( $memcKey, $pageCounts );
+               }
 
                // Get page properties
                $dbr = wfGetDB( DB_SLAVE );
@@ -259,7 +265,7 @@ class InfoAction extends FormlessAction {
                        );
                }
 
-               if ( isset( $pageCounts['watchers'] ) ) {
+               if ( $user->isAllowed( 'unwatchedpages' ) ) {
                        // Number of page watchers
                        $pageInfo['header-basic'][] = array(
                                $this->msg( 'pageinfo-watchers' ), $lang->formatNum( $pageCounts['watchers'] )
@@ -473,11 +479,10 @@ class InfoAction extends FormlessAction {
        /**
         * Returns page counts that would be too "expensive" to retrieve by normal means.
         *
-        * @param $title Title object
-        * @param $user User object
+        * @param Title $title Title to get counts for
         * @return array
         */
-       protected static function pageCounts( $title, $user ) {
+       protected static function pageCounts( Title $title ) {
                global $wgRCMaxAge, $wgDisableCounters;
 
                wfProfileIn( __METHOD__ );
@@ -497,19 +502,17 @@ class InfoAction extends FormlessAction {
                        $result['views'] = $views;
                }
 
-               if ( $user->isAllowed( 'unwatchedpages' ) ) {
-                       // Number of page watchers
-                       $watchers = (int) $dbr->selectField(
-                               'watchlist',
-                               'COUNT(*)',
-                               array(
-                                       'wl_namespace' => $title->getNamespace(),
-                                       'wl_title'     => $title->getDBkey(),
-                               ),
-                               __METHOD__
-                       );
-                       $result['watchers'] = $watchers;
-               }
+               // Number of page watchers
+               $watchers = (int) $dbr->selectField(
+                       'watchlist',
+                       'COUNT(*)',
+                       array(
+                               'wl_namespace' => $title->getNamespace(),
+                               'wl_title'     => $title->getDBkey(),
+                       ),
+                       __METHOD__
+               );
+               $result['watchers'] = $watchers;
 
                // Total number of edits
                $edits = (int) $dbr->selectField(
index 89eff2e..d68c515 100644 (file)
@@ -683,7 +683,7 @@ class ApiUpload extends ApiBase {
                        'offset' => 'Offset of chunk in bytes',
                        'filesize' => 'Filesize of entire upload',
 
-                       'async', 'Make potentially large file operations asynchronous when possible',
+                       'async' => 'Make potentially large file operations asynchronous when possible',
                        'asyncdownload' => 'Make fetching a URL asynchronous',
                        'leavemessage' => 'If asyncdownload is used, leave a message on the user talk page if finished',
                        'statuskey' => 'Fetch the upload status for this file key (upload by URL)',
index 1919942..db19b9e 100644 (file)
@@ -10330,7 +10330,8 @@ $messages['ka'] = array(
 
 * [//www.mediawiki.org/wiki/Manual:Configuration_settings კონფიგურაციის მაჩვენებლების სია]
 * [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce მედიავიკის გამოცემის დაგზავნის სია]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce მედიავიკის გამოცემის დაგზავნის სია]
+* [//www.mediawiki.org/wiki/Localisation#Translation_resources მედიავიკის ლოკალიზება თქვენ ენაზე]',
 );
 
 /** Kara-Kalpak (Qaraqalpaqsha)
index bd13f9a..687dceb 100644 (file)
@@ -84,9 +84,9 @@ interface PPFrame {
        /**
         * Create a child frame
         *
-        * @param $args array
-        * @param $title Title
-        * @param $indexOffset A number subtracted from the index attributes of the arguments
+        * @param array $args
+        * @param Title $title
+        * @param int $indexOffset A number subtracted from the index attributes of the arguments
         *
         * @return PPFrame
         */
index 1e61a3e..b85da16 100644 (file)
@@ -42,7 +42,20 @@ abstract class ResourceLoaderWikiModule extends ResourceLoaderModule {
        /* Abstract Protected Methods */
 
        /**
+        * Subclasses should return an associative array of resources in the module.
+        * Keys should be the title of a page in the MediaWiki or User namespace.
+        *
+        * Values should be a nested array of options.  The supported keys are 'type' and
+        * (CSS only) 'media'.
+        *
+        * For scripts, 'type' should be 'script'.
+        *
+        * For stylesheets, 'type' should be 'style'.
+        * There is an optional media key, the value of which can be the
+        * medium ('screen', 'print', etc.) of the stylesheet.
+        *
         * @param $context ResourceLoaderContext
+        * @return array
         */
        abstract protected function getPages( ResourceLoaderContext $context );
 
index 7fcf950..1f11447 100644 (file)
@@ -78,20 +78,20 @@ $messages = array(
 'editfont-serif' => 'بوجاق‌لی فونت',
 
 # Dates
-'sunday' => 'یکشنبه(سود گونو)',
-'monday' => 'دÙ\88Ø´Ù\86بÙ\87(دÙ\88زگÙ\88Ù\86Ù\88)',
-'tuesday' => 'سÙ\87â\80\8cØ´Ù\86بÙ\87(آرا Ú¯Ù\88Ù\86)',
-'wednesday' => 'چهارشنبه(اوْدگونو)',
-'thursday' => 'پنجشنبه(سوگونو)',
+'sunday' => 'سود گونو(یکشنبه)',
+'monday' => 'دÙ\88زگÙ\88Ù\86Ù\88(دÙ\88Ø´Ù\86بÙ\87)',
+'tuesday' => 'آرا Ú¯Ù\88Ù\86(سÙ\87â\80\8cØ´Ù\86بÙ\87)',
+'wednesday' => 'اوْدگونو(چهارشنبه)',
+'thursday' => 'سوگونو(پنجشنبه)',
 'friday' => 'جوما(آینی‌گون)',
-'saturday' => 'شنبه(يئل‌گونو)',
-'sun' => 'یکشنبه(سود گونو)',
+'saturday' => 'يئل‌گونو(شنبه)',
+'sun' => 'سود گونو(یکشنبه)',
 'mon' => 'دوشنبه(دوزگونو)',
-'tue' => 'سÙ\87â\80\8cØ´Ù\86بÙ\87(آرا Ú¯Ù\88Ù\86)',
-'wed' => 'چهارشنبه(اوْدگونو)',
-'thu' => 'پنجشنبه(سوگونو)',
-'fri' => 'جÙ\88Ù\85ا(Ø¢Û\8cÙ\86Û\8câ\80\8cÚ¯Ù\88Ù\86)',
-'sat' => 'شنبه(يئل‌گونو)',
+'tue' => 'آراگÙ\88Ù\86(سÙ\87â\80\8cØ´Ù\86بÙ\87)',
+'wed' => 'اوْدگونو (چهارشنبه)',
+'thu' => 'سوگونو(پنجشنبه)',
+'fri' => 'Ø¢Û\8cÙ\86Û\8câ\80\8cÚ¯Ù\88Ù\86(جÙ\88Ù\85ا)',
+'sat' => 'يئل‌گونو(شنبه)',
 'january' => 'ژانویه',
 'february' => 'فئوریه',
 'march' => 'مارس',
index 7579969..830a420 100644 (file)
@@ -752,6 +752,7 @@ Contrasenya temporal: $2",
 'changeemail-oldemail' => 'Adreça de correu electrònic actual:',
 'changeemail-newemail' => 'Nova adreça de correu electrònic:',
 'changeemail-none' => '(cap)',
+'changeemail-password' => 'La vostra contrasenya a {{SITENAME}}:',
 'changeemail-submit' => 'Canvia de correu electrònic',
 'changeemail-cancel' => 'Cancel·la',
 
@@ -2179,8 +2180,8 @@ L'adreça electrònica que vau indicar a [[Special:Preferences|les vostres prefe
 'watchnologintext' => "Heu d'[[Special:UserLogin|entrar]]
 per modificar el vostre llistat de seguiment.",
 'addwatch' => 'Afegeix a llista de seguiment',
-'addedwatchtext' => "S'ha afegit la pàgina «[[:$1]]» a la vostra [[Special:Watchlist|llista de seguiment]].
-S'hi mostraran els canvis futurs que tinguin lloc en aquesta pàgina i la corresponent discussió. A més la pàgina estarà ressaltada '''en negreta''' a la [[Special:RecentChanges|llista de canvis recents]] perquè pugueu adonar-vos dels canvis amb més facilitat.",
+'addedwatchtext' => 'La pàgina "[[:$1]]" ha estat afegida a la vostra [[Special:Watchlist|llista de seguiment]].
+S\'hi mostraran els canvis futurs que tinguin lloc en aquesta pàgina i la corresponent discussió.',
 'removewatch' => 'Treu de la llista de seguiment',
 'removedwatchtext' => "S'ha tret la pàgina «[[:$1]]» de la vostra [[Special:Watchlist|llista de seguiment]].",
 'watch' => 'Vigila',
@@ -2818,6 +2819,7 @@ Deseu-lo al vostre ordinador i carregueu-ne una còpia ací.",
 'import-error-interwiki' => "No s'importa la pàgina «$1» perquè el seu nom està reservat a l'enllaçament extern (interwiki).",
 'import-error-special' => "No s'importa la pàgina «$1» perquè el seu nom pertany a l'espai de noms especial que no permet pàgines.",
 'import-error-invalid' => "No s'importa la pàgina «$1» perquè el seu nom no és vàlid.",
+'import-error-unserialize' => 'La revisió $2 de la pàgina "$1" no pot ser desserialitzada. La revisió indica que utilitza el model de contingut $3 serialitzat com a $4.',
 'import-options-wrong' => '{{PLURAL:$2|Opció equivocada|Opcions equivocades}}: <nowiki>$1</nowiki>',
 'import-rootpage-invalid' => 'La pàgina arrel donada és un títol no vàlid.',
 'import-rootpage-nosubpage' => 'L\'espai de noms "$1" de la pàgina arrel no permet subpàgines.',
index 6d2e35c..12b6264 100644 (file)
@@ -925,6 +925,7 @@ Dočasné heslo: $2',
 'changeemail-oldemail' => 'Stávající e-mailová adresa:',
 'changeemail-newemail' => 'Nová e-mailová adresa:',
 'changeemail-none' => '(žádná)',
+'changeemail-password' => 'Vaše heslo do {{gender:2sg|{{SITENAME}}}}:',
 'changeemail-submit' => 'Změnit e-mail',
 'changeemail-cancel' => 'Storno',
 
@@ -1646,9 +1647,9 @@ Tuto operaci nelze vrátit zpět.',
 'rightslogtext' => 'Toto je záznam změn uživatelských práv.',
 'rightslogentry' => 'změnil pro $1 zařazení ve skupinách z $2 na $3',
 'rightslogentry-autopromote' => 'byl automaticky povýšen z $2 na $3',
-'logentry-rights-rights' => '$1 {{GENDER:$1|změnil|změnila}} členství $3 ve skupinách z $4 na $5',
-'logentry-rights-rights-legacy' => '$1 {{GENDER:$1|změnil|změnila}} členství $3 ve skupinách',
-'logentry-rights-autopromote' => '$1 {{GENDER:$1|byl automaticky povýšen|byla automaticky povýšena}} z $4 na $5',
+'logentry-rights-rights' => '$1 změnil členství $3 ve skupinách z $4 na $5',
+'logentry-rights-rights-legacy' => '$1 změnil členství $3 ve skupinách',
+'logentry-rights-autopromote' => '$1 byl automaticky povýšen z $4 na $5',
 'rightsnone' => '(žádné)',
 
 # Associated actions - in the sentence "You do not have permission to X"
@@ -2359,7 +2360,8 @@ E-mailová adresa, kterou máte uvedenu v [[Special:Preferences|nastavení]], se
 'watchnologin' => 'Nejste přihlášen(a)',
 'watchnologintext' => 'Pro sledování stránek se musíte [[Special:UserLogin|přihlásit]].',
 'addwatch' => 'Přidat do sledovaných stránek',
-'addedwatchtext' => 'Stránka „[[:$1]]“ byla přidána mezi stránky, které [[Special:Watchlist|sledujete]]. Budoucí změny této stránky se objeví <b>tučně</b> v [[Special:RecentChanges|seznamu posledních změn]], aby bylo snadnější si jí povšimnout. Pokud budete později chtít stránku ze seznamu sledovaných smazat, klikněte na „Nesledovat tuto stránku“ v liště nástrojů.',
+'addedwatchtext' => 'Stránka „[[:$1]]“ byla přidána mezi stránky, které sledujete.
+Ve [[Special:Watchlist|sledovaných stránkách]] se tak budou objevovat budoucí změny této stránky a přidružené diskuse.',
 'removewatch' => 'Vyřadit ze sledovaných stránek',
 'removedwatchtext' => 'Stránka „[[:$1]]“ byla vyřazena z vašeho [[Special:Watchlist|seznamu sledovaných stránek]].',
 'watch' => 'Sledovat',
@@ -2975,6 +2977,7 @@ Uložte jej na svůj disk a nahrajte ho sem.',
 'import-error-interwiki' => 'Stránka „$1“ se neimportuje, protože její název je vyhrazen pro externí odkazy (interwiki).',
 'import-error-special' => 'Stránka „$1“ se neimportuje, protože patří do speciálního jmenného prostoru, do kterého stránky nepatří.',
 'import-error-invalid' => 'Stránka „$1“ se neimportuje, protože její název je neplatný.',
+'import-error-unserialize' => 'Nepodařilo se deserializovat revizi $2 stránky „$1“. Revize měla používat model obsahu $3 serializovaný jako $4.',
 'import-options-wrong' => '{{PLURAL:$2|Chybná volba|Chybné volby}}: <nowiki>$1</nowiki>',
 'import-rootpage-invalid' => 'Zadaný název kořenové stránky je neplatný.',
 'import-rootpage-nosubpage' => 'Ve jmenném prostoru „$1“ kořenové stránky nejsou dovoleny podstránky.',
index e317263..b32bb0a 100644 (file)
@@ -1041,7 +1041,7 @@ $1または他の[[{{MediaWiki:Grouppage-sysop}}|管理者]]にこのブロッ
 'accmailtext' => "[[User talk:$1|$1]]のために無作為に生成したパスワードを、$2に送信しました。
 
 この新アカウントのパスワードは、ログインした際に''[[Special:ChangePassword|パスワード変更]]''ページで変更できます。",
-'newarticle' => '(新)',
+'newarticle' => '(新)',
 'newarticletext' => "まだ存在しないページへのリンクをたどりました。
 このページを新規作成するには、ページの内容を以下のボックスに記入してください (詳しくは[[{{MediaWiki:Helppage}}|ヘルプページ]]を参照してください)。
 誤ってこのページにたどり着いた場合には、ブラウザーの'''戻る'''ボタンで前のページに戻ってください。",
@@ -1071,17 +1071,17 @@ IP アドレスは複数の利用者で共有されている場合がありま
 * '''Opera:''' ''ツール → 設定'' からキャッシュをクリアしてください。",
 'usercssyoucanpreview' => "'''ヒント:'''「{{int:showpreview}}」ボタンを使うと、保存前に新しいCSSを試験できます。",
 'userjsyoucanpreview' => "'''ヒント:'''「{{int:showpreview}}」ボタンを使うと、保存前に新しいJavaScriptを試験できます。",
-'usercsspreview' => "'''å\88©ç\94¨è\80\85CSSã\82\92ã\83\97ã\83¬ã\83\93ã\83¥ã\83¼ã\81\97ã\81¦ã\81\84ã\81¾ã\81\99。'''
-'''まだ保存されていません'''",
-'userjspreview' => "'''å\88©ç\94¨è\80\85JavaScriptã\82\92試é¨\93\83\97ã\83¬ã\83\93ã\83¥ã\83¼ã\81\97ã\81¦ã\81\84ã\81¾ã\81\99。'''
-'''まだ保存されていません'''",
+'usercsspreview' => "'''å\88©ç\94¨è\80\85CSSã\82\92ã\83\97ã\83¬ã\83\93ã\83¥ã\83¼ã\81\97ã\81¦ã\81\84ã\82\8bã\81 ã\81\91ã\81«é\81\8eã\81\8eã\81¾ã\81\9bã\82\93。'''
+'''まだ保存されていません!'''",
+'userjspreview' => "'''å\88©ç\94¨è\80\85JavaScriptã\82\92試é¨\93\83\97ã\83¬ã\83\93ã\83¥ã\83¼ã\81\97ã\81¦ã\81\84ã\82\8bã\81 ã\81\91ã\81«é\81\8eã\81\8eã\81¾ã\81\9bã\82\93。'''
+'''まだ保存されていません!'''",
 'sitecsspreview' => "'''ここでは、CSSをプレビューしているだけに過ぎません。'''
-'''まだ保存されていません'''",
+'''まだ保存されていません!'''",
 'sitejspreview' => "'''ここでは、JavaScriptをプレビューしているだけに過ぎません。'''
-'''まだ保存されていません'''",
+'''まだ保存されていません!'''",
 'userinvalidcssjstitle' => "'''警告:'''「$1」という外装はありません。
 カスタム .css/.js ページではページ名を小文字にしてください。例: {{ns:user}}:Hoge/Vector.css ではなく {{ns:user}}:Hoge/vector.css",
-'updated' => '(更新)',
+'updated' => '(更新)',
 'note' => "'''お知らせ:'''",
 'previewnote' => "'''これはプレビューです。'''
 変更内容はまだ保存されていません!",
@@ -1141,8 +1141,8 @@ IP アドレスは複数の利用者で共有されている場合がありま
 'templatesused' => 'このページで使用されている{{PLURAL:$1|テンプレート}}:',
 'templatesusedpreview' => 'このプレビューで使用されている{{PLURAL:$1|テンプレート}}:',
 'templatesusedsection' => 'この節で使用されている{{PLURAL:$1|テンプレート}}:',
-'template-protected' => '(保護)',
-'template-semiprotected' => '(半保護)',
+'template-protected' => '(保護)',
+'template-semiprotected' => '(半保護)',
 'hiddencategories' => 'このページは {{PLURAL:$1|$1 個の隠しカテゴリ}}に属しています:',
 'edittools' => '<!-- ここに書いたテキストは編集及びアップロードのフォームの下に表示されます。 -->',
 'nocreatetext' => '{{SITENAME}}ではページの新規作成を制限しています。
@@ -1383,13 +1383,13 @@ $1",
 'history-title' => '「$1」の変更履歴',
 'difference-title' => '$1:版間の差分',
 'difference-title-multipage' => '$1 と $2:ページ間の差分',
-'difference-multipage' => '(ページ間の差分)',
+'difference-multipage' => '(ページ間の差分)',
 'lineno' => '$1行:',
 'compareselectedversions' => '選択した版同士を比較',
 'showhideselectedversions' => '選択した版を表示/非表示',
 'editundo' => '取り消し',
-'diff-multi' => '({{PLURAL:$2|$2人の利用者}}による、{{PLURAL:$1|間の$1版}}が非表示)',
-'diff-multi-manyusers' => '({{PLURAL:$2|$2人を超える利用者}}による、{{PLURAL:$1|間の$1版}}が非表示)',
+'diff-multi' => '({{PLURAL:$2|$2人の利用者}}による、{{PLURAL:$1|間の$1版}}が非表示)',
+'diff-multi-manyusers' => '({{PLURAL:$2|$2人を超える利用者}}による、{{PLURAL:$1|間の$1版}}が非表示)',
 'difference-missing-revision' => '指定された{{PLURAL:$2|$2版}}の差分 ($1) が見つかりませんでした。
 
 通常、削除されたページの版への古い差分表示や固定リンクをたどった際に、このようなことが起きます。 
@@ -1997,7 +1997,7 @@ $1',
 'lockmanager-fail-acquirelock' => '「$1」用のロックを取得できませんでした。',
 'lockmanager-fail-openlock' => '「$1」用のロックファイルを開くことができませんでした。',
 'lockmanager-fail-releaselock' => '「$1」用のロックを解放できませんでした。',
-'lockmanager-fail-db-bucket' => 'ã\83\90ã\82±ã\83\83ã\83\88 $1 で十分な数のロックデータベースに接触できませんでした。',
+'lockmanager-fail-db-bucket' => 'ã\83\90ã\82±ã\83\84 $1 で十分な数のロックデータベースに接触できませんでした。',
 'lockmanager-fail-db-release' => 'データベース $1 上のロックを解放できませんでした。',
 'lockmanager-fail-svr-acquire' => 'サーバー $1 上でロックを取得できませんでした。',
 'lockmanager-fail-svr-release' => 'サーバー $1 上のロックを解放できませんでした。',
@@ -2062,8 +2062,8 @@ URLが正しいものであり、ウェブサイトが稼働していること
 'license-header' => 'ライセンス',
 'nolicense' => '選択なし',
 'license-nopreview' => '(プレビューはありません)',
-'upload_source_url' => '(有効かつ一般に公開されているURL)',
-'upload_source_file' => '(あなたのコンピューター上のファイル)',
+'upload_source_url' => '(有効かつ一般に公開されているURL)',
+'upload_source_file' => '(あなたのコンピューター上のファイル)',
 
 # Special:ListFiles
 'listfiles-summary' => 'この特別ページでは、アップロードされたすべてのファイルを表示します。
@@ -2394,7 +2394,7 @@ contenttype/subtypeの形式で入力してください (例: <code>image/jpeg</
 'listgrouprights-group' => 'グループ',
 'listgrouprights-rights' => '権限',
 'listgrouprights-helppage' => 'Help:グループ権限',
-'listgrouprights-members' => '(該当者一覧)',
+'listgrouprights-members' => '(該当者一覧)',
 'listgrouprights-right-display' => '<span class="listgrouprights-granted">$1 (<code>$2</code>)</span>',
 'listgrouprights-right-revoked' => '<span class="listgrouprights-revoked">$1 (<code>$2</code>)</span>',
 'listgrouprights-addgroup' => '{{PLURAL:$2|グループ}}を追加:$1',
@@ -3086,7 +3086,7 @@ MediaWiki 全般のローカライズ (地域化) に貢献したい場合は、
 'importcantopen' => '取り込みファイルが開けませんでした',
 'importbadinterwiki' => 'ウィキ間リンクが正しくありません',
 'importnotext' => '内容が空、または本文がありません',
-'importsuccess' => '取り込みが完了しました',
+'importsuccess' => '取り込みが完了しました!',
 'importhistoryconflict' => '取り込み時にいくつかの版が競合しました(以前に同じページが取り込まれているかもしれません)',
 'importnosources' => 'ウィキ間移動の取り込み元が定義されていないため、履歴の直接アップロードは無効になっています。',
 'importnofile' => '取り込みファイルはアップロードされませんでした。',
@@ -3097,7 +3097,7 @@ MediaWiki 全般のローカライズ (地域化) に貢献したい場合は、
 'importuploaderrortemp' => '取り込みファイルのアップロードに失敗しました。
 一時フォルダーがありません。',
 'import-parse-failure' => 'XMLの取り込み構文解析に失敗しました',
-'import-noarticle' => '取り込むページがありません',
+'import-noarticle' => '取り込むページがありません!',
 'import-nonewrevisions' => 'すべての版は以前に取り込み済みです。',
 'xml-error-string' => '$1、$2 行の $3 文字目 ($4バイト目): $5',
 'import-upload' => 'XMLデータをアップロード',
@@ -3376,7 +3376,7 @@ $1',
 'imagelisttext' => "以下は、'''$1'''{{PLURAL:$1|ファイル}}の$2で並べ替えた一覧です。",
 'newimages-summary' => 'この特別ページでは、最近アップロードされたファイルを表示します。',
 'newimages-legend' => '絞り込み',
-'newimages-label' => 'ファイル名(またはその一部):',
+'newimages-label' => 'ファイル名 (またはその一部):',
 'showhidebots' => '(ボットを$1)',
 'noimages' => '表示できるものがありません。',
 'ilsubmit' => '検索',
@@ -3872,7 +3872,7 @@ Variants for Chinese language
 
 # External editor support
 'edit-externally' => '外部アプリケーションを使用してこのファイルを編集',
-'edit-externally-help' => '(詳しくは[//www.mediawiki.org/wiki/Manual:External_editors 設定手順]をご覧ください)',
+'edit-externally-help' => '(詳しくは[//www.mediawiki.org/wiki/Manual:External_editors 設定手順]をご覧ください)',
 
 # 'all' in various places, this might be different for inflected languages
 'watchlistall2' => 'すべて',
@@ -4237,7 +4237,7 @@ MediaWikiは、有用であることを期待して配布されていますが
 'dberr-problems' => '申し訳ありません!
 このウェブサイトに技術的な問題が発生しています。',
 'dberr-again' => '数分間待った後、もう一度読み込んでください。',
-'dberr-info' => '(データベースサーバーに接続できませんでした:$1)',
+'dberr-info' => '(データベースサーバー $1 に接続できませんでした)',
 'dberr-usegoogle' => '元に戻るまで、Googleを利用して検索できます。',
 'dberr-outofdate' => 'それらが収集した内容は古い可能性があることに注意してください。',
 'dberr-cachederror' => 'これは要求されたページをキャッシュした複製であり、古くなっている可能性があります。',
index dafe279..12943fd 100644 (file)
@@ -754,6 +754,7 @@ $2
 'changeemail-oldemail' => 'ელ-ფოსტის ამჟამინდელი მისამართი:',
 'changeemail-newemail' => 'ახალი ელ-ფოსტის მისამართი:',
 'changeemail-none' => '(არაფერი)',
+'changeemail-password' => 'თქვენი პაროლი პროექტში {{SITENAME}}:',
 'changeemail-submit' => 'ელ-ფოსტის შეცვლა',
 'changeemail-cancel' => 'გაუქმება',
 
@@ -2205,8 +2206,8 @@ $1',
 'watchnologin' => 'რეგისტრაცია ვერ შესრულდა',
 'watchnologintext' => 'თქვენ უნდა მოახდინოთ [[Special:UserLogin|რეგისტრაცია]] თქვენი კონტროლის სიის მოდიფიცირებისათვის.',
 'addwatch' => 'კონტროლის სიაში დამატება',
-'addedwatchtext' => "გვერდი „[[:$1]]“ დაემატა თქვენს [[Special:Watchlist|კონტროლის სიას]]. 
-ამ და მასთან დაკავშირებული განხილვის გვერდის შემდგომი ცვლილებები აისახება '''გამუქებულად''' [[Special:RecentChanges|ბოლო ცვლილებების სიაში]], რათა ადვილად დაინახოთ იგი. თუ გსურთ მისი კონტროლის სიიდან ამოშლა, დააწკაპეთ „კონტროლის მოხსნას“ ზედა დაფაზე.",
+'addedwatchtext' => 'გვერდი „[[:$1]]“ დაემატა თქვენს [[Special:Watchlist|კონტროლის სიას]].
+ამ და მასთან დაკავშირებული განხილვის გვერდის შემდგომი ცვლილებები აისახება იქ.',
 'removewatch' => 'კონტროლის სიიდან წაშლა',
 'removedwatchtext' => 'გვერდი „[[:$1]]“ ამოღებულია თქვენი [[Special:Watchlist|კონტროლის სიიდან]].',
 'watch' => 'კონტროლი',
index 423638e..f22afba 100644 (file)
@@ -924,6 +924,7 @@ $2
 'changeemail-oldemail' => '현재 이메일 주소 :',
 'changeemail-newemail' => '새 이메일 주소:',
 'changeemail-none' => '(없음)',
+'changeemail-password' => '{{SITENAME}} 비밀번호:',
 'changeemail-submit' => '이메일 주소 바꾸기',
 'changeemail-cancel' => '취소',
 
@@ -2408,8 +2409,8 @@ URL이 맞고 해당 웹사이트가 작동하는지 확인해주세요.',
 'watchnologin' => '로그인하지 않음',
 'watchnologintext' => '주시문서 목록을 고치려면 [[Special:UserLogin|로그인]]해야 합니다.',
 'addwatch' => '주시문서 목록에 추가',
-'addedwatchtext' => "\"[[:\$1]]\" 문서를 [[Special:Watchlist|주시문서 목록]]에 추가했습니다.
-앞으로 이 문서나 토론 문서가 바뀌면 [[Special:RecentChanges|최근 바뀜]]에서 알아보기 쉽게 '''굵은 글씨'''로 보일 것입니다.",
+'addedwatchtext' => '"[[:$1]]" 문서를 [[Special:Watchlist|주시문서 목록]]에 추가했습니다.
+앞으로 이 문서나 관련된 토론 문서가 바뀌면 보일 것입니다.',
 'removewatch' => '주시문서 목록에서 제거',
 'removedwatchtext' => '"[[:$1]]" 문서를 [[Special:Watchlist|주시문서 목록]]에서 뺐습니다.',
 'watch' => '주시',
index 7273e73..6f7d803 100644 (file)
@@ -867,6 +867,7 @@ Tymczasowe hasło – $2',
 'changeemail-oldemail' => 'Obecny adres e‐mail',
 'changeemail-newemail' => 'Nowy adres e-mail',
 'changeemail-none' => '(brak)',
+'changeemail-password' => 'Hasło {{SITENAME}}:',
 'changeemail-submit' => 'Zapisz nowy',
 'changeemail-cancel' => 'Anuluj',
 
@@ -4045,8 +4046,8 @@ Grafiki są pokazywane w pełnej rozdzielczości. Inne typy plików są otwieran
 'logentry-move-move-noredirect' => '$1 {{GENDER:$2|przeniósł|przeniosła}} stronę $3 na $4, bez pozostawienia przekierowania pod starym tytułem',
 'logentry-move-move_redir' => '$1 {{GENDER:$2|przeniósł|przeniosła}} stronę $3 na $4 w miejsce przekierowania',
 'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|przeniósł|przeniosła}} stronę $3 na $4 w miejsce przekierowania i bez pozostawienia przekierowania pod starym tytułem',
-'logentry-patrol-patrol' => '$1 oznacza wersję $4 strony $3 jako sprawdzoną',
-'logentry-patrol-patrol-auto' => '$1 automatycznie oznacza wersję $4 strony $3 jako sprawdzoną',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|odznaczył|odznaczyła}} wersję $4 strony $3 jako sprawdzoną',
+'logentry-patrol-patrol-auto' => '$1 automatycznie {{GENDER:$2|odznaczył|odznaczyła}} wersję $4 strony $3 jako sprawdzoną',
 'logentry-newusers-newusers' => 'Konto użytkownika $1 zostało utworzone',
 'logentry-newusers-create' => 'Konto użytkownika $1 zostało utworzone',
 'logentry-newusers-create2' => 'Konto użytkownika $3 zostało utworzone przez użytkownika $1',
index eadbefb..aff8e16 100644 (file)
@@ -3688,8 +3688,8 @@ Le figure a së smon-o a amzura pijn-a, j'àotre sòrt d'archivi a ven-o fàite
 'htmlform-invalid-input' => "A-i son dij problema con cheidun dij valor ch'a l'ha butà",
 'htmlform-select-badoption' => "Ël valor che a l'ha spessificà a l'é pa n'opsion vàlida.",
 'htmlform-int-invalid' => "Ël valor ch'a l'ha spessificà a l'é pa n'antregh.",
-'htmlform-float-invalid' => "Ël valor ch'it l'has spessificà a l'é pa un nùmer.",
-'htmlform-int-toolow' => "Ël valor ch'it l'has spessificà a l'é sota al mìnim ëd $1.",
+'htmlform-float-invalid' => "Ël valor ch'a l'ha spessificà a l'é pa un nùmer.",
+'htmlform-int-toolow' => "Ël valor ch'a l'ha spessificà a l'é sota al mìnim ëd $1.",
 'htmlform-int-toohigh' => "Ël valor ch'it l'has spessificà a l'é dzora dël màssim ëd $1.",
 'htmlform-required' => 'A-i é dabzògn ëd cost valor',
 'htmlform-submit' => 'Spediss',
index 8fe8977..ce81dad 100644 (file)
@@ -2555,7 +2555,8 @@ Em tais casos, deverá desselecionar ou reverter a ocultação da versão apagad
 'undeletedrevisions' => '$1 {{PLURAL:$1|edição restaurada|edições restauradas}}',
 'undeletedrevisions-files' => '$1 {{PLURAL:$2|edição restaurada|edições restauradas}} e $2 {{PLURAL:$2|arquivo restaurado|arquivos restaurados}}',
 'undeletedfiles' => '{{PLURAL:$1|arquivo restaurado|$1 arquivos restaurados}}',
-'cannotundelete' => 'Restauração falhada; alguém talvez já restaurou a página.',
+'cannotundelete' => 'Falha ao restaurar:
+$1',
 'undeletedpage' => "'''$1 foi restaurada'''
 
 Consulte o [[Special:Log/delete|registro de eliminações]] para um registro das eliminações e restaurações mais recentes.",
index f7b7015..0f05d9b 100644 (file)
@@ -4909,7 +4909,8 @@ Used on [[Special:Tags]]. Verb. Used as display text on a link to create/edit a
 'dberr-header' => 'This message does not allow any wiki nor html markup.',
 'dberr-problems' => 'This message does not allow any wiki nor html markup.',
 'dberr-again' => 'This message does not allow any wiki nor html markup.',
-'dberr-info' => 'This message does not allow any wiki nor html markup.',
+'dberr-info' => 'This message does not allow any wiki nor html markup.
+* $1 - database server name',
 'dberr-usegoogle' => 'This message does not allow any wiki nor html markup.',
 'dberr-outofdate' => "In this sentence, '''their''' indexes refers to '''Google's''' indexes. This message does not allow any wiki nor html markup.",
 
index 855d5db..fdb55d9 100644 (file)
@@ -761,6 +761,7 @@ $2
 'changeemail-oldemail' => 'קראַנטער ע-פּאָסט אַדרעס:',
 'changeemail-newemail' => 'נײַער בליצפּאָסט אַדרעס:',
 'changeemail-none' => '(קיין)',
+'changeemail-password' => 'אייער {{SITENAME}} פאסווארט:',
 'changeemail-submit' => 'ענדערן ע־פאסט אדרעס',
 'changeemail-cancel' => 'אַנולירן',
 
@@ -1329,8 +1330,8 @@ $1",
 'prefs-emailconfirm-label' => 'ע-פאסט באַשטעטיקונג:',
 'prefs-textboxsize' => 'גרייס פֿון רעדאַקטירונג פֿענסטער',
 'youremail' => 'ע-פאסט:',
-'username' => 'באַניצער־נאָמען:',
-'uid' => 'באַנוצער־נומער:',
+'username' => '{{GENDER:$1|באַניצער־נאָמען}}:',
+'uid' => '{{GENDER:$1|באַנוצער־נומער}}:',
 'prefs-memberingroups' => 'מיטגליד אין {{PLURAL:$1|גרופע|גרופעס}}:',
 'prefs-registration' => 'אײַנשרײַבן צײַט:',
 'yourrealname' => 'עכטער נאמען *:',
@@ -2129,8 +2130,7 @@ $1",
 'addwatch' => 'צולייגן צו דער אויפֿפאַסונג ליסטע',
 'addedwatchtext' => "דער בלאט \"[[:\$1]]\" איז צוגעלײגט געוואָרן צו אײַער [[Special:Watchlist|אויפֿפאַסונג ליסטע]].
 
-ענדערונגען צו דעם בלאַט און צו זײַן פארבינדענעם רעדן בלאַט וועלן זײַן אויסגערעכענט דא.
-און דער בלאט וועט זיין '''דיק''' אין דער [[Special:RecentChanges|ליסטע פון לעצטע ענדערונגען]] צו גרינגער מאכן דאס אויפֿפאַסן.",
+ווייטערע ענדערונגען צו דעם בלאַט און צו זײַן פארבינדענעם רעדן בלאַט וועלן זײַן אויסגערעכנט דארט, און דער בלאט וועט זיין '''דיק''' אין דער [[Special:RecentChanges|ליסטע פון לעצטע ענדערונגען]] צו גרינגער מאכן דאס אויפֿפאַסן.",
 'removewatch' => 'אַראָפּנעמען פון דער אויפֿפאַסונג ליסטע',
 'removedwatchtext' => 'דער בלאַט "[[:$1]]" איז אָפּגעראַמט געוואָרן פון [[Special:Watchlist|אייער אױפֿפּאַסונג ליסטע]].',
 'watch' => 'אױפֿפּאַסן',
@@ -2162,7 +2162,10 @@ $1",
 'enotif_subject_deleted' => '{{SITENAME}} בלאט $1 איז אויסגעמעקט געווארן דורך {{gender:$2|$2}}',
 'enotif_subject_created' => '{{SITENAME}} בלאט $1 איז געשאפן געווארן דורך {{gender:$2|$2}}',
 'enotif_subject_moved' => '{{SITENAME}} בלאט $1 איז בגאוועגט געווארן דורך {{gender:$2|$2}}',
+'enotif_subject_restored' => '{{SITENAME}} בלאט $1 איז צוריקגעשטעלט געווארן דורך {{gender:$2|$2}}',
 'enotif_subject_changed' => '{{SITENAME}} בלאט $1 איז געענדערט געווארן דורך {{gender:$2|$2}}',
+'enotif_body_intro_deleted' => 'דער {{SITENAME}} בלאט $1 איז אויסגעמעקט געווארן אום $PAGEEDITDATE דורך {{gender:$2|$2}}, זעט $3 פאר דער לויפיקער רעוויזיע.',
+'enotif_body_intro_created' => 'דער {{SITENAME}} בלאט $1 איז געשאפן געווארן אום $PAGEEDITDATE דורך {{gender:$2|$2}}, זעט $3 פאר דער לויפיקער רעוויזיע.',
 'enotif_lastvisited' => 'זעט $1 פֿאַר אלע ענדערונגען זינט אײַער לעצטן וויזיט.',
 'enotif_lastdiff' => 'זעט $1 פאר דער ענדערונג.',
 'enotif_anon_editor' => 'אַנאנימער באַניצער $1',
index 2d2b53a..3601274 100755 (executable)
@@ -18,8 +18,9 @@ else if ( has_binary pear ); then
     echo Installing phpunit with pear
     pear channel-discover pear.phpunit.de
     pear channel-discover components.ez.no
-    pear channel-discover pear.symfony-project.com
-    pear install phpunit/PHPUnit
+    pear channel-discover pear.symfony.com
+    pear update-channels
+    pear install --alldeps phpunit/PHPUnit
 else if ( has_binary apt-get ); then
     echo Installing phpunit with apt-get
     apt-get install phpunit