MediaWiki REL1_39
HookRunner.php
Go to the documentation of this file.
1<?php
2
4
5use Article;
6use Config;
7use File;
20use Parser;
22use Skin;
23use SpecialPage;
24use StatusValue;
25use Title;
26
40class HookRunner implements
565{
567 private $container;
568
569 public function __construct( HookContainer $container ) {
570 $this->container = $container;
571 }
572
573 public function onAbortAutoblock( $autoblockip, $block ) {
574 return $this->container->run(
575 'AbortAutoblock',
576 [ $autoblockip, $block ]
577 );
578 }
579
580 public function onAbortDiffCache( $diffEngine ) {
581 return $this->container->run(
582 'AbortDiffCache',
583 [ $diffEngine ]
584 );
585 }
586
587 public function onAbortEmailNotification( $editor, $title, $rc ) {
588 return $this->container->run(
589 'AbortEmailNotification',
590 [ $editor, $title, $rc ]
591 );
592 }
593
594 public function onAbortTalkPageEmailNotification( $targetUser, $title ) {
595 return $this->container->run(
596 'AbortTalkPageEmailNotification',
597 [ $targetUser, $title ]
598 );
599 }
600
601 public function onActionBeforeFormDisplay( $name, $form, $article ) {
602 return $this->container->run(
603 'ActionBeforeFormDisplay',
604 [ $name, $form, $article ]
605 );
606 }
607
608 public function onActionModifyFormFields( $name, &$fields, $article ) {
609 return $this->container->run(
610 'ActionModifyFormFields',
611 [ $name, &$fields, $article ]
612 );
613 }
614
615 public function onAddNewAccount( $user, $byEmail ) {
616 return $this->container->run(
617 'AddNewAccount',
618 [ $user, $byEmail ]
619 );
620 }
621
622 public function onAfterBuildFeedLinks( &$feedLinks ) {
623 return $this->container->run(
624 'AfterBuildFeedLinks',
625 [ &$feedLinks ]
626 );
627 }
628
629 public function onAfterFinalPageOutput( $output ): void {
630 $this->container->run(
631 'AfterFinalPageOutput',
632 [ $output ],
633 [ 'abortable' => false ]
634 );
635 }
636
637 public function onAfterImportPage( $title, $foreignTitle, $revCount,
638 $sRevCount, $pageInfo
639 ) {
640 return $this->container->run(
641 'AfterImportPage',
642 [ $title, $foreignTitle, $revCount, $sRevCount, $pageInfo ]
643 );
644 }
645
646 public function onAfterParserFetchFileAndTitle( $parser, $ig, &$html ) {
647 return $this->container->run(
648 'AfterParserFetchFileAndTitle',
649 [ $parser, $ig, &$html ]
650 );
651 }
652
653 public function onAlternateEdit( $editPage ) {
654 return $this->container->run(
655 'AlternateEdit',
656 [ $editPage ]
657 );
658 }
659
660 public function onAlternateEditPreview( $editPage, &$content, &$previewHTML,
661 &$parserOutput
662 ) {
663 return $this->container->run(
664 'AlternateEditPreview',
665 [ $editPage, &$content, &$previewHTML, &$parserOutput ]
666 );
667 }
668
669 public function onAlternateUserMailer( $headers, $to, $from, $subject, $body ) {
670 return $this->container->run(
671 'AlternateUserMailer',
672 [ $headers, $to, $from, $subject, $body ]
673 );
674 }
675
676 public function onAncientPagesQuery( &$tables, &$conds, &$joinConds ) {
677 return $this->container->run(
678 'AncientPagesQuery',
679 [ &$tables, &$conds, &$joinConds ]
680 );
681 }
682
683 public function onApiBeforeMain( &$main ) {
684 return $this->container->run(
685 'ApiBeforeMain',
686 [ &$main ]
687 );
688 }
689
690 public function onArticleConfirmDelete( $article, $output, &$reason ) {
691 return $this->container->run(
692 'ArticleConfirmDelete',
693 [ $article, $output, &$reason ]
694 );
695 }
696
697 public function onArticleContentOnDiff( $diffEngine, $output ) {
698 return $this->container->run(
699 'ArticleContentOnDiff',
700 [ $diffEngine, $output ]
701 );
702 }
703
704 public function onArticleDelete( $wikiPage, $user, &$reason, &$error, &$status,
705 $suppress
706 ) {
707 return $this->container->run(
708 'ArticleDelete',
709 [ $wikiPage, $user, &$reason, &$error, &$status, $suppress ]
710 );
711 }
712
713 public function onArticleDeleteAfterSuccess( $title, $outputPage ) {
714 return $this->container->run(
715 'ArticleDeleteAfterSuccess',
716 [ $title, $outputPage ]
717 );
718 }
719
720 public function onArticleDeleteComplete( $wikiPage, $user, $reason, $id,
721 $content, $logEntry, $archivedRevisionCount
722 ) {
723 return $this->container->run(
724 'ArticleDeleteComplete',
725 [ $wikiPage, $user, $reason, $id, $content, $logEntry,
726 $archivedRevisionCount ]
727 );
728 }
729
730 public function onArticleEditUpdateNewTalk( $wikiPage, $recipient ) {
731 return $this->container->run(
732 'ArticleEditUpdateNewTalk',
733 [ $wikiPage, $recipient ]
734 );
735 }
736
737 public function onArticleFromTitle( $title, &$article, $context ) {
738 return $this->container->run(
739 'ArticleFromTitle',
740 [ $title, &$article, $context ]
741 );
742 }
743
744 public function onArticleMergeComplete( $targetTitle, $destTitle ) {
745 return $this->container->run(
746 'ArticleMergeComplete',
747 [ $targetTitle, $destTitle ]
748 );
749 }
750
751 public function onArticlePageDataAfter( $wikiPage, &$row ) {
752 return $this->container->run(
753 'ArticlePageDataAfter',
754 [ $wikiPage, &$row ]
755 );
756 }
757
758 public function onArticlePageDataBefore( $wikiPage, &$fields, &$tables,
759 &$joinConds
760 ) {
761 return $this->container->run(
762 'ArticlePageDataBefore',
763 [ $wikiPage, &$fields, &$tables, &$joinConds ]
764 );
765 }
766
767 public function onArticleParserOptions( Article $article, ParserOptions $popts ) {
768 return $this->container->run(
769 'ArticleParserOptions',
770 [ $article, $popts ]
771 );
772 }
773
774 public function onArticlePrepareTextForEdit( $wikiPage, $popts ) {
775 return $this->container->run(
776 'ArticlePrepareTextForEdit',
777 [ $wikiPage, $popts ]
778 );
779 }
780
781 public function onArticleProtect( $wikiPage, $user, $protect, $reason ) {
782 return $this->container->run(
783 'ArticleProtect',
784 [ $wikiPage, $user, $protect, $reason ]
785 );
786 }
787
788 public function onArticleProtectComplete( $wikiPage, $user, $protect, $reason ) {
789 return $this->container->run(
790 'ArticleProtectComplete',
791 [ $wikiPage, $user, $protect, $reason ]
792 );
793 }
794
795 public function onArticlePurge( $wikiPage ) {
796 return $this->container->run(
797 'ArticlePurge',
798 [ $wikiPage ]
799 );
800 }
801
802 public function onArticleRevisionViewCustom( $revision, $title, $oldid,
803 $output
804 ) {
805 return $this->container->run(
806 'ArticleRevisionViewCustom',
807 [ $revision, $title, $oldid, $output ]
808 );
809 }
810
812 $visibilityChangeMap
813 ) {
814 return $this->container->run(
815 'ArticleRevisionVisibilitySet',
816 [ $title, $ids, $visibilityChangeMap ]
817 );
818 }
819
820 public function onArticleShowPatrolFooter( $article ) {
821 return $this->container->run(
822 'ArticleShowPatrolFooter',
823 [ $article ]
824 );
825 }
826
827 public function onArticleUndelete( $title, $create, $comment, $oldPageId,
828 $restoredPages
829 ) {
830 return $this->container->run(
831 'ArticleUndelete',
832 [ $title, $create, $comment, $oldPageId, $restoredPages ]
833 );
834 }
835
836 public function onArticleUpdateBeforeRedirect( $article, &$sectionanchor,
837 &$extraq
838 ) {
839 return $this->container->run(
840 'ArticleUpdateBeforeRedirect',
841 [ $article, &$sectionanchor, &$extraq ]
842 );
843 }
844
845 public function onArticleViewFooter( $article, $patrolFooterShown ) {
846 return $this->container->run(
847 'ArticleViewFooter',
848 [ $article, $patrolFooterShown ]
849 );
850 }
851
852 public function onArticleViewHeader( $article, &$outputDone, &$pcache ) {
853 return $this->container->run(
854 'ArticleViewHeader',
855 [ $article, &$outputDone, &$pcache ]
856 );
857 }
858
859 public function onArticleViewRedirect( $article ) {
860 return $this->container->run(
861 'ArticleViewRedirect',
862 [ $article ]
863 );
864 }
865
866 public function onArticle__MissingArticleConditions( &$conds, $logTypes ) {
867 return $this->container->run(
868 'Article::MissingArticleConditions',
869 [ &$conds, $logTypes ]
870 );
871 }
872
873 public function onAuthChangeFormFields( $requests, $fieldInfo,
874 &$formDescriptor, $action
875 ) {
876 return $this->container->run(
877 'AuthChangeFormFields',
878 [ $requests, $fieldInfo, &$formDescriptor, $action ]
879 );
880 }
881
882 public function onAuthManagerLoginAuthenticateAudit( $response, $user,
883 $username, $extraData
884 ) {
885 return $this->container->run(
886 'AuthManagerLoginAuthenticateAudit',
887 [ $response, $user, $username, $extraData ]
888 );
889 }
890
891 public function onAutopromoteCondition( $type, $args, $user, &$result ) {
892 return $this->container->run(
893 'AutopromoteCondition',
894 [ $type, $args, $user, &$result ]
895 );
896 }
897
898 public function onBacklinkCacheGetConditions( $table, $title, &$conds ) {
899 return $this->container->run(
900 'BacklinkCacheGetConditions',
901 [ $table, $title, &$conds ]
902 );
903 }
904
905 public function onBacklinkCacheGetPrefix( $table, &$prefix ) {
906 return $this->container->run(
907 'BacklinkCacheGetPrefix',
908 [ $table, &$prefix ]
909 );
910 }
911
912 public function onBadImage( $name, &$bad ) {
913 return $this->container->run(
914 'BadImage',
915 [ $name, &$bad ]
916 );
917 }
918
919 public function onBaseTemplateAfterPortlet( $template, $portlet, &$html ) {
920 return $this->container->run(
921 'BaseTemplateAfterPortlet',
922 [ $template, $portlet, &$html ]
923 );
924 }
925
926 public function onBeforeDisplayNoArticleText( $article ) {
927 return $this->container->run(
928 'BeforeDisplayNoArticleText',
929 [ $article ]
930 );
931 }
932
933 public function onBeforeInitialize( $title, $unused, $output, $user, $request,
934 $mediaWiki
935 ) {
936 return $this->container->run(
937 'BeforeInitialize',
938 [ $title, $unused, $output, $user, $request, $mediaWiki ]
939 );
940 }
941
942 public function onBeforePageDisplay( $out, $skin ): void {
943 $this->container->run(
944 'BeforePageDisplay',
945 [ $out, $skin ],
946 [ 'abortable' => false ]
947 );
948 }
949
950 public function onBeforePageRedirect( $out, &$redirect, &$code ) {
951 return $this->container->run(
952 'BeforePageRedirect',
953 [ $out, &$redirect, &$code ]
954 );
955 }
956
957 public function onBeforeParserFetchFileAndTitle( $parser, $nt, &$options,
958 &$descQuery
959 ) {
960 return $this->container->run(
961 'BeforeParserFetchFileAndTitle',
962 [ $parser, $nt, &$options, &$descQuery ]
963 );
964 }
965
966 public function onBeforeParserFetchTemplateAndtitle( $parser, $title, &$skip,
967 &$id
968 ) {
969 return $this->container->run(
970 'BeforeParserFetchTemplateAndtitle',
971 [ $parser, $title, &$skip, &$id ]
972 );
973 }
974
976 ?LinkTarget $contextTitle, LinkTarget $title,
977 bool &$skip, ?RevisionRecord &$revRecord
978 ) {
979 return $this->container->run(
980 'BeforeParserFetchTemplateRevisionRecord',
981 [ $contextTitle, $title, &$skip, &$revRecord ]
982 );
983 }
984
985 public function onBeforeParserrenderImageGallery( $parser, $ig ) {
986 return $this->container->run(
987 'BeforeParserrenderImageGallery',
988 [ $parser, $ig ]
989 );
990 }
991
992 public function onBeforeRevertedTagUpdate( $wikiPage, $user,
993 $summary, $flags, $revisionRecord, $editResult, &$approved
994 ): void {
995 $this->container->run(
996 'BeforeRevertedTagUpdate',
997 [ $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult,
998 &$approved ],
999 [ 'abortable' => false ]
1000 );
1001 }
1002
1003 public function onBeforeWelcomeCreation( &$welcome_creation_msg,
1004 &$injected_html
1005 ) {
1006 return $this->container->run(
1007 'BeforeWelcomeCreation',
1008 [ &$welcome_creation_msg, &$injected_html ]
1009 );
1010 }
1011
1012 public function onBitmapHandlerCheckImageArea( $image, &$params,
1013 &$checkImageAreaHookResult
1014 ) {
1015 return $this->container->run(
1016 'BitmapHandlerCheckImageArea',
1017 [ $image, &$params, &$checkImageAreaHookResult ]
1018 );
1019 }
1020
1021 public function onBitmapHandlerTransform( $handler, $image, &$scalerParams,
1022 &$mto
1023 ) {
1024 return $this->container->run(
1025 'BitmapHandlerTransform',
1026 [ $handler, $image, &$scalerParams, &$mto ]
1027 );
1028 }
1029
1030 public function onBlockIp( $block, $user, &$reason ) {
1031 return $this->container->run(
1032 'BlockIp',
1033 [ $block, $user, &$reason ]
1034 );
1035 }
1036
1037 public function onBlockIpComplete( $block, $user, $priorBlock ) {
1038 return $this->container->run(
1039 'BlockIpComplete',
1040 [ $block, $user, $priorBlock ]
1041 );
1042 }
1043
1044 public function onBookInformation( $isbn, $output ) {
1045 return $this->container->run(
1046 'BookInformation',
1047 [ $isbn, $output ]
1048 );
1049 }
1050
1051 public function onCanonicalNamespaces( &$namespaces ) {
1052 return $this->container->run(
1053 'CanonicalNamespaces',
1054 [ &$namespaces ]
1055 );
1056 }
1057
1058 public function onCategoryAfterPageAdded( $category, $wikiPage ) {
1059 return $this->container->run(
1060 'CategoryAfterPageAdded',
1061 [ $category, $wikiPage ]
1062 );
1063 }
1064
1065 public function onCategoryAfterPageRemoved( $category, $wikiPage, $id ) {
1066 return $this->container->run(
1067 'CategoryAfterPageRemoved',
1068 [ $category, $wikiPage, $id ]
1069 );
1070 }
1071
1072 public function onCategoryPageView( $catpage ) {
1073 return $this->container->run(
1074 'CategoryPageView',
1075 [ $catpage ]
1076 );
1077 }
1078
1080 return $this->container->run(
1081 'CategoryViewer::doCategoryQuery',
1082 [ $type, $res ]
1083 );
1084 }
1085
1086 public function onCategoryViewer__generateLink( $type, $title, $html, &$link ) {
1087 return $this->container->run(
1088 'CategoryViewer::generateLink',
1089 [ $type, $title, $html, &$link ]
1090 );
1091 }
1092
1093 public function onChangeAuthenticationDataAudit( $req, $status ) {
1094 return $this->container->run(
1095 'ChangeAuthenticationDataAudit',
1096 [ $req, $status ]
1097 );
1098 }
1099
1100 public function onChangesListInitRows( $changesList, $rows ) {
1101 return $this->container->run(
1102 'ChangesListInitRows',
1103 [ $changesList, $rows ]
1104 );
1105 }
1106
1107 public function onChangesListInsertArticleLink( $changesList, &$articlelink,
1108 &$s, $rc, $unpatrolled, $watched
1109 ) {
1110 return $this->container->run(
1111 'ChangesListInsertArticleLink',
1112 [ $changesList, &$articlelink, &$s, $rc, $unpatrolled, $watched ]
1113 );
1114 }
1115
1116 public function onChangesListSpecialPageQuery( $name, &$tables, &$fields,
1117 &$conds, &$query_options, &$join_conds, $opts
1118 ) {
1119 return $this->container->run(
1120 'ChangesListSpecialPageQuery',
1121 [ $name, &$tables, &$fields, &$conds, &$query_options,
1122 &$join_conds, $opts ]
1123 );
1124 }
1125
1126 public function onChangesListSpecialPageStructuredFilters( $special ) {
1127 return $this->container->run(
1128 'ChangesListSpecialPageStructuredFilters',
1129 [ $special ]
1130 );
1131 }
1132
1133 public function onChangeTagAfterDelete( $tag, &$status ) {
1134 return $this->container->run(
1135 'ChangeTagAfterDelete',
1136 [ $tag, &$status ]
1137 );
1138 }
1139
1140 public function onChangeTagCanCreate( $tag, $user, &$status ) {
1141 return $this->container->run(
1142 'ChangeTagCanCreate',
1143 [ $tag, $user, &$status ]
1144 );
1145 }
1146
1147 public function onChangeTagCanDelete( $tag, $user, &$status ) {
1148 return $this->container->run(
1149 'ChangeTagCanDelete',
1150 [ $tag, $user, &$status ]
1151 );
1152 }
1153
1154 public function onChangeTagsAfterUpdateTags( $addedTags, $removedTags,
1155 $prevTags, $rc_id, $rev_id, $log_id, $params, $rc, $user
1156 ) {
1157 return $this->container->run(
1158 'ChangeTagsAfterUpdateTags',
1159 [ $addedTags, $removedTags, $prevTags, $rc_id, $rev_id, $log_id,
1160 $params, $rc, $user ]
1161 );
1162 }
1163
1164 public function onChangeTagsAllowedAdd( &$allowedTags, $addTags, $user ) {
1165 return $this->container->run(
1166 'ChangeTagsAllowedAdd',
1167 [ &$allowedTags, $addTags, $user ]
1168 );
1169 }
1170
1171 public function onChangeTagsListActive( &$tags ) {
1172 return $this->container->run(
1173 'ChangeTagsListActive',
1174 [ &$tags ]
1175 );
1176 }
1177
1178 public function onChangeUserGroups( $performer, $user, &$add, &$remove ) {
1179 return $this->container->run(
1180 'ChangeUserGroups',
1181 [ $performer, $user, &$add, &$remove ]
1182 );
1183 }
1184
1185 public function onCollation__factory( $collationName, &$collationObject ) {
1186 return $this->container->run(
1187 'Collation::factory',
1188 [ $collationName, &$collationObject ]
1189 );
1190 }
1191
1192 public function onConfirmEmailComplete( $user ) {
1193 return $this->container->run(
1194 'ConfirmEmailComplete',
1195 [ $user ]
1196 );
1197 }
1198
1199 public function onContentAlterParserOutput( $content, $title, $parserOutput ) {
1200 return $this->container->run(
1201 'ContentAlterParserOutput',
1202 [ $content, $title, $parserOutput ]
1203 );
1204 }
1205
1206 public function onContentGetParserOutput( $content, $title, $revId, $options,
1207 $generateHtml, &$output
1208 ) {
1209 return $this->container->run(
1210 'ContentGetParserOutput',
1211 [ $content, $title, $revId, $options, $generateHtml, &$output ]
1212 );
1213 }
1214
1215 public function onContentHandlerDefaultModelFor( $title, &$model ) {
1216 return $this->container->run(
1217 'ContentHandlerDefaultModelFor',
1218 [ $title, &$model ]
1219 );
1220 }
1221
1222 public function onContentHandlerForModelID( $modeName, &$handler ) {
1223 return $this->container->run(
1224 'ContentHandlerForModelID',
1225 [ $modeName, &$handler ]
1226 );
1227 }
1228
1229 public function onContentModelCanBeUsedOn( $contentModel, $title, &$ok ) {
1230 return $this->container->run(
1231 'ContentModelCanBeUsedOn',
1232 [ $contentModel, $title, &$ok ]
1233 );
1234 }
1235
1236 public function onContentSecurityPolicyDefaultSource( &$defaultSrc,
1237 $policyConfig, $mode
1238 ) {
1239 return $this->container->run(
1240 'ContentSecurityPolicyDefaultSource',
1241 [ &$defaultSrc, $policyConfig, $mode ]
1242 );
1243 }
1244
1245 public function onContentSecurityPolicyDirectives( &$directives, $policyConfig,
1246 $mode
1247 ) {
1248 return $this->container->run(
1249 'ContentSecurityPolicyDirectives',
1250 [ &$directives, $policyConfig, $mode ]
1251 );
1252 }
1253
1254 public function onContentSecurityPolicyScriptSource( &$scriptSrc,
1255 $policyConfig, $mode
1256 ) {
1257 return $this->container->run(
1258 'ContentSecurityPolicyScriptSource',
1259 [ &$scriptSrc, $policyConfig, $mode ]
1260 );
1261 }
1262
1263 public function onContribsPager__getQueryInfo( $pager, &$queryInfo ) {
1264 return $this->container->run(
1265 'ContribsPager::getQueryInfo',
1266 [ $pager, &$queryInfo ]
1267 );
1268 }
1269
1270 public function onContribsPager__reallyDoQuery( &$data, $pager, $offset,
1271 $limit, $descending
1272 ) {
1273 return $this->container->run(
1274 'ContribsPager::reallyDoQuery',
1275 [ &$data, $pager, $offset, $limit, $descending ]
1276 );
1277 }
1278
1279 public function onContributionsLineEnding( $page, &$ret, $row, &$classes,
1280 &$attribs
1281 ) {
1282 return $this->container->run(
1283 'ContributionsLineEnding',
1284 [ $page, &$ret, $row, &$classes, &$attribs ]
1285 );
1286 }
1287
1288 public function onContributionsToolLinks( $id, Title $title, array &$tools, SpecialPage $specialPage ) {
1289 return $this->container->run(
1290 'ContributionsToolLinks',
1291 [ $id, $title, &$tools, $specialPage ]
1292 );
1293 }
1294
1295 public function onConvertContent( $content, $toModel, $lossy, &$result ) {
1296 return $this->container->run(
1297 'ConvertContent',
1298 [ $content, $toModel, $lossy, &$result ]
1299 );
1300 }
1301
1302 public function onCustomEditor( $article, $user ) {
1303 return $this->container->run(
1304 'CustomEditor',
1305 [ $article, $user ]
1306 );
1307 }
1308
1309 public function onDeletedContribsPager__reallyDoQuery( &$data, $pager, $offset,
1310 $limit, $descending
1311 ) {
1312 return $this->container->run(
1313 'DeletedContribsPager::reallyDoQuery',
1314 [ &$data, $pager, $offset, $limit, $descending ]
1315 );
1316 }
1317
1318 public function onDeletedContributionsLineEnding( $page, &$ret, $row,
1319 &$classes, &$attribs
1320 ) {
1321 return $this->container->run(
1322 'DeletedContributionsLineEnding',
1323 [ $page, &$ret, $row, &$classes, &$attribs ]
1324 );
1325 }
1326
1327 public function onDeleteUnknownPreferences( &$where, $db ) {
1328 return $this->container->run(
1329 'DeleteUnknownPreferences',
1330 [ &$where, $db ]
1331 );
1332 }
1333
1334 public function onDifferenceEngineAfterLoadNewText( $differenceEngine ) {
1335 return $this->container->run(
1336 'DifferenceEngineAfterLoadNewText',
1337 [ $differenceEngine ]
1338 );
1339 }
1340
1342 $differenceEngine
1343 ) {
1344 return $this->container->run(
1345 'DifferenceEngineLoadTextAfterNewContentIsLoaded',
1346 [ $differenceEngine ]
1347 );
1348 }
1349
1350 public function onDifferenceEngineMarkPatrolledLink( $differenceEngine,
1351 &$markAsPatrolledLink, $rcid
1352 ) {
1353 return $this->container->run(
1354 'DifferenceEngineMarkPatrolledLink',
1355 [ $differenceEngine, &$markAsPatrolledLink, $rcid ]
1356 );
1357 }
1358
1359 public function onDifferenceEngineMarkPatrolledRCID( &$rcid, $differenceEngine,
1360 $change, $user
1361 ) {
1362 return $this->container->run(
1363 'DifferenceEngineMarkPatrolledRCID',
1364 [ &$rcid, $differenceEngine, $change, $user ]
1365 );
1366 }
1367
1368 public function onDifferenceEngineNewHeader( $differenceEngine, &$newHeader,
1369 $formattedRevisionTools, $nextlink, $rollback, $newminor, $diffOnly, $rdel,
1370 $unhide
1371 ) {
1372 return $this->container->run(
1373 'DifferenceEngineNewHeader',
1374 [ $differenceEngine, &$newHeader, $formattedRevisionTools,
1375 $nextlink, $rollback, $newminor, $diffOnly, $rdel, $unhide ]
1376 );
1377 }
1378
1379 public function onDifferenceEngineOldHeader( $differenceEngine, &$oldHeader,
1380 $prevlink, $oldminor, $diffOnly, $ldel, $unhide
1381 ) {
1382 return $this->container->run(
1383 'DifferenceEngineOldHeader',
1384 [ $differenceEngine, &$oldHeader, $prevlink, $oldminor, $diffOnly,
1385 $ldel, $unhide ]
1386 );
1387 }
1388
1389 public function onDifferenceEngineOldHeaderNoOldRev( &$oldHeader ) {
1390 return $this->container->run(
1391 'DifferenceEngineOldHeaderNoOldRev',
1392 [ &$oldHeader ]
1393 );
1394 }
1395
1397 $differenceEngine, $out, $parserOutput, $wikiPage
1398 ) {
1399 return $this->container->run(
1400 'DifferenceEngineRenderRevisionAddParserOutput',
1401 [ $differenceEngine, $out, $parserOutput, $wikiPage ]
1402 );
1403 }
1404
1406 return $this->container->run(
1407 'DifferenceEngineRenderRevisionShowFinalPatrolLink',
1408 []
1409 );
1410 }
1411
1412 public function onDifferenceEngineShowDiff( $differenceEngine ) {
1413 return $this->container->run(
1414 'DifferenceEngineShowDiff',
1415 [ $differenceEngine ]
1416 );
1417 }
1418
1419 public function onDifferenceEngineShowDiffPage( $out ) {
1420 return $this->container->run(
1421 'DifferenceEngineShowDiffPage',
1422 [ $out ]
1423 );
1424 }
1425
1427 $differenceEngine
1428 ) {
1429 return $this->container->run(
1430 'DifferenceEngineShowDiffPageMaybeShowMissingRevision',
1431 [ $differenceEngine ]
1432 );
1433 }
1434
1435 public function onDifferenceEngineShowEmptyOldContent( $differenceEngine ) {
1436 return $this->container->run(
1437 'DifferenceEngineShowEmptyOldContent',
1438 [ $differenceEngine ]
1439 );
1440 }
1441
1442 public function onDifferenceEngineViewHeader( $differenceEngine ) {
1443 return $this->container->run(
1444 'DifferenceEngineViewHeader',
1445 [ $differenceEngine ]
1446 );
1447 }
1448
1449 public function onDiffTools( $newRevRecord, &$links, $oldRevRecord, $userIdentity ) {
1450 return $this->container->run(
1451 'DiffTools',
1452 [ $newRevRecord, &$links, $oldRevRecord, $userIdentity ]
1453 );
1454 }
1455
1456 public function onDisplayOldSubtitle( $article, &$oldid ) {
1457 return $this->container->run(
1458 'DisplayOldSubtitle',
1459 [ $article, &$oldid ]
1460 );
1461 }
1462
1463 public function onEditFilter( $editor, $text, $section, &$error, $summary ) {
1464 return $this->container->run(
1465 'EditFilter',
1466 [ $editor, $text, $section, &$error, $summary ]
1467 );
1468 }
1469
1470 public function onEditFilterMergedContent( $context, $content, $status,
1471 $summary, $user, $minoredit
1472 ) {
1473 return $this->container->run(
1474 'EditFilterMergedContent',
1475 [ $context, $content, $status, $summary, $user, $minoredit ]
1476 );
1477 }
1478
1479 public function onEditFormInitialText( $editPage ) {
1480 return $this->container->run(
1481 'EditFormInitialText',
1482 [ $editPage ]
1483 );
1484 }
1485
1486 public function onEditFormPreloadText( &$text, $title ) {
1487 return $this->container->run(
1488 'EditFormPreloadText',
1489 [ &$text, $title ]
1490 );
1491 }
1492
1493 public function onEditPageBeforeConflictDiff( $editor, $out ) {
1494 return $this->container->run(
1495 'EditPageBeforeConflictDiff',
1496 [ $editor, $out ]
1497 );
1498 }
1499
1500 public function onEditPageBeforeEditButtons( $editpage, &$buttons, &$tabindex ) {
1501 return $this->container->run(
1502 'EditPageBeforeEditButtons',
1503 [ $editpage, &$buttons, &$tabindex ]
1504 );
1505 }
1506
1507 public function onEditPageBeforeEditToolbar( &$toolbar ) {
1508 return $this->container->run(
1509 'EditPageBeforeEditToolbar',
1510 [ &$toolbar ]
1511 );
1512 }
1513
1514 public function onEditPageCopyrightWarning( $title, &$msg ) {
1515 return $this->container->run(
1516 'EditPageCopyrightWarning',
1517 [ $title, &$msg ]
1518 );
1519 }
1520
1521 public function onEditPageGetCheckboxesDefinition( $editpage, &$checkboxes ) {
1522 return $this->container->run(
1523 'EditPageGetCheckboxesDefinition',
1524 [ $editpage, &$checkboxes ]
1525 );
1526 }
1527
1528 public function onEditPageGetDiffContent( $editPage, &$newtext ) {
1529 return $this->container->run(
1530 'EditPageGetDiffContent',
1531 [ $editPage, &$newtext ]
1532 );
1533 }
1534
1535 public function onEditPageGetPreviewContent( $editPage, &$content ) {
1536 return $this->container->run(
1537 'EditPageGetPreviewContent',
1538 [ $editPage, &$content ]
1539 );
1540 }
1541
1542 public function onEditPageNoSuchSection( $editpage, &$res ) {
1543 return $this->container->run(
1544 'EditPageNoSuchSection',
1545 [ $editpage, &$res ]
1546 );
1547 }
1548
1549 public function onEditPageTosSummary( $title, &$msg ) {
1550 return $this->container->run(
1551 'EditPageTosSummary',
1552 [ $title, &$msg ]
1553 );
1554 }
1555
1556 public function onEditPage__attemptSave( $editpage_Obj ) {
1557 return $this->container->run(
1558 'EditPage::attemptSave',
1559 [ $editpage_Obj ]
1560 );
1561 }
1562
1563 public function onEditPage__attemptSave_after( $editpage_Obj, $status,
1564 $resultDetails
1565 ) {
1566 return $this->container->run(
1567 'EditPage::attemptSave:after',
1568 [ $editpage_Obj, $status, $resultDetails ]
1569 );
1570 }
1571
1572 public function onEditPage__importFormData( $editpage, $request ) {
1573 return $this->container->run(
1574 'EditPage::importFormData',
1575 [ $editpage, $request ]
1576 );
1577 }
1578
1579 public function onEditPage__showEditForm_fields( $editor, $out ) {
1580 return $this->container->run(
1581 'EditPage::showEditForm:fields',
1582 [ $editor, $out ]
1583 );
1584 }
1585
1586 public function onEditPage__showEditForm_initial( $editor, $out ) {
1587 return $this->container->run(
1588 'EditPage::showEditForm:initial',
1589 [ $editor, $out ]
1590 );
1591 }
1592
1593 public function onEditPage__showReadOnlyForm_initial( $editor, $out ) {
1594 return $this->container->run(
1595 'EditPage::showReadOnlyForm:initial',
1596 [ $editor, $out ]
1597 );
1598 }
1599
1600 public function onEditPage__showStandardInputs_options( $editor, $out,
1601 &$tabindex
1602 ) {
1603 return $this->container->run(
1604 'EditPage::showStandardInputs:options',
1605 [ $editor, $out, &$tabindex ]
1606 );
1607 }
1608
1609 public function onEmailConfirmed( $user, &$confirmed ) {
1610 return $this->container->run(
1611 'EmailConfirmed',
1612 [ $user, &$confirmed ]
1613 );
1614 }
1615
1616 public function onEmailUser( &$to, &$from, &$subject, &$text, &$error ) {
1617 return $this->container->run(
1618 'EmailUser',
1619 [ &$to, &$from, &$subject, &$text, &$error ]
1620 );
1621 }
1622
1623 public function onEmailUserCC( &$to, &$from, &$subject, &$text ) {
1624 return $this->container->run(
1625 'EmailUserCC',
1626 [ &$to, &$from, &$subject, &$text ]
1627 );
1628 }
1629
1630 public function onEmailUserComplete( $to, $from, $subject, $text ) {
1631 return $this->container->run(
1632 'EmailUserComplete',
1633 [ $to, $from, $subject, $text ]
1634 );
1635 }
1636
1637 public function onEmailUserForm( &$form ) {
1638 return $this->container->run(
1639 'EmailUserForm',
1640 [ &$form ]
1641 );
1642 }
1643
1644 public function onEmailUserPermissionsErrors( $user, $editToken, &$hookErr ) {
1645 return $this->container->run(
1646 'EmailUserPermissionsErrors',
1647 [ $user, $editToken, &$hookErr ]
1648 );
1649 }
1650
1651 public function onEnhancedChangesListModifyBlockLineData( $changesList, &$data,
1652 $rc
1653 ) {
1654 return $this->container->run(
1655 'EnhancedChangesListModifyBlockLineData',
1656 [ $changesList, &$data, $rc ]
1657 );
1658 }
1659
1660 public function onEnhancedChangesListModifyLineData( $changesList, &$data,
1661 $block, $rc, &$classes, &$attribs
1662 ) {
1663 return $this->container->run(
1664 'EnhancedChangesListModifyLineData',
1665 [ $changesList, &$data, $block, $rc, &$classes, &$attribs ]
1666 );
1667 }
1668
1669 public function onEnhancedChangesList__getLogText( $changesList, &$links,
1670 $block
1671 ) {
1672 return $this->container->run(
1673 'EnhancedChangesList::getLogText',
1674 [ $changesList, &$links, $block ]
1675 );
1676 }
1677
1679 return $this->container->run(
1680 'ExemptFromAccountCreationThrottle',
1681 [ $ip ]
1682 );
1683 }
1684
1685 public function onExtensionTypes( &$extTypes ) {
1686 return $this->container->run(
1687 'ExtensionTypes',
1688 [ &$extTypes ]
1689 );
1690 }
1691
1692 public function onFetchChangesList( $user, $skin, &$list, $groups ) {
1693 return $this->container->run(
1694 'FetchChangesList',
1695 [ $user, $skin, &$list, $groups ]
1696 );
1697 }
1698
1699 public function onFileDeleteComplete( $file, $oldimage, $article, $user,
1700 $reason
1701 ) {
1702 return $this->container->run(
1703 'FileDeleteComplete',
1704 [ $file, $oldimage, $article, $user, $reason ]
1705 );
1706 }
1707
1708 public function onFileTransformed( $file, $thumb, $tmpThumbPath, $thumbPath ) {
1709 return $this->container->run(
1710 'FileTransformed',
1711 [ $file, $thumb, $tmpThumbPath, $thumbPath ]
1712 );
1713 }
1714
1715 public function onFileUndeleteComplete( $title, $fileVersions, $user, $reason ) {
1716 return $this->container->run(
1717 'FileUndeleteComplete',
1718 [ $title, $fileVersions, $user, $reason ]
1719 );
1720 }
1721
1722 public function onFileUpload( $file, $reupload, $hasDescription ) {
1723 return $this->container->run(
1724 'FileUpload',
1725 [ $file, $reupload, $hasDescription ]
1726 );
1727 }
1728
1729 public function onFormatAutocomments( &$comment, $pre, $auto, $post, $title,
1730 $local, $wikiId
1731 ) {
1732 return $this->container->run(
1733 'FormatAutocomments',
1734 [ &$comment, $pre, $auto, $post, $title, $local, $wikiId ]
1735 );
1736 }
1737
1738 public function onGalleryGetModes( &$modeArray ) {
1739 return $this->container->run(
1740 'GalleryGetModes',
1741 [ &$modeArray ]
1742 );
1743 }
1744
1745 public function onGetAllBlockActions( &$actions ) {
1746 return $this->container->run(
1747 'GetAllBlockActions',
1748 [ &$actions ],
1749 [ 'abortable' => false ]
1750 );
1751 }
1752
1753 public function onGetAutoPromoteGroups( $user, &$promote ) {
1754 return $this->container->run(
1755 'GetAutoPromoteGroups',
1756 [ $user, &$promote ]
1757 );
1758 }
1759
1760 public function onGetActionName( IContextSource $context, string &$action ): void {
1761 $this->container->run(
1762 'GetActionName',
1763 [ $context, &$action ],
1764 [ 'abortable' => false ]
1765 );
1766 }
1767
1768 public function onGetCacheVaryCookies( $out, &$cookies ) {
1769 return $this->container->run(
1770 'GetCacheVaryCookies',
1771 [ $out, &$cookies ]
1772 );
1773 }
1774
1775 public function onGetCanonicalURL( $title, &$url, $query ) {
1776 return $this->container->run(
1777 'GetCanonicalURL',
1778 [ $title, &$url, $query ]
1779 );
1780 }
1781
1782 public function onGetContentModels( &$models ) {
1783 return $this->container->run(
1784 'GetContentModels',
1785 [ &$models ]
1786 );
1787 }
1788
1789 public function onGetDefaultSortkey( $title, &$sortkey ) {
1790 return $this->container->run(
1791 'GetDefaultSortkey',
1792 [ $title, &$sortkey ]
1793 );
1794 }
1795
1796 public function onGetDifferenceEngine( $context, $old, $new, $refreshCache,
1797 $unhide, &$differenceEngine
1798 ) {
1799 return $this->container->run(
1800 'GetDifferenceEngine',
1801 [ $context, $old, $new, $refreshCache, $unhide,
1802 &$differenceEngine ]
1803 );
1804 }
1805
1806 public function onGetDoubleUnderscoreIDs( &$doubleUnderscoreIDs ) {
1807 return $this->container->run(
1808 'GetDoubleUnderscoreIDs',
1809 [ &$doubleUnderscoreIDs ]
1810 );
1811 }
1812
1813 public function onGetExtendedMetadata( &$combinedMeta, $file, $context,
1814 $single, &$maxCacheTime
1815 ) {
1816 return $this->container->run(
1817 'GetExtendedMetadata',
1818 [ &$combinedMeta, $file, $context, $single, &$maxCacheTime ]
1819 );
1820 }
1821
1822 public function onGetFullURL( $title, &$url, $query ) {
1823 return $this->container->run(
1824 'GetFullURL',
1825 [ $title, &$url, $query ]
1826 );
1827 }
1828
1829 public function onGetHumanTimestamp( &$output, $timestamp, $relativeTo, $user,
1830 $lang
1831 ) {
1832 return $this->container->run(
1833 'GetHumanTimestamp',
1834 [ &$output, $timestamp, $relativeTo, $user, $lang ]
1835 );
1836 }
1837
1838 public function onGetInternalURL( $title, &$url, $query ) {
1839 return $this->container->run(
1840 'GetInternalURL',
1841 [ $title, &$url, $query ]
1842 );
1843 }
1844
1845 public function onGetIP( &$ip ) {
1846 return $this->container->run(
1847 'GetIP',
1848 [ &$ip ]
1849 );
1850 }
1851
1852 public function onGetLangPreferredVariant( &$req ) {
1853 return $this->container->run(
1854 'GetLangPreferredVariant',
1855 [ &$req ]
1856 );
1857 }
1858
1859 public function onGetLinkColours( $linkcolour_ids, &$colours, $title ) {
1860 return $this->container->run(
1861 'GetLinkColours',
1862 [ $linkcolour_ids, &$colours, $title ]
1863 );
1864 }
1865
1866 public function onGetLocalURL( $title, &$url, $query ) {
1867 return $this->container->run(
1868 'GetLocalURL',
1869 [ $title, &$url, $query ]
1870 );
1871 }
1872
1873 public function onGetLocalURL__Article( $title, &$url ) {
1874 return $this->container->run(
1875 'GetLocalURL::Article',
1876 [ $title, &$url ]
1877 );
1878 }
1879
1880 public function onGetLocalURL__Internal( $title, &$url, $query ) {
1881 return $this->container->run(
1882 'GetLocalURL::Internal',
1883 [ $title, &$url, $query ]
1884 );
1885 }
1886
1887 public function onGetLogTypesOnUser( &$types ) {
1888 return $this->container->run(
1889 'GetLogTypesOnUser',
1890 [ &$types ]
1891 );
1892 }
1893
1894 public function onGetMagicVariableIDs( &$variableIDs ) {
1895 return $this->container->run(
1896 'GetMagicVariableIDs',
1897 [ &$variableIDs ]
1898 );
1899 }
1900
1901 public function onGetMetadataVersion( &$version ) {
1902 return $this->container->run(
1903 'GetMetadataVersion',
1904 [ &$version ]
1905 );
1906 }
1907
1908 public function onGetNewMessagesAlert( &$newMessagesAlert, $newtalks, $user,
1909 $out
1910 ) {
1911 return $this->container->run(
1912 'GetNewMessagesAlert',
1913 [ &$newMessagesAlert, $newtalks, $user, $out ]
1914 );
1915 }
1916
1917 public function onGetPreferences( $user, &$preferences ) {
1918 return $this->container->run(
1919 'GetPreferences',
1920 [ $user, &$preferences ]
1921 );
1922 }
1923
1924 public function onGetRelativeTimestamp( &$output, &$diff, $timestamp,
1925 $relativeTo, $user, $lang
1926 ) {
1927 return $this->container->run(
1928 'GetRelativeTimestamp',
1929 [ &$output, &$diff, $timestamp, $relativeTo, $user, $lang ]
1930 );
1931 }
1932
1933 public function onGetSlotDiffRenderer( $contentHandler, &$slotDiffRenderer,
1934 $context
1935 ) {
1936 return $this->container->run(
1937 'GetSlotDiffRenderer',
1938 [ $contentHandler, &$slotDiffRenderer, $context ]
1939 );
1940 }
1941
1942 public function onGetUserBlock( $user, $ip, &$block ) {
1943 return $this->container->run(
1944 'GetUserBlock',
1945 [ $user, $ip, &$block ]
1946 );
1947 }
1948
1949 public function onPermissionErrorAudit(
1951 UserIdentity $user,
1952 string $action,
1953 string $rigor,
1954 array $errors
1955 ): void {
1956 $this->container->run(
1957 'PermissionErrorAudit',
1958 [ $title, $user, $action, $rigor, $errors ],
1959 [ 'abortable' => false ]
1960 );
1961 }
1962
1963 public function onGetUserPermissionsErrors( $title, $user, $action, &$result ) {
1964 return $this->container->run(
1965 'getUserPermissionsErrors',
1966 [ $title, $user, $action, &$result ]
1967 );
1968 }
1969
1970 public function onGetUserPermissionsErrorsExpensive( $title, $user, $action,
1971 &$result
1972 ) {
1973 return $this->container->run(
1974 'getUserPermissionsErrorsExpensive',
1975 [ $title, $user, $action, &$result ]
1976 );
1977 }
1978
1979 public function onGitViewers( &$extTypes ) {
1980 return $this->container->run(
1981 'GitViewers',
1982 [ &$extTypes ]
1983 );
1984 }
1985
1986 public function onHistoryPageToolLinks( IContextSource $context, LinkRenderer $linkRenderer, array &$links ) {
1987 return $this->container->run(
1988 'HistoryPageToolLinks',
1989 [ $context, $linkRenderer, &$links ]
1990 );
1991 }
1992
1993 public function onHistoryTools( $revRecord, &$links, $prevRevRecord, $userIdentity ) {
1994 return $this->container->run(
1995 'HistoryTools',
1996 [ $revRecord, &$links, $prevRevRecord, $userIdentity ]
1997 );
1998 }
1999
2000 public function onHtmlCacheUpdaterAppendUrls( $title, $mode, &$append ) {
2001 return $this->container->run(
2002 'HtmlCacheUpdaterAppendUrls',
2003 [ $title, $mode, &$append ]
2004 );
2005 }
2006
2007 public function onHtmlCacheUpdaterVaryUrls( $urls, &$append ) {
2008 return $this->container->run(
2009 'HtmlCacheUpdaterVaryUrls',
2010 [ $urls, &$append ]
2011 );
2012 }
2013
2014 public function onHTMLFileCache__useFileCache( $context ) {
2015 return $this->container->run(
2016 'HTMLFileCache::useFileCache',
2017 [ $context ]
2018 );
2019 }
2020
2021 public function onHtmlPageLinkRendererBegin( $linkRenderer, $target, &$text,
2022 &$customAttribs, &$query, &$ret
2023 ) {
2024 return $this->container->run(
2025 'HtmlPageLinkRendererBegin',
2026 [ $linkRenderer, $target, &$text, &$customAttribs, &$query, &$ret ]
2027 );
2028 }
2029
2030 public function onHtmlPageLinkRendererEnd( $linkRenderer, $target, $isKnown,
2031 &$text, &$attribs, &$ret
2032 ) {
2033 return $this->container->run(
2034 'HtmlPageLinkRendererEnd',
2035 [ $linkRenderer, $target, $isKnown, &$text, &$attribs, &$ret ]
2036 );
2037 }
2038
2039 public function onImageBeforeProduceHTML( $linker, &$title, &$file,
2040 &$frameParams, &$handlerParams, &$time, &$res, $parser, &$query, &$widthOption
2041 ) {
2042 return $this->container->run(
2043 'ImageBeforeProduceHTML',
2044 [ $linker, &$title, &$file, &$frameParams, &$handlerParams, &$time,
2045 &$res, $parser, &$query, &$widthOption ]
2046 );
2047 }
2048
2049 public function onImageOpenShowImageInlineBefore( $imagePage, $output ) {
2050 return $this->container->run(
2051 'ImageOpenShowImageInlineBefore',
2052 [ $imagePage, $output ]
2053 );
2054 }
2055
2056 public function onImagePageAfterImageLinks( $imagePage, &$html ) {
2057 return $this->container->run(
2058 'ImagePageAfterImageLinks',
2059 [ $imagePage, &$html ]
2060 );
2061 }
2062
2063 public function onImagePageFileHistoryLine( $imageHistoryList, $file, &$line, &$css ) {
2064 return $this->container->run(
2065 'ImagePageFileHistoryLine',
2066 [ $imageHistoryList, $file, &$line, &$css ]
2067 );
2068 }
2069
2070 public function onImagePageFindFile( $page, &$file, &$displayFile ) {
2071 return $this->container->run(
2072 'ImagePageFindFile',
2073 [ $page, &$file, &$displayFile ]
2074 );
2075 }
2076
2077 public function onImagePageShowTOC( $page, &$toc ) {
2078 return $this->container->run(
2079 'ImagePageShowTOC',
2080 [ $page, &$toc ]
2081 );
2082 }
2083
2084 public function onImgAuthBeforeStream( &$title, &$path, &$name, &$result ) {
2085 return $this->container->run(
2086 'ImgAuthBeforeStream',
2087 [ &$title, &$path, &$name, &$result ]
2088 );
2089 }
2090
2091 public function onImgAuthModifyHeaders( $title, &$headers ) {
2092 return $this->container->run(
2093 'ImgAuthModifyHeaders',
2094 [ $title, &$headers ]
2095 );
2096 }
2097
2098 public function onImportHandleLogItemXMLTag( $reader, $logInfo ) {
2099 return $this->container->run(
2100 'ImportHandleLogItemXMLTag',
2101 [ $reader, $logInfo ]
2102 );
2103 }
2104
2105 public function onImportHandlePageXMLTag( $reader, &$pageInfo ) {
2106 return $this->container->run(
2107 'ImportHandlePageXMLTag',
2108 [ $reader, &$pageInfo ]
2109 );
2110 }
2111
2112 public function onImportHandleRevisionXMLTag( $reader, $pageInfo,
2113 $revisionInfo
2114 ) {
2115 return $this->container->run(
2116 'ImportHandleRevisionXMLTag',
2117 [ $reader, $pageInfo, $revisionInfo ]
2118 );
2119 }
2120
2121 public function onImportHandleContentXMLTag( $reader, $contentInfo ) {
2122 return $this->container->run(
2123 'ImportHandleContentXMLTag',
2124 [ $reader, $contentInfo ] );
2125 }
2126
2127 public function onImportHandleToplevelXMLTag( $reader ) {
2128 return $this->container->run(
2129 'ImportHandleToplevelXMLTag',
2130 [ $reader ]
2131 );
2132 }
2133
2134 public function onImportHandleUnknownUser( $name ) {
2135 return $this->container->run(
2136 'ImportHandleUnknownUser',
2137 [ $name ]
2138 );
2139 }
2140
2141 public function onImportHandleUploadXMLTag( $reader, $revisionInfo ) {
2142 return $this->container->run(
2143 'ImportHandleUploadXMLTag',
2144 [ $reader, $revisionInfo ]
2145 );
2146 }
2147
2148 public function onImportLogInterwikiLink( &$fullInterwikiPrefix, &$pageTitle ) {
2149 return $this->container->run(
2150 'ImportLogInterwikiLink',
2151 [ &$fullInterwikiPrefix, &$pageTitle ]
2152 );
2153 }
2154
2155 public function onImportSources( &$importSources ) {
2156 return $this->container->run(
2157 'ImportSources',
2158 [ &$importSources ]
2159 );
2160 }
2161
2162 public function onInfoAction( $context, &$pageInfo ) {
2163 return $this->container->run(
2164 'InfoAction',
2165 [ $context, &$pageInfo ]
2166 );
2167 }
2168
2169 public function onInitializeArticleMaybeRedirect( $title, $request,
2170 &$ignoreRedirect, &$target, &$article
2171 ) {
2172 return $this->container->run(
2173 'InitializeArticleMaybeRedirect',
2174 [ $title, $request, &$ignoreRedirect, &$target, &$article ]
2175 );
2176 }
2177
2178 public function onInternalParseBeforeLinks( $parser, &$text, $stripState ) {
2179 return $this->container->run(
2180 'InternalParseBeforeLinks',
2181 [ $parser, &$text, $stripState ]
2182 );
2183 }
2184
2185 public function onInternalParseBeforeSanitize( $parser, &$text, $stripState ) {
2186 return $this->container->run(
2187 'InternalParseBeforeSanitize',
2188 [ $parser, &$text, $stripState ]
2189 );
2190 }
2191
2192 public function onInterwikiLoadPrefix( $prefix, &$iwData ) {
2193 return $this->container->run(
2194 'InterwikiLoadPrefix',
2195 [ $prefix, &$iwData ]
2196 );
2197 }
2198
2199 public function onInvalidateEmailComplete( $user ) {
2200 return $this->container->run(
2201 'InvalidateEmailComplete',
2202 [ $user ]
2203 );
2204 }
2205
2206 public function onIRCLineURL( &$url, &$query, $rc ) {
2207 return $this->container->run(
2208 'IRCLineURL',
2209 [ &$url, &$query, $rc ]
2210 );
2211 }
2212
2213 public function onIsFileCacheable( $article ) {
2214 return $this->container->run(
2215 'IsFileCacheable',
2216 [ $article ]
2217 );
2218 }
2219
2220 public function onIsTrustedProxy( $ip, &$result ) {
2221 return $this->container->run(
2222 'IsTrustedProxy',
2223 [ $ip, &$result ]
2224 );
2225 }
2226
2227 public function onIsUploadAllowedFromUrl( $url, &$allowed ) {
2228 return $this->container->run(
2229 'IsUploadAllowedFromUrl',
2230 [ $url, &$allowed ]
2231 );
2232 }
2233
2234 public function onIsValidEmailAddr( $addr, &$result ) {
2235 return $this->container->run(
2236 'isValidEmailAddr',
2237 [ $addr, &$result ]
2238 );
2239 }
2240
2241 public function onIsValidPassword( $password, &$result, $user ) {
2242 return $this->container->run(
2243 'isValidPassword',
2244 [ $password, &$result, $user ]
2245 );
2246 }
2247
2248 public function onJsonValidateSave( JsonContent $content, PageIdentity $pageIdentity, StatusValue $status ) {
2249 return $this->container->run(
2250 'JsonValidateSave',
2251 [ $content, $pageIdentity, &$status ]
2252 );
2253 }
2254
2255 public function onLanguageGetNamespaces( &$namespaces ) {
2256 return $this->container->run(
2257 'LanguageGetNamespaces',
2258 [ &$namespaces ]
2259 );
2260 }
2261
2262 public function onLanguageGetTranslatedLanguageNames( &$names, $code ) {
2263 return $this->container->run(
2264 'LanguageGetTranslatedLanguageNames',
2265 [ &$names, $code ]
2266 );
2267 }
2268
2269 public function onLanguageLinks( $title, &$links, &$linkFlags ) {
2270 return $this->container->run(
2271 'LanguageLinks',
2272 [ $title, &$links, &$linkFlags ]
2273 );
2274 }
2275
2276 public function onLanguageSelector( $out, $cssClassName ) {
2277 return $this->container->run(
2278 'LanguageSelector',
2279 [ $out, $cssClassName ]
2280 );
2281 }
2282
2283 public function onLanguage__getMessagesFileName( $code, &$file ) {
2284 return $this->container->run(
2285 'Language::getMessagesFileName',
2286 [ $code, &$file ]
2287 );
2288 }
2289
2290 public function onLinkerGenerateRollbackLink( $revRecord, $context, $options, &$inner ) {
2291 return $this->container->run(
2292 'LinkerGenerateRollbackLink',
2293 [ $revRecord, $context, $options, &$inner ]
2294 );
2295 }
2296
2297 public function onLinkerMakeExternalImage( &$url, &$alt, &$img ) {
2298 return $this->container->run(
2299 'LinkerMakeExternalImage',
2300 [ &$url, &$alt, &$img ]
2301 );
2302 }
2303
2304 public function onLinkerMakeExternalLink( &$url, &$text, &$link, &$attribs,
2305 $linkType
2306 ) {
2307 return $this->container->run(
2308 'LinkerMakeExternalLink',
2309 [ &$url, &$text, &$link, &$attribs, $linkType ]
2310 );
2311 }
2312
2313 public function onLinkerMakeMediaLinkFile( $title, $file, &$html, &$attribs,
2314 &$ret
2315 ) {
2316 return $this->container->run(
2317 'LinkerMakeMediaLinkFile',
2318 [ $title, $file, &$html, &$attribs, &$ret ]
2319 );
2320 }
2321
2322 public function onLinksUpdate( $linksUpdate ) {
2323 return $this->container->run(
2324 'LinksUpdate',
2325 [ $linksUpdate ]
2326 );
2327 }
2328
2329 public function onLinksUpdateAfterInsert( $linksUpdate, $table, $insertions ) {
2330 return $this->container->run(
2331 'LinksUpdateAfterInsert',
2332 [ $linksUpdate, $table, $insertions ]
2333 );
2334 }
2335
2336 public function onLinksUpdateComplete( $linksUpdate, $ticket ) {
2337 return $this->container->run(
2338 'LinksUpdateComplete',
2339 [ $linksUpdate, $ticket ]
2340 );
2341 }
2342
2343 public function onLinksUpdateConstructed( $linksUpdate ) {
2344 return $this->container->run(
2345 'LinksUpdateConstructed',
2346 [ $linksUpdate ]
2347 );
2348 }
2349
2350 public function onListDefinedTags( &$tags ) {
2351 return $this->container->run(
2352 'ListDefinedTags',
2353 [ &$tags ]
2354 );
2355 }
2356
2357 public function onLoadExtensionSchemaUpdates( $updater ) {
2358 return $this->container->run(
2359 'LoadExtensionSchemaUpdates',
2360 [ $updater ],
2361 [ 'noServices' => true ]
2362 );
2363 }
2364
2365 public function onLocalFilePurgeThumbnails( $file, $archiveName, $urls ) {
2366 return $this->container->run(
2367 'LocalFilePurgeThumbnails',
2368 [ $file, $archiveName, $urls ]
2369 );
2370 }
2371
2372 public function onLocalFile__getHistory( $file, &$tables, &$fields, &$conds,
2373 &$opts, &$join_conds
2374 ) {
2375 return $this->container->run(
2376 'LocalFile::getHistory',
2377 [ $file, &$tables, &$fields, &$conds, &$opts, &$join_conds ]
2378 );
2379 }
2380
2381 public function onLocalisationCacheRecache( $cache, $code, &$alldata, $unused ) {
2382 return $this->container->run(
2383 'LocalisationCacheRecache',
2384 [ $cache, $code, &$alldata, $unused ]
2385 );
2386 }
2387
2388 public function onLocalisationCacheRecacheFallback( $cache, $code, &$alldata ) {
2389 return $this->container->run(
2390 'LocalisationCacheRecacheFallback',
2391 [ $cache, $code, &$alldata ]
2392 );
2393 }
2394
2395 public function onLocalUserCreated( $user, $autocreated ) {
2396 return $this->container->run(
2397 'LocalUserCreated',
2398 [ $user, $autocreated ]
2399 );
2400 }
2401
2402 public function onLogEventsListGetExtraInputs( $type, $logEventsList, &$input,
2403 &$formDescriptor
2404 ) {
2405 return $this->container->run(
2406 'LogEventsListGetExtraInputs',
2407 [ $type, $logEventsList, &$input, &$formDescriptor ]
2408 );
2409 }
2410
2411 public function onLogEventsListLineEnding( $page, &$ret, $entry, &$classes,
2412 &$attribs
2413 ) {
2414 return $this->container->run(
2415 'LogEventsListLineEnding',
2416 [ $page, &$ret, $entry, &$classes, &$attribs ]
2417 );
2418 }
2419
2420 public function onLogEventsListShowLogExtract( &$s, $types, $page, $user,
2421 $param
2422 ) {
2423 return $this->container->run(
2424 'LogEventsListShowLogExtract',
2425 [ &$s, $types, $page, $user, $param ]
2426 );
2427 }
2428
2429 public function onLogException( $e, $suppressed ) {
2430 return $this->container->run(
2431 'LogException',
2432 [ $e, $suppressed ]
2433 );
2434 }
2435
2436 public function onLoginFormValidErrorMessages( array &$messages ) {
2437 return $this->container->run(
2438 'LoginFormValidErrorMessages',
2439 [ &$messages ]
2440 );
2441 }
2442
2443 public function onLogLine( $log_type, $log_action, $title, $paramArray,
2444 &$comment, &$revert, $time
2445 ) {
2446 return $this->container->run(
2447 'LogLine',
2448 [ $log_type, $log_action, $title, $paramArray, &$comment,
2449 &$revert, $time ]
2450 );
2451 }
2452
2453 public function onLonelyPagesQuery( &$tables, &$conds, &$joinConds ) {
2454 return $this->container->run(
2455 'LonelyPagesQuery',
2456 [ &$tables, &$conds, &$joinConds ]
2457 );
2458 }
2459
2460 public function onMagicWordwgVariableIDs( &$variableIDs ) {
2461 return $this->container->run(
2462 'MagicWordwgVariableIDs',
2463 [ &$variableIDs ]
2464 );
2465 }
2466
2467 public function onMaintenanceRefreshLinksInit( $refreshLinks ) {
2468 return $this->container->run(
2469 'MaintenanceRefreshLinksInit',
2470 [ $refreshLinks ]
2471 );
2472 }
2473
2474 public function onMaintenanceShellStart(): void {
2475 $this->container->run(
2476 'MaintenanceShellStart',
2477 [],
2478 [ 'abortable' => false ]
2479 );
2480 }
2481
2482 public function onMaintenanceUpdateAddParams( &$params ) {
2483 return $this->container->run(
2484 'MaintenanceUpdateAddParams',
2485 [ &$params ]
2486 );
2487 }
2488
2489 public function onMakeGlobalVariablesScript( &$vars, $out ): void {
2490 $this->container->run(
2491 'MakeGlobalVariablesScript',
2492 [ &$vars, $out ],
2493 [ 'abortable' => false ]
2494 );
2495 }
2496
2497 public function onManualLogEntryBeforePublish( $logEntry ): void {
2498 $this->container->run(
2499 'ManualLogEntryBeforePublish',
2500 [ $logEntry ],
2501 [ 'abortable' => false ]
2502 );
2503 }
2504
2505 public function onMarkPatrolled( $rcid, $user, $wcOnlySysopsCanPatrol, $auto,
2506 &$tags
2507 ) {
2508 return $this->container->run(
2509 'MarkPatrolled',
2510 [ $rcid, $user, $wcOnlySysopsCanPatrol, $auto, &$tags ]
2511 );
2512 }
2513
2514 public function onMarkPatrolledComplete( $rcid, $user, $wcOnlySysopsCanPatrol,
2515 $auto
2516 ) {
2517 return $this->container->run(
2518 'MarkPatrolledComplete',
2519 [ $rcid, $user, $wcOnlySysopsCanPatrol, $auto ]
2520 );
2521 }
2522
2523 public function onMediaWikiPerformAction( $output, $article, $title, $user,
2524 $request, $mediaWiki
2525 ) {
2526 return $this->container->run(
2527 'MediaWikiPerformAction',
2528 [ $output, $article, $title, $user, $request, $mediaWiki ]
2529 );
2530 }
2531
2532 public function onMediaWikiServices( $services ) {
2533 return $this->container->run(
2534 'MediaWikiServices',
2535 [ $services ],
2536 [ 'noServices' => true ]
2537 );
2538 }
2539
2540 public function onMessageCacheReplace( $title, $text ) {
2541 return $this->container->run(
2542 'MessageCacheReplace',
2543 [ $title, $text ]
2544 );
2545 }
2546
2547 public function onMessageCache__get( &$key ) {
2548 return $this->container->run(
2549 'MessageCache::get',
2550 [ &$key ]
2551 );
2552 }
2553
2554 public function onMessagesPreLoad( $title, &$message, $code ) {
2555 return $this->container->run(
2556 'MessagesPreLoad',
2557 [ $title, &$message, $code ]
2558 );
2559 }
2560
2561 public function onMimeMagicGuessFromContent( $mimeMagic, &$head, &$tail, $file,
2562 &$mime
2563 ) {
2564 return $this->container->run(
2565 'MimeMagicGuessFromContent',
2566 [ $mimeMagic, &$head, &$tail, $file, &$mime ]
2567 );
2568 }
2569
2570 public function onMimeMagicImproveFromExtension( $mimeMagic, $ext, &$mime ) {
2571 return $this->container->run(
2572 'MimeMagicImproveFromExtension',
2573 [ $mimeMagic, $ext, &$mime ]
2574 );
2575 }
2576
2577 public function onMimeMagicInit( $mimeMagic ) {
2578 return $this->container->run(
2579 'MimeMagicInit',
2580 [ $mimeMagic ]
2581 );
2582 }
2583
2584 public function onModifyExportQuery( $db, &$tables, $cond, &$opts,
2585 &$join_conds, &$conds
2586 ) {
2587 return $this->container->run(
2588 'ModifyExportQuery',
2589 [ $db, &$tables, $cond, &$opts, &$join_conds, &$conds ]
2590 );
2591 }
2592
2593 public function onMovePageCheckPermissions( $oldTitle, $newTitle, $user,
2594 $reason, $status
2595 ) {
2596 return $this->container->run(
2597 'MovePageCheckPermissions',
2598 [ $oldTitle, $newTitle, $user, $reason, $status ]
2599 );
2600 }
2601
2602 public function onMovePageIsValidMove( $oldTitle, $newTitle, $status ) {
2603 return $this->container->run(
2604 'MovePageIsValidMove',
2605 [ $oldTitle, $newTitle, $status ]
2606 );
2607 }
2608
2609 public function onMultiContentSave( $renderedRevision, $user, $summary, $flags,
2610 $status
2611 ) {
2612 return $this->container->run(
2613 'MultiContentSave',
2614 [ $renderedRevision, $user, $summary, $flags, $status ]
2615 );
2616 }
2617
2618 public function onNamespaceIsMovable( $index, &$result ) {
2619 return $this->container->run(
2620 'NamespaceIsMovable',
2621 [ $index, &$result ]
2622 );
2623 }
2624
2625 public function onNewDifferenceEngine( $title, &$oldId, &$newId, $old, $new ) {
2626 return $this->container->run(
2627 'NewDifferenceEngine',
2628 [ $title, &$oldId, &$newId, $old, $new ]
2629 );
2630 }
2631
2632 public function onNewPagesLineEnding( $page, &$ret, $row, &$classes, &$attribs ) {
2633 return $this->container->run(
2634 'NewPagesLineEnding',
2635 [ $page, &$ret, $row, &$classes, &$attribs ]
2636 );
2637 }
2638
2639 public function onOldChangesListRecentChangesLine( $changeslist, &$s, $rc,
2640 &$classes, &$attribs
2641 ) {
2642 return $this->container->run(
2643 'OldChangesListRecentChangesLine',
2644 [ $changeslist, &$s, $rc, &$classes, &$attribs ]
2645 );
2646 }
2647
2648 public function onOpenSearchUrls( &$urls ) {
2649 return $this->container->run(
2650 'OpenSearchUrls',
2651 [ &$urls ]
2652 );
2653 }
2654
2655 public function onOpportunisticLinksUpdate( $page, $title, $parserOutput ) {
2656 return $this->container->run(
2657 'OpportunisticLinksUpdate',
2658 [ $page, $title, $parserOutput ]
2659 );
2660 }
2661
2662 public function onOtherAutoblockLogLink( &$otherBlockLink ) {
2663 return $this->container->run(
2664 'OtherAutoblockLogLink',
2665 [ &$otherBlockLink ]
2666 );
2667 }
2668
2669 public function onOtherBlockLogLink( &$otherBlockLink, $ip ) {
2670 return $this->container->run(
2671 'OtherBlockLogLink',
2672 [ &$otherBlockLink, $ip ]
2673 );
2674 }
2675
2676 public function onOutputPageAfterGetHeadLinksArray( &$tags, $out ) {
2677 return $this->container->run(
2678 'OutputPageAfterGetHeadLinksArray',
2679 [ &$tags, $out ]
2680 );
2681 }
2682
2683 public function onOutputPageBeforeHTML( $out, &$text ) {
2684 return $this->container->run(
2685 'OutputPageBeforeHTML',
2686 [ $out, &$text ]
2687 );
2688 }
2689
2690 public function onOutputPageBodyAttributes( $out, $sk, &$bodyAttrs ): void {
2691 $this->container->run(
2692 'OutputPageBodyAttributes',
2693 [ $out, $sk, &$bodyAttrs ],
2694 [ 'abortable' => false ]
2695 );
2696 }
2697
2698 public function onOutputPageCheckLastModified( &$modifiedTimes, $out ) {
2699 return $this->container->run(
2700 'OutputPageCheckLastModified',
2701 [ &$modifiedTimes, $out ]
2702 );
2703 }
2704
2705 public function onOutputPageMakeCategoryLinks( $out, $categories, &$links ) {
2706 return $this->container->run(
2707 'OutputPageMakeCategoryLinks',
2708 [ $out, $categories, &$links ]
2709 );
2710 }
2711
2712 public function onOutputPageParserOutput( $outputPage, $parserOutput ): void {
2713 $this->container->run(
2714 'OutputPageParserOutput',
2715 [ $outputPage, $parserOutput ],
2716 [ 'abortable' => false ]
2717 );
2718 }
2719
2720 public function onPageContentLanguage( $title, &$pageLang, $userLang ) {
2721 return $this->container->run(
2722 'PageContentLanguage',
2723 [ $title, &$pageLang, $userLang ]
2724 );
2725 }
2726
2727 public function onPageContentSave( $wikiPage, $user, $content, &$summary,
2728 $isminor, $iswatch, $section, $flags, $status
2729 ) {
2730 return $this->container->run(
2731 'PageContentSave',
2732 [ $wikiPage, $user, $content, &$summary, $isminor, $iswatch,
2733 $section, $flags, $status ]
2734 );
2735 }
2736
2737 public function onPageDelete(
2738 ProperPageIdentity $page,
2739 Authority $deleter,
2740 string $reason,
2741 StatusValue $status,
2742 bool $suppress
2743 ) {
2744 return $this->container->run(
2745 'PageDelete',
2746 [ $page, $deleter, $reason, $status, $suppress ]
2747 );
2748 }
2749
2750 public function onPageDeleteComplete(
2751 ProperPageIdentity $page,
2752 Authority $deleter,
2753 string $reason,
2754 int $pageID,
2755 RevisionRecord $deletedRev,
2756 ManualLogEntry $logEntry,
2757 int $archivedRevisionCount
2758 ) {
2759 return $this->container->run(
2760 'PageDeleteComplete',
2761 [ $page, $deleter, $reason, $pageID, $deletedRev, $logEntry, $archivedRevisionCount ]
2762 );
2763 }
2764
2765 public function onPageDeletionDataUpdates( $title, $revision, &$updates ) {
2766 return $this->container->run(
2767 'PageDeletionDataUpdates',
2768 [ $title, $revision, &$updates ]
2769 );
2770 }
2771
2772 public function onPageUndelete(
2773 ProperPageIdentity $page,
2774 Authority $performer,
2775 string $reason,
2776 bool $unsuppress,
2777 array $timestamps,
2778 array $fileVersions,
2779 StatusValue $status
2780 ) {
2781 return $this->container->run(
2782 'PageUndelete',
2783 [ $page, $performer, $reason, $unsuppress, $timestamps, $fileVersions, $status ]
2784 );
2785 }
2786
2787 public function onPageHistoryBeforeList( $article, $context ) {
2788 return $this->container->run(
2789 'PageHistoryBeforeList',
2790 [ $article, $context ]
2791 );
2792 }
2793
2794 public function onPageHistoryLineEnding( $historyAction, &$row, &$s, &$classes,
2795 &$attribs
2796 ) {
2797 return $this->container->run(
2798 'PageHistoryLineEnding',
2799 [ $historyAction, &$row, &$s, &$classes, &$attribs ]
2800 );
2801 }
2802
2803 public function onPageHistoryPager__doBatchLookups( $pager, $result ) {
2804 return $this->container->run(
2805 'PageHistoryPager::doBatchLookups',
2806 [ $pager, $result ]
2807 );
2808 }
2809
2810 public function onPageHistoryPager__getQueryInfo( $pager, &$queryInfo ) {
2811 return $this->container->run(
2812 'PageHistoryPager::getQueryInfo',
2813 [ $pager, &$queryInfo ]
2814 );
2815 }
2816
2817 public function onPageMoveComplete( $old, $new, $user, $pageid, $redirid, $reason, $revision ) {
2818 return $this->container->run(
2819 'PageMoveComplete',
2820 [ $old, $new, $user, $pageid, $redirid, $reason, $revision ]
2821 );
2822 }
2823
2824 public function onPageMoveCompleting( $old, $new, $user, $pageid, $redirid, $reason, $revision ) {
2825 return $this->container->run(
2826 'PageMoveCompleting',
2827 [ $old, $new, $user, $pageid, $redirid, $reason, $revision ]
2828 );
2829 }
2830
2831 public function onPageRenderingHash( &$confstr, $user, &$forOptions ) {
2832 return $this->container->run(
2833 'PageRenderingHash',
2834 [ &$confstr, $user, &$forOptions ]
2835 );
2836 }
2837
2838 public function onPageSaveComplete( $wikiPage, $user, $summary, $flags,
2839 $revisionRecord, $editResult
2840 ) {
2841 return $this->container->run(
2842 'PageSaveComplete',
2843 [ $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult ]
2844 );
2845 }
2846
2847 public function onPageViewUpdates( $wikipage, $user ) {
2848 return $this->container->run(
2849 'PageViewUpdates',
2850 [ $wikipage, $user ]
2851 );
2852 }
2853
2854 public function onParserAfterParse( $parser, &$text, $stripState ) {
2855 return $this->container->run(
2856 'ParserAfterParse',
2857 [ $parser, &$text, $stripState ]
2858 );
2859 }
2860
2861 public function onParserAfterTidy( $parser, &$text ) {
2862 return $this->container->run(
2863 'ParserAfterTidy',
2864 [ $parser, &$text ]
2865 );
2866 }
2867
2868 public function onParserBeforeInternalParse( $parser, &$text, $stripState ) {
2869 return $this->container->run(
2870 'ParserBeforeInternalParse',
2871 [ $parser, &$text, $stripState ]
2872 );
2873 }
2874
2875 public function onParserBeforePreprocess( $parser, &$text, $stripState ) {
2876 return $this->container->run(
2877 'ParserBeforePreprocess',
2878 [ $parser, &$text, $stripState ]
2879 );
2880 }
2881
2882 public function onParserCacheSaveComplete( $parserCache, $parserOutput, $title,
2883 $popts, $revId
2884 ) {
2885 return $this->container->run(
2886 'ParserCacheSaveComplete',
2887 [ $parserCache, $parserOutput, $title, $popts, $revId ]
2888 );
2889 }
2890
2891 public function onParserClearState( $parser ) {
2892 return $this->container->run(
2893 'ParserClearState',
2894 [ $parser ]
2895 );
2896 }
2897
2898 public function onParserCloned( $parser ) {
2899 return $this->container->run(
2900 'ParserCloned',
2901 [ $parser ]
2902 );
2903 }
2904
2905 public function onParserFetchTemplateData( array $titles, array &$tplData ): bool {
2906 return $this->container->run(
2907 'ParserFetchTemplateData',
2908 [ $titles, &$tplData ]
2909 );
2910 }
2911
2912 public function onParserFirstCallInit( $parser ) {
2913 return $this->container->run(
2914 'ParserFirstCallInit',
2915 [ $parser ]
2916 );
2917 }
2918
2919 public function onParserGetVariableValueSwitch( $parser, &$variableCache,
2920 $magicWordId, &$ret, $frame
2921 ) {
2922 return $this->container->run(
2923 'ParserGetVariableValueSwitch',
2924 [ $parser, &$variableCache, $magicWordId, &$ret, $frame ]
2925 );
2926 }
2927
2928 public function onParserGetVariableValueTs( $parser, &$time ) {
2929 return $this->container->run(
2930 'ParserGetVariableValueTs',
2931 [ $parser, &$time ]
2932 );
2933 }
2934
2935 public function onParserLimitReportFormat( $key, &$value, &$report, $isHTML,
2936 $localize
2937 ) {
2938 return $this->container->run(
2939 'ParserLimitReportFormat',
2940 [ $key, &$value, &$report, $isHTML, $localize ]
2941 );
2942 }
2943
2944 public function onParserLimitReportPrepare( $parser, $output ) {
2945 return $this->container->run(
2946 'ParserLimitReportPrepare',
2947 [ $parser, $output ]
2948 );
2949 }
2950
2951 public function onParserLogLinterData( string $title, int $revId, array $lints ): bool {
2952 return $this->container->run(
2953 'ParserLogLinterData',
2954 [ $title, $revId, $lints ]
2955 );
2956 }
2957
2958 public function onParserMakeImageParams( $title, $file, &$params, $parser ) {
2959 return $this->container->run(
2960 'ParserMakeImageParams',
2961 [ $title, $file, &$params, $parser ]
2962 );
2963 }
2964
2965 public function onParserModifyImageHTML( Parser $parser, File $file,
2966 array $params, string &$html
2967 ): void {
2968 $this->container->run(
2969 'ParserModifyImageHTML',
2970 [ $parser, $file, $params, &$html ],
2971 [ 'abortable' => false ]
2972 );
2973 }
2974
2975 public function onParserOptionsRegister( &$defaults, &$inCacheKey, &$lazyLoad ) {
2976 return $this->container->run(
2977 'ParserOptionsRegister',
2978 [ &$defaults, &$inCacheKey, &$lazyLoad ]
2979 );
2980 }
2981
2982 public function onParserOutputPostCacheTransform( $parserOutput, &$text,
2983 &$options
2984 ): void {
2985 $this->container->run(
2986 'ParserOutputPostCacheTransform',
2987 [ $parserOutput, &$text, &$options ],
2988 [ 'abortable' => false ]
2989 );
2990 }
2991
2992 public function onParserOutputStashForEdit( $page, $content, $output, $summary,
2993 $user
2994 ) {
2995 return $this->container->run(
2996 'ParserOutputStashForEdit',
2997 [ $page, $content, $output, $summary, $user ]
2998 );
2999 }
3000
3001 public function onParserPreSaveTransformComplete( $parser, &$text ) {
3002 return $this->container->run(
3003 'ParserPreSaveTransformComplete',
3004 [ $parser, &$text ]
3005 );
3006 }
3007
3008 public function onParserSectionCreate( $parser, $section, &$sectionContent,
3009 $showEditLinks
3010 ) {
3011 return $this->container->run(
3012 'ParserSectionCreate',
3013 [ $parser, $section, &$sectionContent, $showEditLinks ]
3014 );
3015 }
3016
3017 public function onParserTestGlobals( &$globals ) {
3018 return $this->container->run(
3019 'ParserTestGlobals',
3020 [ &$globals ]
3021 );
3022 }
3023
3024 public function onParserTestTables( &$tables ) {
3025 return $this->container->run(
3026 'ParserTestTables',
3027 [ &$tables ]
3028 );
3029 }
3030
3031 public function onPasswordPoliciesForUser( $user, &$effectivePolicy ) {
3032 return $this->container->run(
3033 'PasswordPoliciesForUser',
3034 [ $user, &$effectivePolicy ]
3035 );
3036 }
3037
3038 public function onPerformRetroactiveAutoblock( $block, &$blockIds ) {
3039 return $this->container->run(
3040 'PerformRetroactiveAutoblock',
3041 [ $block, &$blockIds ]
3042 );
3043 }
3044
3045 public function onPersonalUrls( &$personal_urls, &$title, $skin ): void {
3046 $this->container->run(
3047 'PersonalUrls',
3048 [ &$personal_urls, &$title, $skin ],
3049 [ 'abortable' => false ]
3050 );
3051 }
3052
3053 public function onPingLimiter( $user, $action, &$result, $incrBy ) {
3054 return $this->container->run(
3055 'PingLimiter',
3056 [ $user, $action, &$result, $incrBy ]
3057 );
3058 }
3059
3060 public function onPlaceNewSection( $content, $oldtext, $subject, &$text ) {
3061 return $this->container->run(
3062 'PlaceNewSection',
3063 [ $content, $oldtext, $subject, &$text ]
3064 );
3065 }
3066
3067 public function onPostLoginRedirect( &$returnTo, &$returnToQuery, &$type ) {
3068 return $this->container->run(
3069 'PostLoginRedirect',
3070 [ &$returnTo, &$returnToQuery, &$type ]
3071 );
3072 }
3073
3074 public function onPreferencesFormPreSave( $formData, $form, $user, &$result,
3075 $oldUserOptions
3076 ) {
3077 return $this->container->run(
3078 'PreferencesFormPreSave',
3079 [ $formData, $form, $user, &$result, $oldUserOptions ]
3080 );
3081 }
3082
3083 public function onPreferencesGetLegend( $form, $key, &$legend ) {
3084 return $this->container->run(
3085 'PreferencesGetLegend',
3086 [ $form, $key, &$legend ]
3087 );
3088 }
3089
3090 public function onPrefixSearchBackend( $ns, $search, $limit, &$results,
3091 $offset
3092 ) {
3093 return $this->container->run(
3094 'PrefixSearchBackend',
3095 [ $ns, $search, $limit, &$results, $offset ]
3096 );
3097 }
3098
3099 public function onPrefixSearchExtractNamespace( &$namespaces, &$search ) {
3100 return $this->container->run(
3101 'PrefixSearchExtractNamespace',
3102 [ &$namespaces, &$search ]
3103 );
3104 }
3105
3106 public function onPrefsEmailAudit( $user, $oldaddr, $newaddr ) {
3107 return $this->container->run(
3108 'PrefsEmailAudit',
3109 [ $user, $oldaddr, $newaddr ]
3110 );
3111 }
3112
3113 public function onProtectionForm__buildForm( $article, &$output ) {
3114 return $this->container->run(
3115 'ProtectionForm::buildForm',
3116 [ $article, &$output ]
3117 );
3118 }
3119
3120 public function onProtectionFormAddFormFields( $article, &$hookFormOptions ) {
3121 return $this->container->run(
3122 'ProtectionFormAddFormFields',
3123 [ $article, &$hookFormOptions ]
3124 );
3125 }
3126
3127 public function onProtectionForm__save( $article, &$errorMsg, $reasonstr ) {
3128 return $this->container->run(
3129 'ProtectionForm::save',
3130 [ $article, &$errorMsg, $reasonstr ]
3131 );
3132 }
3133
3134 public function onProtectionForm__showLogExtract( $article, $out ) {
3135 return $this->container->run(
3136 'ProtectionForm::showLogExtract',
3137 [ $article, $out ]
3138 );
3139 }
3140
3141 public function onRandomPageQuery( &$tables, &$conds, &$joinConds ) {
3142 return $this->container->run(
3143 'RandomPageQuery',
3144 [ &$tables, &$conds, &$joinConds ]
3145 );
3146 }
3147
3148 public function onRawPageViewBeforeOutput( $obj, &$text ) {
3149 return $this->container->run(
3150 'RawPageViewBeforeOutput',
3151 [ $obj, &$text ]
3152 );
3153 }
3154
3155 public function onRecentChangesPurgeRows( $rows ) {
3156 return $this->container->run(
3157 'RecentChangesPurgeRows',
3158 [ $rows ]
3159 );
3160 }
3161
3162 public function onRecentChange_save( $recentChange ) {
3163 return $this->container->run(
3164 'RecentChange_save',
3165 [ $recentChange ]
3166 );
3167 }
3168
3169 public function onRedirectSpecialArticleRedirectParams( &$redirectParams ) {
3170 return $this->container->run(
3171 'RedirectSpecialArticleRedirectParams',
3172 [ &$redirectParams ]
3173 );
3174 }
3175
3176 public function onRejectParserCacheValue( $parserOutput, $wikiPage,
3177 $parserOptions
3178 ) {
3179 return $this->container->run(
3180 'RejectParserCacheValue',
3181 [ $parserOutput, $wikiPage, $parserOptions ]
3182 );
3183 }
3184
3185 public function onRequestContextCreateSkin( $context, &$skin ) {
3186 return $this->container->run(
3187 'RequestContextCreateSkin',
3188 [ $context, &$skin ]
3189 );
3190 }
3191
3192 public function onResetPasswordExpiration( $user, &$newExpire ) {
3193 return $this->container->run(
3194 'ResetPasswordExpiration',
3195 [ $user, &$newExpire ]
3196 );
3197 }
3198
3199 public function onResourceLoaderGetConfigVars( array &$vars, $skin, Config $config ): void {
3200 $this->container->run(
3201 'ResourceLoaderGetConfigVars',
3202 [ &$vars, $skin, $config ],
3203 [ 'abortable' => false ]
3204 );
3205 }
3206
3207 public function onResourceLoaderJqueryMsgModuleMagicWords( RL\Context $context,
3208 array &$magicWords
3209 ): void {
3210 $this->container->run(
3211 'ResourceLoaderJqueryMsgModuleMagicWords',
3212 [ $context, &$magicWords ],
3213 [ 'abortable' => false ]
3214 );
3215 }
3216
3217 public function onRevisionDataUpdates( $title, $renderedRevision, &$updates ) {
3218 return $this->container->run(
3219 'RevisionDataUpdates',
3220 [ $title, $renderedRevision, &$updates ]
3221 );
3222 }
3223
3224 public function onRevisionFromEditComplete( $wikiPage, $rev, $originalRevId, $user, &$tags ) {
3225 return $this->container->run(
3226 'RevisionFromEditComplete',
3227 [ $wikiPage, $rev, $originalRevId, $user, &$tags ]
3228 );
3229 }
3230
3231 public function onRevisionRecordInserted( $revisionRecord ) {
3232 return $this->container->run(
3233 'RevisionRecordInserted',
3234 [ $revisionRecord ]
3235 );
3236 }
3237
3238 public function onRevisionUndeleted( $revisionRecord, $oldPageID ) {
3239 return $this->container->run(
3240 'RevisionUndeleted',
3241 [ $revisionRecord, $oldPageID ]
3242 );
3243 }
3244
3245 public function onRollbackComplete( $wikiPage, $user, $revision, $current ) {
3246 return $this->container->run(
3247 'RollbackComplete',
3248 [ $wikiPage, $user, $revision, $current ]
3249 );
3250 }
3251
3252 public function onSearchableNamespaces( &$arr ) {
3253 return $this->container->run(
3254 'SearchableNamespaces',
3255 [ &$arr ]
3256 );
3257 }
3258
3259 public function onSearchAfterNoDirectMatch( $term, &$title ) {
3260 return $this->container->run(
3261 'SearchAfterNoDirectMatch',
3262 [ $term, &$title ]
3263 );
3264 }
3265
3266 public function onSearchDataForIndex( &$fields, $handler, $page, $output,
3267 $engine
3268 ) {
3269 return $this->container->run(
3270 'SearchDataForIndex',
3271 [ &$fields, $handler, $page, $output, $engine ]
3272 );
3273 }
3274
3275 public function onSearchGetNearMatch( $term, &$title ) {
3276 return $this->container->run(
3277 'SearchGetNearMatch',
3278 [ $term, &$title ]
3279 );
3280 }
3281
3282 public function onSearchGetNearMatchBefore( $allSearchTerms, &$titleResult ) {
3283 return $this->container->run(
3284 'SearchGetNearMatchBefore',
3285 [ $allSearchTerms, &$titleResult ]
3286 );
3287 }
3288
3289 public function onSearchGetNearMatchComplete( $term, &$title ) {
3290 return $this->container->run(
3291 'SearchGetNearMatchComplete',
3292 [ $term, &$title ]
3293 );
3294 }
3295
3296 public function onSearchIndexFields( &$fields, $engine ) {
3297 return $this->container->run(
3298 'SearchIndexFields',
3299 [ &$fields, $engine ]
3300 );
3301 }
3302
3303 public function onSearchResultInitFromTitle( $title, &$id ) {
3304 return $this->container->run(
3305 'SearchResultInitFromTitle',
3306 [ $title, &$id ]
3307 );
3308 }
3309
3310 public function onSearchResultProvideDescription( array $pageIdentities, &$descriptions ) {
3311 return $this->container->run(
3312 'SearchResultProvideDescription',
3313 [ $pageIdentities, &$descriptions ]
3314 );
3315 }
3316
3317 public function onSearchResultProvideThumbnail( array $pageIdentities, &$thumbnails, int $size = null ) {
3318 return $this->container->run(
3319 'SearchResultProvideThumbnail',
3320 [ $pageIdentities, &$thumbnails, $size ]
3321 );
3322 }
3323
3324 public function onSearchResultsAugment( &$setAugmentors, &$rowAugmentors ) {
3325 return $this->container->run(
3326 'SearchResultsAugment',
3327 [ &$setAugmentors, &$rowAugmentors ]
3328 );
3329 }
3330
3331 public function onSecuritySensitiveOperationStatus( &$status, $operation,
3332 $session, $timeSinceAuth
3333 ) {
3334 return $this->container->run(
3335 'SecuritySensitiveOperationStatus',
3336 [ &$status, $operation, $session, $timeSinceAuth ]
3337 );
3338 }
3339
3340 public function onSelfLinkBegin( $nt, &$html, &$trail, &$prefix, &$ret ) {
3341 return $this->container->run(
3342 'SelfLinkBegin',
3343 [ $nt, &$html, &$trail, &$prefix, &$ret ]
3344 );
3345 }
3346
3347 public function onSendWatchlistEmailNotification( $targetUser, $title, $enotif ) {
3348 return $this->container->run(
3349 'SendWatchlistEmailNotification',
3350 [ $targetUser, $title, $enotif ]
3351 );
3352 }
3353
3354 public function onSessionCheckInfo( &$reason, $info, $request, $metadata,
3355 $data
3356 ) {
3357 return $this->container->run(
3358 'SessionCheckInfo',
3359 [ &$reason, $info, $request, $metadata, $data ]
3360 );
3361 }
3362
3363 public function onSessionMetadata( $backend, &$metadata, $requests ) {
3364 return $this->container->run(
3365 'SessionMetadata',
3366 [ $backend, &$metadata, $requests ]
3367 );
3368 }
3369
3370 public function onSetupAfterCache() {
3371 return $this->container->run(
3372 'SetupAfterCache',
3373 []
3374 );
3375 }
3376
3377 public function onShortPagesQuery( &$tables, &$conds, &$joinConds, &$options ) {
3378 return $this->container->run(
3379 'ShortPagesQuery',
3380 [ &$tables, &$conds, &$joinConds, &$options ]
3381 );
3382 }
3383
3384 public function onShowMissingArticle( $article ) {
3385 return $this->container->run(
3386 'ShowMissingArticle',
3387 [ $article ]
3388 );
3389 }
3390
3391 public function onShowSearchHit( $searchPage, $result, $terms, &$link,
3392 &$redirect, &$section, &$extract, &$score, &$size, &$date, &$related, &$html
3393 ) {
3394 return $this->container->run(
3395 'ShowSearchHit',
3396 [ $searchPage, $result, $terms, &$link, &$redirect, &$section,
3397 &$extract, &$score, &$size, &$date, &$related, &$html ]
3398 );
3399 }
3400
3401 public function onShowSearchHitTitle( &$title, &$titleSnippet, $result, $terms,
3402 $specialSearch, &$query, &$attributes
3403 ) {
3404 return $this->container->run(
3405 'ShowSearchHitTitle',
3406 [ &$title, &$titleSnippet, $result, $terms, $specialSearch,
3407 &$query, &$attributes ]
3408 );
3409 }
3410
3411 public function onSidebarBeforeOutput( $skin, &$sidebar ): void {
3412 $this->container->run(
3413 'SidebarBeforeOutput',
3414 [ $skin, &$sidebar ],
3415 [ 'abortable' => false ]
3416 );
3417 }
3418
3419 public function onSiteNoticeAfter( &$siteNotice, $skin ) {
3420 return $this->container->run(
3421 'SiteNoticeAfter',
3422 [ &$siteNotice, $skin ]
3423 );
3424 }
3425
3426 public function onSiteNoticeBefore( &$siteNotice, $skin ) {
3427 return $this->container->run(
3428 'SiteNoticeBefore',
3429 [ &$siteNotice, $skin ]
3430 );
3431 }
3432
3433 public function onSkinPageReadyConfig( RL\Context $context,
3434 array &$config
3435 ): void {
3436 $this->container->run(
3437 'SkinPageReadyConfig',
3438 [ $context, &$config ],
3439 [ 'abortable' => false ]
3440 );
3441 }
3442
3443 public function onSkinAddFooterLinks( Skin $skin, string $key, array &$footerItems ) {
3444 $this->container->run(
3445 'SkinAddFooterLinks',
3446 [ $skin, $key, &$footerItems ]
3447 );
3448 }
3449
3450 public function onSkinAfterBottomScripts( $skin, &$text ) {
3451 return $this->container->run(
3452 'SkinAfterBottomScripts',
3453 [ $skin, &$text ]
3454 );
3455 }
3456
3457 public function onSkinAfterContent( &$data, $skin ) {
3458 return $this->container->run(
3459 'SkinAfterContent',
3460 [ &$data, $skin ]
3461 );
3462 }
3463
3464 public function onSkinAfterPortlet( $skin, $portlet, &$html ) {
3465 return $this->container->run(
3466 'SkinAfterPortlet',
3467 [ $skin, $portlet, &$html ]
3468 );
3469 }
3470
3471 public function onSkinBuildSidebar( $skin, &$bar ) {
3472 return $this->container->run(
3473 'SkinBuildSidebar',
3474 [ $skin, &$bar ]
3475 );
3476 }
3477
3478 public function onSkinCopyrightFooter( $title, $type, &$msg, &$link ) {
3479 return $this->container->run(
3480 'SkinCopyrightFooter',
3481 [ $title, $type, &$msg, &$link ]
3482 );
3483 }
3484
3485 public function onSkinEditSectionLinks( $skin, $title, $section, $tooltip,
3486 &$result, $lang
3487 ) {
3488 return $this->container->run(
3489 'SkinEditSectionLinks',
3490 [ $skin, $title, $section, $tooltip, &$result, $lang ]
3491 );
3492 }
3493
3494 public function onSkinPreloadExistence( &$titles, $skin ) {
3495 return $this->container->run(
3496 'SkinPreloadExistence',
3497 [ &$titles, $skin ]
3498 );
3499 }
3500
3501 public function onSkinSubPageSubtitle( &$subpages, $skin, $out ) {
3502 return $this->container->run(
3503 'SkinSubPageSubtitle',
3504 [ &$subpages, $skin, $out ]
3505 );
3506 }
3507
3508 public function onSkinTemplateGetLanguageLink( &$languageLink,
3509 $languageLinkTitle, $title, $outputPage
3510 ) {
3511 return $this->container->run(
3512 'SkinTemplateGetLanguageLink',
3513 [ &$languageLink, $languageLinkTitle, $title, $outputPage ]
3514 );
3515 }
3516
3520 public function onSkinTemplateNavigation( $sktemplate, &$links ): void {
3521 $this->container->run(
3522 'SkinTemplateNavigation',
3523 [ $sktemplate, &$links ],
3524 [ 'abortable' => false ]
3525 );
3526 }
3527
3531 public function onSkinTemplateNavigation__SpecialPage( $sktemplate, &$links ): void {
3532 $this->container->run(
3533 'SkinTemplateNavigation::SpecialPage',
3534 [ $sktemplate, &$links ],
3535 [ 'abortable' => false ]
3536 );
3537 }
3538
3539 public function onSkinTemplateNavigation__Universal( $sktemplate, &$links ): void {
3540 $this->container->run(
3541 'SkinTemplateNavigation::Universal',
3542 [ $sktemplate, &$links ],
3543 [ 'abortable' => false ]
3544 );
3545 }
3546
3547 public function onSoftwareInfo( &$software ) {
3548 return $this->container->run(
3549 'SoftwareInfo',
3550 [ &$software ]
3551 );
3552 }
3553
3554 public function onSpecialBlockModifyFormFields( $sp, &$fields ) {
3555 return $this->container->run(
3556 'SpecialBlockModifyFormFields',
3557 [ $sp, &$fields ]
3558 );
3559 }
3560
3561 public function onSpecialContributionsBeforeMainOutput( $id, $user, $sp ) {
3562 return $this->container->run(
3563 'SpecialContributionsBeforeMainOutput',
3564 [ $id, $user, $sp ]
3565 );
3566 }
3567
3568 public function onSpecialContributions__formatRow__flags( $context, $row,
3569 &$flags
3570 ) {
3571 return $this->container->run(
3572 'SpecialContributions::formatRow::flags',
3573 [ $context, $row, &$flags ]
3574 );
3575 }
3576
3577 public function onSpecialContributions__getForm__filters( $sp, &$filters ) {
3578 return $this->container->run(
3579 'SpecialContributions::getForm::filters',
3580 [ $sp, &$filters ]
3581 );
3582 }
3583
3584 public function onSpecialExportGetExtraPages( $inputPages, &$extraPages ) {
3585 return $this->container->run(
3586 'SpecialExportGetExtraPages',
3587 [ $inputPages, &$extraPages ]
3588 );
3589 }
3590
3591 public function onSpecialListusersDefaultQuery( $pager, &$query ) {
3592 return $this->container->run(
3593 'SpecialListusersDefaultQuery',
3594 [ $pager, &$query ]
3595 );
3596 }
3597
3598 public function onSpecialListusersFormatRow( &$item, $row ) {
3599 return $this->container->run(
3600 'SpecialListusersFormatRow',
3601 [ &$item, $row ]
3602 );
3603 }
3604
3605 public function onSpecialListusersHeader( $pager, &$out ) {
3606 return $this->container->run(
3607 'SpecialListusersHeader',
3608 [ $pager, &$out ]
3609 );
3610 }
3611
3612 public function onSpecialListusersHeaderForm( $pager, &$out ) {
3613 return $this->container->run(
3614 'SpecialListusersHeaderForm',
3615 [ $pager, &$out ]
3616 );
3617 }
3618
3619 public function onSpecialListusersQueryInfo( $pager, &$query ) {
3620 return $this->container->run(
3621 'SpecialListusersQueryInfo',
3622 [ $pager, &$query ]
3623 );
3624 }
3625
3626 public function onSpecialLogAddLogSearchRelations( $type, $request, &$qc ) {
3627 return $this->container->run(
3628 'SpecialLogAddLogSearchRelations',
3629 [ $type, $request, &$qc ]
3630 );
3631 }
3632
3633 public function onSpecialMovepageAfterMove( $movePage, $oldTitle, $newTitle ) {
3634 return $this->container->run(
3635 'SpecialMovepageAfterMove',
3636 [ $movePage, $oldTitle, $newTitle ]
3637 );
3638 }
3639
3640 public function onSpecialMuteModifyFormFields( $target, $user, &$fields ) {
3641 return $this->container->run(
3642 'SpecialMuteModifyFormFields',
3643 [ $target, $user, &$fields ]
3644 );
3645 }
3646
3647 public function onSpecialMuteSubmit( $data ) {
3648 return $this->container->run(
3649 'SpecialMuteSubmit',
3650 [ $data ]
3651 );
3652 }
3653
3654 public function onSpecialNewpagesConditions( $special, $opts, &$conds,
3655 &$tables, &$fields, &$join_conds
3656 ) {
3657 return $this->container->run(
3658 'SpecialNewpagesConditions',
3659 [ $special, $opts, &$conds, &$tables, &$fields, &$join_conds ]
3660 );
3661 }
3662
3663 public function onSpecialNewPagesFilters( $special, &$filters ) {
3664 return $this->container->run(
3665 'SpecialNewPagesFilters',
3666 [ $special, &$filters ]
3667 );
3668 }
3669
3670 public function onSpecialPageAfterExecute( $special, $subPage ) {
3671 return $this->container->run(
3672 'SpecialPageAfterExecute',
3673 [ $special, $subPage ]
3674 );
3675 }
3676
3677 public function onSpecialPageBeforeExecute( $special, $subPage ) {
3678 return $this->container->run(
3679 'SpecialPageBeforeExecute',
3680 [ $special, $subPage ]
3681 );
3682 }
3683
3684 public function onSpecialPageBeforeFormDisplay( $name, $form ) {
3685 return $this->container->run(
3686 'SpecialPageBeforeFormDisplay',
3687 [ $name, $form ]
3688 );
3689 }
3690
3691 public function onSpecialPage_initList( &$list ) {
3692 return $this->container->run(
3693 'SpecialPage_initList',
3694 [ &$list ]
3695 );
3696 }
3697
3698 public function onSpecialPasswordResetOnSubmit( &$users, $data, &$error ) {
3699 return $this->container->run(
3700 'SpecialPasswordResetOnSubmit',
3701 [ &$users, $data, &$error ]
3702 );
3703 }
3704
3705 public function onSpecialRandomGetRandomTitle( &$randstr, &$isRedir,
3706 &$namespaces, &$extra, &$title
3707 ) {
3708 return $this->container->run(
3709 'SpecialRandomGetRandomTitle',
3710 [ &$randstr, &$isRedir, &$namespaces, &$extra, &$title ]
3711 );
3712 }
3713
3714 public function onSpecialRecentChangesPanel( &$extraOpts, $opts ) {
3715 return $this->container->run(
3716 'SpecialRecentChangesPanel',
3717 [ &$extraOpts, $opts ]
3718 );
3719 }
3720
3721 public function onSpecialResetTokensTokens( &$tokens ) {
3722 return $this->container->run(
3723 'SpecialResetTokensTokens',
3724 [ &$tokens ]
3725 );
3726 }
3727
3728 public function onSpecialSearchCreateLink( $t, &$params ) {
3729 return $this->container->run(
3730 'SpecialSearchCreateLink',
3731 [ $t, &$params ]
3732 );
3733 }
3734
3735 public function onSpecialSearchGoResult( $term, $title, &$url ) {
3736 return $this->container->run(
3737 'SpecialSearchGoResult',
3738 [ $term, $title, &$url ]
3739 );
3740 }
3741
3742 public function onSpecialSearchNogomatch( &$title ) {
3743 return $this->container->run(
3744 'SpecialSearchNogomatch',
3745 [ &$title ]
3746 );
3747 }
3748
3749 public function onSpecialSearchPowerBox( &$showSections, $term, &$opts ) {
3750 return $this->container->run(
3751 'SpecialSearchPowerBox',
3752 [ &$showSections, $term, &$opts ]
3753 );
3754 }
3755
3756 public function onSpecialSearchProfileForm( $search, &$form, $profile, $term,
3757 $opts
3758 ) {
3759 return $this->container->run(
3760 'SpecialSearchProfileForm',
3761 [ $search, &$form, $profile, $term, $opts ]
3762 );
3763 }
3764
3765 public function onSpecialSearchProfiles( &$profiles ) {
3766 return $this->container->run(
3767 'SpecialSearchProfiles',
3768 [ &$profiles ]
3769 );
3770 }
3771
3772 public function onSpecialSearchResults( $term, &$titleMatches, &$textMatches ) {
3773 return $this->container->run(
3774 'SpecialSearchResults',
3775 [ $term, &$titleMatches, &$textMatches ]
3776 );
3777 }
3778
3779 public function onSpecialSearchResultsAppend( $specialSearch, $output, $term ) {
3780 return $this->container->run(
3781 'SpecialSearchResultsAppend',
3782 [ $specialSearch, $output, $term ]
3783 );
3784 }
3785
3786 public function onSpecialSearchResultsPrepend( $specialSearch, $output, $term ) {
3787 return $this->container->run(
3788 'SpecialSearchResultsPrepend',
3789 [ $specialSearch, $output, $term ]
3790 );
3791 }
3792
3793 public function onSpecialSearchSetupEngine( $search, $profile, $engine ) {
3794 return $this->container->run(
3795 'SpecialSearchSetupEngine',
3796 [ $search, $profile, $engine ]
3797 );
3798 }
3799
3800 public function onSpecialStatsAddExtra( &$extraStats, $context ) {
3801 return $this->container->run(
3802 'SpecialStatsAddExtra',
3803 [ &$extraStats, $context ]
3804 );
3805 }
3806
3808 $catTitle, &$html
3809 ) {
3810 return $this->container->run(
3811 'SpecialTrackingCategories::generateCatLink',
3812 [ $specialPage, $catTitle, &$html ]
3813 );
3814 }
3815
3816 public function onSpecialTrackingCategories__preprocess( $specialPage,
3817 $trackingCategories
3818 ) {
3819 return $this->container->run(
3820 'SpecialTrackingCategories::preprocess',
3821 [ $specialPage, $trackingCategories ]
3822 );
3823 }
3824
3825 public function onSpecialUploadComplete( $form ) {
3826 return $this->container->run(
3827 'SpecialUploadComplete',
3828 [ $form ]
3829 );
3830 }
3831
3832 public function onSpecialVersionVersionUrl( $version, &$versionUrl ) {
3833 return $this->container->run(
3834 'SpecialVersionVersionUrl',
3835 [ $version, &$versionUrl ]
3836 );
3837 }
3838
3839 public function onSpecialWatchlistGetNonRevisionTypes( &$nonRevisionTypes ) {
3840 return $this->container->run(
3841 'SpecialWatchlistGetNonRevisionTypes',
3842 [ &$nonRevisionTypes ]
3843 );
3844 }
3845
3847 Session $session,
3848 UserIdentity $user,
3849 string $returnTo,
3850 string $returnToQuery,
3851 string $returnToAnchor,
3852 &$redirectUrl
3853 ) {
3854 return $this->container->run(
3855 'TempUserCreatedRedirect',
3856 [ $session, $user, $returnTo, $returnToQuery, $returnToAnchor, &$redirectUrl ]
3857 );
3858 }
3859
3860 public function onTestCanonicalRedirect( $request, $title, $output ) {
3861 return $this->container->run(
3862 'TestCanonicalRedirect',
3863 [ $request, $title, $output ]
3864 );
3865 }
3866
3867 public function onThumbnailBeforeProduceHTML( $thumbnail, &$attribs,
3868 &$linkAttribs
3869 ) {
3870 return $this->container->run(
3871 'ThumbnailBeforeProduceHTML',
3872 [ $thumbnail, &$attribs, &$linkAttribs ]
3873 );
3874 }
3875
3876 public function onTitleExists( $title, &$exists ) {
3877 return $this->container->run(
3878 'TitleExists',
3879 [ $title, &$exists ]
3880 );
3881 }
3882
3883 public function onTitleGetEditNotices( $title, $oldid, &$notices ) {
3884 return $this->container->run(
3885 'TitleGetEditNotices',
3886 [ $title, $oldid, &$notices ]
3887 );
3888 }
3889
3890 public function onTitleGetRestrictionTypes( $title, &$types ) {
3891 return $this->container->run(
3892 'TitleGetRestrictionTypes',
3893 [ $title, &$types ]
3894 );
3895 }
3896
3897 public function onTitleIsAlwaysKnown( $title, &$isKnown ) {
3898 return $this->container->run(
3899 'TitleIsAlwaysKnown',
3900 [ $title, &$isKnown ]
3901 );
3902 }
3903
3904 public function onTitleIsMovable( $title, &$result ) {
3905 return $this->container->run(
3906 'TitleIsMovable',
3907 [ $title, &$result ]
3908 );
3909 }
3910
3911 public function onTitleMove( $old, $nt, $user, $reason, &$status ) {
3912 return $this->container->run(
3913 'TitleMove',
3914 [ $old, $nt, $user, $reason, &$status ]
3915 );
3916 }
3917
3918 public function onTitleMoveStarting( $old, $nt, $user ) {
3919 return $this->container->run(
3920 'TitleMoveStarting',
3921 [ $old, $nt, $user ]
3922 );
3923 }
3924
3925 public function onTitleQuickPermissions( $title, $user, $action, &$errors,
3926 $doExpensiveQueries, $short
3927 ) {
3928 return $this->container->run(
3929 'TitleQuickPermissions',
3930 [ $title, $user, $action, &$errors, $doExpensiveQueries, $short ]
3931 );
3932 }
3933
3934 public function onTitleReadWhitelist( $title, $user, &$whitelisted ) {
3935 return $this->container->run(
3936 'TitleReadWhitelist',
3937 [ $title, $user, &$whitelisted ]
3938 );
3939 }
3940
3941 public function onTitleSquidURLs( $title, &$urls ) {
3942 return $this->container->run(
3943 'TitleSquidURLs',
3944 [ $title, &$urls ]
3945 );
3946 }
3947
3948 public function onUnblockUser( $block, $user, &$reason ) {
3949 return $this->container->run(
3950 'UnblockUser',
3951 [ $block, $user, &$reason ]
3952 );
3953 }
3954
3955 public function onUnblockUserComplete( $block, $user ) {
3956 return $this->container->run(
3957 'UnblockUserComplete',
3958 [ $block, $user ]
3959 );
3960 }
3961
3962 public function onUndeleteForm__showHistory( &$archive, $title ) {
3963 return $this->container->run(
3964 'UndeleteForm::showHistory',
3965 [ &$archive, $title ]
3966 );
3967 }
3968
3969 public function onUndeleteForm__showRevision( &$archive, $title ) {
3970 return $this->container->run(
3971 'UndeleteForm::showRevision',
3972 [ &$archive, $title ]
3973 );
3974 }
3975
3976 public function onUndeletePageToolLinks( IContextSource $context, LinkRenderer $linkRenderer, array &$links ) {
3977 return $this->container->run(
3978 'UndeletePageToolLinks',
3979 [ $context, $linkRenderer, &$links ]
3980 );
3981 }
3982
3983 public function onUnitTestsAfterDatabaseSetup( $database, $prefix ) {
3984 return $this->container->run(
3985 'UnitTestsAfterDatabaseSetup',
3986 [ $database, $prefix ]
3987 );
3988 }
3989
3991 return $this->container->run(
3992 'UnitTestsBeforeDatabaseTeardown',
3993 []
3994 );
3995 }
3996
3997 public function onUnitTestsList( &$paths ) {
3998 return $this->container->run(
3999 'UnitTestsList',
4000 [ &$paths ]
4001 );
4002 }
4003
4004 public function onUnwatchArticle( $user, $page, &$status ) {
4005 return $this->container->run(
4006 'UnwatchArticle',
4007 [ $user, $page, &$status ]
4008 );
4009 }
4010
4011 public function onUnwatchArticleComplete( $user, $page ) {
4012 return $this->container->run(
4013 'UnwatchArticleComplete',
4014 [ $user, $page ]
4015 );
4016 }
4017
4018 public function onUpdateUserMailerFormattedPageStatus( &$formattedPageStatus ) {
4019 return $this->container->run(
4020 'UpdateUserMailerFormattedPageStatus',
4021 [ &$formattedPageStatus ]
4022 );
4023 }
4024
4025 public function onUploadComplete( $uploadBase ) {
4026 return $this->container->run(
4027 'UploadComplete',
4028 [ $uploadBase ]
4029 );
4030 }
4031
4032 public function onUploadCreateFromRequest( $type, &$className ) {
4033 return $this->container->run(
4034 'UploadCreateFromRequest',
4035 [ $type, &$className ]
4036 );
4037 }
4038
4039 public function onUploadFormInitDescriptor( &$descriptor ) {
4040 return $this->container->run(
4041 'UploadFormInitDescriptor',
4042 [ &$descriptor ]
4043 );
4044 }
4045
4046 public function onUploadFormSourceDescriptors( &$descriptor, &$radio,
4047 $selectedSourceType
4048 ) {
4049 return $this->container->run(
4050 'UploadFormSourceDescriptors',
4051 [ &$descriptor, &$radio, $selectedSourceType ]
4052 );
4053 }
4054
4055 public function onUploadForm_BeforeProcessing( $upload ) {
4056 return $this->container->run(
4057 'UploadForm:BeforeProcessing',
4058 [ $upload ]
4059 );
4060 }
4061
4062 public function onUploadForm_getInitialPageText( &$pageText, $msg, $config ) {
4063 return $this->container->run(
4064 'UploadForm:getInitialPageText',
4065 [ &$pageText, $msg, $config ]
4066 );
4067 }
4068
4069 public function onUploadForm_initial( $upload ) {
4070 return $this->container->run(
4071 'UploadForm:initial',
4072 [ $upload ]
4073 );
4074 }
4075
4076 public function onUploadStashFile( $upload, $user, $props, &$error ) {
4077 return $this->container->run(
4078 'UploadStashFile',
4079 [ $upload, $user, $props, &$error ]
4080 );
4081 }
4082
4083 public function onUploadVerifyFile( $upload, $mime, &$error ) {
4084 return $this->container->run(
4085 'UploadVerifyFile',
4086 [ $upload, $mime, &$error ]
4087 );
4088 }
4089
4090 public function onUploadVerifyUpload( $upload, $user, $props, $comment,
4091 $pageText, &$error
4092 ) {
4093 return $this->container->run(
4094 'UploadVerifyUpload',
4095 [ $upload, $user, $props, $comment, $pageText, &$error ]
4096 );
4097 }
4098
4099 public function onUserAddGroup( $user, &$group, &$expiry ) {
4100 return $this->container->run(
4101 'UserAddGroup',
4102 [ $user, &$group, &$expiry ]
4103 );
4104 }
4105
4106 public function onUserArrayFromResult( &$userArray, $res ) {
4107 return $this->container->run(
4108 'UserArrayFromResult',
4109 [ &$userArray, $res ]
4110 );
4111 }
4112
4113 public function onUserCan( $title, $user, $action, &$result ) {
4114 return $this->container->run(
4115 'userCan',
4116 [ $title, $user, $action, &$result ]
4117 );
4118 }
4119
4120 public function onUserCanSendEmail( $user, &$hookErr ) {
4121 return $this->container->run(
4122 'UserCanSendEmail',
4123 [ $user, &$hookErr ]
4124 );
4125 }
4126
4127 public function onUserClearNewTalkNotification( $userIdentity, $oldid ) {
4128 return $this->container->run(
4129 'UserClearNewTalkNotification',
4130 [ $userIdentity, $oldid ]
4131 );
4132 }
4133
4134 public function onUserEditCountUpdate( $infos ): void {
4135 $this->container->run(
4136 'UserEditCountUpdate',
4137 [ $infos ],
4138 [ 'abortable' => false ]
4139 );
4140 }
4141
4142 public function onUserEffectiveGroups( $user, &$groups ) {
4143 return $this->container->run(
4144 'UserEffectiveGroups',
4145 [ $user, &$groups ]
4146 );
4147 }
4148
4149 public function onUserGetAllRights( &$rights ) {
4150 return $this->container->run(
4151 'UserGetAllRights',
4152 [ &$rights ]
4153 );
4154 }
4155
4156 public function onUserGetDefaultOptions( &$defaultOptions ) {
4157 return $this->container->run(
4158 'UserGetDefaultOptions',
4159 [ &$defaultOptions ]
4160 );
4161 }
4162
4163 public function onUserGetEmail( $user, &$email ) {
4164 return $this->container->run(
4165 'UserGetEmail',
4166 [ $user, &$email ]
4167 );
4168 }
4169
4170 public function onUserGetEmailAuthenticationTimestamp( $user, &$timestamp ) {
4171 return $this->container->run(
4172 'UserGetEmailAuthenticationTimestamp',
4173 [ $user, &$timestamp ]
4174 );
4175 }
4176
4177 public function onUserGetLanguageObject( $user, &$code, $context ) {
4178 return $this->container->run(
4179 'UserGetLanguageObject',
4180 [ $user, &$code, $context ]
4181 );
4182 }
4183
4184 public function onUserPrivilegedGroups( $userIdentity, &$groups ) {
4185 return $this->container->run(
4186 'UserPrivilegedGroups',
4187 [ $userIdentity, &$groups ]
4188 );
4189 }
4190
4191 public function onUserGetReservedNames( &$reservedUsernames ) {
4192 return $this->container->run(
4193 'UserGetReservedNames',
4194 [ &$reservedUsernames ]
4195 );
4196 }
4197
4198 public function onUserGetRights( $user, &$rights ) {
4199 return $this->container->run(
4200 'UserGetRights',
4201 [ $user, &$rights ]
4202 );
4203 }
4204
4205 public function onUserGetRightsRemove( $user, &$rights ) {
4206 return $this->container->run(
4207 'UserGetRightsRemove',
4208 [ $user, &$rights ]
4209 );
4210 }
4211
4212 public function onUserGroupsChanged( $user, $added, $removed, $performer,
4213 $reason, $oldUGMs, $newUGMs
4214 ) {
4215 return $this->container->run(
4216 'UserGroupsChanged',
4217 [ $user, $added, $removed, $performer, $reason, $oldUGMs,
4218 $newUGMs ]
4219 );
4220 }
4221
4222 public function onUserIsBlockedFrom( $user, $title, &$blocked, &$allowUsertalk ) {
4223 return $this->container->run(
4224 'UserIsBlockedFrom',
4225 [ $user, $title, &$blocked, &$allowUsertalk ]
4226 );
4227 }
4228
4229 public function onUserIsBlockedGlobally( $user, $ip, &$blocked, &$block ) {
4230 return $this->container->run(
4231 'UserIsBlockedGlobally',
4232 [ $user, $ip, &$blocked, &$block ]
4233 );
4234 }
4235
4236 public function onUserIsBot( $user, &$isBot ) {
4237 return $this->container->run(
4238 'UserIsBot',
4239 [ $user, &$isBot ]
4240 );
4241 }
4242
4243 public function onUserIsEveryoneAllowed( $right ) {
4244 return $this->container->run(
4245 'UserIsEveryoneAllowed',
4246 [ $right ]
4247 );
4248 }
4249
4250 public function onUserIsLocked( $user, &$locked ) {
4251 return $this->container->run(
4252 'UserIsLocked',
4253 [ $user, &$locked ]
4254 );
4255 }
4256
4257 public function onUserLoadAfterLoadFromSession( $user ) {
4258 return $this->container->run(
4259 'UserLoadAfterLoadFromSession',
4260 [ $user ]
4261 );
4262 }
4263
4264 public function onUserLoadDefaults( $user, $name ) {
4265 return $this->container->run(
4266 'UserLoadDefaults',
4267 [ $user, $name ]
4268 );
4269 }
4270
4271 public function onUserLoadFromDatabase( $user, &$s ) {
4272 return $this->container->run(
4273 'UserLoadFromDatabase',
4274 [ $user, &$s ]
4275 );
4276 }
4277
4278 public function onLoadUserOptions( UserIdentity $user, array &$options ): void {
4279 $this->container->run(
4280 'LoadUserOptions',
4281 [ $user, &$options ],
4282 [ 'abortable' => false ]
4283 );
4284 }
4285
4286 public function onUserLoggedIn( $user ) {
4287 return $this->container->run(
4288 'UserLoggedIn',
4289 [ $user ]
4290 );
4291 }
4292
4293 public function onUserLoginComplete( $user, &$inject_html, $direct ) {
4294 return $this->container->run(
4295 'UserLoginComplete',
4296 [ $user, &$inject_html, $direct ]
4297 );
4298 }
4299
4300 public function onUserLogout( $user ) {
4301 return $this->container->run(
4302 'UserLogout',
4303 [ $user ]
4304 );
4305 }
4306
4307 public function onUserLogoutComplete( $user, &$inject_html, $oldName ) {
4308 return $this->container->run(
4309 'UserLogoutComplete',
4310 [ $user, &$inject_html, $oldName ]
4311 );
4312 }
4313
4314 public function onUserMailerChangeReturnPath( $to, &$returnPath ) {
4315 return $this->container->run(
4316 'UserMailerChangeReturnPath',
4317 [ $to, &$returnPath ]
4318 );
4319 }
4320
4321 public function onUserMailerSplitTo( &$to ) {
4322 return $this->container->run(
4323 'UserMailerSplitTo',
4324 [ &$to ]
4325 );
4326 }
4327
4328 public function onUserMailerTransformContent( $to, $from, &$body, &$error ) {
4329 return $this->container->run(
4330 'UserMailerTransformContent',
4331 [ $to, $from, &$body, &$error ]
4332 );
4333 }
4334
4335 public function onUserMailerTransformMessage( $to, $from, &$subject, &$headers,
4336 &$body, &$error
4337 ) {
4338 return $this->container->run(
4339 'UserMailerTransformMessage',
4340 [ $to, $from, &$subject, &$headers, &$body, &$error ]
4341 );
4342 }
4343
4344 public function onUserRemoveGroup( $user, &$group ) {
4345 return $this->container->run(
4346 'UserRemoveGroup',
4347 [ $user, &$group ]
4348 );
4349 }
4350
4351 public function onSaveUserOptions( UserIdentity $user, array &$modifiedOptions, array $originalOptions ) {
4352 return $this->container->run(
4353 'SaveUserOptions',
4354 [ $user, &$modifiedOptions, $originalOptions ]
4355 );
4356 }
4357
4358 public function onUserSaveSettings( $user ) {
4359 return $this->container->run(
4360 'UserSaveSettings',
4361 [ $user ]
4362 );
4363 }
4364
4365 public function onUserSendConfirmationMail( $user, &$mail, $info ) {
4366 return $this->container->run(
4367 'UserSendConfirmationMail',
4368 [ $user, &$mail, $info ]
4369 );
4370 }
4371
4372 public function onUserSetCookies( $user, &$session, &$cookies ) {
4373 return $this->container->run(
4374 'UserSetCookies',
4375 [ $user, &$session, &$cookies ]
4376 );
4377 }
4378
4379 public function onUserSetEmail( $user, &$email ) {
4380 return $this->container->run(
4381 'UserSetEmail',
4382 [ $user, &$email ]
4383 );
4384 }
4385
4386 public function onUserSetEmailAuthenticationTimestamp( $user, &$timestamp ) {
4387 return $this->container->run(
4388 'UserSetEmailAuthenticationTimestamp',
4389 [ $user, &$timestamp ]
4390 );
4391 }
4392
4393 public function onUsersPagerDoBatchLookups( $dbr, $userIds, &$cache, &$groups ) {
4394 return $this->container->run(
4395 'UsersPagerDoBatchLookups',
4396 [ $dbr, $userIds, &$cache, &$groups ]
4397 );
4398 }
4399
4400 public function onUserToolLinksEdit( $userId, $userText, &$items ) {
4401 return $this->container->run(
4402 'UserToolLinksEdit',
4403 [ $userId, $userText, &$items ]
4404 );
4405 }
4406
4407 public function onUser__mailPasswordInternal( $user, $ip, $u ) {
4408 return $this->container->run(
4409 'User::mailPasswordInternal',
4410 [ $user, $ip, $u ]
4411 );
4412 }
4413
4414 public function onValidateExtendedMetadataCache( $timestamp, $file ) {
4415 return $this->container->run(
4416 'ValidateExtendedMetadataCache',
4417 [ $timestamp, $file ]
4418 );
4419 }
4420
4421 public function onWantedPages__getQueryInfo( $wantedPages, &$query ) {
4422 return $this->container->run(
4423 'WantedPages::getQueryInfo',
4424 [ $wantedPages, &$query ]
4425 );
4426 }
4427
4428 public function onWatchArticle( $user, $page, &$status, $expiry ) {
4429 return $this->container->run(
4430 'WatchArticle',
4431 [ $user, $page, &$status, $expiry ]
4432 );
4433 }
4434
4435 public function onWatchArticleComplete( $user, $page ) {
4436 return $this->container->run(
4437 'WatchArticleComplete',
4438 [ $user, $page ]
4439 );
4440 }
4441
4442 public function onWatchedItemQueryServiceExtensions( &$extensions,
4443 $watchedItemQueryService
4444 ) {
4445 return $this->container->run(
4446 'WatchedItemQueryServiceExtensions',
4447 [ &$extensions, $watchedItemQueryService ]
4448 );
4449 }
4450
4451 public function onWatchlistEditorBeforeFormRender( &$watchlistInfo ) {
4452 return $this->container->run(
4453 'WatchlistEditorBeforeFormRender',
4454 [ &$watchlistInfo ]
4455 );
4456 }
4457
4458 public function onWatchlistEditorBuildRemoveLine( &$tools, $title, $redirect,
4459 $skin, &$link
4460 ) {
4461 return $this->container->run(
4462 'WatchlistEditorBuildRemoveLine',
4463 [ &$tools, $title, $redirect, $skin, &$link ]
4464 );
4465 }
4466
4467 public function onWebRequestPathInfoRouter( $router ) {
4468 return $this->container->run(
4469 'WebRequestPathInfoRouter',
4470 [ $router ]
4471 );
4472 }
4473
4474 public function onWebResponseSetCookie( &$name, &$value, &$expire, &$options ) {
4475 return $this->container->run(
4476 'WebResponseSetCookie',
4477 [ &$name, &$value, &$expire, &$options ]
4478 );
4479 }
4480
4481 public function onWfShellWikiCmd( &$script, &$parameters, &$options ) {
4482 return $this->container->run(
4483 'wfShellWikiCmd',
4484 [ &$script, &$parameters, &$options ]
4485 );
4486 }
4487
4488 public function onWgQueryPages( &$qp ) {
4489 return $this->container->run(
4490 'wgQueryPages',
4491 [ &$qp ]
4492 );
4493 }
4494
4495 public function onWhatLinksHereProps( $row, $title, $target, &$props ) {
4496 return $this->container->run(
4497 'WhatLinksHereProps',
4498 [ $row, $title, $target, &$props ]
4499 );
4500 }
4501
4502 public function onWikiExporter__dumpStableQuery( &$tables, &$opts, &$join ) {
4503 return $this->container->run(
4504 'WikiExporter::dumpStableQuery',
4505 [ &$tables, &$opts, &$join ]
4506 );
4507 }
4508
4509 public function onWikiPageDeletionUpdates( $page, $content, &$updates ) {
4510 return $this->container->run(
4511 'WikiPageDeletionUpdates',
4512 [ $page, $content, &$updates ]
4513 );
4514 }
4515
4516 public function onWikiPageFactory( $title, &$page ) {
4517 return $this->container->run(
4518 'WikiPageFactory',
4519 [ $title, &$page ]
4520 );
4521 }
4522
4523 public function onXmlDumpWriterOpenPage( $obj, &$out, $row, $title ) {
4524 return $this->container->run(
4525 'XmlDumpWriterOpenPage',
4526 [ $obj, &$out, $row, $title ]
4527 );
4528 }
4529
4530 public function onXmlDumpWriterWriteRevision( $obj, &$out, $row, $text, $rev ) {
4531 return $this->container->run(
4532 'XmlDumpWriterWriteRevision',
4533 [ $obj, &$out, $row, $text, $rev ]
4534 );
4535 }
4536}
$magicWords
@phpcs-require-sorted-array
Legacy class representing an editable page and handling UI for some page actions.
Definition Article.php:48
Implements some public methods and some protected utility functions which are required by multiple ch...
Definition File.php:67
JSON text content that can be viewed and edit directly by users.
Class for creating new log entries and inserting them into the database.
This class provides an implementation of the core hook interfaces, forwarding hook calls to HookConta...
onLanguage__getMessagesFileName( $code, &$file)
Use this hook to change the path of a localisation file.
onArticleProtectComplete( $wikiPage, $user, $protect, $reason)
This hook is called after an article is protected.
onLanguageLinks( $title, &$links, &$linkFlags)
Use this hook to manipulate a page's language links.
onUserSetEmail( $user, &$email)
This hook is called when changing user email address.
onPreferencesGetLegend( $form, $key, &$legend)
Use the hook to override the text used for the <legend> of a preferences section.
onMarkPatrolled( $rcid, $user, $wcOnlySysopsCanPatrol, $auto, &$tags)
This hook is called before an edit is marked patrolled.
onSkinSubPageSubtitle(&$subpages, $skin, $out)
This hook is called at the beginning of Skin::subPageSubtitle().
onImportSources(&$importSources)
This hook is called when reading from the $wgImportSources configuration variable.
onDifferenceEngineRenderRevisionShowFinalPatrolLink()
Use this hook to not show the final "mark as patrolled" link on the bottom of a page.
onContentHandlerForModelID( $modeName, &$handler)
This hook is called when a ContentHandler is requested for a given content model name,...
onOutputPageParserOutput( $outputPage, $parserOutput)
This hook is called after adding a parserOutput to $wgOut.
onAbortAutoblock( $autoblockip, $block)
Use this hook to cancel an autoblock.
onUnitTestsList(&$paths)
This hook is called when building a list of paths containing PHPUnit tests.
onAfterBuildFeedLinks(&$feedLinks)
This hook is called in OutputPage.php after all feed links (atom, rss,...) are created.
onAlternateUserMailer( $headers, $to, $from, $subject, $body)
This hook is called before mail is sent so that mail could be logged (or something else) instead of u...
onMovePageIsValidMove( $oldTitle, $newTitle, $status)
Use this hook to specify whether a page can be moved for technical reasons.
onProtectionFormAddFormFields( $article, &$hookFormOptions)
This hook is called after all protection type form fields are added.
onArticleRevisionViewCustom( $revision, $title, $oldid, $output)
Use this hook for custom rendering of an article's content.
onEnhancedChangesList__getLogText( $changesList, &$links, $block)
Use this hook to alter, remove, or add to the links of a group of changes in EnhancedChangesList.
onGetSlotDiffRenderer( $contentHandler, &$slotDiffRenderer, $context)
Use this hook to replace or wrap the standard SlotDiffRenderer for some content type.
onSkinAddFooterLinks(Skin $skin, string $key, array &$footerItems)
This hook is called when generating the code used to display the footer.
onEditPageTosSummary( $title, &$msg)
Use this hook for site and per-namespace customizations of terms of service summary link that might e...
onUserSendConfirmationMail( $user, &$mail, $info)
This hook is called just before a confirmation email is sent to a user.
onTestCanonicalRedirect( $request, $title, $output)
This hook is called when about to force a redirect to a canonical URL for a title when we have no oth...
onAuthManagerLoginAuthenticateAudit( $response, $user, $username, $extraData)
This hook is called when a login attempt either succeeds or fails for a reason other than misconfigur...
onSessionCheckInfo(&$reason, $info, $request, $metadata, $data)
Use this hook to validate a MediaWiki\Session\SessionInfo as it's being loaded from storage.
onDifferenceEngineShowDiffPageMaybeShowMissingRevision( $differenceEngine)
This hook is called in DifferenceEngine::showDiffPage() when revision data cannot be loaded.
onSpecialExportGetExtraPages( $inputPages, &$extraPages)
onParserMakeImageParams( $title, $file, &$params, $parser)
This hook is called before the parser generates an image link, use this to modify the parameters of t...
onSkinAfterBottomScripts( $skin, &$text)
This hook is called at the end of Skin::bottomScripts().
onSpecialContributions__formatRow__flags( $context, $row, &$flags)
This hook is called before rendering a Special:Contributions row.
onLanguageSelector( $out, $cssClassName)
Use this hook to change the language selector available on a page.
onImportHandleRevisionXMLTag( $reader, $pageInfo, $revisionInfo)
This hook is called when parsing an XML tag in a page revision.
onXmlDumpWriterWriteRevision( $obj, &$out, $row, $text, $rev)
This hook is called at the end of a revision in an XML dump, to add extra metadata.
onAbortDiffCache( $diffEngine)
Use this hook to cancel the caching of a diff.
onAfterFinalPageOutput( $output)
This hook is called nearly at the end of OutputPage::output() but before OutputPage::sendCacheControl...
onUnwatchArticle( $user, $page, &$status)
This hook is called before a watch is removed from an article.
onDifferenceEngineViewHeader( $differenceEngine)
This hook is called before diff display.
onEditPageBeforeEditButtons( $editpage, &$buttons, &$tabindex)
Use this hook to modify the edit buttons below the textarea in the edit form.
onLogEventsListShowLogExtract(&$s, $types, $page, $user, $param)
This hook is called before the string is added to OutputPage.
onSpecialContributions__getForm__filters( $sp, &$filters)
This hook is called with a list of filters to render on Special:Contributions.
onPasswordPoliciesForUser( $user, &$effectivePolicy)
Use this hook to alter the effective password policy for a user.
onImportHandleLogItemXMLTag( $reader, $logInfo)
This hook is called when parsing an XML tag in a log item.
onUserLoadFromDatabase( $user, &$s)
This hook is called when loading a user from the database.
onEditFormInitialText( $editPage)
Use this hook to modify the edit form when editing existing pages.
onGetLogTypesOnUser(&$types)
Use this hook to add log types where the target is a user page.
onChangeTagAfterDelete( $tag, &$status)
This hook is called after a change tag has been deleted (that is, removed from all revisions and log ...
onDiffTools( $newRevRecord, &$links, $oldRevRecord, $userIdentity)
Use this hook to override or extend the revision tools available from the diff view,...
onSpecialContributionsBeforeMainOutput( $id, $user, $sp)
This hook is called before the form on Special:Contributions.
onRevisionUndeleted( $revisionRecord, $oldPageID)
After an article revision is restored.
onImportHandlePageXMLTag( $reader, &$pageInfo)
This hook is called when parsing an XML tag in a page.
onParserClearState( $parser)
This hook is called at the end of Parser::clearState().
onSpecialPasswordResetOnSubmit(&$users, $data, &$error)
This hook is called when executing a form submission on Special:PasswordReset.
onParserFirstCallInit( $parser)
This hook is called when the parser initialises for the first time.
onProtectionForm__showLogExtract( $article, $out)
This hook is called after the protection log extract is shown.
onBeforeWelcomeCreation(&$welcome_creation_msg, &$injected_html)
This hook is called before the welcomecreation message is displayed to a newly created user.
onHtmlCacheUpdaterVaryUrls( $urls, &$append)
This hook is used to add variants of URLs to purge from HTTP caches.
onPageDeletionDataUpdates( $title, $revision, &$updates)
This hook is called when constructing a list of DeferrableUpdate to be executed when a page is delete...
onContribsPager__getQueryInfo( $pager, &$queryInfo)
This hook is called before the contributions query is about to run.
onEditPage__showReadOnlyForm_initial( $editor, $out)
This hook is similar to EditPage::showEditForm:initial but for the read-only 'view source' variant of...
onContentSecurityPolicyDirectives(&$directives, $policyConfig, $mode)
If ContentSecurityPolicyDefaultSource and ContentSecurityPolicyScriptSource do not meet your needs,...
onArticleEditUpdateNewTalk( $wikiPage, $recipient)
This hook is called before updating user_newtalk when a user talk page was changed.
onUndeleteForm__showHistory(&$archive, $title)
This hook is called in UndeleteForm::showHistory, after creating the PageArchive object.
onIsUploadAllowedFromUrl( $url, &$allowed)
Use this hook to override the result of UploadFromUrl::isAllowedUrl().
onSearchResultProvideDescription(array $pageIdentities, &$descriptions)
This hook is called when generating search results in order to fill the 'description' field in an ext...
onBeforeParserrenderImageGallery( $parser, $ig)
This hook is called before an image gallery is rendered by Parser.
onUser__mailPasswordInternal( $user, $ip, $u)
This hook is called before creation and mailing of a user's new temporary password.
onWhatLinksHereProps( $row, $title, $target, &$props)
Use this hook to add annotations to Special:WhatLinksHere.
onGetAutoPromoteGroups( $user, &$promote)
This hook is called when determining which autopromote groups a user is entitled to be in.
onGetMagicVariableIDs(&$variableIDs)
Use this hook to modify the list of magic variables.
onUserGetReservedNames(&$reservedUsernames)
Use this hook to modify $wgReservedUsernames at run time.
onSkinTemplateNavigation__Universal( $sktemplate, &$links)
This hook is called on both content and special pages after variants have been added.
onEditPageBeforeEditToolbar(&$toolbar)
Use this hook to add an edit toolbar above the textarea in the edit form.
onContributionsToolLinks( $id, Title $title, array &$tools, SpecialPage $specialPage)
Use this hook to change the tool links above Special:Contributions.
onTitleMove( $old, $nt, $user, $reason, &$status)
onSpecialNewpagesConditions( $special, $opts, &$conds, &$tables, &$fields, &$join_conds)
This hook is called when building the SQL query for Special:NewPages.
onImgAuthModifyHeaders( $title, &$headers)
This hook is called just before a file is streamed to a user via img_auth.php, allowing headers to be...
onImageBeforeProduceHTML( $linker, &$title, &$file, &$frameParams, &$handlerParams, &$time, &$res, $parser, &$query, &$widthOption)
This hook is called before producing the HTML created by a wiki image insertion.
onInfoAction( $context, &$pageInfo)
This hook is called when building information to display on the action=info page.
onUserEffectiveGroups( $user, &$groups)
This hook is called in UserGroupManager::getUserEffectiveGroups().
onPageUndelete(ProperPageIdentity $page, Authority $performer, string $reason, bool $unsuppress, array $timestamps, array $fileVersions, StatusValue $status)
This hook is called before (part of) a page is undeleted.
onSearchGetNearMatch( $term, &$title)
Use this hook to perform exact-title-matches in "go" searches if nothing was found.
onMultiContentSave( $renderedRevision, $user, $summary, $flags, $status)
This hook is called before an article is saved.
onRecentChange_save( $recentChange)
This hook is called at the end of RecentChange::save().
onSearchIndexFields(&$fields, $engine)
Use this hook to add fields to search index mapping.
onOtherBlockLogLink(&$otherBlockLink, $ip)
Use this hook to add list items to a list of "other blocks" when viewing Special:BlockList.
onSpecialSearchCreateLink( $t, &$params)
This hook is called when making the message to create a page or go to the existing page.
onWatchlistEditorBuildRemoveLine(&$tools, $title, $redirect, $skin, &$link)
This hook is called when building remove lines in Special:Watchlist/edit.
onLinkerMakeExternalLink(&$url, &$text, &$link, &$attribs, $linkType)
This hook is called at the end of Linker::makeExternalLink() just before the return.
onIsValidEmailAddr( $addr, &$result)
Use this hook to override the result of Sanitizer::validateEmail(), for instance to return false if t...
onWatchArticle( $user, $page, &$status, $expiry)
This hook is called before a watch is added to an article.
onInternalParseBeforeLinks( $parser, &$text, $stripState)
This hook is called during Parser's internalParse method before links but after nowiki/noinclude/incl...
onSpecialTrackingCategories__preprocess( $specialPage, $trackingCategories)
This hook is called after LinkBatch on Special:TrackingCategories.
onManualLogEntryBeforePublish( $logEntry)
Use this hook to access or modify log entry just before it is published.
onDifferenceEngineNewHeader( $differenceEngine, &$newHeader, $formattedRevisionTools, $nextlink, $rollback, $newminor, $diffOnly, $rdel, $unhide)
Use this hook to change the $newHeader variable, which contains information about the new revision,...
onSpecialSearchProfileForm( $search, &$form, $profile, $term, $opts)
Use this hook to modify search profile forms.
onSearchGetNearMatchBefore( $allSearchTerms, &$titleResult)
Use this hook to perform exact-title-matches in "go" searches before the normal operations.
onHtmlCacheUpdaterAppendUrls( $title, $mode, &$append)
This hook is used to declare extra URLs to purge from HTTP caches.
onParserFetchTemplateData(array $titles, array &$tplData)
This hook allows Parsoid to fetch additional serialization information about a Template,...
onWebResponseSetCookie(&$name, &$value, &$expire, &$options)
This hook is called when setting a cookie in WebResponse::setcookie().
onHistoryTools( $revRecord, &$links, $prevRevRecord, $userIdentity)
Use this hook to override or extend the revision tools available from the page history view,...
onBeforeParserFetchFileAndTitle( $parser, $nt, &$options, &$descQuery)
This hook is called before an image is rendered by Parser.
onDifferenceEngineMarkPatrolledRCID(&$rcid, $differenceEngine, $change, $user)
Use this hook to possibly change the rcid parameter.
onParserCacheSaveComplete( $parserCache, $parserOutput, $title, $popts, $revId)
This hook is called after a ParserOutput has been committed to the parser cache.
onMovePageCheckPermissions( $oldTitle, $newTitle, $user, $reason, $status)
Use this hook to specify whether the user is allowed to move the page.
onWatchlistEditorBeforeFormRender(&$watchlistInfo)
This hook is called before building the Special:EditWatchlist form.
onUserGetAllRights(&$rights)
This hook is called after calculating a list of all available rights.
onSiteNoticeBefore(&$siteNotice, $skin)
This hook is called before the sitenotice/anonnotice is composed.
onImportHandleToplevelXMLTag( $reader)
This hook is called when parsing a top level XML tag.
onAlternateEditPreview( $editPage, &$content, &$previewHTML, &$parserOutput)
This hook is called before generating the preview of the page when editing ( EditPage::getPreviewText...
onAddNewAccount( $user, $byEmail)
This hook is called after a user account is created.
onArticleDelete( $wikiPage, $user, &$reason, &$error, &$status, $suppress)
onUserLogout( $user)
This hook is called before a user logs out.
onRejectParserCacheValue( $parserOutput, $wikiPage, $parserOptions)
Use this hook to reject an otherwise usable cached value from the Parser cache.
onTitleReadWhitelist( $title, $user, &$whitelisted)
This hook is called at the end of read permissions checks, just before adding the default error messa...
onIsFileCacheable( $article)
Use this hook to override the result of Article::isFileCacheable().
onPingLimiter( $user, $action, &$result, $incrBy)
Use this hook to override the results of User::pingLimiter().
onLinksUpdateConstructed( $linksUpdate)
This hook is called at the end of LinksUpdate() is construction.
onMimeMagicInit( $mimeMagic)
This hook is called before processing the list mapping MIME types to media types and the list mapping...
onSpecialRecentChangesPanel(&$extraOpts, $opts)
This hook is called when building form options in SpecialRecentChanges.
onPageDelete(ProperPageIdentity $page, Authority $deleter, string $reason, StatusValue $status, bool $suppress)
This hook is called before a page is deleted.
onParserPreSaveTransformComplete( $parser, &$text)
This hook is called from Parser::preSaveTransform() after processing is complete, giving the extensio...
onImportHandleContentXMLTag( $reader, $contentInfo)
This hook is called when parsing a content XML tag.
onTitleQuickPermissions( $title, $user, $action, &$errors, $doExpensiveQueries, $short)
This hook is called from Title::checkQuickPermissions to add to or override the quick permissions che...
onDifferenceEngineShowEmptyOldContent( $differenceEngine)
Use this hook to change the diff table body (without header) in cases when there is no old revision o...
onBlockIpComplete( $block, $user, $priorBlock)
This hook is called after an IP address or user is blocked.
onProtectionForm__buildForm( $article, &$output)
This hook is called after all protection type fieldsets are made in the form.
onUsersPagerDoBatchLookups( $dbr, $userIds, &$cache, &$groups)
This hook is called in UsersPager::doBatchLookups()
onPageSaveComplete( $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult)
This hook is called after an article has been updated.
onGetLocalURL__Article( $title, &$url)
Use this hook to modify local URLs specifically pointing to article paths without any fancy queries o...
onShortPagesQuery(&$tables, &$conds, &$joinConds, &$options)
Use this hook to modify the query used by Special:ShortPages.
onFileUndeleteComplete( $title, $fileVersions, $user, $reason)
This hook is called when a file is undeleted.
onWatchArticleComplete( $user, $page)
This hook is called after a watch is added to an article.
onOtherAutoblockLogLink(&$otherBlockLink)
Use this hook to add list items to a list of "other autoblocks" which appears at the end of Special:A...
onEditFilter( $editor, $text, $section, &$error, $summary)
Use this hook to perform checks on an edit.
onEditPage__showStandardInputs_options( $editor, $out, &$tabindex)
Use this hook to inject form fields into the editOptions area.
onBeforeParserFetchTemplateRevisionRecord(?LinkTarget $contextTitle, LinkTarget $title, bool &$skip, ?RevisionRecord &$revRecord)
This hook is called before a template is fetched by Parser.
onGetCanonicalURL( $title, &$url, $query)
Use this hook to modify fully-qualified URLs used for IRC and email notifications.
onSendWatchlistEmailNotification( $targetUser, $title, $enotif)
Use this hook to cancel watchlist email notifications (enotifwatchlist) for an edit.
onArticle__MissingArticleConditions(&$conds, $logTypes)
This hook is called before fetching deletion and move log entries to display a message of a non-exist...
onSidebarBeforeOutput( $skin, &$sidebar)
Use this hook to edit the sidebar just before it is output by skins.
onDifferenceEngineLoadTextAfterNewContentIsLoaded( $differenceEngine)
This hook is called in DifferenceEngine::loadText() after the new revision's content has been loaded ...
onParserAfterParse( $parser, &$text, $stripState)
This hook is called from Parser::parse() just after the call to Parser::internalParse() returns.
onGetLangPreferredVariant(&$req)
This hook is called in LanguageConverter::getPreferredVariant() to allow fetching the language varian...
onSpecialPageAfterExecute( $special, $subPage)
This hook is called after SpecialPage::execute.
onParserLogLinterData(string $title, int $revId, array $lints)
This hook allows Parsoid to log additional linting information during a parse to a database maintaine...
onGetPreferences( $user, &$preferences)
Use this hook to modify user preferences.
onResourceLoaderGetConfigVars(array &$vars, $skin, Config $config)
Export static site-wide mw.config variables to JavaScript.
onTitleSquidURLs( $title, &$urls)
This hook is called to determine which URLs to purge from HTTP caches.
onGetIP(&$ip)
Use this hook to modify the IP of the current user (called only once).
onMaintenanceRefreshLinksInit( $refreshLinks)
This hook is called before executing the refreshLinks.php maintenance script.
onEditPageCopyrightWarning( $title, &$msg)
Use this hook for site and per-namespace customization of contribution/copyright notice.
onBeforeRevertedTagUpdate( $wikiPage, $user, $summary, $flags, $revisionRecord, $editResult, &$approved)
This hook is called before scheduling a RevertedTagUpdateJob.
onLinkerMakeMediaLinkFile( $title, $file, &$html, &$attribs, &$ret)
This hook is called at the end of Linker::makeMediaLinkFile() just before the return.
onPerformRetroactiveAutoblock( $block, &$blockIds)
This hook is called before a retroactive autoblock is applied to a user.
onSiteNoticeAfter(&$siteNotice, $skin)
This hook is called after the sitenotice/anonnotice is composed.
onSearchResultProvideThumbnail(array $pageIdentities, &$thumbnails, int $size=null)
This hook is called when generating search results in order to fill the 'thumbnail' field in an exten...
onLocalFilePurgeThumbnails( $file, $archiveName, $urls)
This hook is called before thumbnails for a local file are purged.
onChangeTagCanDelete( $tag, $user, &$status)
Use this hook to tell whether a change tag should be able to be deleted from the UI (Special:Tags) or...
onResourceLoaderJqueryMsgModuleMagicWords(RL\Context $context, array &$magicWords)
onPageHistoryPager__doBatchLookups( $pager, $result)
This hook is called after the pager query was run, before any output is generated,...
onContentModelCanBeUsedOn( $contentModel, $title, &$ok)
Use this hook to determine whether a content model can be used on a given page.
onGetUserBlock( $user, $ip, &$block)
Use this hook to modify the block found by the block manager.
onUploadFormSourceDescriptors(&$descriptor, &$radio, $selectedSourceType)
This hook is called after the standard source inputs have been added to the descriptor.
onArticleConfirmDelete( $article, $output, &$reason)
This hook is called before writing the confirmation form for article deletion.
onSpecialListusersQueryInfo( $pager, &$query)
This hook is called right before the end of UsersPager::getQueryInfo()
onLoadExtensionSchemaUpdates( $updater)
This hook is called during database installation and updates.
onInitializeArticleMaybeRedirect( $title, $request, &$ignoreRedirect, &$target, &$article)
Use this hook to check whether a title is a redirect.
onSpecialSearchPowerBox(&$showSections, $term, &$opts)
Use this hook to modify advanced search profile forms.
onSkinTemplateNavigation__SpecialPage( $sktemplate, &$links)
onSkinPageReadyConfig(RL\Context $context, array &$config)
Allows skins to change the mediawiki.page.ready module configuration.
onLogException( $e, $suppressed)
This hook is called before an exception (or PHP error) is logged.
onRedirectSpecialArticleRedirectParams(&$redirectParams)
Use this hook to alter the set of parameter names such as "oldid" that are preserved when using redir...
onLogEventsListLineEnding( $page, &$ret, $entry, &$classes, &$attribs)
This hook is called before a Special:Log line is finished.
onUnblockUser( $block, $user, &$reason)
This hook is called before an IP address or user is unblocked.
onMediaWikiServices( $services)
This hook is called when a global MediaWikiServices instance is initialized.
onMediaWikiPerformAction( $output, $article, $title, $user, $request, $mediaWiki)
Use this hook to override MediaWiki::performAction().
onTitleGetRestrictionTypes( $title, &$types)
Use this hook to modify the types of protection that can be applied.
onOutputPageMakeCategoryLinks( $out, $categories, &$links)
This hook is called when links are about to be generated for the page's categories.
onParserGetVariableValueTs( $parser, &$time)
Use this hook to change the value of the time for time-related magic words, ie {{CURRENTMONTH}},...
onParserOptionsRegister(&$defaults, &$inCacheKey, &$lazyLoad)
Use this hook to register additional parser options.
onPermissionErrorAudit(LinkTarget $title, UserIdentity $user, string $action, string $rigor, array $errors)
This hook is called from PermissionManager::getPermissionErrorsInternal() to collect internal permiss...
onEditPage__importFormData( $editpage, $request)
Use this hook to read additional data posted in the form.
onBeforePageDisplay( $out, $skin)
This hook is called prior to outputting a page.
onUserLoginComplete( $user, &$inject_html, $direct)
Use this hook to show custom content after a user has logged in via the web interface.
onParserLimitReportFormat( $key, &$value, &$report, $isHTML, $localize)
This hook is called for each row in the parser limit report that needs formatting.
onIRCLineURL(&$url, &$query, $rc)
This hook is called when constructing the URL to use in an IRC notification.
onParserAfterTidy( $parser, &$text)
This hook is called after Parser::tidy() in Parser::parse().
onPageMoveCompleting( $old, $new, $user, $pageid, $redirid, $reason, $revision)
This hook is called after moving an article (title), pre-commit.
onContentSecurityPolicyDefaultSource(&$defaultSrc, $policyConfig, $mode)
Use this hook to modify the allowed CSP load sources.
onSecuritySensitiveOperationStatus(&$status, $operation, $session, $timeSinceAuth)
Use this hook to affect the return value from MediaWiki\Auth\AuthManager::securitySensitiveOperationS...
onSkinEditSectionLinks( $skin, $title, $section, $tooltip, &$result, $lang)
Use this hook to modify section edit links.
onSpecialResetTokensTokens(&$tokens)
This hook is called when building token list for SpecialResetTokens.
onImagePageFileHistoryLine( $imageHistoryList, $file, &$line, &$css)
This hook is called when a file history line is constructed.
onParserBeforePreprocess( $parser, &$text, $stripState)
Called at the beginning of Parser::preprocess()
onImportLogInterwikiLink(&$fullInterwikiPrefix, &$pageTitle)
Use this hook to change interwiki links in log entries and edit summaries for transwiki imports.
onParserOutputPostCacheTransform( $parserOutput, &$text, &$options)
This hook is called from ParserOutput::getText() to do post-cache transforms.
onUserGetEmailAuthenticationTimestamp( $user, &$timestamp)
This hook is called when getting the timestamp of email authentication.
onSelfLinkBegin( $nt, &$html, &$trail, &$prefix, &$ret)
This hook is called before a link to the current article is displayed to allow the display of the lin...
onCollation__factory( $collationName, &$collationObject)
This hook is called if $wgCategoryCollation is an unknown collation.
onSearchResultsAugment(&$setAugmentors, &$rowAugmentors)
Use this hook to add code to the list of search result augmentors.
onArticleFromTitle( $title, &$article, $context)
This hook is called when creating an article object from a title object using Wiki::articleFromTitle(...
onGetDifferenceEngine( $context, $old, $new, $refreshCache, $unhide, &$differenceEngine)
This hook is called when getting a new difference engine interface object.
onLinksUpdate( $linksUpdate)
This hook is called at the beginning of LinksUpdate::doUpdate() just before the actual update.
onLogEventsListGetExtraInputs( $type, $logEventsList, &$input, &$formDescriptor)
This hook is called when getting extra inputs to display on Special:Log for a specific log type.
onUnitTestsAfterDatabaseSetup( $database, $prefix)
This hook is called right after MediaWiki's test infrastructure has finished creating/duplicating cor...
onContribsPager__reallyDoQuery(&$data, $pager, $offset, $limit, $descending)
This hook is called before really executing the query for My Contributions.
onExemptFromAccountCreationThrottle( $ip)
Use this hook to add an exemption from the account creation throttle.
onUndeleteForm__showRevision(&$archive, $title)
This hook is called in UndeleteForm::showRevision, after creating a PageArchive object.
onActionBeforeFormDisplay( $name, $form, $article)
This hook is called before executing the HTMLForm object.
onArticleViewRedirect( $article)
This hook is called before setting "Redirected from ..." subtitle when a redirect was followed.
onGetContentModels(&$models)
Use this hook to add content models to the list of available models.
onFormatAutocomments(&$comment, $pre, $auto, $post, $title, $local, $wikiId)
This hook is called when an autocomment is formatted by the Linker.
onChangesListInitRows( $changesList, $rows)
Use this hook to batch process change list rows prior to rendering.
onUserGetRights( $user, &$rights)
This hook is called in PermissionManager::getUserPermissions().
onRevisionFromEditComplete( $wikiPage, $rev, $originalRevId, $user, &$tags)
This hook is called when a revision was inserted due to an edit, file upload, import or page move.
onImageOpenShowImageInlineBefore( $imagePage, $output)
This hook is called just before showing the image on an image page.
onProtectionForm__save( $article, &$errorMsg, $reasonstr)
This hook is called when a protection form is submitted.
onUpdateUserMailerFormattedPageStatus(&$formattedPageStatus)
This hook is called before a notification email gets sent.
onUploadFormInitDescriptor(&$descriptor)
This hook is called after the descriptor for the upload form as been assembled.
onUploadComplete( $uploadBase)
This hook is called upon completion of a file upload.
onUserMailerSplitTo(&$to)
This hook is called in UserMailer::send() to give extensions a chance to split up an email with multi...
onImportHandleUploadXMLTag( $reader, $revisionInfo)
This hook is called when parsing an XML tag in a file upload.
onSetupAfterCache()
This hook is called in Setup.php, after cache objects are set.
onDifferenceEngineShowDiff( $differenceEngine)
Use this hook to affect the diff text which eventually gets sent to the OutputPage object.
onEmailUserPermissionsErrors( $user, $editToken, &$hookErr)
Use this hook to retrieve permissions errors for emailing a user.
onBeforeDisplayNoArticleText( $article)
This hook is called before displaying message key "noarticletext" or "noarticletext-nopermission" at ...
onNewPagesLineEnding( $page, &$ret, $row, &$classes, &$attribs)
This hook is called before a NewPages line is finished.
onDifferenceEngineShowDiffPage( $out)
Use this hook to add additional output via the available OutputPage object into the diff view.
onImagePageShowTOC( $page, &$toc)
This hook is called when the file toc on an image page is generated.
onPageViewUpdates( $wikipage, $user)
Use this hook to make database (or other) changes after a page view is seen by MediaWiki.
onDeletedContributionsLineEnding( $page, &$ret, $row, &$classes, &$attribs)
This hook is called before a DeletedContributions HTML line is finished.
onWikiPageFactory( $title, &$page)
Use this hook to override WikiPage class used for a title.
onSpecialLogAddLogSearchRelations( $type, $request, &$qc)
Use this hook to add log relations to the current log.
onSearchGetNearMatchComplete( $term, &$title)
Use this hook to modify exact-title-matches in "go" searches.
onMimeMagicGuessFromContent( $mimeMagic, &$head, &$tail, $file, &$mime)
Use this hook to guess the MIME by content.
onDifferenceEngineAfterLoadNewText( $differenceEngine)
This hook is called in DifferenceEngine::loadNewText() after the new revision's content has been load...
onUserLoadAfterLoadFromSession( $user)
This hook is called to authenticate users on external or environmental means.
onSpecialMovepageAfterMove( $movePage, $oldTitle, $newTitle)
This hook is called after moving a page.
onEditFilterMergedContent( $context, $content, $status, $summary, $user, $minoredit)
onPageContentSave( $wikiPage, $user, $content, &$summary, $isminor, $iswatch, $section, $flags, $status)
This hook is called before an article is saved.
onOutputPageAfterGetHeadLinksArray(&$tags, $out)
This hook is called in OutputPage::getHeadLinksArray right before returning the result.
onSpecialVersionVersionUrl( $version, &$versionUrl)
This hook is called when building the URL for Special:Version.
onSpecialSearchProfiles(&$profiles)
Use this hook to modify search profiles.
onSpecialSearchResultsAppend( $specialSearch, $output, $term)
This hook is called immediately before returning HTML on the search results page.
onGetDoubleUnderscoreIDs(&$doubleUnderscoreIDs)
Use this hook to modify the list of behavior switches (double underscore variables in wikitext).
onTempUserCreatedRedirect(Session $session, UserIdentity $user, string $returnTo, string $returnToQuery, string $returnToAnchor, &$redirectUrl)
This hook is called after an action causes a temporary user to be created.
onModifyExportQuery( $db, &$tables, $cond, &$opts, &$join_conds, &$conds)
Use this hook to modify the query used by the exporter.
onLoadUserOptions(UserIdentity $user, array &$options)
This hook is called when user options/preferences are being loaded from the database.
onAbortEmailNotification( $editor, $title, $rc)
Use this hook to cancel email notifications for an edit.
onUserGetLanguageObject( $user, &$code, $context)
This hook is called when getting a user's interface language object.
onLanguageGetNamespaces(&$namespaces)
Use this hook to provide custom ordering for namespaces or remove namespaces.
onPageContentLanguage( $title, &$pageLang, $userLang)
Use this hook to change the language in which the content of a page is written.
onLonelyPagesQuery(&$tables, &$conds, &$joinConds)
Use this hook to modify the query used by Special:LonelyPages.
onSkinAfterPortlet( $skin, $portlet, &$html)
This hook is called when generating portlets.
onFileUpload( $file, $reupload, $hasDescription)
This hook is called when a file upload occurs.
onShowSearchHit( $searchPage, $result, $terms, &$link, &$redirect, &$section, &$extract, &$score, &$size, &$date, &$related, &$html)
Use this hook to customize display of search hit.
onSearchAfterNoDirectMatch( $term, &$title)
This hook is called if there was no match for the exact result.
onSpecialPage_initList(&$list)
This hook is called when setting up SpecialPageFactory::$list.
onOpportunisticLinksUpdate( $page, $title, $parserOutput)
This hook is called by WikiPage::triggerOpportunisticLinksUpdate when a page view triggers a re-rende...
onSpecialTrackingCategories__generateCatLink( $specialPage, $catTitle, &$html)
This hook is called for each category link on Special:TrackingCategories.
onWatchedItemQueryServiceExtensions(&$extensions, $watchedItemQueryService)
Use this hook to create a WatchedItemQueryServiceExtension.
onSpecialNewPagesFilters( $special, &$filters)
This hook is called after building form options at NewPages.
onMimeMagicImproveFromExtension( $mimeMagic, $ext, &$mime)
Use this hook to further improve the MIME type detected by considering the file extension.
onGetUserPermissionsErrorsExpensive( $title, $user, $action, &$result)
This hook is equal to getUserPermissionsErrors, but it is called only if expensive checks are enabled...
onImgAuthBeforeStream(&$title, &$path, &$name, &$result)
This hook is called before a file is streamed to a user, but only when using img_auth....
onEnhancedChangesListModifyLineData( $changesList, &$data, $block, $rc, &$classes, &$attribs)
Use this hook to alter data used to build a grouped recent change inner line in EnhancedChangesList.
onArticleContentOnDiff( $diffEngine, $output)
This hook is called before showing the article content below a diff.
onArticleUndelete( $title, $create, $comment, $oldPageId, $restoredPages)
This hook is called when one or more revisions of an article are restored.
onChangeTagsAfterUpdateTags( $addedTags, $removedTags, $prevTags, $rc_id, $rev_id, $log_id, $params, $rc, $user)
This hook is called after tags have been updated with the ChangeTags::updateTags function.
onRecentChangesPurgeRows( $rows)
This hook is called when old recentchanges rows are purged, after deleting those rows but within the ...
onAlternateEdit( $editPage)
This hook is called before checking if a user can edit a page and before showing the edit form ( Edit...
onUserToolLinksEdit( $userId, $userText, &$items)
This hook is called when generating a list of user tool links, e.g.
onUserIsBot( $user, &$isBot)
Use this hook to establish whether a user is a bot account.
onDifferenceEngineRenderRevisionAddParserOutput( $differenceEngine, $out, $parserOutput, $wikiPage)
Use this hook to change the parser output.
onShowMissingArticle( $article)
This hook is called when generating the output for a non-existent page.
onEmailUserCC(&$to, &$from, &$subject, &$text)
This hook is called before sending the copy of the email to the author.
onPostLoginRedirect(&$returnTo, &$returnToQuery, &$type)
Use this hook to modify the post login redirect behavior.
onSpecialSearchResults( $term, &$titleMatches, &$textMatches)
This hook is called before search result display.
onDisplayOldSubtitle( $article, &$oldid)
This hook is called before creating subtitle when browsing old versions of an article.
onBitmapHandlerCheckImageArea( $image, &$params, &$checkImageAreaHookResult)
This hook is called by BitmapHandler::normaliseParams, after all normalizations have been performed,...
onOutputPageBodyAttributes( $out, $sk, &$bodyAttrs)
This hook is called when OutputPage::headElement is creating the body tag to allow for extensions to ...
onMessagesPreLoad( $title, &$message, $code)
This hook is called when loading a message from the database.
onGetUserPermissionsErrors( $title, $user, $action, &$result)
Use this hook to add a permissions error when permissions errors are checked for.
onValidateExtendedMetadataCache( $timestamp, $file)
Use this hook to validate the cached metadata in FormatMetadata::getExtendedMeta.
onGalleryGetModes(&$modeArray)
Use this hook to get a list of classes that can render different modes of a gallery.
onUserSetCookies( $user, &$session, &$cookies)
This hook is called when setting user cookies.