Manual:Hooks/UploadComplete

From Linux Web Expert

UploadComplete
<translate> Available from <tvar name=1><translate> version <tvar </tvar></translate>
Called when a file upload has completed.
<translate> Define function:</translate>
public static function onUploadComplete( $image ) { ... }
<translate> Attach hook:</translate> <translate> In <tvar name=1>extension.json</tvar>:</translate>
{
	"Hooks": {
		"UploadComplete": "MediaWiki\\Extension\\MyExtension\\Hooks::onUploadComplete"
	}
}
<translate> Called from:</translate> <translate> File(s):</translate> upload/UploadBase.php
<translate> Interface:</translate> UploadCompleteHook.php

<translate> For more information about attaching hooks, see <tvar name=1>Manual:Hooks </tvar>.</translate>
<translate> For examples of extensions using this hook, see <tvar name=cat>Category:UploadComplete extensions</tvar>.</translate>

Details

  • $image: the file (object) saved UploadForm object (since 1.16.0? UploadBase)
  • Return value: True, if other hooks shall be evaluated. False if evaluation shall stop. If no return value is given, an Error occurs.

Example Methods

If you want to know what methods an upload form object has, see includes/special/SpecialUpload.php.

Some examples:

// older versions (?until 1.16?)
$image->mLocalFile; // LocalFile Object
$image->mLocalFile->fileExists; // 1 or 0
$image->mLocalFile->media_type; // examples: "AUDIO", "VIDEO", ...
$image->mLocalFile->mime; // example: audio/mp3
$image->mLocalFile->major_mime; // e.g. audio
$image->mLocalFile->minor_mime; // e.g. mp3
$image->mLocalFile->size; //in bytes, e.g. 2412586
$image->mLocalFile->user; // int userId 
$image->mLocalFile->user_text; // the username
$image->mLocalFile->description;
$image->mLocalFile->url; // gives the relative url for direct access of the uploaded media
$image->mLocalFile->getTitle(); // gives a title object for the current media

// new MW versions (since ??)
$image->getLocalFile(); // LocalFile Object
$image->getLocalFile()->fileExists; // 1 or 0
$image->getLocalFile()->media_type; // examples: "AUDIO", "VIDEO", ...
$image->getLocalFile()->mime; // example: audio/mp3
$image->getLocalFile()->major_mime; // e.g. audio
$image->getLocalFile()->minor_mime; // e.g. mp3
$image->getLocalFile()->size; //in bytes, e.g. 2412586
$image->getLocalFile()->user; // int userId
$image->getLocalFile()->user_text; // the username
$image->getLocalFile()->description;
$image->getLocalFile()->url; // gives the relative url for direct access of the uploaded media
$image->getLocalFile()->getTitle(); // gives a title object for the current media


/**
  * Do existence checks on a file and produce a warning
  * This check is static and can be done pre-upload via AJAX
  * Returns an HTML fragment consisting of one or more LI elements if there is a warning
  * Returns an empty string if there is no warning
  */
static function getExistsWarning( $file );

 /**
  * Split a file into a base name and all dot-delimited 'extensions'
  * on the end. Some web server configurations will fall back to
  * earlier pseudo-'extensions' to determine type and execute
  * scripts, so the blacklist needs to check them all.
  *
  * @return array
  */
function splitExtensions( $filename );