);
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;
$_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) ||
$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();
$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']);
}
}
{% include '_menu.twig' %}
{% endblock %}
{% block content %}
-{% for tag in tags %}<a href="./?view=tag&id={{ tag.id }}">{{ tag.value }}</a> {% endfor %}
+{% for tag in tags %}<a href="./?view=tag&id={{ tag.id }}">{{ tag.value }}</a> {% if token != '' %}<a href="?feed&type=tag&user_id={{ user_id }}&tag_id={{ tag.id }}&token={{ token }}" target="_blank"><img src="{{ poche_url }}/themes/{{ theme }}/img/{{ theme }}/rss.png" /></a>{% endif %} {% endfor %}
{% endblock %}
\ No newline at end of file