X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=docs%2Fhooks.txt;h=e5ffb0f82f8841cbe4499c57b8966845c8e0b5e7;hb=ebb291ce8a94f8e8de5e85fef9dfdb98b2105473;hp=6f98b7e162d7c1e9d48a5a116fffc3f2679b1fe3;hpb=25370b6d0e905b98aea7507886247df0e4026f5f;p=lhc%2Fweb%2Fwiklou.git diff --git a/docs/hooks.txt b/docs/hooks.txt index 6f98b7e162..e5ffb0f82f 100644 --- a/docs/hooks.txt +++ b/docs/hooks.txt @@ -68,7 +68,7 @@ email notification when an article is shown may add: if ($wgNotifyArticle) { wfNotifyArticleShow($article)); } - } + } Using a hook-running strategy, we can avoid having all this option-specific stuff in our mainline code. Using hooks, the function becomes: @@ -263,6 +263,23 @@ $message: out parameter: error message to display on abort $user: the User object that was created. (Parameter added in 1.7) $byEmail: true when account was created "by email" (added in 1.12) +'AfterImportPage': When a page import is completed +$title: Title under which the revisions were imported +$origTitle: Title provided by the XML file +$revCount: Number of revisions in the XML file +$sRevCount: Number of sucessfully imported revisions +$pageInfo: associative array of page information + +'AfterUserMessage': After a user message has been left, this hook is +called to take care of any cleanup. +$user: The user who we left the message for. +$article: The article the message was left on. +$subject: The subject of the message +$text: The text of the message. +$signature: The signature we used. +$summary: The edit summary. +$editor: The editor that performed the edit. + 'AjaxAddScript': Called in output page just before the initialisation of the javascript ajax engine. The hook is only called when ajax is enabled ( $wgUseAjax = true; ). @@ -270,7 +287,7 @@ is enabled ( $wgUseAjax = true; ). 'AlternateEdit': before checking if an user can edit a page and before showing the edit form ( EditPage::edit() ). This is triggered on &action=edit. -$EditPage : the EditPage object +$EditPage: the EditPage object 'APIAfterExecute': after calling the execute() method of an API module. Use this to extend core API modules. @@ -282,7 +299,7 @@ fail, returning an error message or an tag if $resultArr was filled. $EditPage : the EditPage object $text : the new text of the article (has yet to be saved) -$resultArr : data in this array will be added to the API result +&$resultArr : data in this array will be added to the API result 'APIGetAllowedParams': use this hook to modify a module's parameters. &$module: Module object @@ -350,6 +367,12 @@ the database $article: the article (object) being loaded from the database $content: the content (string) of the article +'ArticleConfirmDelete': before writing the confirmation form for article + deletion +$article: the article (object) being deleted +$output: the OutputPage object ($wgOut) +&$reason: the reason (string) the article is being deleted + 'ArticleDelete': before an article is deleted $article: the article (object) being deleted $user: the user (object) deleting the article @@ -423,7 +446,7 @@ $moveonly: boolean whether it was for move only or not 'ArticlePurge': before executing "&action=purge" $article: article (object) to purge -'ArticleRevisionVisiblitySet': called when changing visibility of one or more +'ArticleRevisionVisibilitySet': called when changing visibility of one or more revision of an article &$title: title object of the article @@ -507,6 +530,14 @@ rendered inline in wiki pages or galleries in category pages. &$nt: the image title &$time: image timestamp +'BeforeInitialize': before anything is initialized in performRequestForTitle() +&$title: Title being used for request +&$article: The associated Article object +&$output: OutputPage object +&$user: User +$request: WebRequest object +$mediaWiki: Mediawiki object + 'BeforePageDisplay': Prior to outputting a page &$out: OutputPage object &$skin: Skin object @@ -539,17 +570,23 @@ $user: the user who did the block (not the one being blocked) $isbn: ISBN to show information for $output: OutputPage object in use +'CanonicalNamespaces': For extensions adding their own namespaces or altering the defaults +&$namespaces: Array of namespace numbers with corresponding canonical names + 'CategoryPageView': before viewing a categorypage in CategoryPage::view $catpage: CategoryPage instance 'ChangesListInsertArticleLink': Override or augment link to article in RC list. -&$this: ChangesList instance. +&$changesList: ChangesList instance. &$articlelink: HTML of link to article (already filled-in). &$s: HTML of row that is being constructed. &$rc: RecentChange instance. $unpatrolled: Whether or not we are showing unpatrolled changes. $watched: Whether or not the change is watched by the user. +'ConfirmEmailComplete': Called after a user's email has been confirmed successfully +$user: user (object) whose email is being confirmed + 'ContribsPager::getQueryInfo': Before the contributions query is about to run &$pager: Pager object for contributions &queryInfo: The query for the contribs Pager @@ -613,7 +650,7 @@ $summary: Edit summary for page 'EditFilterMerged': Post-section-merge edit filter $editor: EditPage instance (object) $text: content of the edit box -$error: error message to return +&$error: error message to return $summary: Edit summary for page 'EditFormPreloadText': Allows population of the edit form when creating @@ -621,9 +658,13 @@ new pages &$text: Text to preload with &$title: Title object representing the page being created +'EditFormInitialText': Allows modifying the edit form when editing existing +pages +$editPage: EditPage object + 'EditPage::attemptSave': called before an article is saved, that is before insertNewArticle() is called -&$editpage_Obj: the current EditPage object +$editpage_Obj: the current EditPage object 'EditPage::importFormData': allow extensions to read additional data posted in the form @@ -672,6 +713,19 @@ textarea in the edit form $title: title of page being edited &$msg: localization message name, overridable. Default is either 'copyrightwarning' or 'copyrightwarning2' +'EditPageGetDiffText': Allow modifying the wikitext that will be used in +"Show changes" +$editPage: EditPage object +&$newtext: wikitext that will be used as "your version" + +'EditPageGetPreviewText': Allow modifying the wikitext that will be previewed +$editPage: EditPage object +&$toparse: wikitext that will be parsed + +'EditPageNoSuchSection': When a section edit request is given for an non-existent section +&$editpage: The current EditPage object +&$res: the HTML of the error text + 'EditPageTosSummary': Give a chance for site and per-namespace customizations of terms of service summary link that might exist separately from the copyright notice. @@ -697,12 +751,21 @@ $from: address of sending user $subject: subject of the mail $text: text of the mail +'EmailUserCC': before sending the copy of the email to the author +$to: address of receiving user +$from: address of sending user +$subject: subject of the mail +$text: text of the mail + 'EmailUserComplete': after sending email from one user to another $to: address of receiving user $from: address of sending user $subject: subject of the mail $text: text of the mail +'EmailUserForm': after building the email user form object +$form: HTMLForm object + 'EmailUserPermissionsErrors': to retrieve permissions errors for emailing a user. $user: The user who is trying to email another user. $editToken: The user's edit token. @@ -725,6 +788,8 @@ $reason: reason 'FileUpload': When a file upload occurs $file : Image object representing the file that was uploaded +$reupload : Boolean indicating if there was a previously another image there or not (since 1.17) +$hasDescription : Boolean indicating that there was already a description page and a new one from the comment wasn't created (since 1.17) 'FileUndeleteComplete': When a file is undeleted $title: title object to the file @@ -732,6 +797,12 @@ $fileVersions: array of undeleted versions. Empty if all versions were restored $user: user who performed the undeletion $reason: reason +'FormatUserMessage': Hook to format a message if you want to override +the internal formatter. +$subject: Title of the message. +&$text: Text of the message. +$signature: Signature that they would like to leave. + 'GetAutoPromoteGroups': When determining which autopromote groups a user is entitled to be in. &$user: user to promote. @@ -755,6 +826,9 @@ $title: Title object of page $url: string value as output (out parameter, can modify) $query: query options passed to Title::getInternalURL() +'GetIP': modify the ip of the current user (called only once) +&$ip: string holding the ip as determined so far + 'GetLinkColours': modify the CSS class of an array of page links $linkcolour_ids: array of prefixed DB keys of the pages linked to, indexed by page_id. @@ -784,14 +858,10 @@ $result: User permissions error to add. If none, return true. 'getUserPermissionsErrorsExpensive': Absolutely the same, but is called only if expensive checks are enabled. -'HTMLCacheUpdate::doUpdate': After cache invalidation updates are inserted -into the job queue. -$title: Title object, pages linked to this title are purged. - 'ImageBeforeProduceHTML': Called before producing the HTML created by a wiki image insertion. You can skip the default logic entirely by returning false, or just modify a few things using call-by-reference. -&$this: Skin object +&$skin: Skin object &$title: Title object of the image &$file: File object, or false if it doesn't exist &$frameParams: Various parameters with special meanings; see documentation in @@ -807,6 +877,11 @@ $title: Title object, pages linked to this title are purged. $imagePage: ImagePage object ($this) $output: $wgOut +'ImagePageAfterImageLinks': called after the image links section on an image + page is built +$imagePage: ImagePage object ($this) +&$html: HTML for the hook to add + 'ImagePageFileHistoryLine': called when a file history line is contructed $file: the file $line: the HTML of the history line @@ -817,6 +892,47 @@ $page: ImagePage object &$file: File object &$displayFile: displayed File object +'ImagePageShowTOC': called when the file toc on an image page is generated +$page: ImagePage object +&$toc: Array of
  • strings + +'ImgAuthBeforeStream': executed before file is streamed to user, but only when + using img_auth.php +&$title: the Title object of the file as it would appear for the upload page +&$path: the original file and path name when img_auth was invoked by the the web + server +&$name: the name only component of the file +&$result: The location to pass back results of the hook routine (only used if + failed) + $result[0]=The index of the header message + $result[1]=The index of the body text message + $result[2 through n]=Parameters passed to body text message. Please note the + header message cannot receive/use parameters. + +'ImportHandleLogItemXMLTag': When parsing a XML tag in a log item +$reader: XMLReader object +$logInfo: Array of information +Return false to stop further processing of the tag + +'ImportHandlePageXMLTag': When parsing a XML tag in a page +$reader: XMLReader object +$pageInfo: Array of information +Return false to stop further processing of the tag + +'ImportHandleRevisionXMLTag': When parsing a XML tag in a page revision +$reader: XMLReader object +$revInfo: Array of information +Return false to stop further processing of the tag + +'ImportHandleToplevelXMLTag': When parsing a top level XML tag +$reader: XMLReader object +Return false to stop further processing of the tag + +'ImportHandleUploadXMLTag': When parsing a XML tag in a file upload +$reader: XMLReader object +$revisionInfo: Array of information +Return false to stop further processing of the tag + 'InitializeArticleMaybeRedirect': MediaWiki check to see if title is a redirect $title: Title object ($wgTitle) $request: WebRequest @@ -826,9 +942,12 @@ $article: Article object 'InternalParseBeforeLinks': during Parser's internalParse method before links but after noinclude/includeonly/onlyinclude and other processing. -&$this: Parser object +&$parser: Parser object &$text: string containing partially parsed text -&$this->mStripState: Parser's internal StripState object +&$stripState: Parser's internal StripState object + +'InvalidateEmailComplete': Called after a user's email has been invalidated successfully +$user: user (object) whose email is being invalidated 'IsFileCacheable': Override the result of Article::isFileCacheable() (if true) $article: article (object) being checked @@ -844,7 +963,7 @@ $addr: The e-mail address entered by the user 'isValidPassword': Override the result of User::isValidPassword() $password: The password entered by the user -&$result: Set this to either true (passes) or the key for a message error +&$result: Set this and return false to override the internal checks $user: User the password is being validated for 'LanguageGetMagic': DEPRECATED, use $magicWords in a file listed in @@ -904,20 +1023,20 @@ $linkType: The external link type 'LinksUpdate': At the beginning of LinksUpdate::doUpdate() just before the actual update -&$linksUpdate: the LinkUpdate object +&$linksUpdate: the LinksUpdate object 'LinksUpdateComplete': At the end of LinksUpdate::doUpdate() when updating has completed -&$linksUpdate: the LinkUpdate object +&$linksUpdate: the LinksUpdate object 'LinksUpdateConstructed': At the end of LinksUpdate() is contruction. -&$linksUpdate: the LinkUpdate object +&$linksUpdate: the LinksUpdate object 'ListDefinedTags': When trying to find all defined tags. &$tags: The list of tags. -'LoadExtensionSchemaUpdates': called by maintenance/updaters.inc when upgrading -database schema +'LoadExtensionSchemaUpdates': called during database installation and updates +&updater: A DatabaseUpdater subclass 'LocalFile::getHistory': called before file history query performed $file: the file @@ -970,7 +1089,8 @@ DEPRECATED: Use $wgLogActions &$actionText: array of strings 'MagicWordMagicWords': When defining new magic word. -DEPRECATED: Use LanguageGetMagic hook instead +DEPRECATED: use $magicWords in a file listed in +$wgExtensionMessagesFiles instead. $magicWords: array of strings 'MagicWordwgVariableIDs': When definig new magic words IDs. @@ -1001,12 +1121,12 @@ $errmsg: error message, in HTML (string). Nonempty indicates failure 'MediaWikiPerformAction': Override MediaWiki::performAction(). Use this to do something completely different, after the basic globals have been set up, but before ordinary actions take place. -$output: $wgOut +$output: $wgOut $article: $wgArticle -$title: $wgTitle -$user: $wgUser +$title: $wgTitle +$user: $wgUser $request: $wgRequest -$this: The $mediawiki object +$mediaWiki: The $mediawiki object 'MessagesPreLoad': When loading a message from the database $title: title of the message (string) @@ -1017,11 +1137,19 @@ Useful for updating caches. $title: name of the page changed. $text: new contents of the page. +'ModifyExportQuery': Modify the query used by the exporter. +$db: The database object to be queried. +&$tables: Tables in the query. +&$conds: Conditions in the query. +&$opts: Options for the query. +&$join_conds: Join conditions for the query. + 'MonoBookTemplateToolboxEnd': Called by Monobook skin after toolbox links have been rendered (useful for adding more) -Note: this is only run for the Monobook skin. To add items to the toolbox -for all 'SkinTemplate'-type skins, use the SkinTemplateToolboxEnd hook -instead. +Note: this is only run for the Monobook skin. This hook is deprecated and +may be removed in the future. To add items to the toolbox you should use +the SkinTemplateToolboxEnd hook instead, which works for all +"SkinTemplate"-type skins. $tools: array of tools 'NewRevisionFromEditComplete': called when a revision was inserted @@ -1051,11 +1179,24 @@ displayed Hooks can alter or append to the array of URLs for search & suggestion formats. &$urls: array of associative arrays with Url element attributes +'OtherBlockLogLink': Get links to the block log from extensions which blocks + users and/or IP addresses too +$otherBlockLink: An array with links to other block logs +$ip: The requested IP address or username + 'OutputPageBeforeHTML': a page has been processed by the parser and the resulting HTML is about to be displayed. $parserOutput: the parserOutput (object) that corresponds to the page $text: the text that will be displayed, in HTML (string) +'OutputPageBodyAttributes': called when OutputPage::headElement is creating the body +tag to allow for extensions to add attributes to the body of the page they might +need. Or to allow building extensions to add body classes that aren't of high +enough demand to be included in core. +$out: The OutputPage which called the hook, can be used to get the real title +$sk: The Skin that called OutputPage::headElement +&$bodyAttrs: An array of attributes for the body tag passed to Html::openElement + 'OutputPageCheckLastModified': when checking if the page has been modified since the last visit &$modifiedTimes: array of timestamps. @@ -1080,6 +1221,7 @@ $article: the article that the history is loading for 'PageHistoryLineEnding' : right before the end
  • is added to a history line $row: the revision row for this line $s: the string representing this parsed line +$classes: array containing the
  • element classes 'PageHistoryPager::getQueryInfo': when a history pager query parameter set is constructed @@ -1125,6 +1267,7 @@ $varCache: array to store the value in case of multiples calls of the same magic word $index: index (string) of the magic $ret: value of the magic word (the hook should set it) +$frame: PPFrame object to use for expanding any template variables 'ParserGetVariableValueTs': use this to change the value of the time for the {{LOCAL...}} magic word @@ -1186,6 +1329,22 @@ $user: User (object) changing his passoword $newPass: new password $error: error (string) 'badretype', 'wrongpassword', 'error' or 'success' +'ProtectionForm::buildForm': called after all protection type fieldsets are made in the form +$article: the title being (un)protected +$output: a string of the form HTML so far + +'ProtectionForm::save': called when a protection form is submitted +$article: the title being (un)protected +$errorMsg: an html message string of an error + +'ProtectionForm::showLogExtract': called after the protection log extract is shown +$article: the page the form is shown for +$out: OutputPage object + +'ResourceLoaderRegisterModules': Right before modules information is required, such as when responding to a resource +loader request or generating HTML output. +&$resourceLoader: ResourceLoader object + 'RawPageViewBeforeOutput': Right before the text is blown out in action=raw &$obj: RawPage object &$text: The text that's going to be the output @@ -1208,17 +1367,54 @@ $namespace : Page namespace $title : Page title $text : Current text being indexed -'SearchGetNearMatch': An extra chance for exact-title-matches in "go" searches +'SearchGetNearMatchBefore': Perform exact-title-matches in "go" searches before the normal operations +$allSearchTerms : Array of the search terms in all content languages +&$titleResult : Outparam; the value to return. A Title object or null. + +'SearchGetNearMatch': An extra chance for exact-title-matches in "go" searches if nothing was found $term : Search term string &$title : Outparam; set to $title object and return false for a match +'SearchGetNearMatchComplete': A chance to modify exact-title-matches in "go" searches +$term : Search term string +&$title : Current Title object that is being returned (null if none found). + +'SearchEngineReplacePrefixesComplete': Run after SearchEngine::replacePrefixes(). +$searchEngine : The SearchEngine object. Users of this hooks will be interested +in the $searchEngine->namespaces array. +$query : Original query. +&$parsed : Resultant query with the prefixes stripped. + +'SearchableNamespaces': An option to modify which namespaces are searchable. +&$arr : Array of namespaces ($nsId => $name) which will be used. + 'SetupAfterCache': Called in Setup.php, after cache objects are set +'SetupUserMessageArticle': Called in User::leaveUserMessage() before +anything has been posted to the article. +$user: The user who we left the message for. +&$article: The article that will be posted to. +$subject: The subject of the message +$text: The text of the message. +$signature: The signature we used. +$summary: The edit summary. +$editor: The editor that performed the edit. + +'ShowMissingArticle': Called when generating the output for a non-existent page +$article: The article object corresponding to the page + 'ShowRawCssJs': Customise the output of raw CSS and JavaScript in page views $text: Text being shown $title: Title of the custom script/stylesheet page $output: Current OutputPage object +'ShowSearchHitTitle': Customise display of search hit title/link. +&$title: Title to link to +&$text: Text to use for the link +$result: The search result +$terms: The search terms entered +$page: The SpecialSearch object. + 'SiteNoticeBefore': Before the sitenotice/anonnotice is composed &$siteNotice: HTML returned as the sitenotice Return true to allow the normal method of notice selection/rendering to work, @@ -1236,6 +1432,7 @@ Append to $text to add additional text/scripts after the stock bottom scripts. 'SkinAfterContent': Allows extensions to add text after the page content and article metadata. &$data: (string) Text to be printed out directly (without parsing) +$skin: Skin object This hook should work in all skins. Just set the &$data variable to the text you're going to add. @@ -1249,10 +1446,11 @@ $title: displayed page title $type: 'normal' or 'history' for old/diff views &$msg: overridable message; usually 'copyright' or 'history_copyright'. This message must be in HTML format, not wikitext! &$link: overridable HTML link to be passed into the message as $1 +&$forContent: overridable flag if copyright footer is shown in content language. 'SkinSubPageSubtitle': At the beginning of Skin::subPageSubtitle() -$skin: Skin object &$subpages: Subpage links HTML +$skin: Skin object If false is returned $subpages will be used instead of the HTML subPageSubtitle() generates. If true is returned, $subpages will be ignored and the rest of @@ -1293,15 +1491,15 @@ $out: Css to return 'SkinTemplateTabAction': Override SkinTemplate::tabAction(). You can either create your own array, or alter the parameters for the normal one. -&$this: The SkinTemplate instance. -$title: Title instance for the page. -$message: Visible label of tab. -$selected: Whether this is a selected tab. +&$sktemplate: The SkinTemplate instance. +$title: Title instance for the page. +$message: Visible label of tab. +$selected: Whether this is a selected tab. $checkEdit: Whether or not the action=edit query should be added if appropriate. -&$classes: Array of CSS classes to apply. -&$query: Query string to add to link. -&$text: Link text. -&$result: Complete assoc. array if you want to return true. +&$classes: Array of CSS classes to apply. +&$query: Query string to add to link. +&$text: Link text. +&$result: Complete assoc. array if you want to return true. 'SkinTemplateTabs': called when finished to build the actions tabs $sktemplate: SkinTemplate object @@ -1349,25 +1547,48 @@ $movePage: MovePageForm object $oldTitle: old title (object) $newTitle: new title (object) +'SpecialNewpagesConditions': called when building sql query for Special:NewPages +&$special: NewPagesPager object (subclass of ReverseChronologicalPager) +$opts: FormOptions object containing special page options +&$conds: array of WHERE conditionals for query + 'SpecialPage_initList': called when setting up SpecialPage::$mList, use this hook to remove a core special page $list: list (array) of core special pages +'SpecialRandomGetRandomTitle': called during the execution of Special:Random, +use this to change some selection criteria or substitute a different title +&$randstr: The random number from wfRandom() +&$isRedir: Boolean, whether to select a redirect or non-redirect +&$namespaces: An array of namespace indexes to get the title from +&$extra: An array of extra SQL statements +&$title: If the hook returns false, a Title object to use instead of the +result from the normal query + 'SpecialRecentChangesPanel': called when building form options in SpecialRecentChanges &$extraOpts: array of added items, to which can be added $opts: FormOptions for this request 'SpecialRecentChangesQuery': called when building sql query for -SpecialRecentChanges +SpecialRecentChanges and SpecialRecentChangesLinked &$conds: array of WHERE conditionals for query &$tables: array of tables to be queried &$join_conds: join conditions for the tables $opts: FormOptions for this request +&$query_options: array of options for the database request +&$select: String '*' or array of columns to select + +'SpecialSearchGomatch': called when user clicked the "Go" button and the target +exists +&$title: title object generated from the text entred by the user 'SpecialSearchNogomatch': called when user clicked the "Go" button but the target doesn't exist -$title: title object generated from the text entred by the user +&$title: title object generated from the text entred by the user + +'SpecialSearchProfiles': allows modification of search profiles +&$profiles: profiles, which can be modified. 'SpecialSearchResults': called before search result display when there are matches @@ -1379,9 +1600,13 @@ $term: string of search term no matches $term: string of search term +'SpecialStatsAddExtra': add extra statistic at the end of Special:Statistics +&$extraStats: Array to save the new stats + ( $extraStats[''] => ; ) + 'SpecialUploadComplete': Called after successfully uploading a file from Special:Upload -$form: The UploadForm object +$form: The SpecialUpload object 'SpecialVersionExtensionTypes': called when generating the extensions credits, use this to change the tables headers @@ -1398,6 +1623,11 @@ database result &$titleArray: set this to an object to override the default object returned $res: database result used to create the object +'TitleGetRestrictionTypes': Allows extensions to modify the types of protection + that can be applied. +$title: The title in question. +&$types: The types of protection available. + 'TitleMoveComplete': after moving an article (title) $old: old title $nt: new title @@ -1414,6 +1644,9 @@ $rev: revision (object) that will be viewed $action: action name $article: article "acted on" +'UnitTestsList': Called when building a list of files with PHPUnit tests +&$files: list of files + 'UnwatchArticle': before a watch is removed from an article $user: user watching $article: article object to be removed @@ -1432,19 +1665,48 @@ You might set the member-variables $uploadFormTextTop and $uploadFormTextAfterSummary to inject text (HTML) either before or after the editform. -'UploadForm:BeforeProcessing': at the beginning of processUpload() +'UploadForm:BeforeProcessing': DEPRECATED! at the beginning of processUpload() $form: UploadForm object Lets you poke at member variables like $mUploadDescription before the file is saved. -'UploadVerification': additional chances to reject an uploaded file +'UploadCreateFromRequest': when UploadBase::createFromRequest has been called +$type: (string) the requested upload type +&$className: the class name of the Upload instance to be created + +'UploadComplete': when Upload completes an upload +&$upload: an UploadBase child instance + +'UploadFormInitDescriptor': after the descriptor for the upload form as been + assembled +$descriptor: (array) the HTMLForm descriptor + +'UploadFormSourceDescriptors': after the standard source inputs have been +added to the descriptor +$descriptor: (array) the HTMLForm descriptor + +'UploadVerification': additional chances to reject an uploaded file. Consider + using UploadVerifyFile instead. string $saveName: destination file name string $tempName: filesystem path to the temporary file for checks -string &$error: output: HTML error to show if upload canceled by returning false +string &$error: output: message key for message to show if upload canceled + by returning false. May also be an array, where the first element + is the message key and the remaining elements are used as parameters to + the message. + +'UploadVerifyFile': extra file verification, based on mime type, etc. Preferred + in most cases over UploadVerification. +object $upload: an instance of UploadBase, with all info about the upload +string $mime: the uploaded file's mime type, as detected by MediaWiki. Handlers + will typically only apply for specific mime types. +object &$error: output: true if the file is valid. Otherwise, an indexed array + representing the problem with the file, where the first element + is the message key and the remaining elements are used as parameters to + the message. 'UploadComplete': Upon completion of a file upload -$uploadForm: Upload form object. File can be accessed by - $uploadForm->mLocalFile. +$uploadBase: UploadBase (or subclass) object. File can be accessed by + $uploadBase->getLocalFile(). 'User::mailPasswordInternal': before creation and mailing of a user's new temporary password @@ -1469,7 +1731,6 @@ $result: Pointer to result returned if hook returns false. If null is returned, $user: User (object) whose permission is being checked &$canSend: bool set on input, can override on output - 'UserClearNewTalkNotification': called when clearing the "You have new messages!" message, return false to not delete it $user: User (object) that'll clear the message @@ -1515,12 +1776,20 @@ $user: User object &$groups: List of implicit (automatically-assigned) groups 'UserGetReservedNames': allows to modify $wgReservedUsernames at run time -*&$reservedUsernames: $wgReservedUsernames +&$reservedUsernames: $wgReservedUsernames 'UserGetRights': Called in User::getRights() $user: User to get rights for &$rights: Current rights +'UserIsBlockedFrom': Check if a user is blocked from a specific page (for specific block + exemptions). +$user: User in question +$title: Title of the page in question +&$blocked: Out-param, whether or not the user is blocked from that page. +&$allowUsertalk: If the user is blocked, whether or not the block allows users to edit their + own user talk pages. + 'UserIsBlockedGlobally': Check if user is blocked on all wikis. &$user: User object $ip: User's IP address @@ -1600,17 +1869,6 @@ $user: User object &$timestamp: new timestamp, change this to override local email authentification timestamp -'UserToggles': called when initialising User::$mToggles, use this to add -new toggles -$toggles: array of toggles to add - -'VectorTemplateToolboxEnd': Called by Vector skin after toolbox links have -been rendered (useful for adding more) -Note: this is only run for the Vector skin. To add items to the toolbox -for all 'SkinTemplate'-type skins, use the SkinTemplateToolboxEnd hook -instead. -$tools: array of tools - 'WantedPages::getSQL': called in WantedPagesPage::getSQL(), can be used to alter the SQL query which gets the list of wanted pages &$wantedPages: WantedPagesPage object @@ -1624,6 +1882,13 @@ $article: article object to be watched $user: user that watched $article: article object watched +'WatchlistEditorBuildRemoveLine': when building remove lines in + Special:Watchlist/edit +&$tools: array of extra links +$title: Title object +$redirect: whether the page is a redirect +$skin: Skin object + 'WikiExporter::dumpStableQuery': Get the SELECT query for "stable" revisions dumps One, and only one hook should set this, and return false. @@ -1635,5 +1900,19 @@ One, and only one hook should set this, and return false. query pages to be updated with maintenance/updateSpecialPages.php $query: $wgQueryPages itself +'XmlDumpWriterOpenPage': Called at the end of XmlDumpWriter::openPage, to allow extra + metadata to be added. +$obj: The XmlDumpWriter object. +&$out: The output string. +$row: The database row for the page. +$title: The title of the page. + +'XmlDumpWriterWriteRevision': Called at the end of a revision in an XML dump, to add extra + metadata. +$obj: The XmlDumpWriter object. +&$out: The text being output. +$row: The database row for the revision. +$text: The revision text. + More hooks might be available but undocumented, you can execute ./maintenance/findhooks.php to find hidden one.