aboutsummaryrefslogtreecommitdiffstats
path: root/includes/block
diff options
context:
space:
mode:
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>2024-02-02 11:37:53 +0000
committerGerrit Code Review <gerrit@wikimedia.org>2024-02-02 11:37:53 +0000
commitc388d916522d7f1cc0edf22e91d4f09278e4a062 (patch)
tree74020ba11c500cf4b55617b01e7796450244c4c9 /includes/block
parente2af0481f2c85cdba67afd7931092a7d9d4adeed (diff)
parentb179bbf9b45daef1e5f14af5a322e8e0a9456524 (diff)
downloadmediawikicore-c388d916522d7f1cc0edf22e91d4f09278e4a062.tar.gz
mediawikicore-c388d916522d7f1cc0edf22e91d4f09278e4a062.zip
Merge "BlockUser: parse expiries using ExpiryDef::normalizeExpiry"
Diffstat (limited to 'includes/block')
-rw-r--r--includes/block/BlockUser.php16
1 files changed, 5 insertions, 11 deletions
diff --git a/includes/block/BlockUser.php b/includes/block/BlockUser.php
index c70e155a8616..09d8a0a85c74 100644
--- a/includes/block/BlockUser.php
+++ b/includes/block/BlockUser.php
@@ -22,6 +22,7 @@
namespace MediaWiki\Block;
use ChangeTags;
+use InvalidArgumentException;
use ManualLogEntry;
use MediaWiki\Block\Restriction\AbstractRestriction;
use MediaWiki\Block\Restriction\ActionRestriction;
@@ -43,7 +44,7 @@ use MediaWiki\User\UserIdentity;
use Message;
use Psr\Log\LoggerInterface;
use RevisionDeleteUser;
-use Wikimedia\Timestamp\ConvertibleTimestamp;
+use Wikimedia\ParamValidator\TypeDef\ExpiryDef;
/**
* Handles the backend logic of blocking users
@@ -328,18 +329,11 @@ class BlockUser {
* @return string|false Timestamp (format TS_MW) or 'infinity' or false on error.
*/
public static function parseExpiryInput( string $expiry ) {
- if ( wfIsInfinity( $expiry ) ) {
- return 'infinity';
- }
-
- // ConvertibleTimestamp::time() used so we can fake the current time in tests
- $expiry = strtotime( $expiry, ConvertibleTimestamp::time() );
-
- if ( $expiry < 0 || $expiry === false ) {
+ try {
+ return ExpiryDef::normalizeExpiry( $expiry, TS_MW );
+ } catch ( InvalidArgumentException $e ) {
return false;
}
-
- return wfTimestamp( TS_MW, $expiry );
}
/**