diff options
-rw-r--r-- | digest.css | 30 | ||||
-rw-r--r-- | digest.js | 31 | ||||
-rw-r--r-- | digest.php | 12 | ||||
-rw-r--r-- | functions.php | 1 | ||||
-rw-r--r-- | modules/backend-rpc.php | 5 |
5 files changed, 68 insertions, 11 deletions
diff --git a/digest.css b/digest.css index f7ddff689..cfee28bcf 100644 --- a/digest.css +++ b/digest.css @@ -18,6 +18,10 @@ a:hover { color : gray; } +#header a:hover, #footer a:hover { + color : #0069D8; +} + #header { font-weight : bold; font-size : 14px; @@ -159,6 +163,18 @@ a:hover { max-width : 65%; } +#headlines h1 a { + color : #684C99; +} + +#headlines h1 a:hover { + color : gray; +} + +#headlines h1 #headlines-title { + color : gray; +} + #headlines ul#headlines-content div.digest-check { float : right; } @@ -214,15 +230,23 @@ a:hover { } #headlines ul#headlines-content div.info { - margin-top : 2px; font-size : 11px; } #headlines ul#headlines-content div.info a { color : gray; - font-weight : bold; } -#headlines ul#headlines-content div.info a:hover { +#headlines ul#headlines-content span.tags { + font-size : 11px; + margin-bottom : 2px; +} + +#headlines ul#headlines-content span.tags a { + color : #684C99; +} + +#headlines ul#headlines-content div.info a:hover, +#headlines ul#headlines-content span.tags a:hover { color : #659a4c; } @@ -186,8 +186,10 @@ function viewfeed(feed_id, offset) { offset = _active_feed_offset + offset; } - var query = "backend.php?op=rpc&subop=digest-update&feed_id=" + feed_id + - "&offset=" + offset; + var query = "backend.php?op=rpc&subop=digest-update&feed_id=" + + param_escape(feed_id) + "&offset=" + offset; + + console.log(query); new Ajax.Request("backend.php", { parameters: query, @@ -293,6 +295,22 @@ function add_headline_entry(article, feed) { var mark_part = ""; var publ_part = ""; + var tags_part = ""; + + if (article.tags.length > 0) { + + tags_part = " " + __("in") + " "; + + for (var i = 0; i < Math.min(5, article.tags.length); i++) { + tags_part += "<a href=\"#\" onclick=\"viewfeed('" + + article.tags[i] + "')\">" + + article.tags[i] + "</a>, "; + } + + tags_part = tags_part.replace(/, $/, ""); + tags_part = "<span class=\"tags\">" + tags_part + "</span>"; + } + if (article.marked) mark_part = "<img title='"+ __("Unstar article")+"' onclick=\"toggle_mark(this, "+article.id+")\" src='images/mark_set.png'>"; else @@ -320,7 +338,7 @@ function add_headline_entry(article, feed) { "<div style='display : none' class='content'>" + article.content + "</div>" + "<div class='info'><a href=\#\" onclick=\"viewfeed("+feed.id+")\">" + - feed.title + "</a> " + " @ " + + feed.title + "</a> " + tags_part + " @ " + new Date(article.updated * 1000) + "</div>" + "</div></li>"; @@ -410,10 +428,15 @@ function parse_headlines(transport, replace) { if (!transport.responseXML) return; var headlines = transport.responseXML.getElementsByTagName('headlines')[0]; + var headlines_title = transport.responseXML.getElementsByTagName('headlines-title')[0]; - if (headlines) { + if (headlines && headlines_title) { headlines = eval("(" + headlines.firstChild.nodeValue + ")"); + var title = headlines_title.firstChild.nodeValue; + + $("headlines-title").innerHTML = title; + if (replace) $('headlines-content').innerHTML = ''; var pr = $('H-MORE-PROMPT'); diff --git a/digest.php b/digest.php index c217d2abf..2b7f91807 100644 --- a/digest.php +++ b/digest.php @@ -91,7 +91,8 @@ </div> <div id="headlines"> - <h1><?php echo __('headlines') ?></h1> + <h1><a href="#" onclick="viewfeed(-4)"><?php echo __('headlines') ?></a>: + <span id="headlines-title"></span></h1> <ul id="headlines-content"> </ul> </div> @@ -107,6 +108,13 @@ v<?php echo VERSION ?> <?php } ?> © 2005–<?php echo date('Y') ?> - <a href="http://fakecake.org/">Andrew Dolgov</a></div> + <a href="http://fakecake.org/">Andrew Dolgov</a> + + <br/> + + <a href="tt-rss.php"> + <?php echo __("You are viewing the digest page. Click to open full version.") ?></a> + +</div> </body> diff --git a/functions.php b/functions.php index 2174460b4..232ee7c1f 100644 --- a/functions.php +++ b/functions.php @@ -6783,6 +6783,7 @@ "title" => $line["title"], "link" => $line["link"], "feed_id" => $line["feed_id"], + "tags" => get_article_tags($link, $line["id"]), ); if ($show_excerpt) { diff --git a/modules/backend-rpc.php b/modules/backend-rpc.php index 976fac15c..a0e4e77df 100644 --- a/modules/backend-rpc.php +++ b/modules/backend-rpc.php @@ -984,8 +984,6 @@ if (!$feed_id) $feed_id = -4; if (!$offset) $offset = 0; - - print "<rpc-reply>"; $headlines = api_get_headlines($link, $feed_id, 10, $offset, @@ -994,6 +992,9 @@ //function api_get_headlines($link, $feed_id, $limit, $offset, // $filter, $is_cat, $show_excerpt, $show_content, $view_mode) { + print "<headlines-title><![CDATA[" . getFeedTitle($link, $feed_id) . + "]]></headlines-title>"; + print "<headlines><![CDATA[" . json_encode($headlines) . "]]></headlines>"; print "</rpc-reply>"; |