Merge "Do not pass unused parameter"
[lhc/web/wiklou.git] / includes / api / ApiQueryLogEvents.php
index 2d95cd3..edf7002 100644 (file)
@@ -42,8 +42,6 @@ class ApiQueryLogEvents extends ApiQueryBase {
                $fld_details = false, $fld_tags = false;
 
        public function execute() {
-               global $wgChangeTagsSchemaMigrationStage;
-
                $params = $this->extractRequestParams();
                $db = $this->getDB();
                $this->commentStore = CommentStore::getStore();
@@ -109,25 +107,19 @@ class ApiQueryLogEvents extends ApiQueryBase {
                }
 
                if ( $this->fld_tags ) {
-                       $this->addTables( 'tag_summary' );
-                       $this->addJoinConds( [ 'tag_summary' => [ 'LEFT JOIN', 'log_id=ts_log_id' ] ] );
-                       $this->addFields( 'ts_tags' );
+                       $this->addFields( [ 'ts_tags' => ChangeTags::makeTagSummarySubquery( 'logging' ) ] );
                }
 
                if ( !is_null( $params['tag'] ) ) {
                        $this->addTables( 'change_tag' );
                        $this->addJoinConds( [ 'change_tag' => [ 'INNER JOIN',
                                [ 'log_id=ct_log_id' ] ] ] );
-                       if ( $wgChangeTagsSchemaMigrationStage > MIGRATION_WRITE_BOTH ) {
-                               $changeTagDefStore = MediaWikiServices::getInstance()->getChangeTagDefStore();
-                               try {
-                                       $this->addWhereFld( 'ct_tag_id', $changeTagDefStore->getId( $params['tag'] ) );
-                               } catch ( NameTableAccessException $exception ) {
-                                       // Return nothing.
-                                       $this->addWhere( '1=0' );
-                               }
-                       } else {
-                               $this->addWhereFld( 'ct_tag', $params['tag'] );
+                       $changeTagDefStore = MediaWikiServices::getInstance()->getChangeTagDefStore();
+                       try {
+                               $this->addWhereFld( 'ct_tag_id', $changeTagDefStore->getId( $params['tag'] ) );
+                       } catch ( NameTableAccessException $exception ) {
+                               // Return nothing.
+                               $this->addWhere( '1=0' );
                        }
                }
 
@@ -388,6 +380,12 @@ class ApiQueryLogEvents extends ApiQueryBase {
 
        public function getAllowedParams( $flags = 0 ) {
                $config = $this->getConfig();
+               if ( $flags & ApiBase::GET_VALUES_FOR_HELP ) {
+                       $logActions = $this->getAllowedLogActions();
+                       sort( $logActions );
+               } else {
+                       $logActions = null;
+               }
                $ret = [
                        'prop' => [
                                ApiBase::PARAM_ISMULTI => true,
@@ -411,9 +409,7 @@ class ApiQueryLogEvents extends ApiQueryBase {
                        ],
                        'action' => [
                                // validation on request is done in execute()
-                               ApiBase::PARAM_TYPE => ( $flags & ApiBase::GET_VALUES_FOR_HELP )
-                                       ? $this->getAllowedLogActions()
-                                       : null
+                               ApiBase::PARAM_TYPE => $logActions
                        ],
                        'start' => [
                                ApiBase::PARAM_TYPE => 'timestamp'