*/
use MediaWiki\Logger\LoggerFactory;
+use MediaWiki\MediaWikiServices;
define( 'MW_NO_OUTPUT_COMPRESSION', 1 );
require __DIR__ . '/includes/WebStart.php';
// For 404 handled thumbnails, we only use the base name of the URI
// for the thumb params and the parent directory for the source file name.
// Check that the zone relative path matches up so squid caches won't pick
- // up thumbs that would not be purged on source file deletion (bug 34231).
+ // up thumbs that would not be purged on source file deletion (T36231).
if ( $rel404 !== null ) { // thumbnail was handled via 404
if ( rawurldecode( $rel404 ) === $img->getThumbRel( $thumbName ) ) {
// Request for the canonical thumbnail name
$streamtime = microtime( true ) - $starttime;
if ( $status->isOK() ) {
- RequestContext::getMain()->getStats()->timing( 'media.thumbnail.stream', $streamtime );
+ MediaWikiServices::getInstance()->getStatsdDataFactory()->timing(
+ 'media.thumbnail.stream', $streamtime
+ );
} else {
wfThumbError( 500, 'Could not stream the file', null, [ 'file' => $thumbName,
- 'path' => $thumbPath, 'error' => $status->getWikiText() ] );
+ 'path' => $thumbPath, 'error' => $status->getWikiText( false, false, 'en' ) ] );
}
return;
}
// Check for thumbnail generation errors...
$msg = wfMessage( 'thumbnail_error' );
$errorCode = 500;
+
if ( !$thumb ) {
$errorMsg = $errorMsg ?: $msg->rawParams( 'File::transform() returned false' )->escaped();
if ( $errorMsg instanceof MessageSpecifier &&
}
} elseif ( $thumb->isError() ) {
$errorMsg = $thumb->getHtmlMsg();
+ $errorCode = $thumb->getHttpStatusCode();
} elseif ( !$thumb->hasFile() ) {
$errorMsg = $msg->rawParams( 'No path supplied in thumbnail object' )->escaped();
} elseif ( $thumb->fileIsSource() ) {
$status = $thumb->streamFileWithStatus( $headers );
if ( !$status->isOK() ) {
wfThumbError( 500, 'Could not stream the file', null, [
- 'file' => $thumbName, 'path' => $thumbPath, 'error' => $status->getWikiText() ] );
+ 'file' => $thumbName, 'path' => $thumbPath,
+ 'error' => $status->getWikiText( false, false, 'en' ) ] );
}
}
}
$thumbname = $params['thumbName'];
unset( $params['thumbName'] );
- // Do the hook first for older extensions that rely on it.
- if ( !Hooks::run( 'ExtractThumbParameters', [ $thumbname, &$params ] ) ) {
- // Check hooks if parameters can be extracted
- // Hooks return false if they manage to *resolve* the parameters
- // This hook should be considered deprecated
- wfDeprecated( 'ExtractThumbParameters', '1.22' );
- return $params; // valid thumbnail URL (via extension or config)
- }
-
// FIXME: Files in the temp zone don't set a MIME type, which means
// they don't have a handler. Which means we can't parse the param
// string. However, not a big issue as what good is a param string