X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fuser%2FUser.php;h=aa211841f8836f93745f8cc141c695f7b2f8ef40;hb=44686573c91c00212702c115c0131ab1f496aae2;hp=9777148b38fcaa3fb426700122fe0eb78a68e65f;hpb=14cb8f992f7f9d1e1b405c200720c53f4e62b8d2;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/user/User.php b/includes/user/User.php index 9777148b38..aa211841f8 100644 --- a/includes/user/User.php +++ b/includes/user/User.php @@ -150,10 +150,12 @@ class User implements IDBAccessObject, UserIdentity { 'editmyoptions', 'editmyprivateinfo', 'editmyusercss', + 'editmyuserjson', 'editmyuserjs', 'editmywatchlist', 'editsemiprotected', 'editusercss', + 'edituserjson', 'edituserjs', 'hideuser', 'import', @@ -2106,10 +2108,6 @@ class User implements IDBAccessObject, UserIdentity { if ( isset( $limits['user'] ) ) { $userLimit = $limits['user']; } - // limits for newbie logged-in users - if ( $isNewbie && isset( $limits['newbie'] ) ) { - $keys[$cache->makeKey( 'limiter', $action, 'user', $id )] = $limits['newbie']; - } } // limits for anons and for newbie logged-in users @@ -2141,6 +2139,11 @@ class User implements IDBAccessObject, UserIdentity { } } + // limits for newbie logged-in users (override all the normal user limits) + if ( $id !== 0 && $isNewbie && isset( $limits['newbie'] ) ) { + $userLimit = $limits['newbie']; + } + // Set the user limit key if ( $userLimit !== false ) { list( $max, $period ) = $userLimit; @@ -3082,7 +3085,7 @@ class User implements IDBAccessObject, UserIdentity { * Get the user's current setting for a given option. * * @param string $oname The option to check - * @param string $defaultOverride A default value returned if the option does not exist + * @param string|array $defaultOverride A default value returned if the option does not exist * @param bool $ignoreHidden Whether to ignore the effects of $wgHiddenPrefs * @return string|array|int|null User's current value for the option * @see getBoolOption() @@ -4557,17 +4560,6 @@ class User implements IDBAccessObject, UserIdentity { return $this->getEditTokenObject( $salt, $request )->toString(); } - /** - * Get the embedded timestamp from a token. - * @deprecated since 1.27, use \MediaWiki\Session\Token::getTimestamp instead. - * @param string $val Input token - * @return int|null - */ - public static function getEditTokenTimestamp( $val ) { - wfDeprecated( __METHOD__, '1.27' ); - return MediaWiki\Session\Token::getTimestamp( $val ); - } - /** * Check given value against the token value stored in the session. * A match should confirm that the form was submitted from the @@ -5568,78 +5560,6 @@ class User implements IDBAccessObject, UserIdentity { $dbw->insert( 'user_properties', $insert_rows, __METHOD__, [ 'IGNORE' ] ); } - /** - * Lazily instantiate and return a factory object for making passwords - * - * @deprecated since 1.27, create a PasswordFactory directly instead - * @return PasswordFactory - */ - public static function getPasswordFactory() { - wfDeprecated( __METHOD__, '1.27' ); - $ret = new PasswordFactory(); - $ret->init( RequestContext::getMain()->getConfig() ); - return $ret; - } - - /** - * Provide an array of HTML5 attributes to put on an input element - * intended for the user to enter a new password. This may include - * required, title, and/or pattern, depending on $wgMinimalPasswordLength. - * - * Do *not* use this when asking the user to enter his current password! - * Regardless of configuration, users may have invalid passwords for whatever - * reason (e.g., they were set before requirements were tightened up). - * Only use it when asking for a new password, like on account creation or - * ResetPass. - * - * Obviously, you still need to do server-side checking. - * - * NOTE: A combination of bugs in various browsers means that this function - * actually just returns array() unconditionally at the moment. May as - * well keep it around for when the browser bugs get fixed, though. - * - * @todo FIXME: This does not belong here; put it in Html or Linker or somewhere - * - * @deprecated since 1.27 - * @return array Array of HTML attributes suitable for feeding to - * Html::element(), directly or indirectly. (Don't feed to Xml::*()! - * That will get confused by the boolean attribute syntax used.) - */ - public static function passwordChangeInputAttribs() { - global $wgMinimalPasswordLength; - - if ( $wgMinimalPasswordLength == 0 ) { - return []; - } - - # Note that the pattern requirement will always be satisfied if the - # input is empty, so we need required in all cases. - - # @todo FIXME: T25769: This needs to not claim the password is required - # if e-mail confirmation is being used. Since HTML5 input validation - # is b0rked anyway in some browsers, just return nothing. When it's - # re-enabled, fix this code to not output required for e-mail - # registration. - # $ret = array( 'required' ); - $ret = []; - - # We can't actually do this right now, because Opera 9.6 will print out - # the entered password visibly in its error message! When other - # browsers add support for this attribute, or Opera fixes its support, - # we can add support with a version check to avoid doing this on Opera - # versions where it will be a problem. Reported to Opera as - # DSK-262266, but they don't have a public bug tracker for us to follow. - /* - if ( $wgMinimalPasswordLength > 1 ) { - $ret['pattern'] = '.{' . intval( $wgMinimalPasswordLength ) . ',}'; - $ret['title'] = wfMessage( 'passwordtooshort' ) - ->numParams( $wgMinimalPasswordLength )->text(); - } - */ - - return $ret; - } - /** * Return the list of user fields that should be selected to create * a new user object.