Anomie has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/239121

Change subject: Use new User::newSystemUser() when available
......................................................................

Use new User::newSystemUser() when available

See core change I2c736ad72d946fa9b859e6cd335fa58aececc0d5.

Change-Id: I3f20b408c039937c1f08c9232c336268ba13895d
---
M AbuseFilter.class.php
M AbuseFilter.hooks.php
2 files changed, 40 insertions(+), 30 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/AbuseFilter 
refs/changes/21/239121/1

diff --git a/AbuseFilter.class.php b/AbuseFilter.class.php
index 1efa44e..864b52c 100755
--- a/AbuseFilter.class.php
+++ b/AbuseFilter.class.php
@@ -1617,26 +1617,31 @@
         * @return User
         */
        public static function getFilterUser() {
-               $user = User::newFromName( wfMessage( 'abusefilter-blocker' 
)->inContentLanguage()->text() );
-               $user->load();
-               if ( $user->getId() && $user->mPassword == '' ) {
-                       // Already set up.
-                       return $user;
-               }
-
-               // Not set up. Create it.
-               if ( !$user->getId() ) {
-                       print 'Trying to create account -- user id is ' . 
$user->getId();
-                       $user->addToDatabase();
-                       $user->saveSettings();
-                       // Increment site_stats.ss_users
-                       $ssu = new SiteStatsUpdate( 0, 0, 0, 0, 1 );
-                       $ssu->doUpdate();
+               $username = wfMessage( 'abusefilter-blocker' 
)->inContentLanguage()->text();
+               if ( method_exists( 'User', 'newSystemUser' ) ) {
+                       $user = User::newSystemUser( $username, array( 'steal' 
=> true ) );
                } else {
-                       // Take over the account
-                       $user->setPassword( null );
-                       $user->setEmail( null );
-                       $user->saveSettings();
+                       $user = User::newFromName( $username );
+                       $user->load();
+                       if ( $user->getId() && $user->mPassword == '' ) {
+                               // Already set up.
+                               return $user;
+                       }
+
+                       // Not set up. Create it.
+                       if ( !$user->getId() ) {
+                               print 'Trying to create account -- user id is ' 
. $user->getId();
+                               $user->addToDatabase();
+                               $user->saveSettings();
+                               // Increment site_stats.ss_users
+                               $ssu = new SiteStatsUpdate( 0, 0, 0, 0, 1 );
+                               $ssu->doUpdate();
+                       } else {
+                               // Take over the account
+                               $user->setPassword( null );
+                               $user->setEmail( null );
+                               $user->saveSettings();
+                       }
                }
 
                // Promote user so it doesn't look too crazy.
diff --git a/AbuseFilter.hooks.php b/AbuseFilter.hooks.php
index 27c7152..c7bb11c 100755
--- a/AbuseFilter.hooks.php
+++ b/AbuseFilter.hooks.php
@@ -559,20 +559,25 @@
         * @param $updater DatabaseUpdater
         */
        public static function createAbuseFilterUser( $updater ) {
-               $user = User::newFromName( wfMessage( 'abusefilter-blocker' 
)->inContentLanguage()->text() );
+               $username = wfMessage( 'abusefilter-blocker' 
)->inContentLanguage()->text();
+               $user = User::newFromName( $username );
 
                if ( $user && !$updater->updateRowExists( 'create 
abusefilter-blocker-user' ) ) {
-                       if ( !$user->getId() ) {
-                               $user->addToDatabase();
-                               $user->saveSettings();
-                               # Increment site_stats.ss_users
-                               $ssu = new SiteStatsUpdate( 0, 0, 0, 0, 1 );
-                               $ssu->doUpdate();
+                       if ( method_exists( 'User', 'newSystemUser' ) ) {
+                               $user = User::newSystemUser( $username, array( 
'steal' => true ) );
                        } else {
-                               // Sorry dude, we need this account.
-                               $user->setPassword( null );
-                               $user->setEmail( null );
-                               $user->saveSettings();
+                               if ( !$user->getId() ) {
+                                       $user->addToDatabase();
+                                       $user->saveSettings();
+                                       # Increment site_stats.ss_users
+                                       $ssu = new SiteStatsUpdate( 0, 0, 0, 0, 
1 );
+                                       $ssu->doUpdate();
+                               } else {
+                                       // Sorry dude, we need this account.
+                                       $user->setPassword( null );
+                                       $user->setEmail( null );
+                                       $user->saveSettings();
+                               }
                        }
                        $updater->insertUpdateRow( 'create 
abusefilter-blocker-user' );
                        # Promote user so it doesn't look too crazy.

-- 
To view, visit https://gerrit.wikimedia.org/r/239121
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3f20b408c039937c1f08c9232c336268ba13895d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/AbuseFilter
Gerrit-Branch: master
Gerrit-Owner: Anomie <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to