[ Index ]

PHP Cross Reference of MediaWiki-1.24.0

title

Body

[close]

/extensions/TitleBlacklist/ -> TitleBlacklist.php (source)

   1  <?php
   2  if ( !defined( 'MEDIAWIKI' ) ) {
   3      exit( 1 );
   4  }
   5  
   6  // @{
   7  /**
   8   * @file
   9   * @ingroup Extensions
  10   */
  11  
  12  $wgExtensionCredits['antispam'][] = array(
  13      'path'           => __FILE__,
  14      'name'           => 'Title Blacklist',
  15      'author'         => array( 'Victor Vasiliev', 'Fran Rogers' ),
  16      'version'        => '1.5.0',
  17      'url'            => 'https://www.mediawiki.org/wiki/Extension:Title_Blacklist',
  18      'descriptionmsg' => 'titleblacklist-desc',
  19  );
  20  
  21  $dir = __DIR__;
  22  $wgMessagesDirs['TitleBlacklist'] = __DIR__ . '/i18n';
  23  $wgExtensionMessagesFiles['TitleBlacklist'] = $dir . '/TitleBlacklist.i18n.php';
  24  $wgAutoloadClasses['TitleBlacklist'] = $dir . '/TitleBlacklist.list.php';
  25  $wgAutoloadClasses['TitleBlacklistHooks'] = $dir . '/TitleBlacklist.hooks.php';
  26  $wgAutoloadClasses['Scribunto_LuaTitleBlacklistLibrary'] = $dir . '/TitleBlacklist.library.php';
  27  
  28  /** @defgroup Title blacklist source types
  29   *  @{
  30   */
  31  define( 'TBLSRC_MSG', 0 ); ///< For internal usage
  32  define( 'TBLSRC_LOCALPAGE', 1 ); ///< Local wiki page
  33  define( 'TBLSRC_URL', 2 ); ///< Load blacklist from URL
  34  define( 'TBLSRC_FILE', 3 ); ///< Load from file
  35  /** @} */
  36  
  37  /**
  38   * Array of title blacklist sources.
  39   *
  40   * Should be in array( name => source description ) format.
  41   * See extension documentation for details of source description.
  42   */
  43  $wgTitleBlacklistSources = array();
  44  
  45  /**
  46   * Sets the sources which may work as a username filter.
  47   *
  48   * '*' is for all; false disables all.
  49   *
  50   * If you want to limit it to particular sources, use
  51   * array( source name 1, source name 2 ).
  52   * This may be useful when you have shared account creation system
  53   * in order to avoid blacklist fragmentation.
  54   */
  55  $wgTitleBlacklistUsernameSources = '*';
  56  
  57  /**
  58   * Log blacklist hits to Special:Log
  59   */
  60  $wgTitleBlacklistLogHits = false;
  61  
  62  $wgTitleBlacklistCaching = array(
  63      'warningchance' => 100,
  64      'expiry' => 900,
  65      'warningexpiry' => 600,
  66  );
  67  
  68  $dir = dirname( __FILE__ );
  69  
  70  // Register the API method
  71  $wgAutoloadClasses['ApiQueryTitleBlacklist'] = "$dir/api/ApiQueryTitleBlacklist.php";
  72  $wgAPIModules['titleblacklist'] = 'ApiQueryTitleBlacklist';
  73  
  74  $wgAvailableRights[] = 'tboverride'; // Implies tboverride-account
  75  $wgAvailableRights[] = 'tboverride-account'; // For account creation
  76  $wgGroupPermissions['sysop']['tboverride'] = true;
  77  
  78  $wgHooks['getUserPermissionsErrorsExpensive'][] = 'TitleBlacklistHooks::userCan';
  79  $wgHooks['TitleGetEditNotices'][] = 'TitleBlacklistHooks::displayBlacklistOverrideNotice';
  80  $wgHooks['AbortMove'][] = 'TitleBlacklistHooks::abortMove';
  81  $wgHooks['AbortNewAccount'][] = 'TitleBlacklistHooks::abortNewAccount';
  82  $wgHooks['AbortAutoAccount'][] = 'TitleBlacklistHooks::abortNewAccount';
  83  $wgHooks['EditFilter'][] = 'TitleBlacklistHooks::validateBlacklist';
  84  $wgHooks['ArticleSaveComplete'][] = 'TitleBlacklistHooks::clearBlacklist';
  85  $wgHooks['UserCreateForm'][] = 'TitleBlacklistHooks::addOverrideCheckbox';
  86  $wgHooks['UnitTestsList'][] = function( &$files ) {
  87      $files += glob( __DIR__ . '/tests/*Test.php' );
  88      return true;
  89  };
  90  $wgHooks['ScribuntoExternalLibraries'][] = function( $engine, array &$extraLibraries ) {
  91      if( $engine == 'lua' ) {
  92          $extraLibraries['mw.ext.TitleBlacklist'] = 'Scribunto_LuaTitleBlacklistLibrary';
  93      }
  94      return true;
  95  };
  96  
  97  $wgLogTypes[] = 'titleblacklist';
  98  $wgLogActionsHandlers['titleblacklist/*'] = 'LogFormatter';
  99  $wgLogRestrictions['titleblacklist'] = 'titleblacklistlog';
 100  $wgGroupPermissions['sysop']['titleblacklistlog'] = true;
 101  $wgAvailableRights[] = 'titleblacklistlog';
 102  
 103  $wgResourceModules['mediawiki.api.titleblacklist'] = array(
 104      'scripts' => 'mediawiki.api.titleblacklist.js',
 105      'localBasePath' => $dir . '/modules',
 106      'remoteExtPath' => 'TitleBlacklist/modules',
 107      'dependencies' => array( 'mediawiki.api' ),
 108  );
 109  // @}


Generated: Fri Nov 28 14:03:12 2014 Cross-referenced by PHPXref 0.7.1