Display "Printable version" links in toolbox on special pages
[lhc/web/wiklou.git] / includes / api / ApiQueryUserContributions.php
index 2410f05..1e013eb 100644 (file)
@@ -48,7 +48,7 @@ class ApiQueryContributions extends ApiQueryBase {
                $this->fld_ids = isset( $prop['ids'] );
                $this->fld_title = isset( $prop['title'] );
                $this->fld_comment = isset( $prop['comment'] );
-               $this->fld_parsedcomment = isset ( $prop['parsedcomment'] );
+               $this->fld_parsedcomment = isset( $prop['parsedcomment'] );
                $this->fld_size = isset( $prop['size'] );
                $this->fld_sizediff = isset( $prop['sizediff'] );
                $this->fld_flags = isset( $prop['flags'] );
@@ -83,10 +83,10 @@ class ApiQueryContributions extends ApiQueryBase {
                // Do the actual query.
                $res = $this->select( __METHOD__ );
 
-               if( $this->fld_sizediff ) {
+               if ( $this->fld_sizediff ) {
                        $revIds = array();
                        foreach ( $res as $row ) {
-                               if( $row->rev_parent_id ) {
+                               if ( $row->rev_parent_id ) {
                                        $revIds[] = $row->rev_parent_id;
                                }
                        }
@@ -255,7 +255,7 @@ class ApiQueryContributions extends ApiQueryBase {
                $this->addFieldsIf( 'rev_comment', $this->fld_comment || $this->fld_parsedcomment );
                $this->addFieldsIf( 'rev_len', $this->fld_size || $this->fld_sizediff );
                $this->addFieldsIf( 'rev_minor_edit', $this->fld_flags );
-               $this->addFieldsIf( 'rev_parent_id', $this->fld_flags || $this->fld_sizediff );
+               $this->addFieldsIf( 'rev_parent_id', $this->fld_flags || $this->fld_sizediff || $this->fld_ids );
                $this->addFieldsIf( 'rc_patrolled', $this->fld_patrolled );
 
                if ( $this->fld_tags ) {
@@ -297,6 +297,10 @@ class ApiQueryContributions extends ApiQueryBase {
                        $vals['pageid'] = intval( $row->rev_page );
                        $vals['revid'] = intval( $row->rev_id );
                        // $vals['textid'] = intval( $row->rev_text_id ); // todo: Should this field be exposed?
+
+                       if ( !is_null( $row->rev_parent_id ) ) {
+                               $vals['parentid'] = intval( $row->rev_parent_id );
+                       }
                }
 
                $title = Title::makeTitle( $row->page_namespace, $row->page_title );
@@ -442,7 +446,7 @@ class ApiQueryContributions extends ApiQueryBase {
                        'end' => 'The end timestamp to return to',
                        'continue' => 'When more results are available, use this to continue',
                        'user' => 'The users to retrieve contributions for',
-                       'userprefix' => "Retrieve contibutions for all users whose names begin with this value. Overrides {$p}user",
+                       'userprefix' => "Retrieve contributions for all users whose names begin with this value. Overrides {$p}user",
                        'dir' => $this->getDirectionDescription( $p ),
                        'namespace' => 'Only list contributions in these namespaces',
                        'prop' => array(
@@ -474,7 +478,11 @@ class ApiQueryContributions extends ApiQueryBase {
                        ),
                        'ids' => array(
                                'pageid' => 'integer',
-                               'revid' => 'integer'
+                               'revid' => 'integer',
+                               'parentid' => array(
+                                       ApiBase::PROP_TYPE => 'integer',
+                                       ApiBase::PROP_NULLABLE => true
+                               )
                        ),
                        'title' => array(
                                'ns' => 'namespace',