/**
  *
  * @global OutputPage $this->getOutput()
  * @param type $sParameter
  * @return type 
  */
 public function execute($sParameter)
 {
     parent::execute($sParameter);
     $extension = false;
     if ($sParameter) {
         $sParameter = $this->parseParams($sParameter);
     } else {
         $sParameter = array('Page' => $this->getRequest()->getVal('Page', ''));
     }
     if (isset($sParameter['Page'])) {
         $extension = $sParameter['Page'];
     }
     $rssFeeds = RSSFeeder::getRegisteredFeeds();
     if ($extension && is_array($rssFeeds[$extension])) {
         $this->getOutput()->disable();
         $runner = $rssFeeds[$extension]['method'];
         header('Content-Type: application/xml; charset=UTF-8');
         echo $rssFeeds[$extension]['object']->{$runner}($sParameter);
         return;
     }
     $this->getOutput()->addModuleStyles('ext.bluespice.rssFeeder');
     $form = new ViewBaseForm();
     $form->setId('RSSFeederForm');
     #$form->setValidationUrl( 'index.php?&action=remote&mod=RSSFeeder&rf=validate' );
     $label = new ViewFormElementLabel();
     $label->useAutoWidth();
     $label->setText('<h3>' . wfMessage('bs-rssfeeder-pagetext')->plain() . '</h3>');
     $form->addItem($label);
     foreach ($rssFeeds as $name => $feed) {
         $func = $feed['buildLinks'];
         $form->addItem($feed['object']->{$func}());
     }
     $this->getOutput()->addHTML($form->execute());
 }
 public function buildLinksOwn()
 {
     global $wgUser;
     $set = new ViewFormElementFieldset();
     $set->setLabel(wfMessage('bs-rssstandards-title-own')->plain());
     $label = new ViewFormElementLabel();
     $label->useAutoWidth();
     $label->setFor('btnFeedOwn');
     $label->setText(wfMessage('bs-rssstandards-desc-own')->plain());
     $oSpecialRSS = SpecialPage::getTitleFor('RSSFeeder');
     $sUserName = $wgUser->getName();
     $sUserToken = $wgUser->getToken();
     $btn = new ViewFormElementButton();
     $btn->setId('btnFeedOwn');
     $btn->setName('btnFeedOwn');
     $btn->setType('button');
     $btn->setValue($oSpecialRSS->getLinkUrl(array('Page' => 'followOwn', 'u' => $sUserName, 'h' => $sUserToken)));
     $btn->setLabel(wfMessage('bs-rssfeeder-submit')->plain());
     $set->addItem($label);
     $set->addItem($btn);
     return $set;
 }