}
}
- function mustRender( $file ) {
+ public function mustRender( $file ) {
return true;
}
}
/**
- * @param File $file
+ * @param File|FSFile $file
* @param string $path Unused
* @param bool|array $metadata
* @return array
*/
function getImageSize( $file, $path, $metadata = false ) {
- if ( $metadata === false ) {
+ if ( $metadata === false && $file instanceof File ) {
$metadata = $file->getMetadata();
}
$metadata = $this->unpackMetadata( $metadata );
}
/**
- * @param File $file
+ * @param File|FSFile $file
* @param string $filename
* @return string Serialised metadata
*/
* @param mixed $value Parameter value
* @return bool Validity
*/
- function validateParam( $name, $value ) {
+ public function validateParam( $name, $value ) {
if ( in_array( $name, [ 'width', 'height' ] ) ) {
// Reject negative heights, widths
return ( $value > 0 );
} elseif ( $name == 'lang' ) {
// Validate $code
- if ( $value === '' || !Language::isValidBuiltinCode( $value ) ) {
+ if ( $value === '' || !Language::isValidBuiltInCode( $value ) ) {
wfDebug( "Invalid user language code\n" );
return false;
* @param array $params Name=>value pairs of parameters
* @return string Filename to use
*/
- function makeParamString( $params ) {
+ public function makeParamString( $params ) {
$lang = '';
if ( isset( $params['lang'] ) && $params['lang'] !== 'en' ) {
$params['lang'] = strtolower( $params['lang'] );
return "$lang{$params['width']}px";
}
- function parseParamString( $str ) {
+ public function parseParamString( $str ) {
$m = false;
if ( preg_match( '/^lang([a-z]+(?:-[a-z]+)*)-(\d+)px$/', $str, $m ) ) {
return [ 'width' => array_pop( $m ), 'lang' => $m[1] ];
}
}
- function getParamMap() {
+ public function getParamMap() {
return [ 'img_lang' => 'lang', 'img_width' => 'width' ];
}