// Fix URLs of thread pages when purging them. $wgHooks['TitleGetSquidURLs'][] = 'ForumHooksHelper::onTitleGetSquidURLs'; $wgHooks['ArticleCommentGetSquidURLs'][] = 'ForumHooksHelper::onArticleCommentGetSquidURLs'; include $dir . '/Forum.namespace.setup.php'; //add this namespace to list of wall namespaces $app->registerNamespaceControler(NS_WIKIA_FORUM_BOARD, 'ForumController', 'board', true); $app->registerNamespaceControler(NS_WIKIA_FORUM_TOPIC_BOARD, 'ForumController', 'board', true); // permissions $wgAvailableRights[] = 'forum'; $wgAvailableRights[] = 'boardedit'; $wgAvailableRights[] = 'forumadmin'; $wgGroupPermissions['*']['forum'] = false; $wgGroupPermissions['staff']['forum'] = true; $wgGroupPermissions['sysop']['forum'] = true; $wgGroupPermissions['bureaucrat']['forum'] = true; $wgGroupPermissions['helper']['forum'] = true; $wgRevokePermissions['vstf']['forum'] = true; $wgGroupPermissions['*']['boardedit'] = false; $wgGroupPermissions['staff']['boardedit'] = true; $wgGroupPermissions['*']['forumoldedit'] = false; $wgGroupPermissions['staff']['forumoldedit'] = true; $wgGroupPermissions['helper']['forumoldedit'] = true; $wgGroupPermissions['sysop']['forumoldedit'] = true; $wgGroupPermissions['bureaucrat']['forumoldedit'] = true; $wgGroupPermissions['*']['forumadmin'] = false; $wgGroupPermissions['staff']['forumadmin'] = true; $wgGroupPermissions['helper']['forumadmin'] = true; $wgGroupPermissions['sysop']['forumadmin'] = true; $wgGroupPermissions['threadmoderator']['forumadmin'] = true; JSMessages::registerPackage('Forum', array('back', 'forum-specialpage-policies-edit', 'forum-specialpage-policies'));
$wgAutoloadClasses['WikiaMobileCategoryModel'] = "{$dir}/models/WikiaMobileCategoryModel.class.php"; $wgAutoloadClasses['WikiaMobileStatsModel'] = "{$dir}/models/WikiaMobileStatsModel.class.php"; /** * controllers */ $wgAutoloadClasses['WikiaMobileController'] = "{$dir}/WikiaMobileController.class.php"; /** * special pages */ /** * message files */ $wgExtensionMessagesFiles['WikiaMobile'] = "{$dir}/WikiaMobile.i18n.php"; // initialize i18ns JSMessages::registerPackage('WkMbl', ['adengine-advertisement', 'wikiamobile-hide-section', 'wikiamobile-sharing-media-image', 'wikiamobile-sharing-page-text', 'wikiamobile-sharing-modal-text', 'wikiamobile-sharing-email-text', 'wikiamobile-image-not-loaded', 'wikiamobile-video-not-friendly', 'wikiamobile-video-not-friendly-header', 'wikiamobile-ad-label', 'wikiamobile-shared-file-not-available']); JSMessages::registerPackage('SmartBanner', ['wikiasmartbanner-appstore', 'wikiasmartbanner-googleplay', 'wikiasmartbanner-price', 'wikiasmartbanner-view']); /** * hooks */ $wgHooks['ParserBeforeStrip'][] = 'WikiaMobileHooks::onParserBeforeStrip'; $wgHooks['ParserAfterTidy'][] = 'WikiaMobileHooks::onParserAfterTidy'; $wgHooks['ParserLimitReport'][] = 'WikiaMobileHooks::onParserLimitReport'; $wgHooks['MakeHeadline'][] = 'WikiaMobileHooks::onMakeHeadline'; $wgHooks['LinkBegin'][] = 'WikiaMobileHooks::onLinkBegin'; $wgHooks['CategoryPageView'][] = 'WikiaMobileHooks::onCategoryPageView'; $wgHooks['ArticlePurge'][] = 'WikiaMobileHooks::onArticlePurge'; $wgHooks['DoEditSectionLink'][] = 'WikiaMobileHooks::onDoEditSectionLink'; //404 Pages $wgHooks['BeforeDisplayNoArticleText'][] = 'WikiaMobileHooks::onBeforeDisplayNoArticleText'; $wgHooks['BeforePageDisplay'][] = 'WikiaMobileHooks::onBeforePageDisplay'; /*
function wfOasisSetup() { global $wgHooks; // modules and services $wgHooks['ArticleSaveComplete'][] = 'LatestActivityController::onArticleSaveComplete'; $wgHooks['ArticleSaveComplete'][] = 'PageHeaderController::onArticleSaveComplete'; $wgHooks['BlogTemplateGetResults'][] = 'BlogListingController::getResults'; $wgHooks['BlogsRenderBlogArticlePage'][] = 'BlogListingController::renderBlogListing'; $wgHooks['DoEditSectionLink'][] = 'ContentDisplayController::onDoEditSectionLink'; $wgHooks['EditPage::showEditForm:initial'][] = 'BodyController::onEditPageRender'; $wgHooks['EditPageLayoutModifyPreview'][] = 'WikiNavigationController::onEditPageLayoutModifyPreview'; $wgHooks['EditPageMakeGlobalVariablesScript'][] = 'WikiNavigationController::onEditPageMakeGlobalVariablesScript'; $wgHooks['MakeHeadline'][] = 'ContentDisplayController::onMakeHeadline'; $wgHooks['MessageCacheReplace'][] = 'WikiNavigationController::onMessageCacheReplace'; $wgHooks['Parser::showEditLink'][] = 'ContentDisplayController::onShowEditLink'; $wgHooks['WikiFactoryChanged'][] = 'WikiNavigationController::onWikiFactoryChanged'; // notifications $wgHooks['AchievementsNotification'][] = 'NotificationsController::addBadgeNotification'; $wgHooks['CommunityMessages::showMessage'][] = 'NotificationsController::addCommunityMessagesNotification'; $wgHooks['EditSimilar::showMessage'][] = 'NotificationsController::addEditSimilarNotification'; $wgHooks['SiteWideMessagesNotification'][] = 'NotificationsController::addSiteWideMessageNotification'; $wgHooks['SkinTemplateOutputPageBeforeExec'][] = 'NotificationsController::addMessageNotification'; // misc $wgHooks['MakeGlobalVariablesScript'][] = 'OasisController::onMakeGlobalVariablesScript'; // support "noexternals" URL param global $wgNoExternals, $wgRequest; $wgNoExternals = $wgRequest->getBool('noexternals', $wgNoExternals); //Oasis-navigation-v2 messages $jsMessages = new JSMessages(); $jsMessages->registerPackage('Oasis-navigation-v2', array('oasis-navigation-v2-*')); $jsMessages->registerPackage('Oasis-mobile-switch', array('oasis-mobile-site')); // Generic messages that can be used by all extensions such as error messages $jsMessages->registerPackage('Oasis-generic', ['oasis-generic-error']); $jsMessages->enqueuePackage('Oasis-generic', JSMessages::EXTERNAL); }
public function index() { $this->class = $this->request->getVal('class', ''); $this->text = $this->request->getVal('text', ''); $this->tooltip = $this->request->getVal('tooltip'); $this->tabindex = $this->request->getVal('tabindex', null); if ($this->app->checkSkin('wikiamobile')) { JSMessages::registerPackage('fblogin', array('wikiamobile-facebook-connect-fail')); JSMessages::enqueuePackage('fblogin', JSMessages::INLINE); $this->response->setVal('requestType', $this->request->getVal('requestType')); $this->overrideTemplate('WikiaMobileIndex'); } }
<?php $wgExtensionCredits['specialpage'][] = ['name' => 'Theme designer', 'author' => ['Christian Williams', 'Inez Korczyński', 'Maciej Brencz'], 'descriptionmsg' => 'themedesigner-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/ThemeDesigner']; $dir = __DIR__; // autoloads $wgAutoloadClasses['UploadBackgroundFromFile'] = "{$dir}/UploadBackgroundFromFile.class.php"; $wgAutoloadClasses['UploadFaviconFromFile'] = "{$dir}/UploadFaviconFromFile.class.php"; $wgAutoloadClasses['UploadWordmarkFromFile'] = "{$dir}/UploadWordmarkFromFile.class.php"; $wgAutoloadClasses['ThemeDesignerController'] = "{$dir}/ThemeDesignerController.class.php"; $wgAutoloadClasses['SpecialThemeDesigner'] = "{$dir}/SpecialThemeDesigner.class.php"; $wgAutoloadClasses['SpecialThemeDesignerPreview'] = "{$dir}/SpecialThemeDesignerPreview.class.php"; $wgAutoloadClasses['Theme'] = "{$dir}/SpecialThemeDesignerPreview.class.php"; $wgAutoloadClasses['ThemeDesignerHooks'] = "{$dir}/ThemeDesignerHooks.class.php"; // special pages $wgSpecialPages['ThemeDesigner'] = 'SpecialThemeDesigner'; $wgSpecialPages['ThemeDesignerPreview'] = 'SpecialThemeDesignerPreview'; // i18n $wgExtensionMessagesFiles['ThemeDesigner'] = "{$dir}/ThemeDesigner.i18n.php"; $wgExtensionMessagesFiles['ThemeDesignerAliases'] = "{$dir}/ThemeDesigner.alias.php"; // Ability to access ThemeDesigner. $wgAvailableRights[] = 'themedesigner'; $wgGroupPermissions['*']['themedesigner'] = false; $wgGroupPermissions['sysop']['themedesigner'] = true; $wgGroupPermissions['helper']['themedesigner'] = true; $wgGroupPermissions['staff']['themedesigner'] = true; JSMessages::registerPackage('ThemeDesigner', ['themedesigner-wordmark-preview-error']); // hooks $wgHooks['ArticleDeleteComplete'][] = 'ThemeDesignerHooks::onArticleDeleteComplete'; $wgHooks['RevisionInsertComplete'][] = 'ThemeDesignerHooks::onRevisionInsertComplete'; $wgHooks['UploadComplete'][] = 'ThemeDesignerHooks::onUploadComplete'; $wgHooks['UploadVerification'][] = 'ThemeDesignerHooks::onUploadVerification';
// special::movepage $wgHooks['SpecialMovepageAfterMove'][] = 'ArticleComment::moveComments'; $wgHooks['ParserFirstCallInit'][] = 'ArticleComment::metadataParserInit'; $wgHooks['WikiaMobileAssetsPackages'][] = 'ArticleCommentInit::onWikiaMobileAssetsPackages'; $wgHooks['BeforePageDisplay'][] = 'ArticleCommentsController::onBeforePageDisplay'; $wgHooks['SkinAfterContent'][] = 'ArticleCommentsController::onSkinAfterContent'; // adding comment_index rows for articles $wgHooks['ArticleDoEdit'][] = 'CommentsIndex::onArticleDoEdit'; // comments_index table $wgHooks['LoadExtensionSchemaUpdates'][] = 'CommentsIndex::onLoadExtensionSchemaUpdates'; $wgHooks['FilePageImageUsageSingleLink'][] = 'ArticleCommentInit::onFilePageImageUsageSingleLink'; } $wgHooks['BeforeDeletePermissionErrors'][] = 'ArticleComment::onBeforeDeletePermissionErrors'; //JSMEssages setup JSMessages::registerPackage('ArticleCommentsCounter', array('oasis-comments-header', 'oasis-comments-showing-most-recent')); JSMessages::registerPackage('WikiaMobileComments', array('wikiamobile-article-comments-replies', 'wikiamobile-article-comments-view', 'wikiamobile-article-comments-post', 'wikiamobile-article-comments-post-reply', 'wikiamobile-article-comments-login-post', 'wikiamobile-article-comments-post-fail')); // Ajax dispatcher $wgAjaxExportList[] = 'ArticleCommentsAjax'; function ArticleCommentsAjax() { global $wgUser, $wgRequest; $method = $wgRequest->getVal('method', false); if (method_exists('ArticleCommentsAjax', $method)) { wfProfileIn(__METHOD__); $data = ArticleCommentsAjax::$method(); if (is_array($data)) { // send array as JSON $json = json_encode($data); $response = new AjaxResponse($json); $response->setContentType('application/json; charset=utf-8'); } else {
<?php /** * WikiaHomePage * * @author Andrzej 'nAndy' Łukaszewski * @author Hyun Lim * @author Marcin Maciejewski * @author Saipetch Kongkatong * @author Sebastian Marzjan * @author Damian Jóźwiak */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['other'][] = array('name' => 'WikiaHomePage', 'author' => array('Andrzej "nAndy" Łukaszewski', 'Hyun Lim', 'Marcin Maciejewski', 'Saipetch Kongkatong', 'Sebastian Marzjan', 'Damian Jóźwiak'), 'descriptionmsg' => 'wikiahome-desc', 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/WikiaHomePage'); $wgAutoloadClasses['WikiaHomePageController'] = $dir . 'WikiaHomePageController.class.php'; $wgAutoloadClasses['WikiaHubsApiController'] = $dir . '../WikiaHubsServices/api/WikiaHubsApiController.class.php'; //i18n mapping $wgExtensionMessagesFiles['WikiaHomePage'] = $dir . 'WikiaHomePage.i18n.php'; JSMessages::registerPackage('WikiaHomePage', array('wikia-home-page-*')); // services $wgAutoloadClasses['RedirectService'] = 'includes/wikia/services/RedirectService.class.php'; // hooks $wgHooks['GetHTMLAfterBody'][] = 'WikiaHomePageController::onGetHTMLAfterBody'; $wgHooks['OutputPageBeforeHTML'][] = 'WikiaHomePageController::onOutputPageBeforeHTML'; $wgHooks['WikiaMobileAssetsPackages'][] = 'WikiaHomePageController::onWikiaMobileAssetsPackages'; $wgHooks['ArticleCommentCheck'][] = 'WikiaHomePageController::onArticleCommentCheck'; $wgHooks['AfterGlobalHeader'][] = 'WikiaHomePageController::onAfterGlobalHeader'; $wgHooks['BeforePageDisplay'][] = 'WikiaHomePageController::onBeforePageDisplay'; $wgHooks['AfterOasisSettingsInitialized'][] = 'WikiaHomePageController::onAfterOasisSettingsInitialized'; $wgHooks['ArticleFromTitle'][] = 'WikiaHomePageController::onArticleFromTitle';
<?php /** * BlogEditCategoryPrompter * * prompts users to add a category to blog posts (https://wikia-inc.atlassian.net/browse/CE-401) * * @author Nelson Monterroso <*****@*****.**> */ if (!defined('MEDIAWIKI')) { die(1); } $wgExtensionCredits['specialpage'][] = array('name' => 'Blog Edit Category Prompter', 'author' => 'Nelson Monterroso', 'descriptionmsg' => 'becp-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/BlogEditCategoryPrompter', 'version' => '1.0.0'); $dir = dirname(__FILE__); // classes $wgAutoloadClasses['BECPHelper'] = "{$dir}/BECPHelper.class.php"; // i18n $wgExtensionMessagesFiles['BECP'] = "{$dir}/BlogEditCategoryPrompter.i18n.php"; // perms $wgAvailableRights[] = BECPHelper::PERM_NAME; $wgGroupPermissions['*'][BECPHelper::PERM_NAME] = false; $wgGroupPermissions['staff'][BECPHelper::PERM_NAME] = true; $wgGroupPermissions['sysop'][BECPHelper::PERM_NAME] = true; // hooks $wgHooks['BlogArticleInitialized'][] = 'BECPHelper::onBlogArticleInitialized'; JSMessages::registerPackage('BECP', array('becp-prompt'));
<?php /** * MediaGallery setup * * @author Liz Lee, Garth Webb, James Sutterfield, Armon Rabiyan * */ $wgExtensionCredits['other'][] = array('name' => 'MediaGallery', 'author' => array('Liz Lee', 'Garth Webb', 'James Sutterfield', 'Armon Rabiyan'), 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/MediaGallery', 'descriptionmsg' => 'mediagallery-desc'); $dir = dirname(__FILE__) . '/'; //classes $wgAutoloadClasses['MediaGalleryController'] = $dir . 'MediaGalleryController.class.php'; $wgAutoloadClasses['MediaGalleryHelper'] = $dir . 'MediaGalleryHelper.class.php'; $wgAutoloadClasses['MediaGalleryModel'] = $dir . 'MediaGalleryModel.class.php'; // hooks $wgAutoloadClasses['MediaGalleryHooks'] = $dir . 'MediaGalleryHooks.class.php'; $wgHooks['OutputPageBeforeHTML'][] = 'MediaGalleryHooks::onOutputPageBeforeHTML'; $wgHooks['OasisSkinAssetGroups'][] = 'MediaGalleryHooks::onOasisSkinAssetGroups'; $wgHooks['VenusAssetsPackages'][] = 'MediaGalleryHooks::onVenusAssetsPackages'; $wgHooks['MakeGlobalVariablesScript'][] = 'MediaGalleryHooks::onMakeGlobalVariablesScript'; $wgHooks['WikiFeatures::afterToggleFeature'][] = 'MediaGalleryHooks::afterToggleFeature'; // i18n mapping $wgExtensionMessagesFiles['MediaGallery'] = $dir . 'MediaGallery.i18n.php'; JSMessages::registerPackage('MediaGallery', array('mediagallery-show-more', 'mediagallery-show-less'));
$wgAutoloadClasses['AdEngine2PageTypeService'] = __DIR__ . '/AdEngine2PageTypeService.class.php'; $wgAutoloadClasses['AdEngine2Service'] = __DIR__ . '/AdEngine2Service.class.php'; $wgAutoloadClasses['ResourceLoaderAdEngineSevenOneMediaModule'] = __DIR__ . '/ResourceLoaderAdEngineSevenOneMediaModule.php'; // Hooks for Exitstitial ads $wgHooks['LinkerMakeExternalLink'][] = 'AdEngine2ExitstitialHooks::onLinkerMakeExternalLink'; $wgHooks['LinkEnd'][] = 'AdEngine2ExitstitialHooks::onLinkEnd'; $wgHooks['MakeGlobalVariablesScript'][] = 'AdEngine2ExitstitialHooks::onMakeGlobalVariablesScript'; $wgHooks['OasisSkinAssetGroups'][] = 'AdEngine2ExitstitialHooks::onOasisSkinAssetGroups'; // Hooks for AdEngine2 $wgHooks['AfterInitialize'][] = 'AdEngine2Hooks::onAfterInitialize'; $wgHooks['InstantGlobalsGetVariables'][] = 'AdEngine2Hooks::onInstantGlobalsGetVariables'; $wgHooks['OasisSkinAssetGroups'][] = 'AdEngine2Hooks::onOasisSkinAssetGroups'; $wgHooks['OasisSkinAssetGroupsBlocking'][] = 'AdEngine2Hooks::onOasisSkinAssetGroupsBlocking'; $wgHooks['WikiaMobileAssetsPackages'][] = 'AdEngine2Hooks::onWikiaMobileAssetsPackages'; $wgHooks['WikiaSkinTopScripts'][] = 'AdEngine2Hooks::onWikiaSkinTopScripts'; $wgHooks['WikiaSkinTopModules'][] = 'AdEngine2Hooks::onWikiaSkinTopModules'; $wgHooks['VenusAssetsPackages'][] = 'AdEngine2Hooks::onVenusAssetsPackages'; $wgHooks['SkinAfterContent'][] = 'AdEngine2Hooks::onSkinAfterContent'; $wgHooks['SkinAfterBottomScripts'][] = 'AdEngine2Hooks::onSkinAfterBottomScripts'; // i18n $wgExtensionMessagesFiles['AdEngine'] = __DIR__ . '/AdEngine.i18n.php'; $wgExtensionFunctions[] = function () { JSMessages::registerPackage('AdEngine', array('adengine-*')); }; // Register Resource Loader module for SevenOne Media files $wgResourceModules['wikia.ext.adengine.sevenonemedia'] = array('class' => 'ResourceLoaderAdEngineSevenOneMediaModule'); // Special page for importing ad test if (!empty($wgDevelEnvironment) && $wgDBname === 'adtest') { $wgAutoloadClasses['SpecialAdTestImport'] = __DIR__ . '/SpecialAdTestImport.class.php'; $wgSpecialPages['AdTestImport'] = 'SpecialAdTestImport'; }
<?php /** * LicensedVideoSwap * @author Garth Webb, Liz Lee, Saipetch Kongkatong */ $wgExtensionCredits['specialpage'][] = array('name' => 'LicensedVideoSwap', 'author' => array('Garth Webb', 'Liz Lee', 'Saipetch Kongkatong'), 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/LicensedVideoSwap', 'descriptionmsg' => 'licensedvideoswap-desc'); $dir = dirname(__FILE__) . '/'; //classes $wgAutoloadClasses['LicensedVideoSwapSpecialController'] = $dir . 'LicensedVideoSwapSpecialController.class.php'; $wgAutoloadClasses['LicensedVideoSwapHelper'] = $dir . 'LicensedVideoSwapHelper.class.php'; $wgAutoloadClasses['LicensedVideoSwapHooksHelper'] = $dir . 'LicensedVideoSwapHooksHelper.class.php'; // i18n mapping $wgExtensionMessagesFiles['LicensedVideoSwap'] = $dir . 'LicensedVideoSwap.i18n.php'; // Aliases $wgExtensionMessagesFiles['LicensedVideoSwapAliases'] = __DIR__ . '/LicensedVideoSwap.aliases.php'; // special pages $wgSpecialPages['LicensedVideoSwap'] = 'LicensedVideoSwapSpecialController'; $wgSpecialPageGroups['LicensedVideoSwap'] = 'media'; // permissions $wgGroupPermissions['*']['licensedvideoswap'] = false; $wgGroupPermissions['staff']['licensedvideoswap'] = true; $wgGroupPermissions['sysop']['licensedvideoswap'] = true; $wgGroupPermissions['helper']['licensedvideoswap'] = true; $wgGroupPermissions['vstf']['licensedvideoswap'] = true; // hooks $wgHooks['PageHeaderIndexExtraButtons'][] = 'LicensedVideoSwapHooksHelper::onPageHeaderIndexExtraButtons'; $wgHooks['OasisAddPageDeletedConfirmationMessage'][] = 'LicensedVideoSwapHooksHelper::onOasisAddPageDeletedConfirmationMessage'; // register messages package for JS JSMessages::registerPackage('LVS', array('lvs-confirm-keep-title', 'lvs-confirm-keep-message', 'lvs-confirm-undo-swap-title', 'lvs-confirm-undo-swap-message', 'lvs-confirm-undo-keep-title', 'lvs-confirm-undo-keep-message', 'lvs-button-yes', 'lvs-button-no'));
$wgAutoloadClasses['VideoPageToolAsset'] = $dir . 'model/VideoPageToolAsset.class.php'; $wgAutoloadClasses['VideoPageToolAssetFeatured'] = $dir . 'model/VideoPageToolAssetFeatured.class.php'; $wgAutoloadClasses['VideoPageToolAssetCategory'] = $dir . 'model/VideoPageToolAssetCategory.class.php'; $wgAutoloadClasses['VideoPageToolAssetFan'] = $dir . 'model/VideoPageToolAssetFan.class.php'; $wgAutoloadClasses['VideoPageToolHelper'] = $dir . 'VideoPageToolHelper.class.php'; $wgAutoloadClasses['VideoPageToolHooks'] = $dir . 'VideoPageToolHooks.class.php'; // VideoPageAdmin classes $wgAutoloadClasses['VideoPageAdminSpecialController'] = $dir . 'VideoPageAdminSpecialController.class.php'; // VideoHomePage classes $wgAutoloadClasses['VideoHomePageController'] = $dir . 'VideoHomePageController.class.php'; $wgAutoloadClasses['VideoHomePageArticle'] = $dir . 'model/VideoHomePageArticle.class.php'; $wgAutoloadClasses['VideoHomePagePage'] = $dir . 'model/VideoHomePagePage.class.php'; // i18n mapping $wgExtensionMessagesFiles['VideoPageTool'] = $dir . 'VideoPageTool.i18n.php'; // special pages $wgSpecialPages['VideoPageAdmin'] = 'VideoPageAdminSpecialController'; // hooks $wgHooks['ArticleFromTitle'][] = 'VideoPageToolHooks::onArticleFromTitle'; $wgHooks['ArticlePurge'][] = 'VideoPageToolHooks::onArticlePurge'; $wgHooks['CategorySelectSave'][] = 'VideoPageToolHooks::onCategorySelectSave'; $wgHooks['VideoIngestionComplete'][] = 'VideoPageToolHooks::onVideoIngestionComplete'; $wgHooks['FileDeleteComplete'][] = 'VideoPageToolHooks::onFileDeleteComplete'; // permissions $wgGroupPermissions['*']['videopagetool'] = false; $wgGroupPermissions['staff']['videopagetool'] = true; $wgGroupPermissions['sysop']['videopagetool'] = true; $wgGroupPermissions['helper']['videopagetool'] = true; $wgGroupPermissions['vstf']['videopagetool'] = true; // register messages package for JS JSMessages::registerPackage('VideoPageTool', array('htmlform-required', 'videopagetool-confirm-clear-title', 'videopagetool-confirm-clear-message', 'videopagetool-description-maxlength-error', 'videopagetool-video-title-default-text', 'videopagetool-image-title-default-text', 'videopagetool-formerror-videokey', 'videopagetool-formerror-altthumb', 'videopagetool-formerror-category-name'));
<?php /** * Edit Preview * * @author Rafał Leszczyński * @author Andrzej 'nAndy' Łukaszewski * @author Jacek 'mech' Woźniak */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['editpreview'][] = ['name' => 'Edit preview', 'descriptionmsg' => 'wikia-editor-preview-desc', 'authors' => ['Rafał Leszczyński', 'Andrzej "nAndy" Łukaszewski', 'Jacek "mech" Woźniak'], 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/EditPreview']; // messages $wgExtensionMessagesFiles['EditPreview'] = $dir . 'EditPreview.i18n.php'; // register messages package for JS JSMessages::registerPackage('EditPreview', ['back', 'preview', 'savearticle', 'wikia-editor-preview-current-width', 'wikia-editor-preview-min-width', 'wikia-editor-preview-max-width', 'wikia-editor-preview-mobile-width', 'wikia-editor-preview-type-tooltip']); JSMessages::registerPackage('EditPreviewInContLang', ['wikia-editor-preview-best-practices-button-link']);
<?php /** * In Wiki Game * * @author Andrzej 'nAndy' Łukaszewski * @author Marcin Maciejewski * @author Sebastian Marzjan * */ $wgExtensionCredits['other'][] = array('name' => 'InWikiGame', 'author' => 'Andrzej "nAndy" Łukaszewski, Marcin Maciejewski, Sebastian Marzjan', 'descriptionmsg' => 'inwikigame-desc', 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/InWikiGame'); $dir = dirname(__FILE__); // classes $wgAutoloadClasses['InWikiGameHelper'] = $dir . '/InWikiGameHelper.class.php'; $wgAutoloadClasses['InWikiGameParserTag'] = $dir . '/InWikiGameParserTag.class.php'; $wgAutoloadClasses['InWikiGameController'] = $dir . '/InWikiGameController.class.php'; $wgAutoloadClasses['InWikiGameRailController'] = $dir . '/InWikiGameRailController.class.php'; $wgAutoloadClasses['InWikiGameHooks'] = $dir . '/InWikiGameHooks.class.php'; // hooks $wgHooks['GetRailModuleList'][] = 'InWikiGameHelper::onGetRailModuleList'; $wgHooks['ParserFirstCallInit'][] = 'InWikiGameParserTag::onParserFirstCallInit'; $wgHooks['WikiaAssetsPackages'][] = 'InWikiGameHooks::onWikiaAssetsPackages'; // i18n mapping $wgExtensionMessagesFiles['InWikiGame'] = $dir . '/InWikiGame.i18n.php'; JSMessages::registerPackage('InWikiGame', array('inwikigame-*'));
<?php /** * Lightbox setup * * @author Hyun Lim, Liz Lee, Saipetch Kongkatong * */ $wgExtensionCredits['lightbox'][] = array('name' => 'Lightbox', 'author' => array('Hyun Lim', 'Liz Lee', 'Saipetch Kongkatong', 'Garth Webb', 'James Sutterfield'), 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/Lightbox', 'descriptionmsg' => 'lightbox-desc'); $dir = dirname(__FILE__) . '/'; //classes $wgAutoloadClasses['LightboxController'] = $dir . 'LightboxController.class.php'; $wgAutoloadClasses['LightboxHelper'] = $dir . 'LightboxHelper.class.php'; $wgAutoloadClasses['LightboxHooks'] = $dir . 'LightboxHooks.class.php'; // hooks $wgHooks['MakeGlobalVariablesScript'][] = 'LightboxHooks::onMakeGlobalVariablesScript'; // i18n mapping $wgExtensionMessagesFiles['Lightbox'] = $dir . 'Lightbox.i18n.php'; JSMessages::registerPackage('Lightbox', array('lightbox-carousel-more-items'));
$wgExtensionCredits['facebookclient'][] = array('name' => 'FacebookClient', 'author' => array("James Sutterfield <*****@*****.**>", "Liz Lee <*****@*****.**>", "Garth Webb <*****@*****.**>", "Armon Rabiyan <*****@*****.**>"), 'descriptionmsg' => 'fbconnect-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/FacebookClient'); $dir = dirname(__FILE__) . '/'; /** * classes */ $wgAutoloadClasses['FacebookClient'] = $dir . 'FacebookClient.class.php'; $wgAutoloadClasses['FacebookClientHelper'] = $dir . 'FacebookClientHelper.class.php'; $wgAutoloadClasses['FacebookClientLocale'] = $dir . 'FacebookClientLocale.class.php'; $wgAutoloadClasses['FacebookMapModel'] = $dir . 'FacebookMapModel.class.php'; $wgAutoloadClasses['FacebookClientFactory'] = $dir . 'FacebookClientFactory.php'; $wgAutoloadClasses['FacebookClientController'] = $dir . 'FacebookClientController.class.php'; $wgAutoloadClasses['FacebookClientXFBML'] = $dir . 'FacebookClientXFBML.php'; /** * hooks */ $wgAutoloadClasses['FacebookClientHooks'] = $dir . 'FacebookClientHooks.class.php'; $wgHooks['MakeGlobalVariablesScript'][] = 'FacebookClientHooks::MakeGlobalVariablesScript'; $wgHooks['GetHTMLAfterBody'][] = 'FacebookClientHooks::onGetHTMLAfterBody'; $wgHooks['GetPreferences'][] = 'FacebookClientHooks::GetPreferences'; $wgHooks['OasisSkinAssetGroups'][] = 'FacebookClientHooks::onSkinAssetGroups'; $wgHooks['MonobookSkinAssetGroups'][] = 'FacebookClientHooks::onSkinAssetGroups'; $wgHooks['ParserFirstCallInit'][] = 'FacebookClientHooks::setupParserHook'; $wgHooks['SkinTemplatePageBeforeUserMsg'][] = 'FacebookClientHooks::onSkinTemplatePageBeforeUserMsg'; $wgHooks['SkinAfterBottomScripts'][] = 'FacebookClientHooks::onSkinAfterBottomScripts'; $wgHooks['UserLogout'][] = 'FacebookClientHooks::onUserLogout'; /** * messages */ $wgExtensionMessagesFiles['FacebookClient'] = $dir . 'FacebookClient.i18n.php'; JSMessages::registerPackage('FacebookClient', ['fbconnect-preferences-connected', 'fbconnect-disconnect-info-existing', 'fbconnect-disconnect-info', 'fbconnect-error-fb-unavailable-title', 'fbconnect-error-fb-unavailable-text']);
$wgAutoloadClasses['InfoboxExtractor'] = 'includes/wikia/InfoboxExtractor.class.php'; /** * services */ /** * models */ /** * controllers */ $wgAutoloadClasses['VenusController'] = __DIR__ . '/VenusController.class.php'; /** * special pages */ /** * message files */ $wgExtensionMessagesFiles['Venus'] = __DIR__ . '/Venus.i18n.php'; JSMessages::registerPackage('VenusArticle', ['venus-article-*']); /** * hooks */ $wgHooks['MakeGlobalVariablesScript'][] = 'VenusHooks::onMakeGlobalVariablesScript'; $wgHooks['ParserAfterTidy'][] = 'VenusHooks::onParserAfterTidy'; $wgHooks['ParserSectionCreate'][] = 'VenusHooks::onParserSectionCreate'; $wgHooks['MakeHeadline'][] = 'VenusHooks::onMakeHeadline'; $wgHooks['UserLogoutComplete'][] = 'BannerNotificationsController::addLogOutConfirmation'; $wgHooks['BeforeSkinLoad'][] = 'VenusHooks::onBeforeSkinLoad'; //404 Pages // Resources Loader modules $wgResourceModules['ext.wikia.venus.article.infobox'] = ['scripts' => ['scripts/modules/infobox.module.js', 'scripts/Infobox.js'], 'messages' => ['venus-article-infobox-see-more'], 'localBasePath' => __DIR__, 'remoteExtPath' => 'wikia/Venus'];
$wgHooks['OasisSkinAssetGroups'][] = 'WikiaMapsHooks::onOasisSkinAssetGroups'; $wgHooks['SkinAfterBottomScripts'][] = 'WikiaMapsHooks::onSkinAfterBottomScripts'; $wgHooks['BeforePageDisplay'][] = 'WikiaMapsHooks::onBeforePageDisplay'; // mobile $wgHooks['WikiaMobileAssetsPackages'][] = 'WikiaMapsHooks::onWikiaMobileAssetsPackages'; /** * Register resource loader packega for parser tag */ $wgResourceModules['ext.wikia.WikiaMaps.ParserTag'] = ['skinStyles' => ['oasis' => ['css/WikiaMapsParserTag.scss']], 'skinScripts' => ['oasis' => ['js/WikiaMapsParserTag.js']], 'localBasePath' => __DIR__, 'remoteExtPath' => 'wikia/WikiaMaps']; // i18n mapping $wgExtensionMessagesFiles['WikiaMaps'] = $dir . 'WikiaMaps.i18n.php'; $wgExtensionMessagesFiles['WikiaMapsAliases'] = $dir . 'WikiaMaps.aliases.php'; JSMessages::registerPackage('WikiaMaps', ['wikia-interactive-maps-map-placeholder-error']); JSMessages::registerPackage('WikiaMapsCreateMap', ['wikia-interactive-maps-create-map-*']); JSMessages::registerPackage('WikiaMapsPoiCategories', ['wikia-interactive-maps-poi-categories-*']); JSMessages::registerPackage('WikiaMapsPoi', ['wikia-interactive-maps-edit-poi-*']); JSMessages::registerPackage('WikiaMapsDeleteMap', ['wikia-interactive-maps-delete-map-client-*']); JSMessages::registerPackage('WikiaMapsEmbedMapCode', ['wikia-interactive-maps-embed-map-code-*']); // Rights $wgAvailableRights[] = 'canremovemap'; // Permissions // canremove -- give it to users who can remove maps $wgGroupPermissions['*']['canremovemap'] = false; $wgGroupPermissions['sysop']['canremovemap'] = true; $wgGroupPermissions['staff']['canremovemap'] = true; $wgGroupPermissions['helper']['canremovemap'] = true; // Logs $wgLogTypes[] = 'maps'; $wgLogNames['maps'] = 'wikia-interactive-maps-log-name'; $wgLogHeaders['maps'] = 'wikia-interactive-maps-log-description'; $wgLogActionsHandlers['maps/*'] = 'LogFormatter';
<?php /** * EditHub * * @author Damian Jóźwiak * @author Sebastian Marzjan * @author Łukasz Konieczny * @author Bartosz Bentkowski * */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['specialpage'][] = array('name' => 'Edit Hub', 'descriptionmsg' => 'edithub-desc', 'authors' => array('Damian Jóźwiak', 'Sebastian Marzjan', 'Łukasz Konieczny', 'Bartosz Bentkowski'), 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/SpecialEditHub'); //classes $wgAutoloadClasses['EditHubController'] = $dir . 'EditHubController.class.php'; $wgAutoloadClasses['EditHubVideosController'] = $dir . 'EditHubVideosController.class.php'; // hooks $wgAutoloadClasses['EditHubHooks'] = $dir . 'hooks/EditHubHooks.class.php'; $wgHooks['MakeGlobalVariablesScript'][] = 'EditHubHooks::onMakeGlobalVariablesScript'; //special page $wgSpecialPages['EditHub'] = 'EditHubController'; $wgSpecialPageGroups['EditHub'] = 'wikia'; //message files $wgExtensionMessagesFiles['EditHub'] = $dir . 'EditHub.i18n.php'; JSMessages::registerPackage('EditHub', array('edit-hub-*', 'wikia-hubs-*')); $wgAvailableRights[] = 'edithub'; $wgGroupPermissions['*']['edithub'] = false; $wgGroupPermissions['staff']['edithub'] = true; $wgGroupPermissions['helper']['edithub'] = true;
<?php /** * Adds support for MW messages in JS code * * Provides a way to register and use packages of messages in JavaScript via $.msg() function * * @see https://internal.wikia-inc.com/wiki/JSMessages * @author macbre */ $wgExtensionCredits['other'][] = array('name' => 'JSMessages', 'version' => '1.1', 'author' => 'Maciej Brencz', 'descriptionmsg' => 'jsmessages-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/JSMessages'); $dir = dirname(__FILE__); //i18n $wgExtensionMessagesFiles['JSMessages'] = $dir . '/JSMessages.i18n.php'; // classes $wgAutoloadClasses['JSMessages'] = $dir . '/JSMessages.class.php'; $wgAutoloadClasses['JSMessagesHelper'] = $dir . '/JSMessagesHelper.class.php'; $wgAutoloadClasses['JSMessagesController'] = $dir . '/JSMessagesController.class.php'; // hooks $wgHooks['WikiaSkinTopScripts'][] = 'JSMessages::onWikiaSkinTopScripts'; $wgHooks['ResourceLoaderGetConfigVars'][] = 'JSMessages::onResourceLoaderGetConfigVars'; $wgHooks['MessageCacheReplace'][] = 'JSMessagesHelper::onMessageCacheReplace'; $wgExtensionFunctions[] = function () { // This has to be wrapped in a function so it isn't run before we include GlobalSettings.php JSMessages::registerPackage("ConfirmModal", array('ok', 'cancel')); JSMessages::enqueuePackage("ConfirmModal", JSMessages::EXTERNAL); // We need this to ensure the messages are loaded on every page };
$wgGroupPermissions['*']['gameguidespreview'] = false; $wgGroupPermissions['staff']['gameguidespreview'] = true; $wgGroupPermissions['sysop']['gameguidespreview'] = true; //Special Page for Content Managment Tool //Replaced by Special:CuratedContent //@author tor //@date 2015-03-27 //$wgAutoloadClasses[ 'GameGuidesSpecialContentController'] = "{$dir}/GameGuidesSpecialContentController.class.php" ; //$wgSpecialPages[ 'GameGuidesContent' ] = 'GameGuidesSpecialContentController'; $wgGroupPermissions['*']['gameguidescontent'] = false; $wgGroupPermissions['staff']['gameguidescontent'] = true; $wgGroupPermissions['helper']['gameguidescontent'] = true; if ($wgGameGuidesContentForAdmins) { $wgGroupPermissions['sysop']['gameguidescontent'] = true; } $wgGroupPermissions['*']['gameguidescontent-switchforadmins'] = false; $wgGroupPermissions['staff']['gameguidescontent-switchforadmins'] = true; JSMessages::registerPackage('GameGuidesContentMsg', ['wikiagameguides-content-category', 'wikiagameguides-content-tag', 'wikiagameguides-content-name', 'wikiagameguides-content-duplicate-entry', 'wikiagameguides-content-category-error', 'wikiagameguides-content-required-entry', 'wikiagameguides-content-empty-tag']); //Special Page for Sponsored Videos Managment Tool $wgAutoloadClasses['GameGuidesSpecialSponsoredController'] = "{$dir}/GameGuidesSpecialSponsoredController.class.php"; $wgSpecialPages['GameGuidesSponsored'] = 'GameGuidesSpecialSponsoredController'; $wgGroupPermissions['*']['gameguidessponsored'] = false; $wgGroupPermissions['staff']['gameguidessponsored'] = true; JSMessages::registerPackage('GameGuidesSponsoredMsg', ['wikiagameguides-sponsored-video', 'wikiagameguides-sponsored-language', 'wikiagameguides-sponsored-video-title', 'wikiagameguides-sponsored-duplicate-entry', 'wikiagameguides-sponsored-required-entry', 'wikiagameguides-sponsored-empty-language', 'wikiagameguides-sponsored-orphaned-video', 'wikiagameguides-sponsored-delete-videos-are-you-sure', 'wikiagameguides-sponsored-video-does-not-exist', 'wikiagameguides-sponsored-video-is-not-ooyala']); //hooks $wgHooks['GameGuidesContentSave'][] = 'GameGuidesController::onGameGuidesContentSave'; $wgHooks['GameGuidesSponsoredVideosSave'][] = 'GameGuidesController::onGameGuidesSponsoredSave'; $wgHooks['TitleGetSquidURLs'][] = 'GameGuidesController::onTitleGetSquidURLs'; //minimal package of messages in Game Gudes JSMessages::registerPackage('GameGuides', array('wikiamobile-hide-section', 'wikiamobile-image-not-loaded', 'wikiamobile-video-not-friendly', 'wikiamobile-video-not-friendly-header'));
* * @author Hyun Lim, Owen Davis * */ $dir = dirname(__FILE__) . '/'; $app = F::app(); $wgExtensionCredits['specialpage'][] = array('name' => 'WikiFeatures', 'author' => array('Hyun Lim', 'Owen Davis'), 'descriptionmsg' => 'wikifeatures-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/AuthImage'); //classes $wgAutoloadClasses['WikiFeaturesSpecialController'] = $dir . 'WikiFeaturesSpecialController.class.php'; $app->getDispatcher()->addRouting('WikiFeaturesSpecialController', array('index' => array("skin" => array("monobook", "wikiamobile"), "method" => "notOasis"))); $wgAutoloadClasses['WikiFeaturesHelper'] = $dir . 'WikiFeaturesHelper.class.php'; $wgAutoloadClasses['WikiaLabsSpecialController'] = $dir . 'WikiaLabsSpecialController.class.php'; // i18n mapping $wgExtensionMessagesFiles['WikiFeatures'] = $dir . 'WikiFeatures.i18n.php'; $wgExtensionMessagesFiles['WikiFeaturesAliases'] = $dir . 'WikiFeatures.alias.php'; // special pages $wgSpecialPages['WikiFeatures'] = 'WikiFeaturesSpecialController'; $wgSpecialPages['WikiaLabs'] = 'WikiaLabsSpecialController'; $wgAvailableRights[] = 'wikifeatures'; $wgGroupPermissions['*']['wikifeatures'] = false; $wgGroupPermissions['staff']['wikifeatures'] = true; $wgGroupPermissions['sysop']['wikifeatures'] = true; $wgGroupPermissions['bureaucrat']['wikifeatures'] = true; $wgGroupPermissions['helper']['wikifeatures'] = true; $wgGroupPermissions['*']['wikifeaturesview'] = false; $wgGroupPermissions['user']['wikifeaturesview'] = true; $wgLogTypes[] = 'wikifeatures'; $wgLogNames['wikifeatures'] = 'wikifeatures-log-name'; $wgLogHeaders['wikifeatures'] = 'wikifeatures-log-header'; JSMessages::registerPackage('WikiFeatures', array('wikifeatures-deactivate-heading', 'wikifeatures-deactivate-description', 'wikifeatures-deactivate-notification', 'wikifeatures-deactivate-confirm-button', 'wikifeatures-deactivate-cancel-button'));
<?php /** * Show per-wiki, customized welcome bar inspired by StackOverflow * * MW message "welcome-bar-message" allows you to customize the bar * * @author macbre */ $wgExtensionCredits['other'][] = array('path' => __FILE__, 'name' => 'Welcome Bar', 'version' => '0.1', 'author' => 'Maciej Brencz', 'descriptionmsg' => 'welcome-bar-desc'); $dir = dirname(__FILE__); $app = F::app(); // classes $wgAutoloadClasses['WelcomeBarHooks'] = $dir . '/WelcomeBarHooks.class.php'; // hooks $app->registerHook('SkinAfterBottomScripts', 'WelcomeBarHooks', 'onSkinAfterBottomScripts'); // i18n $app->registerExtensionMessageFile('WelcomeBar', $dir . '/WelcomeBar.i18n.php'); JSMessages::registerPackage('WelcomeBar', array('welcome-bar-*'));
* @author Andrzej 'nAndy' Łukaszewski * @author Marcin Maciejewski * @author Sebastian Marzjan * */ $wgExtensionCredits['other'][] = array('name' => 'SpecialPromote', 'author' => 'Andrzej "nAndy" Łukaszewski, Marcin Maciejewski, Sebastian Marzjan', 'descriptionmsg' => 'promote-desc', 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/SpecialPromote'); $dir = dirname(__FILE__) . '/'; $promoteImageReviewExtDir = dirname(dirname(__FILE__)) . '/ImageReview/modules/PromoteImage/'; // classes $wgAutoloadClasses['SpecialPromoteController'] = $dir . 'SpecialPromoteController.class.php'; $wgAutoloadClasses['SpecialPromoteHelper'] = $dir . 'SpecialPromoteHelper.class.php'; $wgAutoloadClasses['SpecialPromoteHooks'] = $dir . 'SpecialPromoteHooks.class.php'; $wgAutoloadClasses['UploadVisualizationImageFromFile'] = $dir . 'UploadVisualizationImageFromFile.class.php'; // needed task $wgAutoloadClasses['PromoteImageReviewTask'] = $promoteImageReviewExtDir . 'PromoteImageReviewTask.php'; // hooks $wgHooks['UploadVerification'][] = 'UploadVisualizationImageFromFile::UploadVerification'; $wgHooks['CityVisualization::wikiDataInserted'][] = 'CityVisualization::onWikiDataUpdated'; $wgHooks['FileDeleteComplete'][] = 'SpecialPromoteHooks::onFileDeleteComplete'; // i18n mapping $wgExtensionMessagesFiles['SpecialPromote'] = $dir . 'SpecialPromote.i18n.php'; $wgExtensionMessagesFiles['SpecialPromoteAliases'] = $dir . 'SpecialPromote.alias.php'; JSMessages::registerPackage('SpecialPromote', array('promote-*')); // special pages $wgSpecialPages['Promote'] = 'SpecialPromoteController'; $wgAvailableRights[] = 'restricted_promote'; $wgGroupPermissions['*']['restricted_promote'] = false; $wgGroupPermissions['staff']['restricted_promote'] = true; $wgGroupPermissions['helper']['restricted_promote'] = true; $wgGroupPermissions['sysop']['restricted_promote'] = false; $wgGroupPermissions['bureaucrat']['restricted_promote'] = false;
* @author Łukasz Konieczny */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['specialpage'][] = array('name' => 'CSS Editor', 'descriptionmsg' => 'specialcss-desc', 'authors' => array('Andrzej "nAndy" Łukaszewski', 'Łukasz Konieczny'), 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/SpecialCss'); // models $wgAutoloadClasses['SpecialCssModel'] = $dir . 'SpecialCssModel.class.php'; $wgAutoloadClasses['SpecialCssHooks'] = $dir . 'SpecialCssHooks.class.php'; $wgAutoloadClasses['SpecialCssController'] = $dir . 'SpecialCssController.class.php'; // additional routing F::app()->getDispatcher()->addRouting('SpecialCssController', ['index' => ["notSkin" => SpecialCssModel::$supportedSkins, "method" => "unsupportedSkinIndex"]]); /** * @global Array $wgHooks The list of hooks. * * @see http://www.mediawiki.org/wiki/Manual:$wgHooks * @see http://www.mediawiki.org/wiki/Manual:Hooks/AlternateEdit * @see http://www.mediawiki.org/wiki/Manual:Hooks/ArticleSaveComplete * @see http://www.mediawiki.org/wiki/Manual:Hooks/ArticleDelete * @see http://www.mediawiki.org/wiki/Manual:Hooks/ArticleUndelete */ $wgHooks['AlternateEdit'][] = 'SpecialCssHooks::onAlternateEdit'; $wgHooks['ArticleSaveComplete'][] = 'SpecialCssHooks::onArticleSaveComplete'; $wgHooks['ArticleDelete'][] = 'SpecialCssHooks::onArticleDelete'; $wgHooks['ArticleUndelete'][] = 'SpecialCssHooks::onArticleUndelete'; // special page $wgSpecialPages['CSS'] = 'SpecialCssController'; $wgSpecialPageGroups['CSS'] = 'wikia'; // message files $wgExtensionMessagesFiles['SpecialCss'] = $dir . 'SpecialCss.i18n.php'; JSMessages::registerPackage('SpecialCss', array('special-css-*')); //mapping community central language to it's database name $wgCssUpdatesLangMap = array('en' => 'wikia', 'pl' => 'plwikia', 'de' => 'de', 'fr' => 'frfr', 'es' => 'es', 'ru' => 'ruwikia', 'it' => 'it');
<?php /** * Special:Styleguide * extension to present a library of reusable components with usage examples * * @author Rafał Leszczyński * @author Sebastian Marzjan * */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['specialpage'][] = ['name' => 'Special:Styleguide', 'description' => 'Extension to present a library of reusable components with usage examples', 'descriptionmsg' => 'styleguide-descriptionmsg', 'authors' => ['Sebastian Marzjan', 'Rafał Leszczyński', "Andrzej 'nAndy' Łukaszewski", "Jacek 'mech' Woźniak"], 'version' => 1.0, 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/SpecialStyleguide']; // classes $wgAutoloadClasses['SpecialStyleguideController'] = $dir . 'SpecialStyleguideController.class.php'; $wgAutoloadClasses['SpecialStyleguideDataModel'] = $dir . 'models/SpecialStyleguideDataModel.class.php'; $wgAutoloadClasses['StyleguideComponents'] = $dir . 'helpers/StyleguideComponents.class.php'; // special page $wgSpecialPages['Styleguide'] = 'SpecialStyleguideController'; $wgSpecialPageGroups['Styleguide'] = 'wikia'; // message files $wgExtensionMessagesFiles['SpecialStyleguide'] = $dir . 'SpecialStyleguide.i18n.php'; JSMessages::registerPackage('SpecialStyleguide', ['styleguide-show-parameters', 'styleguide-hide-parameters', 'styleguide-example-modal-*']); $wgHooks['BeforeExtensionMessagesRecache'][] = 'StyleguideComponents::onBeforeExtensionMessagesRecache';
<?php /** * CategorySelect * * A CategorySelect extension for MediaWiki * Provides an interface for managing categories in article without editing whole article * * @author Maciej Błaszkowski (Marooned) <*****@*****.**> * @author Kyle Florence <*****@*****.**> */ $wgExtensionCredits['other'][] = array('name' => 'CategorySelect', 'author' => array('[http://www.wikia.com/wiki/User:Marooned Maciej Błaszkowski (Marooned)]', 'Kyle Florence'), 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/CategorySelect', 'descriptionmsg' => 'categoryselect-desc'); $dir = dirname(__FILE__) . '/'; // Classes $wgAutoloadClasses['CategorySelectController'] = $dir . 'CategorySelectController.class.php'; $wgAutoloadClasses['CategorySelectHelper'] = $dir . 'CategorySelectHelper.class.php'; $wgAutoloadClasses['CategorySelectHooksHelper'] = $dir . 'CategorySelectHooksHelper.class.php'; // Hooks $wgHooks['GetPreferences'][] = 'CategorySelectHooksHelper::onGetPreferences'; $wgHooks['MediaWikiPerformAction'][] = 'CategorySelectHooksHelper::onMediaWikiPerformAction'; // Messages $wgExtensionMessagesFiles['CategorySelect'] = $dir . 'CategorySelect.i18n.php'; JSMessages::registerPackage('CategorySelect', array('categoryselect-button-save', 'categoryselect-category-add', 'categoryselect-category-edit', 'categoryselect-category-remove', 'categoryselect-error-category-name-length', 'categoryselect-error-duplicate-category-name', 'categoryselect-error-empty-category-name', 'categoryselect-modal-category-name', 'categoryselect-modal-category-sortkey', 'categoryselect-tooltip-add'));
<?php /** * AdminDashboard * * @author Hyun Lim * */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['specialpage'][] = array('name' => 'Admin Dashboard', 'author' => 'Wikia', 'descriptionmsg' => 'admindashboard-desc', 'url' => 'https://github.com/Wikia/app/tree/dev/extensions/wikia/AdminDashboard'); //classes $wgAutoloadClasses['AdminDashboardSpecialPageController'] = $dir . 'AdminDashboardSpecialPageController.class.php'; $wgAutoloadClasses['AdminDashboardController'] = $dir . 'AdminDashboardController.class.php'; $wgAutoloadClasses['AdminDashboardLogic'] = $dir . 'AdminDashboardLogic.class.php'; $wgAutoloadClasses['QuickStatsController'] = $dir . 'QuickStatsController.class.php'; $wgHooks['BeforeToolbarMenu'][] = 'AdminDashboardLogic::onBeforeToolbarMenu'; // i18n mapping $wgExtensionMessagesFiles['AdminDashboard'] = $dir . 'AdminDashboard.i18n.php'; $wgExtensionMessagesFiles['QuickStats'] = $dir . 'QuickStats.i18n.php'; $wgExtensionMessagesFiles['AdminDashboardAliases'] = $dir . 'AdminDashboard.alias.php'; // special pages $wgSpecialPages['AdminDashboard'] = 'AdminDashboardSpecialPageController'; $wgAvailableRights[] = 'admindashboard'; $wgGroupPermissions['*']['admindashboard'] = false; $wgGroupPermissions['staff']['admindashboard'] = true; $wgGroupPermissions['sysop']['admindashboard'] = true; $wgGroupPermissions['bureaucrat']['admindashboard'] = true; $wgGroupPermissions['helper']['admindashboard'] = true; // register messages package for JS (BugId:41451) JSMessages::registerPackage('AdminDashboard', array('admindashboard-loading'));
$wgAutoloadClasses['UserProfilePageHooks'] = $dir . '/UserProfilePageHooks.class.php'; $wgHooks['SkinTemplateOutputPageBeforeExec'][] = 'UserProfilePageHooks::onSkinTemplateOutputPageBeforeExec'; $wgHooks['BeforeDisplayNoArticleText'][] = 'UserProfilePageHooks::onBeforeDisplayNoArticleText'; $wgHooks['SkinSubPageSubtitleAfterTitle'][] = 'UserProfilePageHooks::onSkinSubPageSubtitleAfterTitle'; $wgHooks['ArticleSaveComplete'][] = 'UserProfilePageHooks::onArticleSaveComplete'; $wgHooks['WikiaMobileAssetsPackages'][] = 'UserProfilePageHooks::onWikiaMobileAssetsPackages'; $wgHooks['WikiFactoryChanged'][] = 'UserProfilePageHooks::onWikiFactoryChanged'; $wgHooks['WikiFactoryVariableRemoved'][] = 'UserProfilePageHooks::onWikiFactoryVariableRemoved'; $wgHooks['GetRailModuleList'][] = 'UserProfilePageRailHelper::onGetRailModuleList'; $wgHooks['ArticleSaveComplete'][] = 'Masthead::userMastheadInvalidateCache'; /** * messages */ $wgExtensionMessagesFiles['UserProfilePageV3'] = $dir . '/UserProfilePage.i18n.php'; //register messages package for JS JSMessages::registerPackage('UserProfilePageV3', array('userprofilepage-edit-modal-header', 'user-identity-box-avatar-cancel', 'user-identity-box-avatar-save', 'userprofilepage-closing-popup-header', 'userprofilepage-closing-popup-save-and-quit', 'userprofilepage-closing-popup-discard-and-quit', 'userprofilepage-closing-popup-cancel', 'userprofilepage-edit-modal-error')); /** * extension related configuration */ $UPPNamespaces = array(); $UPPNamespaces[] = NS_USER; $UPPNamespaces[] = NS_USER_TALK; if (defined('NS_USER_WALL')) { $UPPNamespaces[] = NS_USER_WALL; } if (defined('NS_BLOG_ARTICLE')) { $UPPNamespaces[] = NS_BLOG_ARTICLE; } $wgLogTypes[] = AVATAR_LOG_NAME; $wgLogHeaders[AVATAR_LOG_NAME] = 'blog-avatar-alt'; $wgLogNames[AVATAR_LOG_NAME] = "useravatar-log";
<?php /** * Venus skin Test * * @author Consumer Team */ $dir = dirname(__FILE__) . '/'; $wgExtensionCredits['specialpage'][] = array('name' => 'Venus skin test', 'description' => 'Test page for Venus skin', 'authors' => [], 'version' => 1.0); // models $wgAutoloadClasses['VenusTestController'] = $dir . 'VenusTestController.class.php'; // special page $wgSpecialPages['VenusTest'] = 'VenusTestController'; $wgSpecialPageGroups['VenusTest'] = 'wikia'; // message files $wgExtensionMessagesFiles['VenusTest'] = $dir . 'VenusTest.i18n.php'; JSMessages::registerPackage('VenusTest', array('special-venustest-*')); // hooks $wgHooks['RequestContextCreateSkin'][] = 'VenusTestController::onGetSkin';