FU r106752: use "media-" instead of "images-" in container names. Long live books...
[lhc/web/wiklou.git] / includes / DefaultSettings.php
index 9123ec8..21e9ce2 100644 (file)
@@ -8,10 +8,10 @@
  * To customize your installation, edit "LocalSettings.php". If you make
  * changes here, they will be lost on next upgrade of MediaWiki!
  *
- * Note that since all these string interpolations are expanded
- * before LocalSettings is included, if you localize something
- * like $wgScriptPath, you must also localize everything that
- * depends on it.
+ * In this file, variables whose default values depend on other
+ * variables are set to false. The actual default value of these variables
+ * will only be set in Setup.php, taking into account any custom settings
+ * performed in LocalSettings.php.
  *
  * Documentation is in the source and on:
  * http://www.mediawiki.org/wiki/Manual:Configuration_settings
@@ -27,7 +27,7 @@ if( !defined( 'MEDIAWIKI' ) ) {
 }
 
 # Create a site configuration object. Not used for much in a default install.
-# Note: this (and other things) will break if the autoloader is not enabled. 
+# Note: this (and other things) will break if the autoloader is not enabled.
 # Please include includes/AutoLoader.php before including this file.
 $wgConf = new SiteConfiguration;
 /** @endcond */
@@ -39,19 +39,31 @@ $wgVersion = '1.19alpha';
 $wgSitename         = 'MediaWiki';
 
 /**
- * URL of the server. It will be automatically built including https mode.
+ * URL of the server.
  *
  * Example:
  * <code>
- * $wgServer = http://example.com
+ * $wgServer = 'http://example.com';
  * </code>
  *
  * This is usually detected correctly by MediaWiki. If MediaWiki detects the
  * wrong server, it will redirect incorrectly after you save a page. In that
  * case, set this variable to fix it.
+ *
+ * If you want to use protocol-relative URLs on your wiki, set this to a
+ * protocol-relative URL like '//example.com' and set $wgCanonicalServer
+ * to a fully qualified URL.
  */
 $wgServer = WebRequest::detectServer();
 
+/**
+ * Canonical URL of the server, to use in IRC feeds and notification e-mails.
+ * Must be fully qualified, even if $wgServer is protocol-relative.
+ *
+ * Defaults to $wgServer, expanded to a fully qualified http:// URL if needed.
+ */
+$wgCanonicalServer = false;
+
 /************************************************************************//**
  * @name   Script path settings
  * @{
@@ -66,7 +78,7 @@ $wgServer = WebRequest::detectServer();
  * Other paths will be set to defaults based on it unless they are directly
  * set in LocalSettings.php
  */
-$wgScriptPath      = '/wiki';
+$wgScriptPath       = '/wiki';
 
 /**
  * Whether to support URLs like index.php/Page_title These often break when PHP
@@ -101,7 +113,7 @@ $wgScriptExtension  = '.php';
 /**
  * The URL path to index.php.
  *
- * Defaults to "{$wgScriptPath}/index{$wgScriptExtension}".
+ * Will default to "{$wgScriptPath}/index{$wgScriptExtension}" in Setup.php
  */
 $wgScript           = false;
 
@@ -109,9 +121,9 @@ $wgScript           = false;
  * The URL path to redirect.php. This is a script that is used by the Nostalgia
  * skin.
  *
- * Defaults to "{$wgScriptPath}/redirect{$wgScriptExtension}".
+ * Will default to "{$wgScriptPath}/redirect{$wgScriptExtension}" in Setup.php
  */
-$wgRedirectScript   = false; ///< defaults to
+$wgRedirectScript   = false;
 
 /**
  * The URL path to load.php.
@@ -120,6 +132,7 @@ $wgRedirectScript   = false; ///< defaults to
  */
 $wgLoadScript           = false;
 
+
 /**@}*/
 
 /************************************************************************//**
@@ -127,7 +140,6 @@ $wgLoadScript           = false;
  *
  * These various web and file path variables are set to their defaults
  * in Setup.php if they are not explicitly set from LocalSettings.php.
- * If you do override them, be sure to set them all!
  *
  * These will relatively rarely need to be set manually, unless you are
  * splitting style sheets or images outside the main document root.
@@ -142,7 +154,7 @@ $wgLoadScript           = false;
  */
 
 /**
- * The URL path of the skins directory. Defaults to "{$wgScriptPath}/skins"
+ * The URL path of the skins directory. Will default to "{$wgScriptPath}/skins" in Setup.php
  */
 $wgStylePath   = false;
 $wgStyleSheetPath = &$wgStylePath;
@@ -161,7 +173,7 @@ $wgLocalStylePath   = false;
 $wgExtensionAssetsPath = false;
 
 /**
- * Filesystem stylesheets directory. Defaults to "{$IP}/skins"
+ * Filesystem stylesheets directory. Will default to "{$IP}/skins" in Setup.php
  */
 $wgStyleDirectory = false;
 
@@ -169,16 +181,21 @@ $wgStyleDirectory = false;
  * The URL path for primary article page views. This path should contain $1,
  * which is replaced by the article title.
  *
- * Defaults to "{$wgScript}/$1" or "{$wgScript}?title=$1", depending on
- * $wgUsePathInfo.
+ * Will default to "{$wgScript}/$1" or "{$wgScript}?title=$1" in Setup.php,
+ * depending on $wgUsePathInfo.
  */
 $wgArticlePath      = false;
 
 /**
- * The URL path for the images directory. Defaults to "{$wgScriptPath}/images"
+ * The URL path for the images directory. Will default to "{$wgScriptPath}/images" in Setup.php
  */
 $wgUploadPath       = false;
 
