- if ( $params['mainmodule'] )
- $r['mainmodule'] = $this->getClassInfo( $this->getMain() );
- if ( $params['pagesetmodule'] )
- {
- $pageSet = new ApiPageSet( $queryObj );
- $r['pagesetmodule'] = $this->getClassInfo( $pageSet );
+
+ if ( is_array( $params['formatmodules'] ) ) {
+ $formats = $this->getMain()->getFormats();
+ $res['formatmodules'] = array();
+ foreach ( $params['formatmodules'] as $f ) {
+ if ( !isset( $formats[$f] ) ) {
+ $res['formatmodules'][] = array( 'name' => $f, 'missing' => '' );
+ continue;
+ }
+ $obj = new $formats[$f]( $this, $f );
+ $item = $this->getClassInfo( $obj );
+ $item['name'] = $f;
+ $res['formatmodules'][] = $item;
+ }
+ $result->setIndexedTagName( $res['formatmodules'], 'module' );