diff options
Diffstat (limited to 'includes/api/ApiFeedRecentChanges.php')
-rw-r--r-- | includes/api/ApiFeedRecentChanges.php | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/includes/api/ApiFeedRecentChanges.php b/includes/api/ApiFeedRecentChanges.php index d452bbd6..d24112c7 100644 --- a/includes/api/ApiFeedRecentChanges.php +++ b/includes/api/ApiFeedRecentChanges.php @@ -66,9 +66,17 @@ class ApiFeedRecentChanges extends ApiBase { $formatter = $this->getFeedObject( $feedFormat, $specialClass ); - // Everything is passed implicitly via $wgRequest… :( - // The row-getting functionality should maybe be factored out of ChangesListSpecialPage too… + // Parameters are passed via the request in the context… :( + $context = new DerivativeContext( $this ); + $context->setRequest( new DerivativeRequest( + $this->getRequest(), + $this->params, + $this->getRequest()->wasPosted() + ) ); + + // The row-getting functionality should be factored out of ChangesListSpecialPage too… $rc = new $specialClass(); + $rc->setContext( $context ); $rows = $rc->getRows(); $feedItems = $rows ? ChangesFeed::buildItems( $rows ) : array(); |