MediaWiki REL1_34
|
Implements uploading from a HTTP resource. More...
Public Member Functions | |
fetchFile ( $httpOptions=[]) | |
Download the file. | |
getSourceType () | |
initialize ( $name, $url) | |
Entry point for API upload. | |
initializeFromRequest (&$request) | |
Entry point for SpecialUpload. | |
saveTempFileChunk ( $req, $buffer) | |
Callback: save a chunk of the result of a HTTP request to the temporary file. | |
Public Member Functions inherited from UploadBase | |
__construct () | |
checkSvgScriptCallback ( $element, $attribs, $data=null) | |
checkWarnings () | |
Check for non fatal problems with the file. | |
cleanupTempFile () | |
If we've modified the upload file we need to manually remove it on exit to clean up. | |
convertVerifyErrorToStatus ( $error) | |
fetchFile () | |
Fetch the file. | |
getFileSize () | |
Return the file size. | |
getImageInfo ( $result) | |
Gets image info about the file just uploaded. | |
getLocalFile () | |
Return the local file and initializes if necessary. | |
getRealPath ( $srcPath) | |
getStashFile () | |
getTempFileSha1Base36 () | |
Get the base 36 SHA1 of the file. | |
getTempPath () | |
getTitle () | |
Returns the title of the file to be uploaded. | |
getVerificationErrorCode ( $error) | |
initializePathInfo ( $name, $tempPath, $fileSize, $removeTempFile=false) | |
Initialize the path information. | |
isEmptyFile () | |
Return true if the file is empty. | |
performUpload ( $comment, $pageText, $watch, $user, $tags=[]) | |
Really perform the upload. | |
postProcessUpload () | |
Perform extra steps after a successful upload. | |
stashFile (User $user=null) | |
If the user does not supply all necessary information in the first upload form submission (either by accident or by design) then we may want to stash the file temporarily, get more information, and publish the file later. | |
tryStashFile (User $user, $isPartial=false) | |
Like stashFile(), but respects extensions' wishes to prevent the stashing. | |
validateName () | |
Verify that the name is valid and, if necessary, that we can overwrite. | |
verifyPermissions ( $user) | |
Alias for verifyTitlePermissions. | |
verifyTitlePermissions ( $user) | |
Check whether the user can edit, upload and create the image. | |
verifyUpload () | |
Verify whether the upload is sane. | |
zipEntryCallback ( $entry) | |
Callback for ZipDirectoryReader to detect Java class files. | |
Static Public Member Functions | |
static | isAllowed (UserIdentity $user) |
Checks if the user is allowed to use the upload-by-URL feature. | |
static | isAllowedHost ( $url) |
Checks whether the URL is for an allowed host The domains in the whitelist can include wildcard characters (*) in place of any of the domain levels, e.g. | |
static | isAllowedUrl ( $url) |
Checks whether the URL is not allowed. | |
static | isEnabled () |
Checks if the upload from URL feature is enabled. | |
static | isValidRequest ( $request) |
Static Public Member Functions inherited from UploadBase | |
static | checkFileExtension ( $ext, $list) |
Perform case-insensitive match against a list of file extensions. | |
static | checkFileExtensionList ( $ext, $list) |
Perform case-insensitive match against a list of file extensions. | |
static | checkSvgExternalDTD ( $type, $publicId, $systemId) |
Verify that DTD urls referenced are only the standard dtds. | |
static | checkSvgPICallback ( $target, $data) |
Callback to filter SVG Processing Instructions. | |
static | checkXMLEncodingMissmatch ( $file) |
Check a whitelist of xml encodings that are known not to be interpreted differently by the server's xml parser (expat) and some common browsers. | |
static | createFromRequest (&$request, $type=null) |
Create a form of UploadBase depending on wpSourceType and initializes it. | |
static | detectScript ( $file, $mime, $extension) |
Heuristic for detecting files that could contain JavaScript instructions or things that may look like HTML to a browser and are thus potentially harmful. | |
static | detectVirus ( $file) |
Generic wrapper function for a virus scanner program. | |
static | getExistsWarning ( $file) |
Helper function that does various existence checks for a file. | |
static | getFilenamePrefixBlacklist () |
Get a list of blacklisted filename prefixes from [[MediaWiki:Filename-prefix-blacklist]]. | |
static | getMaxPhpUploadSize () |
Get the PHP maximum uploaded file size, based on ini settings. | |
static | getMaxUploadSize ( $forType=null) |
Get the MediaWiki maximum uploaded file size for given type of upload, based on $wgMaxUploadSize. | |
static | getSessionStatus (User $user, $statusKey) |
Get the current status of a chunked upload (used for polling) | |
static | isThrottled ( $user) |
Returns true if the user has surpassed the upload rate limit, false otherwise. | |
static | isThumbName ( $filename) |
Helper function that checks whether the filename looks like a thumbnail. | |
static | makeWarningsSerializable ( $warnings) |
Convert the warnings array returned by checkWarnings() to something that can be serialized. | |
static | setSessionStatus (User $user, $statusKey, $value) |
Set the current status of a chunked upload (used for polling) | |
static | splitExtensions ( $filename) |
Split a file into a base name and all dot-delimited 'extensions' on the end. | |
static | userCanReUpload (User $user, File $img) |
Check if a user is the last uploader. | |
static | verifyExtension ( $mime, $extension) |
Checks if the MIME type of the uploaded file matches the file extension. | |
Protected Member Functions | |
makeTemporaryFile () | |
Create a new temporary file in the URL subdirectory of wfTempDir(). | |
reallyFetchFile ( $httpOptions=[]) | |
Download the file, save it to the temporary file and update the file size and set $mRemoveTempFile to true. | |
Protected Member Functions inherited from UploadBase | |
detectScriptInSvg ( $filename, $partial) | |
doStashFile (User $user=null) | |
Implementation for stashFile() and tryStashFile(). | |
runUploadStashFileHook (User $user) | |
setTempFile ( $tempPath, $fileSize=null) | |
verifyFile () | |
Verifies that it's ok to include the uploaded file. | |
verifyMimeType ( $mime) | |
Verify the MIME type. | |
verifyPartialFile () | |
A verification routine suitable for partial files. | |
Protected Attributes | |
$mTempPath | |
$mTmpHandle | |
$mUrl | |
Protected Attributes inherited from UploadBase | |
string[] | $mBlackListedExtensions |
string null | $mDesiredDestName |
string null | $mDestName |
array null | $mFileProps |
int null | $mFileSize |
string null | $mFilteredName |
string null | $mFinalExtension |
bool null | $mJavaDetected |
LocalFile | $mLocalFile |
string null | $mRemoveTempFile |
string null | $mSourceType |
UploadStashFile | $mStashFile |
string null | $mSVGNSError |
string | $mTempPath |
Local file system path to the file to upload (or a local copy) | |
Title bool | $mTitle = false |
int | $mTitleError = 0 |
TempFSFile null | $tempFileObj |
Wrapper to handle deleting the temp file. | |
Static Protected Attributes | |
static | $allowedUrls = [] |
Static Protected Attributes inherited from UploadBase | |
static | $safeXmlEncodings |
Additional Inherited Members | |
Public Attributes inherited from UploadBase | |
const | EMPTY_FILE = 3 |
const | FILE_TOO_LARGE = 12 |
const | FILENAME_TOO_LONG = 14 |
const | FILETYPE_BADTYPE = 9 |
const | FILETYPE_MISSING = 8 |
const | HOOK_ABORTED = 11 |
const | ILLEGAL_FILENAME = 5 |
const | MIN_LENGTH_PARTNAME = 4 |
const | OK = 0 |
const | OVERWRITE_EXISTING_FILE = 7 |
const | SUCCESS = 0 |
const | VERIFICATION_ERROR = 10 |
const | WINDOWS_NONASCII_FILENAME = 13 |
Implements uploading from a HTTP resource.
Definition at line 34 of file UploadFromUrl.php.
UploadFromUrl::fetchFile | ( | $httpOptions = [] | ) |
Download the file.
array | $httpOptions | Array of options for MWHttpRequest. This could be used to override the timeout on the http request. |
Definition at line 192 of file UploadFromUrl.php.
References Http\isValidURI(), and reallyFetchFile().
UploadFromUrl::getSourceType | ( | ) |
UploadFromUrl::initialize | ( | $name, | |
$url | |||
) |
Entry point for API upload.
string | $name | |
string | $url |
MWException |
Definition at line 140 of file UploadFromUrl.php.
References UploadBase\initializePathInfo(), and makeTemporaryFile().
Referenced by initializeFromRequest(), and ApiUpload\selectUploadModule().
UploadFromUrl::initializeFromRequest | ( | & | $request | ) |
Entry point for SpecialUpload.
WebRequest | &$request |
Reimplemented from UploadBase.
Definition at line 152 of file UploadFromUrl.php.
References initialize().
|
static |
Checks if the user is allowed to use the upload-by-URL feature.
If the user is not allowed, return the name of the user right as a string. If the user is allowed, have the parent do further permissions checking.
UserIdentity | $user |
Reimplemented from UploadBase.
Definition at line 50 of file UploadFromUrl.php.
References getPermissionManager().
Referenced by UploadForm\getSourceSection().
|
static |
Checks whether the URL is for an allowed host The domains in the whitelist can include wildcard characters (*) in place of any of the domain levels, e.g.
'*.flickr.com' or 'upload.*.gov.uk'.
string | $url |
Definition at line 79 of file UploadFromUrl.php.
References $wgCopyUploadsDomains, and wfParseUrl().
Referenced by ApiUpload\selectUploadModule().
|
static |
Checks whether the URL is not allowed.
string | $url |
Definition at line 123 of file UploadFromUrl.php.
Referenced by ApiUpload\selectUploadModule().
|
static |
Checks if the upload from URL feature is enabled.
Reimplemented from UploadBase.
Definition at line 65 of file UploadFromUrl.php.
References $wgAllowCopyUploads.
Referenced by UploadForm\getSourceSection(), and ApiUpload\selectUploadModule().
|
static |
WebRequest | $request |
Reimplemented from UploadBase.
Definition at line 167 of file UploadFromUrl.php.
|
protected |
Create a new temporary file in the URL subdirectory of wfTempDir().
Definition at line 211 of file UploadFromUrl.php.
Referenced by initialize().
|
protected |
Download the file, save it to the temporary file and update the file size and set $mRemoveTempFile to true.
array | $httpOptions | Array of options for MWHttpRequest |
Definition at line 253 of file UploadFromUrl.php.
References $wgCopyUploadProxy, $wgCopyUploadTimeout, true, and wfDebugLog().
Referenced by fetchFile().
UploadFromUrl::saveTempFileChunk | ( | $req, | |
$buffer | |||
) |
Callback: save a chunk of the result of a HTTP request to the temporary file.
mixed | $req | |
string | $buffer |
Definition at line 226 of file UploadFromUrl.php.
References wfDebugLog().
|
staticprotected |
Definition at line 39 of file UploadFromUrl.php.
|
protected |
Definition at line 37 of file UploadFromUrl.php.
|
protected |
Definition at line 37 of file UploadFromUrl.php.
|
protected |
Definition at line 35 of file UploadFromUrl.php.