diff options
-rw-r--r-- | backend.php | 26 | ||||
-rw-r--r-- | functions.php | 4 | ||||
-rw-r--r-- | tt-rss.css | 2 | ||||
-rw-r--r-- | tt-rss.js | 13 |
4 files changed, 37 insertions, 8 deletions
diff --git a/backend.php b/backend.php index 39f2e6033..e35e7f6ee 100644 --- a/backend.php +++ b/backend.php @@ -233,6 +233,7 @@ $feed = $_GET["feed"]; $skip = $_GET["skip"]; $subop = $_GET["subop"]; + $view_mode = $_GET["view"]; if (!$skip) $skip = 0; @@ -270,17 +271,33 @@ print "<tr><td class=\"search\" colspan=\"4\"> Search: <input id=\"searchbox\" onblur=\"javascript:enableHotkeys()\" onfocus=\"javascript:disableHotkeys()\" - onchange=\"javascript:search($feed);\"> - <a class=\"button\" href=\"javascript:resetSearch()\">Reset</a> - </td></tr>"; + onchange=\"javascript:search($feed);\"> "; + + print " <a class=\"button\" href=\"javascript:resetSearch()\">Reset</a>"; + + print " View: "; + + print_select("viewbox", $view_mode, array("All Posts", "Starred"), + "onchange=\"javascript:viewfeed('$feed', '$skip', '');\""); + + print "</td></tr>"; + print "<tr> <td colspan=\"4\" class=\"title\">" . $line["title"] . "</td></tr>"; $search = $_GET["search"]; - if (search) { + if ($search) { $search_query_part = "(upper(title) LIKE upper('%$search%') OR content LIKE '%$search%') AND"; + } else { + $search_query_part = ""; + } + + $view_query_part = ""; + + if ($view_mode == "Starred") { + $view_query_part = " marked = true AND "; } $result = pg_query("SELECT count(id) AS total_entries @@ -298,6 +315,7 @@ ttrss_entries WHERE $search_query_part + $view_query_part feed_id = '$feed' ORDER BY updated DESC LIMIT ".HEADLINES_PER_PAGE." OFFSET $skip"); $lnum = 0; diff --git a/functions.php b/functions.php index d572ee780..e6ef6589a 100644 --- a/functions.php +++ b/functions.php @@ -297,8 +297,8 @@ } - function print_select($id, $default, $values) { - print "<select id=\"$id\">"; + function print_select($id, $default, $values, $attributes = "") { + print "<select id=\"$id\" $attributes>"; foreach ($values as $v) { if ($v == $default) $sel = " selected"; diff --git a/tt-rss.css b/tt-rss.css index de6051f4f..f2c15c64c 100644 --- a/tt-rss.css +++ b/tt-rss.css @@ -136,7 +136,7 @@ table.main td.feeds { } table.main td.headlines { - height : 25%; + height : 10%; padding : 10px; border-width : 1px 0px 0px 0px; border-color : #c0c0c0; @@ -296,6 +296,16 @@ function viewfeed(feed, skip, subop) { search_query = ""; } + var viewbox = document.getElementById("viewbox"); + + var view_mode; + + if (viewbox) { + view_mode = viewbox.value; + } else { + view_mode = "All Posts"; + } + /* if (active_feed_id == feed && subop != "ForceUpdate") { notify("This feed is currently selected."); return; @@ -318,7 +328,8 @@ function viewfeed(feed, skip, subop) { active_offset = skip; var query = "backend.php?op=viewfeed&feed=" + param_escape(feed) + - "&skip=" + param_escape(skip) + "&subop=" + param_escape(subop); + "&skip=" + param_escape(skip) + "&subop=" + param_escape(subop) + + "&view=" + param_escape(view_mode); if (search_query != "") { query = query + "&search=" + param_escape(search_query); |