Avoid DBPerformance warnings in ApiClearHasMsg
authorAaron Schulz <aschulz@wikimedia.org>
Sat, 24 Sep 2016 03:28:21 +0000 (20:28 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Sat, 24 Sep 2016 03:28:21 +0000 (20:28 -0700)
Change-Id: I592d0718204376276b3508bf32b9dc446a05b351

includes/api/ApiClearHasMsg.php

index 4ddbd04..13b3577 100644 (file)
 class ApiClearHasMsg extends ApiBase {
        public function execute() {
                $user = $this->getUser();
-               $user->setNewtalk( false );
+               if ( $this->getRequest()->wasPosted() ) {
+                       $user->setNewtalk( false );
+               } else {
+                       DeferredUpdates::addCallableUpdate( function () use ( $user ) {
+                               $user->setNewtalk( false );
+                       } );
+               }
                $this->getResult()->addValue( null, $this->getModuleName(), 'success' );
        }