In response to a report from Domas that we are seeing HTMLCacheUpdate::invalidate...
[lhc/web/wiklou.git] / includes / DefaultSettings.php
index c51b038..46704e9 100644 (file)
@@ -33,7 +33,7 @@ if ( !defined( 'MW_PHP4' ) ) {
 }
 
 /** MediaWiki version number */
-$wgVersion                     = '1.16alpha';
+$wgVersion = '1.16alpha';
 
 /** Name of the site. It must be changed in LocalSettings.php */
 $wgSitename         = 'MediaWiki';
@@ -156,7 +156,7 @@ $wgUploadPath       = false; ///< defaults to "{$wgScriptPath}/images"
 $wgUploadDirectory     = false; ///< defaults to "{$IP}/images"
 $wgHashedUploadDirectory       = true;
 $wgLogo                                = false; ///< defaults to "{$wgStylePath}/common/images/wiki.png"
-$wgFavicon                     = '/favicon.ico';
+$wgFavicon                     = false; ///< will be treated as '/favicon.ico' anyway by user agents
 $wgAppleTouchIcon   = false; ///< This one'll actually default to off. For iPhone and iPod Touch web app bookmarks
 $wgMathPath         = false; ///< defaults to "{$wgUploadPath}/math"
 $wgMathDirectory    = false; ///< defaults to "{$wgUploadDirectory}/math"
@@ -204,7 +204,7 @@ $wgFileStore['deleted']['hash'] = 3;         ///< 3-level subdirectory split
  *
  *    name                             A unique name for the repository.
  *
- * For all core repos:
+ * For most core repos:
  *    url               Base public URL
  *    hashLevels        The number of directory levels for hash-based division of files
  *    thumbScriptUrl    The URL for thumb.php (optional, not recommended)
@@ -220,6 +220,11 @@ $wgFileStore['deleted']['hash'] = 3;         ///< 3-level subdirectory split
  *                      placeholders. Default for LocalRepo is 'simple'.
  *    fileMode          This allows wikis to set the file mode when uploading/moving files. Default
  *                      is 0644.
+ *    directory         The local filesystem directory where public files are stored. Not used for
+ *                      some remote repos.
+ *    thumbDir          The base thumbnail directory. Defaults to <directory>/thumb.
+ *    thumbUrl          The base thumbnail URL. Defaults to <url>/thumb.
+ *
  *
  * These settings describe a foreign MediaWiki installation. They are optional, and will be ignored
  * for local repositories:
@@ -254,7 +259,7 @@ $wgForeignFileRepos = array();
  *
  * Problematic punctuation:
  *  []{}|#    Are needed for link syntax, never enable these
- *  <>        Causes problems with HTML escaping, don't use
+ *  <         Causes problems with HTML escaping, don't use
  *  %         Enabled by default, minor problems with path to query rewrite rules, see below
  *  +         Enabled by default, but doesn't work with path to query rewrite rules, corrupted by apache
  *  ?         Enabled by default, but doesn't work with path to PATH_INFO rewrites
@@ -274,7 +279,7 @@ $wgForeignFileRepos = array();
  * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but
  * this breaks interlanguage links
  */
-$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+";
+$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+>";
 
 
 /**
@@ -888,20 +893,37 @@ $wgLegacyEncoding   = false;
  */
 $wgLegacySchemaConversion = false;
 
-$wgMimeType                    = 'text/html';
-$wgJsMimeType                  = 'text/javascript';
-$wgDocType                     = '-//W3C//DTD XHTML 1.0 Transitional//EN';
-$wgDTD                         = 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd';
-$wgXhtmlDefaultNamespace       = 'http://www.w3.org/1999/xhtml';
-
- /**
 * Should we output an HTML 5 doctype?  This mode is still experimental, but
 * all indications are that it should be usable, so it's enabled by default.
 * If all goes well, it will be removed and become always true before the 1.16
 * release.
 */
- $wgHtml5 = true;
+$wgMimeType = 'text/html';
+$wgJsMimeType = 'text/javascript';
+$wgDocType = '-//W3C//DTD XHTML 1.0 Transitional//EN';
+$wgDTD = 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd';
+$wgXhtmlDefaultNamespace = 'http://www.w3.org/1999/xhtml';
+
+/**
+ * Should we output an HTML 5 doctype?  This mode is still experimental, but
+ * all indications are that it should be usable, so it's enabled by default.
+ * If all goes well, it will be removed and become always true before the 1.16
+ * release.
+ */
+$wgHtml5 = true;
 
