$skip = $_GET["skip"];
$ext = $_GET["ext"];
+ if (!$skip) $skip = 0;
+
if ($ext == "undefined") $ext = "";
+ // FIXME: check for null value here
+
$result = pg_query("SELECT *,
EXTRACT(EPOCH FROM NOW()) - EXTRACT(EPOCH FROM last_updated) as update_timeout
FROM ttrss_feeds WHERE id = '$feed'");
}
print "<table class=\"headlines\" width=\"100%\">";
+/* print "<tr><td class=\"search\">
+ Search: <input onchange=\"javascript:search($feed,this);\"></td>";
+ print "<td class=\"title\">" . $line["title"] . "</td></tr>"; */
+
+ print "<tr><td class=\"search\" colspan=\"2\">
+ Search: <input onchange=\"javascript:search($feed,this);\"></td></tr>";
print "<tr><td colspan=\"2\" class=\"title\">" . $line["title"] . "</td></tr>";
+ if ($ext == "SEARCH") {
+ $search = $_GET["search"];
+ $search_query_part = "(upper(title) LIKE upper('%$search%')
+ OR content LIKE '%$search%') AND";
+ }
+
$result = pg_query("SELECT id,title,updated,unread,feed_id FROM
ttrss_entries WHERE
- feed_id = '$feed' ORDER BY updated LIMIT ".HEADLINES_PER_PAGE." OFFSET $skip");
+ $search_query_part
+ feed_id = '$feed' ORDER BY updated DESC LIMIT ".HEADLINES_PER_PAGE." OFFSET $skip");
$lnum = 0;
++$lnum;
}
+ if ($lnum == 0) {
+ print "<tr><td align='center'>No entries found.</td></tr>";
+
+ }
+
print "<tr><td colspan=\"2\" class=\"headlineToolbar\">";
$next_skip = $skip + HEADLINES_PER_PAGE;
print "<a class=\"button\"
href=\"javascript:viewfeed($feed, $next_skip);\">Next Page</a>";
print " ";
-
+
+ print "<a class=\"button\"
+ href=\"javascript:viewfeed($feed, 0, '');\">Refresh</a>";
+ print " ";
print "<a class=\"button\"
href=\"javascript:viewfeed($feed, 0, 'MarkAllRead');\">Mark all as read</a>";
$md5_hash = pg_fetch_result($result, 0, "md5_hash");
if ($md5_hash != $content_md5)
- $unread = "false";
+ $unread = "true";
+
+ if ($unread) {
+ $updated_query_part = "updated = '$entry_timestamp',";
+ }
$query = "UPDATE ttrss_entries
SET
title ='$entry_title',
link = '$entry_link',
- updated = '$entry_timestamp',
+ $updated_query_part
content = '$entry_content',
md5_hash = '$content_md5',
unread = '$unread'
$result = pg_query($link, $query);
- // print "$entry_guid - $entry_timestamp - $entry_title -
- // $entry_link - $entry_id<br>";
+// print "$entry_guid - $entry_timestamp - $entry_title -
+// $entry_link - $entry_id<br>";
}
a.button {
border : 1px solid #d0d0d0;
- background : white;
- color : black;
+ background-image : url("button.png");
+ background-position : top;
+ background-repeat : repeat-x;
+ background-color : white;
+ color : black;
padding : 2px 10px 2px 10px;
+ font-size : small;
}
a.button:hover {
- background : #f0f0f0;
+ background : white;
text-decoration : none;
}
font-size : small;
}
+table.headlines td.search {
+ font-size : small;
+/* border-width : 0px 0px 1px 0px;
+ border-color : #d0d0d0;
+ border-style : solid;
+ padding-bottom : 3px; */
+}
+
table.headlines td.title {
font-weight : bold;
font-size : large;
border-color : #d0d0d0;
border-style : solid;
text-align : right;
+ padding-bottom : 3px;
}
table.headlines td.headlineUpdated {
}
+input {
+ border : 1px solid #a0a0a0;
+}
+
table.main td.toolbar {
height : 40px;
- text-align : right;
background : #f0f0f0;
padding-right : 5px;
+ font-size : small;
+ text-align : right;
}
table.main td.header {
update_feed_list(true);
- setTimeout("timeout()", 120*1000);
+ setTimeout("timeout()", 1800*1000);
+
+}
+
+function search(feed, sender) {
+
+ notify("Search: " + feed + ", " + sender.value)
+
+ document.getElementById('headlines').innerHTML='Loading headlines, please wait...';
+ document.getElementById('content').innerHTML=' ';
+
+ xmlhttp.open("GET", "backend.php?op=viewfeed&feed=" + param_escape(feed) +
+ "&search=" + param_escape(sender.value) + "&ext=SEARCH", true);
+ xmlhttp.onreadystatechange=viewfeed_callback;
+ xmlhttp.send(null);
}
update_feed_list();
- setTimeout("timeout()", 120*1000);
+ setTimeout("timeout()", 1800*1000);
}
</td>
</tr>
<tr>
+ <!-- <td class="toolbar" valign="middle" >
+ Search: <input name="q" onclick=\"javascript:search(this);\">
+ </td> -->
<td class="toolbar" valign="middle" colspan="2">
<a class="button">Preferences</a>
<!-- <a class="button" href="javascript:refresh()">Refresh</a> -->