questlab/www/analytics/plugins/ExampleRssWidget/Widgets.php
2016-04-10 18:55:57 +02:00

64 lines
1.4 KiB
PHP

<?php
/**
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\ExampleRssWidget;
use Piwik\Common;
use Piwik\Piwik;
class Widgets extends \Piwik\Plugin\Widgets
{
protected $category = 'About Piwik';
protected function init()
{
$this->addWidget('Piwik.org Blog', 'rssPiwik');
$this->addWidget('Piwik Changelog', 'rssChangelog');
}
public function rssPiwik()
{
try {
$rss = new RssRenderer('http://feeds.feedburner.com/Piwik');
$rss->showDescription(true);
return $rss->get();
} catch (\Exception $e) {
return $this->error($e);
}
}
public function rssChangelog()
{
try {
$rss = new RssRenderer('http://feeds.feedburner.com/PiwikReleases');
$rss->setCountPosts(1);
$rss->showDescription(true);
$rss->showContent(false);
return $rss->get();
} catch (\Exception $e) {
return $this->error($e);
}
}
/**
* @param \Exception $e
* @return string
*/
private function error($e)
{
return '<div class="pk-emptyDataTable">'
. Piwik::translate('General_ErrorRequest', array('', ''))
. ' - ' . $e->getMessage() . '</div>';
}
}