+/**
+ * Should we try to make our HTML output well-formed XML?  If set to false,
+ * output will be a few bytes shorter, and the HTML will arguably be more
+ * readable.  If set to true, life will be much easier for the authors of
+ * screen-scraping bots, and the HTML will arguably be more readable.
+ *
+ * Setting this to false may omit quotation marks on some attributes, omit
+ * slashes from some self-closing tags, omit some ending tags, etc., where
+ * permitted by HTML 5.  Setting it to true will not guarantee that all pages
+ * will be well-formed, although non-well-formed pages should be rare and it's
+ * a bug if you find one.  Conversely, setting it to false doesn't mean that
+ * all XML-y constructs will be omitted, just that they might be.
+ *
+ * Because of compatibility with screen-scraping bots, and because it's
+ * controversial, this is currently left to true by default.
+ */
+$wgWellFormedXml = true;
 
 /**
  * Permit other namespaces in addition to the w3.org default.
@@ -911,7 +933,7 @@ $wgXhtmlDefaultNamespace    = 'http://www.w3.org/1999/xhtml';
  * Normally we wouldn't have to define this in the root <html>
  * element, but IE needs it there in some circumstances.
  */
-$wgXhtmlNamespaces             = array();
+$wgXhtmlNamespaces = array();
 
 /** Enable to allow rewriting dates in page text.
  * DOES NOT FORMAT CORRECTLY FOR MOST LANGUAGES */
@@ -1130,6 +1152,12 @@ $wgShowDebug            = false;
  */
 $wgSpecialVersionShowHooks =  false;
 
+/**
+ * By default, only show the MediaWiki, PHP, Database versions.
+ * Setting this to true will try and determine versions of all helper programs.
+ */
+$wgSpecialVersionExtended = false;
+
 /**
  * Whether to show "we're sorry, but there has been a database error" pages.
  * Displaying errors aids in debugging, but may display information useful
@@ -1312,7 +1340,8 @@ $wgGroupPermissions['sysop']['bigdelete']        = true; // can be separately co
 $wgGroupPermissions['sysop']['deletedhistory']   = true; // can view deleted history entries, but not see or restore the text
 $wgGroupPermissions['sysop']['undelete']         = true;
 $wgGroupPermissions['sysop']['editinterface']    = true;
-$wgGroupPermissions['sysop']['editusercssjs']    = true;
+$wgGroupPermissions['sysop']['editusercss']      = true;
+$wgGroupPermissions['sysop']['edituserjs']       = true;
 $wgGroupPermissions['sysop']['import']           = true;
 $wgGroupPermissions['sysop']['importupload']     = true;
 $wgGroupPermissions['sysop']['move']             = true;
@@ -1336,6 +1365,7 @@ $wgGroupPermissions['sysop']['markbotedits']     = true;
 $wgGroupPermissions['sysop']['apihighlimits']    = true;
 $wgGroupPermissions['sysop']['browsearchive']    = true;
 $wgGroupPermissions['sysop']['noratelimit']      = true;
+$wgGroupPermissions['sysop']['versiondetail']    = true;
 $wgGroupPermissions['sysop']['movefile']         = true;
 #$wgGroupPermissions['sysop']['mergehistory']     = true;
 
@@ -1509,14 +1539,6 @@ $wgAvailableRights = array();
  */
 $wgDeleteRevisionsLimit = 0;
 
-/**
- * Used to figure out if a user is "active" or not. User::isActiveEditor()
- * sees if a user has made at least $wgActiveUserEditCount number of edits
- * within the last $wgActiveUserDays days.
- */
-$wgActiveUserEditCount = 30;
-$wgActiveUserDays = 30;
-
 # Proxy scanner settings
 #
 
@@ -1566,7 +1588,7 @@ $wgCacheEpoch = '20030516000000';
  * to ensure that client-side caches do not keep obsolete copies of global
  * styles.
  */
-$wgStyleVersion = '232';
+$wgStyleVersion = '236';
 
 
 # Server-side caching:
@@ -1678,6 +1700,9 @@ $wgUseSquid = false;
 /** If you run Squid3 with ESI support, enable this (default:false): */
 $wgUseESI = false;
 
+/** Send X-Vary-Options header for better caching (requires patched Squid) */
+$wgUseXVO = false;
+
 /** Internal server name as known to Squid, if different */
 # $wgInternalServer = 'http://yourinternal.tld:8000';
 $wgInternalServer = $wgServer;
@@ -1896,6 +1921,17 @@ $wgAdvancedSearchHighlighting = false;
 $wgSearchHighlightBoundaries = version_compare("5.1", PHP_VERSION, "<")? '[\p{Z}\p{P}\p{C}]'
        : '[ ,.;:!?~!@#$%\^&*\(\)+=\-\\|\[\]"\'<>\n\r\/{}]'; // PHP 5.0 workaround
 
