Merge "Improve docs for Title::getInternalURL/getCanonicalURL"
[lhc/web/wiklou.git] / includes / api / ApiQueryImageInfo.php
index 18d2804..051e127 100644 (file)
@@ -59,7 +59,8 @@ class ApiQueryImageInfo extends ApiQueryBase {
                if ( isset( $params['badfilecontexttitle'] ) ) {
                        $badFileContextTitle = Title::newFromText( $params['badfilecontexttitle'] );
                        if ( !$badFileContextTitle ) {
-                               $this->dieUsage( 'Invalid title in badfilecontexttitle parameter', 'invalid-title' );
+                               $p = $this->getModulePrefix();
+                               $this->dieWithError( [ 'apierror-bad-badfilecontexttitle', $p ], 'invalid-title' );
                        }
                } else {
                        $badFileContextTitle = false;
@@ -114,7 +115,7 @@ class ApiQueryImageInfo extends ApiQueryBase {
                                                $info['imagerepository'] = '';
                                        } else {
                                                $result->addValue(
-                                                       [ 'query', 'pages', intval( $pageId ) ],
+                                                       [ 'query', 'pages', (int)$pageId ],
                                                        'imagerepository', ''
                                                );
                                                // The above can't fail because it doesn't increase the result size
@@ -145,7 +146,7 @@ class ApiQueryImageInfo extends ApiQueryBase {
                                        $info['badfile'] = (bool)wfIsBadImage( $title, $badFileContextTitle );
                                }
 
-                               $fit = $result->addValue( [ 'query', 'pages' ], intval( $pageId ), $info );
+                               $fit = $result->addValue( [ 'query', 'pages' ], (int)$pageId, $info );
                                if ( !$fit ) {
                                        if ( count( $pageIds[NS_FILE] ) == 1 ) {
                                                // The user is screwed. imageinfo can't be solely
@@ -248,13 +249,11 @@ class ApiQueryImageInfo extends ApiQueryBase {
                        // Don't set $scale['width']; this signals mergeThumbParams() to fill it with the image's width
                        $scale = [];
                        $scale['height'] = $params['urlheight'];
+               } elseif ( $params['urlparam'] ) {
+                       // Audio files might not have a width/height.
+                       $scale = [];
                } else {
-                       if ( $params['urlparam'] ) {
-                               // Audio files might not have a width/height.
-                               $scale = [];
-                       } else {
-                               $scale = null;
-                       }
+                       $scale = null;
                }
 
                return $scale;
@@ -301,7 +300,7 @@ class ApiQueryImageInfo extends ApiQueryBase {
 
                $paramList = $h->parseParamString( $otherParams );
                if ( !$paramList ) {
-                       // Just set a warning (instead of dieUsage), as in many cases
+                       // Just set a warning (instead of dieWithError), as in many cases
                        // we could still render the image using width and height parameters,
                        // and this type of thing could happen between different versions of
                        // handlers.
@@ -311,7 +310,7 @@ class ApiQueryImageInfo extends ApiQueryBase {
                }
 
                if ( isset( $paramList['width'] ) && isset( $thumbParams['width'] ) ) {
-                       if ( intval( $paramList['width'] ) != intval( $thumbParams['width'] ) ) {
+                       if ( (int)$paramList['width'] != (int)$thumbParams['width'] ) {
                                $this->addWarning(
                                        [ 'apiwarn-urlparamwidth', $p, $paramList['width'], $thumbParams['width'] ]
                                );
@@ -428,9 +427,9 @@ class ApiQueryImageInfo extends ApiQueryBase {
                // This is shown even if the file is revdelete'd in interface
                // so do same here.
                if ( isset( $prop['size'] ) || isset( $prop['dimensions'] ) ) {
-                       $vals['size'] = intval( $file->getSize() );
-                       $vals['width'] = intval( $file->getWidth() );
-                       $vals['height'] = intval( $file->getHeight() );
+                       $vals['size'] = (int)$file->getSize();
+                       $vals['width'] = (int)$file->getWidth();
+                       $vals['height'] = (int)$file->getHeight();
 
                        $pageCount = $file->pageCount();
                        if ( $pageCount !== false ) {
@@ -509,11 +508,11 @@ class ApiQueryImageInfo extends ApiQueryBase {
                                                // T25834 - If the URLs are the same, we haven't resized it, so shouldn't give the wanted
                                                // thumbnail sizes for the thumbnail actual size
                                                if ( $mto->getUrl() !== $file->getUrl() ) {
-                                                       $vals['thumbwidth'] = intval( $mto->getWidth() );
-                                                       $vals['thumbheight'] = intval( $mto->getHeight() );
+                                                       $vals['thumbwidth'] = (int)$mto->getWidth();
+                                                       $vals['thumbheight'] = (int)$mto->getHeight();
                                                } else {
-                                                       $vals['thumbwidth'] = intval( $file->getWidth() );
-                                                       $vals['thumbheight'] = intval( $file->getHeight() );
+                                                       $vals['thumbwidth'] = (int)$file->getWidth();
+                                                       $vals['thumbheight'] = (int)$file->getHeight();
                                                }
 
                                                if ( isset( $prop['thumbmime'] ) && $file->getHandler() ) {