X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=docs%2Fhooks.txt;h=e5ffb0f82f8841cbe4499c57b8966845c8e0b5e7;hb=ebb291ce8a94f8e8de5e85fef9dfdb98b2105473;hp=6969eea400ca993fb12dfd11547df39b8792d0aa;hpb=e2374f6b6475caf29125c8d7c1abf3f48a99910d;p=lhc%2Fweb%2Fwiklou.git diff --git a/docs/hooks.txt b/docs/hooks.txt index 6969eea400..e5ffb0f82f 100644 --- a/docs/hooks.txt +++ b/docs/hooks.txt @@ -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; ). @@ -429,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 @@ -553,10 +570,8 @@ $user: the user who did the block (not the one being blocked) $isbn: ISBN to show information for $output: OutputPage object in use -'CacheHeadersAfterSet': after cache headers have been set in -OutputPage::sendCacheControl, so they can be overridden without -disabling output method -$out: OutputPage instance +'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 @@ -643,6 +658,10 @@ 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 @@ -694,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. @@ -719,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. @@ -747,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 @@ -754,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. @@ -777,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. @@ -787,11 +839,6 @@ $title: Title object of page $url: string value as output (out parameter, can modify) $query: query options passed to Title::getLocalURL() -'getOtherBlockLogLink': 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 - 'GetPreferences': modify user preferences $user: User whose preferences are being modified. &$preferences: Preferences description array, to be fed to an HTMLForm object @@ -811,10 +858,6 @@ $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. @@ -866,6 +909,29 @@ $page: ImagePage object $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) @@ -957,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 @@ -1080,9 +1146,10 @@ $db: The database object to be queried. '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 @@ -1112,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. @@ -1141,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 @@ -1260,6 +1341,10 @@ $errorMsg: an html message string of an error $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 @@ -1282,12 +1367,39 @@ $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 @@ -1320,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. @@ -1333,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 @@ -1433,6 +1547,11 @@ $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 @@ -1452,15 +1571,21 @@ SpecialRecentChanges $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. @@ -1519,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 @@ -1557,7 +1685,8 @@ $descriptor: (array) the HTMLForm descriptor added to the descriptor $descriptor: (array) the HTMLForm descriptor -'UploadVerification': additional chances to reject an uploaded file +'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: message key for message to show if upload canceled @@ -1565,6 +1694,16 @@ string &$error: output: message key for message to show if upload canceled 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 $uploadBase: UploadBase (or subclass) object. File can be accessed by $uploadBase->getLocalFile(). @@ -1730,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 @@ -1754,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.