diff --git a/inc/poche/Poche.class.php b/inc/poche/Poche.class.php index fefbb02..68f56d6 100644 --- a/inc/poche/Poche.class.php +++ b/inc/poche/Poche.class.php @@ -446,8 +446,11 @@ class Poche ); break; case 'tags': + $token = $this->user->getConfigValue('token'); $tags = $this->store->retrieveAllTags(); $tpl_vars = array( + 'token' => $token, + 'user_id' => $this->user->getId(), 'tags' => $tags, ); break; @@ -884,9 +887,9 @@ class Poche $_SESSION['poche_user']->setConfig($currentConfig); } - public function generateFeeds($token, $user_id, $type = 'home') + public function generateFeeds($token, $user_id, $tag_id, $type = 'home') { - $allowed_types = array('home', 'fav', 'archive'); + $allowed_types = array('home', 'fav', 'archive', 'tag'); $config = $this->store->getConfigUser($user_id); if (!in_array($type, $allowed_types) || @@ -901,7 +904,13 @@ class Poche $feed->setChannelElement('updated', date(DATE_RSS , time())); $feed->setChannelElement('author', 'poche'); - $entries = $this->store->getEntriesByView($type, $user_id); + if ($type == 'tag') { + $entries = $this->store->retrieveEntriesByTag($tag_id); + } + else { + $entries = $this->store->getEntriesByView($type, $user_id); + } + if (count($entries) > 0) { foreach ($entries as $entry) { $newItem = $feed->createNewItem(); diff --git a/index.php b/index.php index 96f28a7..836730b 100644 --- a/index.php +++ b/index.php @@ -75,7 +75,8 @@ if (isset($_GET['login'])) { $poche->generateToken(); } else { - $poche->generateFeeds($_GET['token'], $_GET['user_id'], $_GET['type']); + $tag_id = (isset($_GET['tag_id']) ? intval($_GET['tag_id']) : 0); + $poche->generateFeeds($_GET['token'], $_GET['user_id'], $tag_id, $_GET['type']); } } diff --git a/themes/default/img/default/rss.png b/themes/default/img/default/rss.png new file mode 100644 index 0000000..21bad1a Binary files /dev/null and b/themes/default/img/default/rss.png differ diff --git a/themes/default/tags.twig b/themes/default/tags.twig index e179143..cff6b1d 100644 --- a/themes/default/tags.twig +++ b/themes/default/tags.twig @@ -4,5 +4,5 @@ {% include '_menu.twig' %} {% endblock %} {% block content %} -{% for tag in tags %}{{ tag.value }} {% endfor %} +{% for tag in tags %}{{ tag.value }} {% if token != '' %}{% endif %} {% endfor %} {% endblock %} \ No newline at end of file