+/**
+ * The maximum age of temporary (incomplete) uploaded files
+ */
+$wgUploadStashMaxAge = 6 * 3600; // 6 hours
+
 /**
  * The filesystem path of the images directory. Defaults to "{$IP}/images".
  */
@@ -186,7 +203,7 @@ $wgUploadDirectory  = false;
 
 /**
  * The URL path of the wiki logo. The logo size should be 135x135 pixels.
- * Defaults to "{$wgStylePath}/common/images/wiki.png".
+ * Will default to "{$wgStylePath}/common/images/wiki.png" in Setup.php
  */
 $wgLogo                                = false;
 
@@ -205,7 +222,7 @@ $wgAppleTouchIcon   = false;
  * The local filesystem path to a temporary directory. This is not required to
  * be web accessible.
  *
- * Defaults to "{$wgUploadDirectory}/tmp".
+ * Will default to "{$wgUploadDirectory}/tmp" in Setup.php
  */
 $wgTmpDirectory     = false;
 
@@ -282,9 +299,10 @@ $wgImgAuthPublicTest = true;
  *
  * Properties required for all repos:
  *   - class            The class name for the repository. May come from the core or an extension.
- *                      The core repository classes are LocalRepo, ForeignDBRepo, FSRepo.
+ *                      The core repository classes are FileRepo, LocalRepo, ForeignDBRepo.
+ *                      FSRepo is also supported for backwards compatibility.
  *
- *   - name                A unique name for the repository (but $wgLocalFileRepo should be 'local').
+ *   - name             A unique name for the repository (but $wgLocalFileRepo should be 'local').
  *
  * For most core repos:
  *   - url              Base public URL
@@ -349,6 +367,27 @@ $wgForeignFileRepos = array();
  */
 $wgUseInstantCommons = false;
 
+/**
+ * File backend structure configuration.
+ * This is an array of file backend configuration arrays.
+ * Each backend configuration has the following parameters:
+ *     'name'        : A unique name for the backend
+ *     'class'       : The file backend class to use
+ *     'wikiId'      : A unique string that identifies the wiki (container prefix)
+ *     'lockManager' : The name of a lock manager (see $wgFileLockManagers)
+ * Additional parameters are specific to the class used.
+ */
+$wgFileBackends = array();
+
+/**
+ * Array of configuration arrays for each lock manager.
+ * Each backend configuration has the following parameters:
+ *     'name'        : A unique name for the lock manger
+ *     'class'       : The lock manger class to use
+ * Additional parameters are specific to the class used.
+ */
+$wgFileLockManagers = array();
+
 /**
  * Show EXIF data, on by default if available.
  * Requires PHP's EXIF extension: http://www.php.net/manual/en/ref.exif.php
@@ -413,10 +452,10 @@ $wgAllowAsyncCopyUploads = false;
  * for non-specified types.
  *
  * For example:
- *     $wgMaxUploadSize = array(
- *             '*' => 250 * 1024,
- *             'url' => 500 * 1024,
- *     );
+ * $wgMaxUploadSize = array(
+ *     '*' => 250 * 1024,
+ *     'url' => 500 * 1024,
+ * );
  * Sets the maximum for all uploads to 250 kB except for upload-by-url, which
  * will have a maximum of 500 kB.
  *
@@ -540,6 +579,13 @@ $wgCheckFileExtensions = true;
  */
 $wgStrictFileExtensions = true;
 
+/**
+ * Setting this to true will disable the upload system's checks for HTML/JavaScript.
+ * THIS IS VERY DANGEROUS on a publicly editable site, so USE wgGroupPermissions
+ * TO RESTRICT UPLOADING to only those that you trust
+ */
+$wgDisableUploadScriptChecks = false;
+
 /** Warn if uploaded files are larger than this (in bytes), or false to disable*/
 $wgUploadSizeWarning = false;
 
@@ -619,7 +665,7 @@ $wgImageMagickTempDir = false;
 $wgCustomConvertCommand = false;
 
 /**
- * Some tests and extensions use exiv2 to manipulate the EXIF metadata in some image formats. 
+ * Some tests and extensions use exiv2 to manipulate the EXIF metadata in some image formats.
  */
 $wgExiv2Command = '/usr/bin/exiv2';
 
@@ -661,9 +707,17 @@ $wgSVGMetadataCutoff = 262144;
 $wgAllowTitlesInSVG = false;
 
 /**
- * Don't thumbnail an image if it will use too much working memory.
- * Default is 50 MB if decompressed to RGBA form, which corresponds to
- * 12.5 million pixels or 3500x3500
+ * The maximum number of pixels a source image can have if it is to be scaled
+ * down by a scaler that requires the full source image to be decompressed
+ * and stored in decompressed form, before the thumbnail is generated.
+ *
+ * This provides a limit on memory usage for the decompression side of the
+ * image scaler. The limit is used when scaling PNGs with any of the
+ * built-in image scalers, such as ImageMagick or GD. It is ignored for
+ * JPEGs with ImageMagick, and when using the VipsScaler extension.
+ *
+ * The default is 50 MB if decompressed to RGBA form, which corresponds to
+ * 12.5 million pixels or 3500x3500.
  */
 $wgMaxImageArea = 1.25e7;
 /**
@@ -726,6 +780,12 @@ $wgShowArchiveThumbnails = true;
 /** Obsolete, always true, kept for compatibility with extensions */
 $wgUseImageResize = true;
 
