http://www.mediawiki.org/wiki/Special:Code/MediaWiki/94641

Revision: 94641
Author:   kbrown
Date:     2011-08-16 14:48:07 +0000 (Tue, 16 Aug 2011)
Log Message:
-----------
fix problem with ApiQueryArchiveFeed with improper paramater types and not 
continueing.

Modified Paths:
--------------
    trunk/extensions/ArchiveLinks/ApiQueryArchiveFeed.php

Modified: trunk/extensions/ArchiveLinks/ApiQueryArchiveFeed.php
===================================================================
--- trunk/extensions/ArchiveLinks/ApiQueryArchiveFeed.php       2011-08-16 
14:45:37 UTC (rev 94640)
+++ trunk/extensions/ArchiveLinks/ApiQueryArchiveFeed.php       2011-08-16 
14:48:07 UTC (rev 94641)
@@ -2,7 +2,7 @@
 
 class ApiQueryArchiveFeed extends ApiQueryBase {
        function __construct ( $query, $moduleName ) {
-               parent::__construct( $query, $moduleName, 'al' );
+               parent::__construct( $query, $moduleName, 'arl' );
        }
        
        public function execute ( ) {
@@ -10,7 +10,7 @@
                
                $this->addTables( 'el_archive_queue' );
                $this->addFields( '*' );
-               $this->addWhereRange( 'insertion_time', $params['dir'], 
$params['start'], $params['end'] );
+               $this->addWhereRange( 'queue_id', $params['dir'], 
$params['start'], $params['end'] );
                $this->addOption( 'LIMIT', $params['limit'] + 1 );
                
                $res = $this->select( __METHOD__ );
@@ -22,10 +22,11 @@
                foreach ( $res as $row ) {
                        //much of this is stolen from ApiQueryRecentChanges
                        if ( ++ $count > $params['limit'] ) {
-                               $this->setContinueEnumParameter( 'start', 
wfTimestamp( TS_UNIX, $row->insertion_time ) );
+                               $this->setContinueEnumParameter( 'start', 
$row->queue_id );
                                break;
                        }
                        
+                       $val['feed_id'] = $row->queue_id;
                        $val['time'] = $row->insertion_time;
             $val['page_id'] = $row->page_id;
             $val['url'] = $row->url;
@@ -33,7 +34,7 @@
                        $fit = $result->addValue( array( 'query', 
$this->getModuleName() ), null, $val );
                        
                        if ( !$fit ) {
-                               $this->setContinueEnumParameter( 'start', 
wfTimestamp( TS_UNIX, $row->insertion_time ) );
+                               $this->setContinueEnumParameter( 'start', 
$row->queue_id );
                                break;
                        }
                }
@@ -55,10 +56,10 @@
                                ApiBase::PARAM_MAX2 => ApiBase::LIMIT_BIG2
                        ),
                        'start' => array(
-                               ApiBase::PARAM_TYPE => 'timestamp'
+                               ApiBase::PARAM_TYPE => 'integer'
                        ),
                        'end' => array(
-                               ApiBase::PARAM_TYPE => 'timestamp'
+                               ApiBase::PARAM_TYPE => 'integer'
                        ),
                        'dir' => array(
                                ApiBase::PARAM_DFLT => 'older',


_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to