Merge "Define fallback skin using $wgFallbackSkin instead of hardcoding Vector"
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>
Wed, 30 Jul 2014 00:26:38 +0000 (00:26 +0000)
committerGerrit Code Review <gerrit@wikimedia.org>
Wed, 30 Jul 2014 00:26:38 +0000 (00:26 +0000)
1  2 
includes/DefaultSettings.php

@@@ -2963,6 -2963,13 +2963,13 @@@ $wgValidateAllHtml = false
   */
  $wgDefaultSkin = 'vector';
  
+ /**
+  * Fallback skin used when the skin defined by $wgDefaultSkin can't be found.
+  *
+  * @since 1.24
+  */
+ $wgFallbackSkin = 'vector';
  /**
   * Specify the names of skins that should not be presented in the list of
   * available skins in user preferences. If you want to remove a skin entirely,
@@@ -3186,111 -3193,6 +3193,111 @@@ $wgEnableCanonicalServerLink = false
   */
  $wgResourceModules = array();
  
 +/**
 + * Skin-specific styles for resource modules.
 + *
 + * These are later added to the 'skinStyles' list of the existing module. The 'styles' list can
 + * not be modified or disabled.
 + *
 + * For example, here is a module "bar" and how skin Foo would provide additional styles for it.
 + *
 + * @par Example:
 + * @code
 + *   $wgResourceModules['bar'] = array(
 + *     'scripts' => 'resources/bar/bar.js',
 + *     'styles' => 'resources/bar/main.css',
 + *   );
 + *
 + *   $wgResourceModuleSkinStyles['foo'] = array(
 + *     'bar' => 'skins/Foo/bar.css',
 + *   );
 + * @endcode
 + *
 + * This is mostly equivalent to:
 + *
 + * @par Equivalent:
 + * @code
 + *   $wgResourceModules['bar'] = array(
 + *     'scripts' => 'resources/bar/bar.js',
 + *     'styles' => 'resources/bar/main.css',
 + *     'skinStyles' => array(
 + *       'foo' => skins/Foo/bar.css',
 + *     ),
 + *   );
 + * @endcode
 + *
 + * If the module already defines its own entry in `skinStyles` for a given skin, then
 + * $wgResourceModuleSkinStyles is ignored.
 + *
 + * If a module defines a `skinStyles['default']` the skin may want to extend that instead
 + * of replacing them. This can be done using the `+` prefix.
 + *
 + * @par Example:
 + * @code
 + *   $wgResourceModules['bar'] = array(
 + *     'scripts' => 'resources/bar/bar.js',
 + *     'styles' => 'resources/bar/basic.css',
 + *     'skinStyles' => array(
 + *       'default' => 'resources/bar/additional.css',
 + *     ),
 + *   );
 + *   // Note the '+' character:
 + *   $wgResourceModuleSkinStyles['+foo'] = array(
 + *     'bar' => 'skins/Foo/bar.css',
 + *   );
 + * @endcode
 + *
 + * This is mostly equivalent to:
 + *
 + * @par Equivalent:
 + * @code
 + *   $wgResourceModules['bar'] = array(
 + *     'scripts' => 'resources/bar/bar.js',
 + *     'styles' => 'resources/bar/basic.css',
 + *     'skinStyles' => array(
 + *       'default' => 'resources/bar/additional.css',
 + *       'foo' => array(
 + *         'resources/bar/additional.css',
 + *         'skins/Foo/bar.css',
 + *       ),
 + *     ),
 + *   );
 + * @endcode
 + *
 + * In other words, as a module author, use the `styles` list for stylesheets that may not be
 + * disabled by a skin. To provide default styles that may be extended or replaced,
 + * use `skinStyles['default']`.
 + *
 + * As with $wgResourceModules, paths default to being relative to the MediaWiki root.
 + * You should always provide a localBasePath and remoteBasePath (or remoteExtPath/remoteSkinPath).
 + * Either for all skin styles at once (first example below) or for each module separately (second
 + * example).
 + *
 + * @par Example:
 + * @code
 + *   $wgResourceModuleSkinStyles['foo'] = array(
 + *     'bar' => 'bar.css',
 + *     'quux' => 'quux.css',
 + *     'remoteSkinPath' => 'Foo',
 + *     'localBasePath' => __DIR__,
 + *   );
 + *
 + *   $wgResourceModuleSkinStyles['foo'] = array(
 + *     'bar' => array(
 + *       'bar.css',
 + *       'remoteSkinPath' => 'Foo',
 + *       'localBasePath' => __DIR__,
 + *     ),
 + *     'quux' => array(
 + *       'quux.css',
 + *       'remoteSkinPath' => 'Foo',
 + *       'localBasePath' => __DIR__,
 + *     ),
 + *   );
 + * @endcode
 + */
 +$wgResourceModuleSkinStyles = array();
 +
  /**
   * Extensions should register foreign module sources here. 'local' is a
   * built-in source that is not in this array, but defined by
@@@ -4117,7 -4019,6 +4124,7 @@@ $wgActiveUserDays = 30
  
  /**
   * For compatibility with old installations set to false
 + * @deprecated since 1.24 will be removed in future
   */
  $wgPasswordSalt = true;
  
@@@ -4134,65 -4035,6 +4141,65 @@@ $wgMinimalPasswordLength = 1
   */
  $wgInvalidPasswordReset = true;
  
 +/**
 + * Default password type to use when hashing user passwords
 + *
 + * @since 1.24
 + */
 +$wgPasswordDefault = 'B';
 +
 +/**
 + * Configuration for built-in password types. Maps the password type
 + * to an array of options. The 'class' option is the Password class to
 + * use. All other options are class-dependent.
 + *
 + * An advanced example:
 + * @code
 + * $wgPasswordConfig['bcrypt-peppered'] = array(
 + *     'class' => 'EncryptedPassword',
 + *     'underlying' => 'bcrypt',
 + *     'secrets' => array(),
 + *     'cipher' => MCRYPT_RIJNDAEL_256,
 + *     'mode' => MCRYPT_MODE_CBC,
 + *     'cost' => 5,
 + * );
 + * @endcode
 + *
 + * @since 1.24
 + */
 +$wgPasswordConfig = array(
 +      'A' => array(
 +              'class' => 'MWOldPassword',
 +      ),
 +      'B' => array(
 +              'class' => 'MWSaltedPassword',
 +      ),
 +      'pbkdf2-legacyA' => array(
 +              'class' => 'LayeredParameterizedPassword',
 +              'types' => array(
 +                      'A',
 +                      'pbkdf2',
 +              ),
 +      ),
 +      'pbkdf2-legacyB' => array(
 +              'class' => 'LayeredParameterizedPassword',
 +              'types' => array(
 +                      'B',
 +                      'pbkdf2',
 +              ),
 +      ),
 +      'bcrypt' => array(
 +              'class' => 'BcryptPassword',
 +              'cost' => 9,
 +      ),
 +      'pbkdf2' => array(
 +              'class' => 'Pbkdf2Password',
 +              'algo' => 'sha256',
 +              'cost' => '10000',
 +              'length' => '128',
 +      ),
 +);
 +
  /**
   * 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