+/**
+ * If set to true, images that contain certain the exif orientation tag will
+ * be rotated accordingly. If set to null, try to auto-detect whether a scaler
+ * is available that can rotate.
+ */
+$wgEnableAutoRotation = null;
 
 /**
  * Internal name of virus scanner. This servers as a key to the
@@ -845,11 +905,11 @@ $wgTrivialMimeDetection = false;
  * array = ( 'rootElement' => 'associatedMimeType' )
  */
 $wgXMLMimeTypes = array(
-               'http://www.w3.org/2000/svg:svg'                        => 'image/svg+xml',
-               'svg'                                                   => 'image/svg+xml',
-               'http://www.lysator.liu.se/~alla/dia/:diagram'  => 'application/x-dia-diagram',
-               'http://www.w3.org/1999/xhtml:html'                             => 'text/html', // application/xhtml+xml?
-               'html'                                                  => 'text/html', // application/xhtml+xml?
+               'http://www.w3.org/2000/svg:svg'               => 'image/svg+xml',
+               'svg'                                          => 'image/svg+xml',
+               'http://www.lysator.liu.se/~alla/dia/:diagram' => 'application/x-dia-diagram',
+               'http://www.w3.org/1999/xhtml:html'            => 'text/html', // application/xhtml+xml?
+               'html'                                         => 'text/html', // application/xhtml+xml?
 );
 
 /**
@@ -1140,7 +1200,7 @@ $wgDBpassword       = '';
 $wgDBtype           = 'mysql';
 
 /** Separate username for maintenance tasks. Leave as null to use the default. */
-$wgDBadminuser = null;
+$wgDBadminuser      = null;
 /** Separate password for maintenance tasks. Leave as null to use the default. */
 $wgDBadminpassword = null;
 
@@ -1150,7 +1210,7 @@ $wgDBadminpassword = null;
  * selected database type (eg SearchMySQL), or set to a class
  * name to override to a custom search engine.
  */
-$wgSearchType      = null;
+$wgSearchType       = null;
 
 /** Table name prefix */
 $wgDBprefix         = '';
@@ -1277,9 +1337,6 @@ $wgDBAvgStatusPoll = 2000;
 
 /** Set to true if using InnoDB tables */
 $wgDBtransactions      = false;
-/** Set to true for compatibility with extensions that might be checking.
- * MySQL 3.23.x is no longer supported. */
-$wgDBmysql4                    = true;
 
 /**
  * Set to true to engage MySQL 4.1/5.0 charset-related features;
@@ -1363,6 +1420,7 @@ $wgExternalServers = array();
  *
  * $wgDefaultExternalStore = array( 'DB://cluster1', 'DB://cluster2' );
  *
+ * @var array
  */
 $wgDefaultExternalStore = false;
 
@@ -1390,6 +1448,8 @@ $wgQueryCacheLimit = 1000;
 $wgWantedPagesThreshold = 1;
 /** Enable slow parser functions */
 $wgAllowSlowParserFunctions = false;
