X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=docs%2Fhooks.txt;h=b7ea02cea37e54908ea4a81a9f1443c0c423f3ff;hb=c3cb10b55c832b9dc2d6805d10966549213c46b7;hp=d832012df5b92194e374675431b4c11950c249ac;hpb=835a1c38f00b601fbcc81a2aad8639160ccb1bc1;p=lhc%2Fweb%2Fwiklou.git diff --git a/docs/hooks.txt b/docs/hooks.txt index d832012df5..a6d6c6c08e 100644 --- a/docs/hooks.txt +++ b/docs/hooks.txt @@ -91,23 +91,29 @@ title-reversing if-blocks spread all over the codebase in showAnArticle, deleteAnArticle, exportArticle, etc., we can concentrate it all in an extension file: - function reverseArticleTitle( $article ) { + function onArticleShow( &$article ) { # ... } - function reverseForExport( $article ) { + function onArticleDelete( &$article ) { # ... } -The setup function for the extension just has to add its hook functions to the -appropriate events: - - setupTitleReversingExtension() { - global $wgHooks; + function onArticleExport( &$article ) { + # ... + } - $wgHooks['ArticleShow'][] = 'reverseArticleTitle'; - $wgHooks['ArticleDelete'][] = 'reverseArticleTitle'; - $wgHooks['ArticleExport'][] = 'reverseForExport'; +General practice is to have a dedicated file for functions activated by hooks, +which functions named 'onHookName'. In the example above, the file +'ReverseHooks.php' includes the functions that should be activated by the +'ArticleShow', 'ArticleDelete', and 'ArticleExport' hooks. The 'extension.json' +file with the extension's registration just has to add its hook functions +to the appropriate events: + + "Hooks": { + "ArticleShow": "ReverseHooks:onArticleShow", + "ArticleDelete": "ReverseHooks::onArticleDelete", + "ArticleExport": "ReverseHooks::onArticleExport" } Having all this code related to the title-reversion option in one place means @@ -1579,7 +1585,8 @@ entitled to be in. $user: user to promote. &$promote: groups that will be added. -'GetBlockedStatus': after loading blocking status of an user from the database +'GetBlockedStatus': DEPRECATED since 1.34 - use GetUserBlock instead. After +loading blocking status of a user from the database &$user: user (object) being checked 'GetCacheVaryCookies': Get cookies that should vary cache options. @@ -1720,6 +1727,14 @@ $contentHandler: ContentHandler for which the slot diff renderer is fetched. &$slotDiffRenderer: SlotDiffRenderer to change or replace. $context: IContextSource +'GetUserBlock': Modify the block found by the block manager. This may be a +single block or a composite block made from multiple blocks; the original +blocks can be seen using CompositeBlock::getOriginalBlocks() +$user: User targeted by the block +$ip: string|null The IP of the current request if $user is the current user + and they're not exempted from IP blocks. Null otherwise. +&$block: AbstractBlock object + 'getUserPermissionsErrors': Add a permissions error when permissions errors are checked for. Use instead of userCan for most cases. Return false if the user can't do it, and populate $result with the reason in the form of @@ -2816,6 +2831,7 @@ or request state must be added through MakeGlobalVariablesScript instead. Skin is made available for skin specific config. &$vars: [ variable name => value ] $skin: Skin +$config: Config object (since 1.34) 'ResourceLoaderJqueryMsgModuleMagicWords': Called in ResourceLoaderJqueryMsgModule to allow adding magic words for jQueryMsg. @@ -2908,7 +2924,7 @@ result augmentors. Note that lists should be in the format name => object and the names in both lists should be distinct. -'SecondaryDataUpdates': DEPRECATED! Use RevisionDataUpdates or override +'SecondaryDataUpdates': DEPRECATED since 1.32! Use RevisionDataUpdates or override ContentHandler::getSecondaryDataUpdates instead. Allows modification of the list of DataUpdates to perform when page content is modified. $title: Title of the page that is being edited. @@ -3164,7 +3180,7 @@ $row: Revision information from the database 'SpecialContributions::getForm::filters': Called with a list of filters to render on Special:Contributions. $sp: SpecialContributions object, for context -&$filters: List of filters rendered as HTML +&$filters: List of filter object definitions (compatible with OOUI form) 'SpecialListusersDefaultQuery': Called right before the end of UsersPager::getDefaultQuery(). @@ -3205,6 +3221,9 @@ $request: WebRequest object for getting the value provided by the current user $sp: SpecialPage object, for context &$fields: Current HTMLForm fields descriptors +'SpecialMuteSubmit': DEPRECATED since 1.34! Used only for instrumentation on SpecialMute +$data: Array containing information about submitted options on SpecialMute form + 'SpecialNewpagesConditions': Called when building sql query for Special:NewPages. &$special: NewPagesPager object (subclass of ReverseChronologicalPager) @@ -3490,6 +3509,12 @@ processing. &$archive: PageArchive object $title: Title object of the page that we're about to undelete +'UndeletePageToolLinks': Add one or more links to edit page subtitle when a page +has been previously deleted. +$context: IContextSource (object) +$linkRenderer: LinkRenderer instance +&$links: Array of HTML strings + 'UndeleteShowRevision': Called when showing a revision in Special:Undelete. $title: title object related to the revision $rev: revision (object) that will be viewed @@ -3691,7 +3716,7 @@ $newUGMs: An associative array (group name => UserGroupMembership object) of the user's current group memberships. 'UserIsBlockedFrom': Check if a user is blocked from a specific page (for -specific block exemptions). +specific block exemptions if a user is already blocked). $user: User in question $title: Title of the page in question &$blocked: Out-param, whether or not the user is blocked from that page. @@ -3708,7 +3733,9 @@ $ip: User's IP address false if a UserGetRights hook might remove the named right. $right: The user right being checked -'UserIsHidden': Check if the user's name should be hidden. See User::isHidden(). +'UserIsHidden': DEPRECATED since 1.34 - use GetUserBlock instead, and add a +system block that hides the user. Check if the user's name should be hidden. +See User::isHidden(). $user: User in question. &$hidden: Set true if the user's name should be hidden. @@ -3945,7 +3972,7 @@ dumps. One, and only one hook should set this, and return false. &$opts: Options to use for the query &$join: Join conditions -'WikiPageDeletionUpdates': DEPRECATED! Use PageDeletionDataUpdates or +'WikiPageDeletionUpdates': DEPRECATED since 1.32! Use PageDeletionDataUpdates or override ContentHandler::getDeletionDataUpdates instead. Manipulates the list of DeferrableUpdates to be applied when a page is deleted. $page: the WikiPage