X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fapi%2FApiQueryStashImageInfo.php;h=b039a1ec45d93d18932ada3765ecdd635527d3a2;hb=f9f946776f4983336f1746c2f7311c26687df43b;hp=229e1585aa9c67dd5304c3cc2fa0f22c6b8bb7b6;hpb=049e4514d012525e48727fcda2fc38279825cf12;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/api/ApiQueryStashImageInfo.php b/includes/api/ApiQueryStashImageInfo.php index 229e1585aa..b039a1ec45 100644 --- a/includes/api/ApiQueryStashImageInfo.php +++ b/includes/api/ApiQueryStashImageInfo.php @@ -32,6 +32,10 @@ class ApiQueryStashImageInfo extends ApiQueryImageInfo { } public function execute() { + if ( !$this->getUser()->isLoggedIn() ) { + $this->dieUsage( 'You must be logged-in to have an upload stash', 'notloggedin' ); + } + $params = $this->extractRequestParams(); $modulePrefix = $this->getModulePrefix(); @@ -42,7 +46,7 @@ class ApiQueryStashImageInfo extends ApiQueryImageInfo { $result = $this->getResult(); if ( !$params['filekey'] && !$params['sessionkey'] ) { - $this->dieUsage( "One of filekey or sessionkey must be supplied", 'nofilekey' ); + $this->dieUsage( 'One of filekey or sessionkey must be supplied', 'nofilekey' ); } // Alias sessionkey to filekey, but give an existing filekey precedence. @@ -57,67 +61,67 @@ class ApiQueryStashImageInfo extends ApiQueryImageInfo { $file = $stash->getFile( $filekey ); $finalThumbParam = $this->mergeThumbParams( $file, $scale, $params['urlparam'] ); $imageInfo = ApiQueryImageInfo::getInfo( $file, $prop, $result, $finalThumbParam ); - $result->addValue( array( 'query', $this->getModuleName() ), null, $imageInfo ); - $result->addIndexedTagName( array( 'query', $this->getModuleName() ), $modulePrefix ); + $result->addValue( [ 'query', $this->getModuleName() ], null, $imageInfo ); + $result->addIndexedTagName( [ 'query', $this->getModuleName() ], $modulePrefix ); } // @todo Update exception handling here to understand current getFile exceptions } catch ( UploadStashFileNotFoundException $e ) { - $this->dieUsage( "File not found: " . $e->getMessage(), "invalidsessiondata" ); + $this->dieUsage( 'File not found: ' . $e->getMessage(), 'invalidsessiondata' ); } catch ( UploadStashBadPathException $e ) { - $this->dieUsage( "Bad path: " . $e->getMessage(), "invalidsessiondata" ); + $this->dieUsage( 'Bad path: ' . $e->getMessage(), 'invalidsessiondata' ); } } - private $propertyFilter = array( + private $propertyFilter = [ 'user', 'userid', 'comment', 'parsedcomment', 'mediatype', 'archivename', 'uploadwarning', - ); + ]; public function getAllowedParams() { - return array( - 'filekey' => array( + return [ + 'filekey' => [ ApiBase::PARAM_ISMULTI => true, - ), - 'sessionkey' => array( + ], + 'sessionkey' => [ ApiBase::PARAM_ISMULTI => true, ApiBase::PARAM_DEPRECATED => true, - ), - 'prop' => array( + ], + 'prop' => [ ApiBase::PARAM_ISMULTI => true, ApiBase::PARAM_DFLT => 'timestamp|url', ApiBase::PARAM_TYPE => self::getPropertyNames( $this->propertyFilter ), ApiBase::PARAM_HELP_MSG => 'apihelp-query+imageinfo-param-prop', ApiBase::PARAM_HELP_MSG_PER_VALUE => self::getPropertyMessages( $this->propertyFilter ) - ), - 'urlwidth' => array( + ], + 'urlwidth' => [ ApiBase::PARAM_TYPE => 'integer', ApiBase::PARAM_DFLT => -1, - ApiBase::PARAM_HELP_MSG => array( + ApiBase::PARAM_HELP_MSG => [ 'apihelp-query+imageinfo-param-urlwidth', ApiQueryImageInfo::TRANSFORM_LIMIT, - ), - ), - 'urlheight' => array( + ], + ], + 'urlheight' => [ ApiBase::PARAM_TYPE => 'integer', ApiBase::PARAM_DFLT => -1, ApiBase::PARAM_HELP_MSG => 'apihelp-query+imageinfo-param-urlheight', - ), - 'urlparam' => array( + ], + 'urlparam' => [ ApiBase::PARAM_TYPE => 'string', ApiBase::PARAM_DFLT => '', ApiBase::PARAM_HELP_MSG => 'apihelp-query+imageinfo-param-urlparam', - ), - ); + ], + ]; } protected function getExamplesMessages() { - return array( + return [ 'action=query&prop=stashimageinfo&siifilekey=124sd34rsdf567' => 'apihelp-query+stashimageinfo-example-simple', 'action=query&prop=stashimageinfo&siifilekey=b34edoe3|bceffd4&' . 'siiurlwidth=120&siiprop=url' => 'apihelp-query+stashimageinfo-example-params', - ); + ]; } public function getHelpUrls() {