+/** Allow schema updates */
+$wgAllowSchemaUpdates = true;
 
 /**
  * Do DELETE/INSERT for link updates instead of incremental
@@ -1451,7 +1511,7 @@ $wgCacheDirectory = false;
  *   - CACHE_NONE:       Do not cache
  *   - CACHE_DB:         Store cache objects in the DB
  *   - CACHE_MEMCACHED:  MemCached, must specify servers in $wgMemCachedServers
- *   - CACHE_ACCEL:      eAccelerator, APC, XCache or WinCache
+ *   - CACHE_ACCEL:      APC, XCache or WinCache
  *   - CACHE_DBA:        Use PHP's DBA extension to store in a DBM-style
  *                       database. This is slow, and is not recommended for
  *                       anything other than debugging.
@@ -1491,6 +1551,8 @@ $wgParserCacheType = CACHE_ANYTHING;
  * given, giving a callable function which will generate a suitable cache object.
  *
  * The other parameters are dependent on the class used.
+ * - CACHE_DBA uses $wgTmpDirectory by default. The 'dir' parameter let you
+ *   overrides that.
  */
 $wgObjectCaches = array(
        CACHE_NONE => array( 'class' => 'EmptyBagOStuff' ),
@@ -1501,7 +1563,6 @@ $wgObjectCaches = array(
        CACHE_ACCEL => array( 'factory' => 'ObjectCache::newAccelerator' ),
        CACHE_MEMCACHED => array( 'factory' => 'ObjectCache::newMemcached' ),
 
-       'eaccelerator' => array( 'class' => 'eAccelBagOStuff' ),
        'apc' => array( 'class' => 'APCBagOStuff' ),
        'xcache' => array( 'class' => 'XCacheBagOStuff' ),
        'wincache' => array( 'class' => 'WinCacheBagOStuff' ),
@@ -1533,7 +1594,7 @@ $wgSessionsInMemcached = false;
  * 'session_mysql.' Setting to null skips setting this entirely (which might be
  * useful if you're doing cross-application sessions, see bug 11381)
  */
-$wgSessionHandler = 'files';
+$wgSessionHandler = null;
 
 /** If enabled, will send MemCached debugging information to $wgDebugLogFile */
 $wgMemCachedDebug   = false;
@@ -1628,7 +1689,7 @@ $wgUseFileCache = false;
 
 /**
  * Directory where the cached page will be saved.
- * Defaults to "$wgCacheDirectory/html".
+ * Will default to "{$wgUploadDirectory}/cache" in Setup.php
  */
 $wgFileCacheDirectory = false;
 
@@ -1734,6 +1795,15 @@ $wgUseESI = false;
 /** Send X-Vary-Options header for better caching (requires patched Squid) */
 $wgUseXVO = false;
 
+/** Add X-Forwarded-Proto to the Vary and X-Vary-Options headers for API
+ * requests and RSS/Atom feeds. Use this if you have an SSL termination setup
+ * and need to split the cache between HTTP and HTTPS for API requests,
+ * feed requests and HTTP redirect responses in order to prevent cache
+ * pollution. This does not affect 'normal' requests to index.php other than
+ * HTTP redirects.
+ */
+$wgVaryOnXFP = false;
+
 /**
  * Internal server name as known to Squid, if different. Example:
  * <code>
@@ -1828,20 +1898,24 @@ $wgExtraLanguageNames = array();
 
 /**
  * List of language codes that don't correspond to an actual language.
- * These codes are leftoffs from renames, or other legacy things.
- * Also, qqq is a dummy "language" for documenting messages.
+ * These codes are mostly leftoffs from renames, or other legacy things.
+ * This array makes them not appear as a selectable language on the installer,
+ * and excludes them when running the transstat.php script.
  */
 $wgDummyLanguageCodes = array(
-       'als',
-       'bat-smg',
-       'be-x-old',
-       'dk',
-       'fiu-vro',
-       'iu',
-       'nb',
-       'qqq',
-       'roa-rup',
-       'simple',
+       'als' => 'gsw',
+       'bat-smg' => 'sgs',
+       'be-x-old' => 'be-tarask',
+       'bh' => 'bho',
+       'fiu-vro' => 'vro',
+       'nb' => 'no',
+       'qqq' => 'qqq', # Used for message documentation.
+       'qqx' => 'qqx', # Used for viewing message keys.
+       'roa-rup' => 'rup',
+       'simple' => 'en',
+       'zh-classical' => 'lzh',
+       'zh-min-nan' => 'nan',
+       'zh-yue' => 'yue',
 );
 
 /**
@@ -2154,6 +2228,11 @@ $wgAllowRdfaAttributes = false;
  */
 $wgAllowMicrodataAttributes = false;
 
+/**
+ * Cleanup as much presentational html like valign -> css vertical-align as we can
+ */
+$wgCleanupPresentationalAttributes = 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
@@ -2191,6 +2270,12 @@ $wgXhtmlNamespaces = array();
  */
 $wgShowIPinHeader      = true;
 
+/**
+ * Use a user's real name inside the user interface for display instead of the username
+ * (experimental)
+ */
+$wgRealNameInInterface = false;
+
 /**
  * Site notice shown at the top of each page
  *
@@ -2286,13 +2371,6 @@ $wgUseSiteJs = true;
 /** Use the site's Cascading Style Sheets (CSS)? */
 $wgUseSiteCss = true;
 
-/**
- * Set to false to disable application of access keys and tooltips,
- * eg to avoid keyboard conflicts with system keys or as a low-level
- * optimization.
- */
-$wgEnableTooltipsAndAccesskeys = true;
-
 /**
  * Break out of framesets. This can be used to prevent clickjacking attacks,
  * or to prevent external sites from framing your site with ads.
@@ -2370,7 +2448,7 @@ $wgFooterIcons = array(
        "poweredby" => array(
                "mediawiki" => array(
                        "src" => null, // Defaults to "$wgStylePath/common/images/poweredby_mediawiki_88x31.png"
-                       "url" => "http://www.mediawiki.org/",
+                       "url" => "//www.mediawiki.org/",
                        "alt" => "Powered by MediaWiki",
                )
        ),
@@ -2397,11 +2475,6 @@ $wgVectorUseSimpleSearch = false;
  */
 $wgVectorUseIconWatch = false;
 
-/**
- * Show the name of the current variant as a label in the variants drop-down menu
- */
-$wgVectorShowVariantName = false;
-
 /**
  * Display user edit counts in various prominent places.
  */
@@ -2409,12 +2482,24 @@ $wgEdititis = false;
 
 /**
  * Better directionality support (bug 6100 and related).
- * Removed in 1.19, still kept here for LiquidThreads backwards compatibility.
+ * Removed in 1.18, still kept here for LiquidThreads backwards compatibility.
  *
- * @deprecated since 1.19
+ * @deprecated since 1.18
  */
 $wgBetterDirectionality = true;
 
+/**
+ * Some web hosts attempt to rewrite all responses with a 404 (not found) 
+ * status code, mangling or hiding MediaWiki's output. If you are using such a
+ * host, you should start looking for a better one. While you're doing that, 
+ * set this to false to convert some of MediaWiki's 404 responses to 200 so
+ * that the generated error pages can be seen.
+ *
+ * In cases where for technical reasons it is more important for MediaWiki to 
+ * send the correct status code than for the body to be transmitted intact,
+ * this configuration variable is ignored.
+ */
+$wgSend404Code = true;
 
 /** @} */ # End of output format settings }
 
@@ -2438,6 +2523,25 @@ $wgBetterDirectionality = true;
  */
 $wgResourceModules = array();
 
+/**
+ * Extensions should register foreign module sources here. 'local' is a
+ * built-in source that is not in this array, but defined by
+ * ResourceLoader::__construct() so that it cannot be unset.
+ *
+ * Example:
+ *   $wgResourceLoaderSources['foo'] = array(
+ *       'loadScript' => 'http://example.org/w/load.php',
+ *       'apiScript' => 'http://example.org/w/api.php'
+ *   );
+ */
+$wgResourceLoaderSources = array();
+
+/**
+ * Default 'remoteBasePath' value for resource loader modules.
+ * If not set, then $wgScriptPath will be used as a fallback.
+ */
+$wgResourceBasePath = null;
+
 /**
  * Maximum time in seconds to cache resources served by the resource loader
  */
@@ -2575,14 +2679,22 @@ $wgMetaNamespaceTalk = false;
  * Custom namespaces should start at 100 to avoid conflicting with standard
  * namespaces, and should always follow the even/odd main/talk pattern.
  */
-#$wgExtraNamespaces =
-#      array(100 => "Hilfe",
-#            101 => "Hilfe_Diskussion",
-#            102 => "Aide",
-#            103 => "Discussion_Aide"
-#            );
+# $wgExtraNamespaces = array(
+#     100 => "Hilfe",
+#     101 => "Hilfe_Diskussion",
+#     102 => "Aide",
+#     103 => "Discussion_Aide"
+# );
 $wgExtraNamespaces = array();
 
+/**
+ * Same as above, but for namespaces with gender distinction.
+ * Note: the default form for the namespace should also be set
+ * using $wgExtraNamespaces for the same index.
+ * @since 1.18
+ */
+$wgExtraGenderNamespaces = array();
+
 /**
  * Namespace aliases
  * These are alternate names for the primary localised namespace names, which
@@ -2882,7 +2994,7 @@ $wgTidyInternal = extension_loaded( 'tidy' );
 $wgDebugTidy = false;
 
 /** Allow raw, unchecked HTML in <html>...</html> sections.
- * THIS IS VERY DANGEROUS on a publically editable site, so USE wgGroupPermissions
+ * THIS IS VERY DANGEROUS on a publicly editable site, so USE wgGroupPermissions
  * TO RESTRICT EDITING to only those that you trust
  */
 $wgRawHtml = false;
@@ -2948,7 +3060,7 @@ $wgPreprocessorCacheThreshold = 1000;
 $wgEnableScaryTranscluding = false;
 
 /**
- * Expiry time for interwiki transclusion
+ * (see next option $wgGlobalDatabase).
  */
 $wgTranscludeCacheExpiry = 3600;
 
@@ -2983,7 +3095,7 @@ $wgArticleCountMethod = null;
 
 /**
  * Backward compatibility setting, will set $wgArticleCountMethod if it is null.
- * @deprecated since 1.19; use $wgArticleCountMethod instead
+ * @deprecated since 1.18; use $wgArticleCountMethod instead
  */
 $wgUseCommaCount = false;
 
@@ -3020,11 +3132,6 @@ $wgPasswordSalt = true;
  */
 $wgMinimalPasswordLength = 1;
 
-/**
- * Enabes or disables JavaScript-based suggestions of password strength
- */
-$wgLivePasswordStrengthChecks = false;
-
 /**
  * Whether to allow password resets ("enter some identifying data, and we'll send an email
  * with a temporary password you can use to get back into the account") identified by
@@ -3294,6 +3401,12 @@ $wgEmailConfirmToEdit = false;
 
 /**
  * Permission keys given to users in each group.
+ * This is an array where the keys are all groups and each value is an
+ * array of the format (right => boolean).
+ *
+ * The second format is used to support per-namespace permissions.
+ * Note that this feature does not fully work for all permission types.
+ *
  * All users are implicitly in the '*' group including anonymous visitors;
  * logged-in users are all implicitly in the 'user' group. These will be
  * combined with the permissions of all groups that a given user is listed
@@ -3307,7 +3420,7 @@ $wgEmailConfirmToEdit = false;
  * Functionality to make pages inaccessible has not been extensively tested
  * for security. Use at your own risk!
  *
- * This replaces wgWhitelistAccount and wgWhitelistEdit
+ * This replaces $wgWhitelistAccount and $wgWhitelistEdit
  */
 $wgGroupPermissions = array();
 
@@ -3325,7 +3438,7 @@ $wgGroupPermissions['*']['writeapi']         = true;
 $wgGroupPermissions['user']['move']             = true;
 $wgGroupPermissions['user']['move-subpages']    = true;
 $wgGroupPermissions['user']['move-rootuserpages'] = true; // can move root userpages
-//$wgGroupPermissions['user']['movefile']         = true;      // Disabled for now due to possible bugs and security concerns
+$wgGroupPermissions['user']['movefile']         = true;
 $wgGroupPermissions['user']['read']             = true;
 $wgGroupPermissions['user']['edit']             = true;
 $wgGroupPermissions['user']['createpage']       = true;
@@ -3389,7 +3502,6 @@ $wgGroupPermissions['sysop']['movefile']         = true;
 $wgGroupPermissions['sysop']['unblockself']      = true;
 $wgGroupPermissions['sysop']['suppressredirect'] = true;
 #$wgGroupPermissions['sysop']['mergehistory']     = true;
-#$wgGroupPermissions['sysop']['trackback']        = true;
 
 // Permission to change users' group assignments
 $wgGroupPermissions['bureaucrat']['userrights']  = true;
@@ -3567,7 +3679,7 @@ $wgAutopromoteOnce = array(
        'onView' => array()
 );
 
-/*
+/**
  * Put user rights log entries for autopromotion in recent changes?
  * @since 1.18
  */
@@ -3634,6 +3746,7 @@ $wgSummarySpamRegex = array();
  *  - false : let it through
  *
  * @deprecated since 1.17 Use hooks. See SpamBlacklist extension.
+ * @var callback
  */
 $wgFilterCallback = false;
 
@@ -3650,7 +3763,20 @@ $wgEnableDnsBlacklist = false;
 $wgEnableSorbs = false;
 
 /**
- * List of DNS blacklists to use, if $wgEnableDnsBlacklist is true
+ * List of DNS blacklists to use, if $wgEnableDnsBlacklist is true. This is an
+ * array of either a URL or an array with the URL and a key (should the blacklist
+ * require a key). For example:
+ * @code
+ * $wgDnsBlacklistUrls = array(
+ *   // String containing URL
+ *   'http.dnsbl.sorbs.net',
+ *   // Array with URL and key, for services that require a key
+ *   array( 'dnsbl.httpbl.net', 'mykey' ),
+ *   // Array with just the URL. While this works, it is recommended that you
+ *   // just use a string as shown above
+ *   array( 'opm.tornevall.org' )
+ * );
+ * @endcode
  * @since 1.16
  */
 $wgDnsBlacklistUrls = array( 'http.dnsbl.sorbs.net.' );
@@ -3715,6 +3841,12 @@ $wgRateLimitsExcludedIPs = array();
  */
 $wgPutIPinRC = true;
 
+/**
+ * Integer defining default number of entries to show on
+ * special pages which are query-pages such as Special:Whatlinkshere.
+ */
+$wgQueryPageDefaultLimit  = 50;
+
 /**
  * Limit password attempts to X attempts per Y seconds per IP per account.
  * Requires memcached.
@@ -3761,7 +3893,7 @@ $wgProxyKey = false;
 /**
  * Default cookie expiration time. Setting to 0 makes all cookies session-only.
  */
-$wgCookieExpiration = 30*86400;
+$wgCookieExpiration = 180*86400;
 
 /**
  * Set to set an explicit domain on the login cookies eg, "justthis.domain.org"
@@ -3771,7 +3903,7 @@ $wgCookieDomain = '';
 
 
 /**
- * Set this variable if you want to restrict cookies to a certain path within 
+ * Set this variable if you want to restrict cookies to a certain path within
  * the domain specified by $wgCookieDomain.
  */
 $wgCookiePath = '/';
@@ -3785,8 +3917,8 @@ $wgCookiePath = '/';
 $wgCookieSecure = 'detect';
 
 /**
- * By default, MediaWiki checks if the client supports cookies during the 
- * login process, so that it can display an informative error message if 
+ * By default, MediaWiki checks if the client supports cookies during the
+ * login process, so that it can display an informative error message if
  * cookies are disabled. Set this to true if you want to disable this cookie
  * check.
  */
@@ -3906,6 +4038,7 @@ $wgShowDebug            = false;
 
 /**
  * Prefix debug messages with relative timestamp. Very-poor man's profiler.
+ * Since 1.19 also includes memory usage.
  */
 $wgDebugTimestamps = false;
 
@@ -3950,6 +4083,23 @@ $wgShowHostnames = false;
  */
 $wgDevelopmentWarnings = false;
 
+/**
+ * Release limitation to wfDeprecated warnings, if set to a release number
+ * development warnings will not be generated for deprecations added in releases
+ * after the limit.
+ */
+$wgDeprecationReleaseLimit = '1.17';
+
+/**
+ * Function name whitelist for wfDeprecated warnings. You will not be warned
+ * for usage of deprecated functions in this list. This is mainly usefull
+ * for extension developers unable to not use certain deprecated functions
+ * due to backward compatinility reasons.
+ * @since 1.19
+ * @var array
+ */
+$wgDeprecationWhitelist = array();
+
 /** Only record profiling info for pages that took longer than this */
 $wgProfileLimit = 0.0;
 
@@ -4013,14 +4163,6 @@ $wgAggregateStatsID = false;
  */
 $wgDisableCounters = false;
 
-/**
- * Support blog-style "trackbacks" for articles.  See
- * http://www.sixapart.com/pronet/docs/trackback_spec for details.
- *
- * If enabling this, you also need to grant the 'trackback' right to a group
- */
-$wgUseTrackbacks = false;
-
 /**
  * Parser test suite files to be run by parserTests.php when no specific
  * filename is passed to it.
@@ -4050,6 +4192,21 @@ $wgParserTestFiles = array(
  */
 $wgParserTestRemote = false;
 
+
+/**
+ * Overwrite the caching key prefix with custom value.
+ * @since 1.19
+ */
+$wgCachePrefix = false;
+
+/**
+ * Display the new debugging toolbar. This also enables profiling on database
+ * queries and other useful output.
+ *
+ * @since 1.19
+ */
+$wgDebugToolbar = false;
+
 /** @} */ # end of profiling, testing and debugging }
 
 /************************************************************************//**
@@ -4193,6 +4350,27 @@ $wgUseTwoButtonsSearchForm = true;
  */
 $wgSitemapNamespaces = false;
 
+/**
+ * Custom namespace priorities for sitemaps. Setting this will allow you to
+ * set custom priorities to namsepaces when sitemaps are generated using the
+ * maintenance/generateSitemap.php script.
+ *
+ * This should be a map of namespace IDs to priority
+ * Example:
+ *  $wgSitemapNamespacesPriorities = array(
+ *      NS_USER => '0.9',
+ *      NS_HELP => '0.0',
+ *  );
+ */
+$wgSitemapNamespacesPriorities = false;
+
+/**
+ * If true, searches for IP addresses will be redirected to that IP's
+ * contributions page. E.g. searching for "1.2.3.4" will redirect to
+ * [[Special:Contributions/1.2.3.4]]
+ */
+$wgEnableSearchContributorsByIP = true;
+
 /** @} */ # end of search settings
 
 /************************************************************************//**
@@ -4285,7 +4463,7 @@ $wgReadOnly             = null;
  * Its contents will be shown to users as part of the read-only warning
  * message.
  *
- * Defaults to "{$wgUploadDirectory}/lock_yBgMBwiR".
+ * Will default to "{$wgUploadDirectory}/lock_yBgMBwiR" in Setup.php
  */
 $wgReadOnlyFile         = false;
 
@@ -4419,9 +4597,9 @@ $wgFeedClasses = array(
 $wgAdvertisedFeedTypes = array( 'atom' );
 
 /** Show watching users in recent changes, watchlist and page history views */
-$wgRCShowWatchingUsers                                 = false; # UPO
+$wgRCShowWatchingUsers                         = false; # UPO
 /** Show watching users in Page views */
-$wgPageShowWatchingUsers                       = false;
+$wgPageShowWatchingUsers                       = false;
 /** Show the amount of changed characters in recent changes */
 $wgRCShowChangedSize                           = true;
 
@@ -4435,7 +4613,7 @@ $wgRCChangedSizeThreshold                 = 500;
 /**
  * Show "Updated (since my last visit)" marker in RC view, watchlist and history
  * view for watched pages with new changes */
-$wgShowUpdatedMarker                           = true;
+$wgShowUpdatedMarker                           = true;
 
 /**
  * Disable links to talk pages of anonymous users (IPs) in listings on special
@@ -4461,12 +4639,31 @@ $wgUseTagFilter = true;
  * @{
  */
 
-/** Override for copyright metadata.
- * TODO: these options need documentation
+/**
+ * Override for copyright metadata.
+ *
+ * This is the name of the page containing information about the wiki's copyright status,
+ * which will be added as a link in the footer if it is specified. It overrides
+ * $wgRightsUrl if both are specified.
  */
 $wgRightsPage = null;
+
+/**
+ * Set this to specify an external URL containing details about the content license used on your wiki.
+ * If $wgRightsPage is set then this setting is ignored.
+ */
 $wgRightsUrl = null;
+
+/**
+ * If either $wgRightsUrl or $wgRightsPage is specified then this variable gives the text for the link.
+ * If using $wgRightsUrl then this value must be specified. If using $wgRightsPage then the name of the
+ * page will also be used as the link if this variable is not set.
+ */
 $wgRightsText = null;
+
+/**
+ * Override for copyright metadata.
+ */
 $wgRightsIcon = null;
 
 /**
@@ -4637,13 +4834,13 @@ $wgAutoloadClasses = array();
  *
  * <code>
  * $wgExtensionCredits[$type][] = array(
- *     'name' => 'Example extension',
- *     'version' => 1.9,
- *     'path' => __FILE__,
- *     'author' => 'Foo Barstein',
- *     'url' => 'http://wwww.example.com/Example%20Extension/',
- *     'description' => 'An example extension',
- *     'descriptionmsg' => 'exampleextension-desc',
+ *     'name' => 'Example extension',
+ *     'version' => 1.9,
+ *     'path' => __FILE__,
+ *     'author' => 'Foo Barstein',
+ *     'url' => 'http://wwww.example.com/Example%20Extension/',
+ *     'description' => 'An example extension',
+ *     'descriptionmsg' => 'exampleextension-desc',
  * );
  * </code>
  *
@@ -4655,7 +4852,7 @@ $wgExtensionCredits = array();
 
 /**
  * Authentication plugin.
- * @var AuthPlugin
+ * @var $wgAuth AuthPlugin
  */
 $wgAuth = null;
 
@@ -4685,12 +4882,6 @@ $wgJobClasses = array(
        'uploadFromUrl' => 'UploadFromUrlJob',
 );
 
-/**
- * Extensions of "thumbnails" that are very expensive to regenerate and should be
- * excluded from normal action=purge thumbnail removal.
- */
-$wgExcludeFromThumbnailPurge = array();
-
 /**
 
  * Jobs that must be explicitly requested, i.e. aren't run by job runners unless special flags are set.
@@ -4763,6 +4954,8 @@ $wgCategoryPagingLimit = 200;
  *
  *   - uppercase: Converts the category name to upper case, and sorts by that.
  *
+ *   - identity: Does no conversion. Sorts by binary value of the string.
+ *
  *   - uca-default: Provides access to the Unicode Collation Algorithm with
  *     the default element table. This is a compromise collation which sorts
  *     all languages in a mediocre way. However, it is better than "uppercase".
@@ -4776,7 +4969,7 @@ $wgCategoryPagingLimit = 200;
  * the sort keys in the database.
  *
  * Extensions can define there own collations by subclassing Collation
- * and using the class name as the value of this variable.
+ * and using the Collation::factory hook.
  */
 $wgCategoryCollation = 'uppercase';
 
@@ -4793,7 +4986,8 @@ $wgCategoryCollation = 'uppercase';
  * an action, which is a specific kind of event that can exist in that
  * log type.
  */
-$wgLogTypes = array( '',
+$wgLogTypes = array(
+       '',
        'block',
        'protect',
        'rights',
@@ -4846,6 +5040,9 @@ $wgFilterLogTypes = array(
  * will be listed in the user interface.
  *
  * Extensions with custom log types may add to this array.
+ *
+ * Since 1.19, if you follow the naming convention log-name-TYPE,
+ * where TYPE is your log type, yoy don't need to use this array.
  */
 $wgLogNames = array(
        ''        => 'all-logs-page',
@@ -4866,6 +5063,9 @@ $wgLogNames = array(
  * top of each log type.
  *
  * Extensions with custom log types may add to this array.
+ *
+ * Since 1.19, if you follow the naming convention log-description-TYPE,
+ * where TYPE is your log type, yoy don't need to use this array.
  */
 $wgLogHeaders = array(
        ''        => 'alllogstext',
@@ -4897,33 +5097,32 @@ $wgLogActions = array(
        'protect/move_prot'  => 'movedarticleprotection',
        'rights/rights'      => 'rightslogentry',
        'rights/autopromote' => 'rightslogentry-autopromote',
-       'delete/delete'      => 'deletedarticle',
-       'delete/restore'     => 'undeletedarticle',
-       'delete/revision'    => 'revdelete-logentry',
-       'delete/event'       => 'logdelete-logentry',
        'upload/upload'      => 'uploadedimage',
        'upload/overwrite'   => 'overwroteimage',
        'upload/revert'      => 'uploadedimage',
-       'move/move'          => '1movedto2',
-       'move/move_redir'    => '1movedto2_redir',
        'import/upload'      => 'import-logentry-upload',
        'import/interwiki'   => 'import-logentry-interwiki',
        'merge/merge'        => 'pagemerge-logentry',
-       'suppress/revision'  => 'revdelete-logentry',
-       'suppress/file'      => 'revdelete-logentry',
-       'suppress/event'     => 'logdelete-logentry',
-       'suppress/delete'    => 'suppressedarticle',
        'suppress/block'     => 'blocklogentry',
        'suppress/reblock'   => 'reblock-logentry',
-       'patrol/patrol'      => 'patrol-log-line',
 );
 
 /**
  * The same as above, but here values are names of functions,
  * not messages.
  * @see LogPage::actionText
- */
-$wgLogActionsHandlers = array();
+ * @see LogFormatter
+ */
+$wgLogActionsHandlers = array(
+       // move, move_redir
+       'move/*'            => 'MoveLogFormatter',
+       // delete, restore, revision, event
+       'delete/*'          => 'DeleteLogFormatter',
+       'suppress/revision' => 'DeleteLogFormatter',
+       'suppress/event'    => 'DeleteLogFormatter',
+       'suppress/delete'   => 'DeleteLogFormatter',
+       'patrol/patrol'     => 'PatrolLogFormatter',
+);
 
 /**
  * Maintain a log of newusers at Log/newusers?
@@ -5007,6 +5206,7 @@ $wgSpecialPageGroups = array(
        'Block'                     => 'users',
        'Unblock'                   => 'users',
        'Preferences'               => 'users',
+       'ChangeEmail'               => 'users',
        'ChangePassword'            => 'users',
        'DeletedContributions'      => 'users',
        'PasswordReset'             => 'users',
@@ -5088,10 +5288,11 @@ $wgMaxRedirectLinksRetrieved = 500;
  */
 $wgActions = array(
        'credits' => true,
-       'deletetrackback' => true,
+       'history' => true,
        'info' => true,
        'markpatrolled' => true,
        'purge' => true,
+       'raw' => true,
        'revert' => true,
        'revisiondelete' => true,
        'rollback' => true,
@@ -5378,7 +5579,7 @@ $wgUpdateRowsPerQuery = 100;
  */
 
 /**
- * The build directory for HipHop compilation. 
+ * The build directory for HipHop compilation.
  * Defaults to $IP/maintenance/hiphop/build.
  */
 $wgHipHopBuildDirectory = false;
@@ -5397,24 +5598,24 @@ $wgHipHopCompilerProcs = 'detect';
 /**
  * Filesystem extensions directory. Defaults to $IP/../extensions.
  *
- * To compile extensions with HipHop, set $wgExtensionsDirectory correctly, 
+ * To compile extensions with HipHop, set $wgExtensionsDirectory correctly,
  * and use code like:
- *    
+ *
  *    require( MWInit::extensionSetupPath( 'Extension/Extension.php' ) );
  *
- * to include the extension setup file from LocalSettings.php. It is not 
+ * to include the extension setup file from LocalSettings.php. It is not
  * necessary to set this variable unless you use MWInit::extensionSetupPath().
  */
 $wgExtensionsDirectory = false;
 
 /**
- * A list of files that should be compiled into a HipHop build, in addition to 
- * those listed in $wgAutoloadClasses. Add to this array in an extension setup 
- * file in order to add files to the build. 
+ * A list of files that should be compiled into a HipHop build, in addition to
+ * those listed in $wgAutoloadClasses. Add to this array in an extension setup
+ * file in order to add files to the build.
  *
- * The files listed here must either be either absolute paths under $IP or 
+ * The files listed here must either be either absolute paths under $IP or
  * under $wgExtensionsDirectory, or paths relative to the virtual source root
- * "$IP/..", i.e. starting with "phase3" for core files, and "extensions" for 
+ * "$IP/..", i.e. starting with "phase3" for core files, and "extensions" for
  * extension files.
  */
 $wgCompiledFiles = array();
@@ -5500,19 +5701,6 @@ $wgSeleniumConfigFile = null;
 $wgDBtestuser = ''; //db user that has permission to create and drop the test databases only
 $wgDBtestpassword = '';
 
-/**
- * Whether or not to use the AJAX categories system.
- */
-$wgUseAJAXCategories = false;
-
-/**
- * Only enable AJAXCategories on configured namespaces. Default is all.
- *
- * Example:
- *   $wgAJAXCategoriesNamespaces = array( NS_MAIN, NS_PROJECT );
- */
-$wgAJAXCategoriesNamespaces = array();
-
 /**
  * For really cool vim folding this needs to be at the end:
  * vim: foldmarker=@{,@} foldmethod=marker