MediaWiki REL1_31
UploadFromFile.php
Go to the documentation of this file.
1<?php
34 protected $mUpload = null;
35
40 $upload = $request->getUpload( 'wpUploadFile' );
41 $desiredDestName = $request->getText( 'wpDestFile' );
42 if ( !$desiredDestName ) {
43 $desiredDestName = $upload->getName();
44 }
45
46 $this->initialize( $desiredDestName, $upload );
47 }
48
54 function initialize( $name, $webRequestUpload ) {
55 $this->mUpload = $webRequestUpload;
56 $this->initializePathInfo( $name,
57 $this->mUpload->getTempName(), $this->mUpload->getSize() );
58 }
59
64 static function isValidRequest( $request ) {
65 # Allow all requests, even if no file is present, so that an error
66 # because a post_max_size or upload_max_filesize overflow
67 return true;
68 }
69
73 public function getSourceType() {
74 return 'file';
75 }
76
80 public function verifyUpload() {
81 # Check for a post_max_size or upload_max_size overflow, so that a
82 # proper error can be shown to the user
83 if ( is_null( $this->mTempPath ) || $this->isEmptyFile() ) {
84 if ( $this->mUpload->isIniSizeOverflow() ) {
85 return [
87 'max' => min(
88 self::getMaxUploadSize( $this->getSourceType() ),
89 self::getMaxPhpUploadSize()
90 ),
91 ];
92 }
93 }
94
95 return parent::verifyUpload();
96 }
97}
UploadBase and subclasses are the backend of MediaWiki's file uploads.
isEmptyFile()
Return true if the file is empty.
initializePathInfo( $name, $tempPath, $fileSize, $removeTempFile=false)
Initialize the path information.
const FILE_TOO_LARGE
Implements regular file uploads.
initialize( $name, $webRequestUpload)
Initialize from a filename and a WebRequestUpload.
static isValidRequest( $request)
WebRequestUpload $mUpload
initializeFromRequest(&$request)
Object to access the $_FILES array.
do that in ParserLimitReportFormat instead use this to modify the parameters of the image all existing parser cache entries will be invalid To avoid you ll need to handle that somehow(e.g. with the RejectParserCacheValue hook) because MediaWiki won 't do it for you. & $defaults also a ContextSource after deleting those rows but within the same transaction you ll probably need to make sure the header is varied on $request
Definition hooks.txt:2806