+/**
+ * Set to true to have the default MySQL search engine count total
+ * search matches to present in the Special:Search UI.
+ *
+ * This could however be slow on larger wikis, and is pretty flaky
+ * with the current title vs content split. Recommend avoiding until
+ * that's been worked out cleanly; but this may aid in testing the
+ * search UI and API to confirm that the result count works.
+ */
+$wgSearchMySQLTotalHits = false;
+
 /**
  * Template for OpenSearch suggestions, defaults to API action=opensearch
  *
@@ -2002,7 +2038,7 @@ $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
 /** Files with these extensions will never be allowed as uploads. */
 $wgFileBlacklist = array(
        # HTML may contain cookie-stealing JavaScript and web bugs
-       'html', 'htm', 'js', 'jsb', 'mhtml', 'mht',
+       'html', 'htm', 'js', 'jsb', 'mhtml', 'mht', 'xhtml', 'xht',
        # PHP scripts may execute arbitrary code on the server
        'php', 'phtml', 'php3', 'php4', 'php5', 'phps',
        # Other types that may be interpreted by some servers
@@ -2075,9 +2111,6 @@ $wgNamespacesToBeSearchedHelp = array(
        NS_HELP           => true,
 );
 
-
-$wgUseOldSearchUI = true; // temp testing variable
-
 /**
  * If set to true the 'searcheverything' preference will be effective only for logged-in users.
  * Useful for big wikis to maintain different search profiles for anonymous and logged-in users.
@@ -2105,7 +2138,7 @@ $wgSiteNotice = '';
 $wgMediaHandlers = array(
        'image/jpeg' => 'BitmapHandler',
        'image/png' => 'BitmapHandler',
-       'image/gif' => 'BitmapHandler',
+       'image/gif' => 'GIFHandler',
        'image/tiff' => 'TiffHandler',
        'image/x-ms-bmp' => 'BmpHandler',
        'image/x-bmp' => 'BmpHandler',
@@ -2242,6 +2275,13 @@ if( !isset( $wgCommandLineMode ) ) {
 /** For colorized maintenance script output, is your terminal background dark ? */
 $wgCommandLineDarkBg = false;
 
+/**
+ * Array for extensions to register their maintenance scripts with the
+ * system. The key is the name of the class and the value is the full
+ * path to the file
+ */
+$wgMaintenanceScripts = array();
+
 #
 # Recent changes settings
 #
@@ -2599,7 +2639,8 @@ $wgDefaultUserOptions = array(
        'noconvertlink'           => 0,
        'gender'                  => 'unknown',
        'ccmeonemails'            => 0,
-       'disablemail'                     => 0,
+       'disablemail'             => 0,
+       'editfont'                => 'default',
 );
 
 /**
@@ -2741,9 +2782,8 @@ $wgDebugJavaScript = false;
  * <code>
  * $wgExtensionCredits[$type][] = array(
  *     'name' => 'Example extension',
- *  'version' => 1.9,
- *  'path'           => __FILE__,
- *  'svn-revision' => '$LastChangedRevision$',
+ *     'version' => 1.9,
+ *     'path' => __FILE__,
  *     'author' => 'Foo Barstein',
  *     'url' => 'http://wwww.example.com/Example%20Extension/',
  *     'description' => 'An example extension',
@@ -2752,6 +2792,8 @@ $wgDebugJavaScript = false;
  * </code>
  *
  * Where $type is 'specialpage', 'parserhook', 'variable', 'media' or 'other'.
+ * Where 'descriptionmsg' can be an array with message key and parameters:
+ * 'descriptionmsg' => array( 'exampleextension-desc', param1, param2, ... ),
  */
 $wgExtensionCredits = array();
 /*
@@ -3208,7 +3250,7 @@ $wgSpecialPageGroups = array(
        'Newimages'                 => 'changes',
        'Newpages'                  => 'changes',
        'Log'                       => 'changes',
-       'Tags'                      => 'changes',
+       'Tags'                      => 'changes',
 
        'Upload'                    => 'media',
        'Listfiles'                 => 'media',
@@ -3543,7 +3585,7 @@ $wgAllowSpecialInclusion = true;
 
 /**
  * Timeout for HTTP requests done at script execution time
- * default is (default php.ini script time 30s - 5s for everythign else)
+ * default is (default php.ini script time 30s - 5s for everything else)
  */
 $wgSyncHTTPTimeout = 25;
 /**
@@ -3593,7 +3635,7 @@ $wgUpdateRowsPerJob = 500;
 /**
  * Number of rows to update per query
  */
-$wgUpdateRowsPerQuery = 10;
+$wgUpdateRowsPerQuery = 100;
 
 /**
  * Enable AJAX framework
@@ -3684,14 +3726,9 @@ $wgMaxShellFileSize = 102400;
 $wgMaxShellTime = 180;
 
 /**
-* Executable name of PHP cli client (php/php5)
+* Executable Path of PHP cli client (php/php5)  (should be setup on install)
 */
-$wgPhpCli = 'php';
-
-/**
- * the full path to shell out to php scripts:
- */
-$wgPhpCliPath = '/usr/bin/php';
+$wgPhpCli = '/usr/bin/php';
 
 /**
  * DJVU settings
@@ -3795,6 +3832,21 @@ $wgParserTestFiles = array(
        "$IP/maintenance/parserTests.txt",
 );
 
+/**
+ * If configured, specifies target CodeReview installation to send test
+ * result data from 'parserTests.php --upload'
+ *
+ * Something like this:
+ * $wgParserTestRemote = array(
+ *     'api-url' => 'http://www.mediawiki.org/w/api.php',
+ *     'repo'    => 'MediaWiki',
+ *     'suite'   => 'ParserTests',
+ *     'path'    => '/trunk/phase3', // not used client-side; for reference
+ *     'secret'  => 'qmoicj3mc4mcklmqw', // Shared secret used in HMAC validation
+ * );
+ */
+$wgParserTestRemote = false;
+
 /**
  * Break out of framesets. This can be used to prevent external sites from
  * framing your site with ads.
@@ -4021,3 +4073,94 @@ $wgUserrightsInterwikiDelimiter = '@';
  *   );
  */
 $wgPoolCounterConf = null;
+
+/**
+ * Use some particular type of external authentication.  The specific
+ * authentication module you use will normally require some extra settings to
+ * be specified.
+ *
+ * null indicates no external authentication is to be used.  Otherwise,
+ * "ExternalUser_$wgExternalAuthType" must be the name of a non-abstract class
+ * that extends ExternalUser.
+ *
+ * Core authentication modules can be found in includes/extauth/.
+ */
+$wgExternalAuthType = null;
+
+/**
+ * Configuration for the external authentication.  This may include arbitrary
+ * keys that depend on the authentication mechanism.  For instance,
+ * authentication against another web app might require that the database login
+ * info be provided.  Check the file where your auth mechanism is defined for
+ * info on what to put here.
+ */
+$wgExternalAuthConfig = array();
+
+/**
+ * When should we automatically create local accounts when external accounts
+ * already exist, if using ExternalAuth?  Can have three values: 'never',
+ * 'login', 'view'.  'view' requires the external database to support cookies,
+ * and implies 'login'.
+ *
+ * TODO: Implement 'view' (currently behaves like 'login').
+ */
+$wgAutocreatePolicy = 'login';
+
+/**
+ * Policies for how each preference is allowed to be changed, in the presence
+ * of external authentication.  The keys are preference keys, e.g., 'password'
+ * or 'emailaddress' (see Preferences.php et al.).  The value can be one of the
+ * following:
+ *
+ * - local: Allow changes to this pref through the wiki interface but only
+ * apply them locally (default).
+ * - semiglobal: Allow changes through the wiki interface and try to apply them
+ * to the foreign database, but continue on anyway if that fails.
+ * - global: Allow changes through the wiki interface, but only let them go
+ * through if they successfully update the foreign database.
+ * - message: Allow no local changes for linked accounts; replace the change
+ * form with a message provided by the auth plugin, telling the user how to
+ * change the setting externally (maybe providing a link, etc.).  If the auth
+ * plugin provides no message for this preference, hide it entirely.
+ *
+ * Accounts that are not linked to an external account are never affected by
+ * this setting.  You may want to look at $wgHiddenPrefs instead.
+ * $wgHiddenPrefs supersedes this option.
+ *
+ * TODO: Implement message, global.
+ */
+$wgAllowPrefChange = array();
+
+/**
+ * If an exact match is not found, try to find a match in different namespaces
+ * before performing a search.
+ *
+ * Array: Ids of namespaces to attempt match in, in desired order.
+ */
+$wgSecondaryGoNamespaces = null;
+
+
+/**
+ * Settings for incoming cross-site AJAX requests:
+ * Newer browsers support cross-site AJAX when the target resource allows requests
+ * from the origin domain by the Access-Control-Allow-Origin header.
+ * This is currently only used by the API (requests to api.php)
+ * $wgCrossSiteAJAXdomains can be set as follows:
+ * 
+ * - the string '*' to allow requests from any domain
+ * - an array of domains to allow AJAX requests from, e.g.
+ *   array( 'http://en.wikipedia.org', 'http://en.wikibooks.org' );
+ * - if $wgCrossSiteAJAXdomainsRegex is true, an array of regexes to be
+ *   matched against the request origin. Anything that matches will be allowed
+ */
+$wgCrossSiteAJAXdomains = array();
+
+/**
+ * Set to true to treat $wgCrossSiteAJAXdomains as regexes instead of strings
+ */
+$wgCrossSiteAJAXdomainsRegex = false;
+
+/**
+ * The minimum amount of memory that MediaWiki "needs"; MediaWiki will try to raise PHP's memory limit if it's below this amount.
+ */
+$wgMemoryLimit = "50M";