Merge "Fix convIPTC docs"
authorAaron Schulz <aschulz@wikimedia.org>
Sat, 7 Apr 2012 23:45:01 +0000 (23:45 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Sat, 7 Apr 2012 23:45:02 +0000 (23:45 +0000)
18 files changed:
RELEASE-NOTES-1.20
includes/Export.php
includes/GlobalFunctions.php
includes/api/ApiEditPage.php
includes/api/ApiProtect.php
includes/filerepo/file/LocalFile.php
languages/classes/LanguageKk.php
languages/classes/LanguageKu.php
languages/messages/MessagesEn.php
languages/messages/MessagesKk_cyrl.php
languages/messages/MessagesKk_latn.php
languages/messages/MessagesKw.php
languages/messages/MessagesLad.php
languages/messages/MessagesMwl.php
languages/messages/MessagesNds_nl.php
languages/messages/MessagesTe.php
maintenance/backup.inc
maintenance/storage/checkStorage.php

index c6b2756..92e8367 100644 (file)
@@ -84,6 +84,7 @@ production.
 * (bug 32384) Allow descending order for list=watchlistraw.
 * (bug 31883) Limit of bkusers of list=blocks and titles of action=query is not documented in API help.
 * (bug 32492) API now allows editing using pageid
+* (bug 32497) API now allows changing of protection level using pageid
 
 === Languages updated in 1.20 ===
 
index 24daa09..48fbc47 100644 (file)
@@ -910,7 +910,7 @@ class DumpFileOutput extends DumpOutput {
  */
 class DumpPipeOutput extends DumpFileOutput {
        protected $command, $filename;
-       private $procOpenResource = false;
+       protected $procOpenResource = false;
 
        function __construct( $command, $file = null ) {
                if ( !is_null( $file ) ) {
index 517f70d..7237b53 100644 (file)
@@ -3603,7 +3603,7 @@ function wfFindFile( $title, $options = array() ) {
  * Returns a valid placeholder object if the file does not exist.
  *
  * @param $title Title|String
- * @return File|null A File, or null if passed an invalid Title
+ * @return LocalFile|null A File, or null if passed an invalid Title
  */
 function wfLocalFile( $title ) {
        return RepoGroup::singleton()->getLocalRepo()->newFile( $title );
index 608f815..796b049 100644 (file)
@@ -381,7 +381,7 @@ class ApiEditPage extends ApiBase {
                global $wgMaxArticleSize;
 
                return array_merge( parent::getPossibleErrors(),
-                       $this->getRequireOnlyOneParameterErrorMessages( 'title', 'pageid' ),
+                       $this->getRequireOnlyOneParameterErrorMessages( array( 'title', 'pageid' ) ),
                        array(
                                array( 'nosuchpageid', 'pageid' ),
                                array( 'missingtext' ),
index fb225d8..ec7b560 100644 (file)
@@ -37,9 +37,18 @@ class ApiProtect extends ApiBase {
                global $wgRestrictionLevels;
                $params = $this->extractRequestParams();
 
-               $titleObj = Title::newFromText( $params['title'] );
-               if ( !$titleObj ) {
-                       $this->dieUsageMsg( array( 'invalidtitle', $params['title'] ) );
+               $this->requireOnlyOneParameter( $params, 'title', 'pageid' );
+
+               if ( isset( $params['title'] ) ) {
+                       $titleObj = Title::newFromText( $params['title'] );
+                       if ( !$titleObj ) {
+                               $this->dieUsageMsg( array( 'invalidtitle', $params['title'] ) );
+                       }
+               } elseif ( isset( $params['pageid'] ) ) {
+                       $titleObj = Title::newFromID( $params['pageid'] );
+                       if ( !$titleObj ) {
+                               $this->dieUsageMsg( array( 'nosuchpageid', $params['pageid'] ) );
+                       }
                }
 
                $errors = $titleObj->getUserPermissionsErrors( 'protect', $this->getUser() );
@@ -138,7 +147,9 @@ class ApiProtect extends ApiBase {
                return array(
                        'title' => array(
                                ApiBase::PARAM_TYPE => 'string',
-                               ApiBase::PARAM_REQUIRED => true
+                       ),
+                       'pageid' => array(
+                               ApiBase::PARAM_TYPE => 'integer',
                        ),
                        'token' => null,
                        'protections' => array(
@@ -169,8 +180,10 @@ class ApiProtect extends ApiBase {
        }
 
        public function getParamDescription() {
+               $p = $this->getModulePrefix();
                return array(
-                       'title' => 'Title of the page you want to (un)protect',
+                       'title' => "Title of the page you want to (un)protect. Cannot be used together with {$p}pageid",
+                       'pageid' => "ID of the page you want to (un)protect. Cannot be used together with {$p}title",
                        'token' => 'A protect token previously retrieved through prop=info',
                        'protections' => 'Pipe-separated list of protection levels, formatted action=group (e.g. edit=sysop)',
                        'expiry' => array( 'Expiry timestamps. If only one timestamp is set, it\'ll be used for all protections.',
@@ -188,16 +201,20 @@ class ApiProtect extends ApiBase {
        }
 
        public function getPossibleErrors() {
-               return array_merge( parent::getPossibleErrors(), array(
-                       array( 'invalidtitle', 'title' ),
-                       array( 'toofewexpiries', 'noofexpiries', 'noofprotections' ),
-                       array( 'create-titleexists' ),
-                       array( 'missingtitle-createonly' ),
-                       array( 'protect-invalidaction', 'action' ),
-                       array( 'protect-invalidlevel', 'level' ),
-                       array( 'invalidexpiry', 'expiry' ),
-                       array( 'pastexpiry', 'expiry' ),
-               ) );
+               return array_merge( parent::getPossibleErrors(),
+                       $this->getRequireOnlyOneParameterErrorMessages( array( 'title', 'pageid' ) ),
+                       array(
+                               array( 'invalidtitle', 'title' ),
+                               array( 'nosuchpageid', 'pageid' ),
+                               array( 'toofewexpiries', 'noofexpiries', 'noofprotections' ),
+                               array( 'create-titleexists' ),
+                               array( 'missingtitle-createonly' ),
+                               array( 'protect-invalidaction', 'action' ),
+                               array( 'protect-invalidlevel', 'level' ),
+                               array( 'invalidexpiry', 'expiry' ),
+                               array( 'pastexpiry', 'expiry' ),
+                       )
+               );
        }
 
        public function needsToken() {
index 40ee0fa..04d7a47 100644 (file)
@@ -60,6 +60,11 @@ class LocalFile extends File {
 
        /**#@-*/
 
+       /**
+        * @var LocalRepo
+        */
+       var $repo;
+
        protected $repoClass = 'LocalRepo';
 
        /**
@@ -1653,7 +1658,7 @@ class LocalFileDeleteBatch {
                                        'fa_deleted_user'      => $encUserId,
                                        'fa_deleted_timestamp' => $encTimestamp,
                                        'fa_deleted_reason'    => $encReason,
-                                       'fa_deleted'               => $this->suppress ? $bitfield : 'oi_deleted',
+                                       'fa_deleted'           => $this->suppress ? $bitfield : 'oi_deleted',
 
                                        'fa_name'         => 'oi_name',
                                        'fa_archive_name' => 'oi_archive_name',
@@ -1669,7 +1674,6 @@ class LocalFileDeleteBatch {
                                        'fa_user'         => 'oi_user',
                                        'fa_user_text'    => 'oi_user_text',
                                        'fa_timestamp'    => 'oi_timestamp',
-                                       'fa_deleted'      => $bitfield
                                ), $where, __METHOD__ );
                }
        }
index 953a3f9..c2a3d24 100644 (file)
@@ -113,7 +113,7 @@ class KkConverter extends LanguageConverter {
                        # # Punctuation
                        '/#|No\./' => '№',
                        # # Şç
-                       '/ŞÇʹ/u' => 'ЩЬ', '/Şçʹ/u' => 'Щь', '/Şçʹ/u' => 'Щь',
+                       '/ŞÇʹ/u' => 'ЩЬ', '/Şçʹ/u' => 'Щь',
                        '/Ş[Çç]/u' => 'Щ', '/şç/u' => 'щ',
                        # # soft and hard signs
                        '/([' . KK_L_UC . '])ʺ([' . KK_L_UC . '])/u' => '$1Ъ$2',
index 8f8ea31..81bf6ee 100644 (file)
@@ -55,8 +55,7 @@ class KuConverter extends LanguageConverter {
                'h' => 'ه', 'j' => 'ژ', 'k' => 'ک', 'l' => 'ل',
                'm' => 'م', 'n' => 'ن', 'p' => 'پ', 'q' => 'ق', 'r' => 'ر', 's' => 'س', 'ş' => 'ش',
                't' => 'ت', 'v' => 'ڤ',
-                'x' => 'خ', 'y' => 'ی', 'z' => 'ز',
-
+               'x' => 'خ', 'y' => 'ی', 'z' => 'ز',
 
                'B' => 'ب', 'C' => 'ج', 'Ç' => 'چ', 'D' => 'د', 'F' => 'ف', 'G' => 'گ', 'H' => 'ھ',
                'H' => 'ہ', 'H' => 'ه', 'H' => 'ح', 'J' => 'ژ', 'K' => 'ك', 'K' => 'ک', 'L' => 'ل',
index 8006df5..62065dd 100644 (file)
@@ -1039,9 +1039,6 @@ $2',
 'ns-specialprotected'  => 'Special pages cannot be edited.',
 'titleprotected'       => 'This title has been protected from creation by [[User:$1|$1]].
 The reason given is "\'\'$2\'\'".',
-'filereadonlyerror'    => 'Unable to modify the file "$1" because the file repository "$2" is in read-only mode.
-
-The reason given is "\'\'$3\'\'".',
 
 # Virus scanner
 'virus-badscanner'     => "Bad configuration: Unknown virus scanner: ''$1''",
index 415f226..9e3f92a 100644 (file)
@@ -91,10 +91,6 @@ $namespaceAliases = array(
        '$1_تالقىلاۋى'        => NS_PROJECT_TALK,
        'سۋرەت'              => NS_FILE,
        'سۋرەت_تالقىلاۋى'    => NS_FILE_TALK,
-       'مەدياۋيكي'           => NS_MEDIAWIKI,
-       'مەدياۋيكي_تالقىلاۋى' => NS_MEDIAWIKI_TALK,
-       'ٷلگٸ'              => NS_TEMPLATE,
-       'ٷلگٸ_تالقىلاۋى'    => NS_TEMPLATE_TALK,
        'انىقتاما'            => NS_HELP,
        'انىقتاما_تالقىلاۋى'  => NS_HELP_TALK,
        'سانات'              => NS_CATEGORY,
index dcdf756..24aa511 100644 (file)
@@ -92,10 +92,6 @@ $namespaceAliases = array(
        '$1_تالقىلاۋى'        => NS_PROJECT_TALK,
        'سۋرەت'              => NS_FILE,
        'سۋرەت_تالقىلاۋى'    => NS_FILE_TALK,
-       'مەدياۋيكي'           => NS_MEDIAWIKI,
-       'مەدياۋيكي_تالقىلاۋى' => NS_MEDIAWIKI_TALK,
-       'ٷلگٸ'              => NS_TEMPLATE,
-       'ٷلگٸ_تالقىلاۋى'    => NS_TEMPLATE_TALK,
        'انىقتاما'            => NS_HELP,
        'انىقتاما_تالقىلاۋى'  => NS_HELP_TALK,
        'سانات'              => NS_CATEGORY,
index 603914a..02b26f5 100644 (file)
@@ -47,7 +47,6 @@ $namespaceAliases = array(
        'Cows_Restren'       => NS_FILE_TALK,
        'Keskows_Restren'    => NS_FILE_TALK,
        'Cows_MediaWiki'     => NS_MEDIAWIKI_TALK,
-       'Cows_MediaWiki'     => NS_MEDIAWIKI_TALK,
        'Keskows_MediaWiki'  => NS_MEDIAWIKI_TALK,
        'Cows_Scantlyn'      => NS_TEMPLATE_TALK,
        'Skantlyn'           => NS_TEMPLATE,
index cbc3b9b..884162e 100644 (file)
@@ -63,7 +63,6 @@ $namespaceAliases = array(
        'Diskussión_de_Xabblón'    => NS_MEDIAWIKI_TALK,
        'Xabblón'                  => NS_TEMPLATE,
        'Diskusyón_de_Xabblón'     => NS_TEMPLATE_TALK,
-       'Plantilla_Discusión'      => NS_TEMPLATE_TALK,
        'Diskussión_de_Ayudo'      => NS_HELP_TALK,
        'Kateggoría'               => NS_CATEGORY,
        'Diskussión_de_Kateggoría' => NS_CATEGORY_TALK,
index 2fc9aba..990892b 100644 (file)
@@ -44,7 +44,7 @@ $namespaceAliases = array(
        '$1_Discussão' => NS_PROJECT_TALK,
        'Ficheiro' => NS_FILE,
        'Ficheiro_Discussão' => NS_FILE_TALK,
-       'Imagem_Discussão' => NS_FILE,
+       'Imagem' => NS_FILE,
        'Imagem_Discussão' => NS_FILE_TALK,
        'MediaWiki_Discussão' => NS_MEDIAWIKI_TALK,
        'Predefinição' => NS_TEMPLATE,
index 4b8dd80..73e87c9 100644 (file)
@@ -50,7 +50,6 @@ $namespaceAliases = array(
        'Categorie'          => NS_CATEGORY,
        'Overleg_categorie'  => NS_CATEGORY_TALK,
        'Kattegerie'         => NS_CATEGORY,
-       'Overleg_categorie'  => NS_CATEGORY_TALK,
        'Overleg_kattegerie' => NS_HELP_TALK,
 );
 
index 54ecae8..68af6ea 100644 (file)
@@ -53,7 +53,6 @@ $namespaceAliases = array(
        'బొమ్మపై_చర్చ' => NS_FILE_TALK,
        'ఫైలు' => NS_FILE,
        'ఫైలుపై_చర్చ' => NS_FILE_TALK,
-       'బొమ్మపై_చర్చ' => NS_FILE_TALK,
        'సహాయము' => NS_HELP,
        'సహాయము_చర్చ' => NS_HELP_TALK,
 );
index 6eccb26..04c65ba 100644 (file)
@@ -28,7 +28,7 @@
  * @ingroup Dump Maintenance
  */
 class DumpDBZip2Output extends DumpPipeOutput {
-       function DumpDBZip2Output( $file ) {
+       function __construct( $file ) {
                parent::__construct( "dbzip2", $file );
        }
 }
index af1f9ee..5887a75 100644 (file)
@@ -381,8 +381,8 @@ class CheckStorage {
                        $extDb->freeResult( $res );
 
                        // Print errors for missing blobs rows
-                       foreach ( $oldIds as $blobId => $oldIds ) {
-                               $this->error( 'restore text', "Error: missing target $cluster/$blobId for two-part ES URL", $oldIds );
+                       foreach ( $oldIds as $blobId => $oldIds2 ) {
+                               $this->error( 'restore text', "Error: missing target $cluster/$blobId for two-part ES URL", $oldIds2 );
                        }
                }
        }