further label/vfeed/feed behaviour unification
This commit is contained in:
parent
392d45635b
commit
8073cce71e
26
backend.php
26
backend.php
|
@ -21,7 +21,7 @@
|
|||
function getLabelCounters($link) {
|
||||
|
||||
$result = db_query($link, "SELECT count(id) as count FROM ttrss_entries
|
||||
WHERE marked = true");
|
||||
WHERE marked = true AND unread = true");
|
||||
|
||||
$count = db_fetch_result($result, 0, "count");
|
||||
|
||||
|
@ -48,8 +48,19 @@
|
|||
}
|
||||
}
|
||||
|
||||
function getFeedCounters($link) {
|
||||
function getFeedCounter($link, $id) {
|
||||
|
||||
$result = db_query($link, "SELECT
|
||||
count(id) as count FROM ttrss_entries
|
||||
WHERE feed_id = '$id' AND unread = true");
|
||||
|
||||
$count = db_fetch_result($result, 0, "count");
|
||||
|
||||
print "<feed id=\"$id\" counter=\"$count\"/>";
|
||||
}
|
||||
|
||||
function getFeedCounters($link) {
|
||||
|
||||
$result = db_query($link, "SELECT id,
|
||||
(SELECT count(id) FROM ttrss_entries WHERE feed_id = ttrss_feeds.id
|
||||
AND unread = true) as count
|
||||
|
@ -79,7 +90,7 @@
|
|||
/* virtual feeds */
|
||||
|
||||
$result = db_query($link, "SELECT count(id) as num_starred
|
||||
FROM ttrss_entries WHERE marked = true");
|
||||
FROM ttrss_entries WHERE marked = true AND unread = true");
|
||||
$num_starred = db_fetch_result($result, 0, "num_starred");
|
||||
|
||||
printFeedEntry(-1, "odd", "Starred articles", $num_starred, "images/mark_set.png");
|
||||
|
@ -172,8 +183,12 @@
|
|||
$subop = $_GET["subop"];
|
||||
|
||||
if ($subop == "getLabelCounters") {
|
||||
$aid = $_GET["aid"];
|
||||
print "<rpc-reply>";
|
||||
getLabelCounters($link);
|
||||
if ($aid) {
|
||||
getFeedCounter($link, $aid);
|
||||
}
|
||||
print "</rpc-reply>";
|
||||
}
|
||||
|
||||
|
@ -260,6 +275,7 @@
|
|||
if ($op == "view") {
|
||||
|
||||
$id = $_GET["id"];
|
||||
$feed_id = $_GET["feed"];
|
||||
|
||||
$result = db_query($link, "UPDATE ttrss_entries SET unread = false,last_read = NOW() WHERE id = '$id'");
|
||||
|
||||
|
@ -315,7 +331,7 @@
|
|||
print "</div>";
|
||||
|
||||
print "<script type=\"text/javascript\">
|
||||
update_label_counters();
|
||||
update_label_counters($feed_id);
|
||||
</script>";
|
||||
}
|
||||
|
||||
|
@ -587,7 +603,7 @@
|
|||
feedctr.className = 'invisible';
|
||||
}
|
||||
|
||||
update_label_counters();
|
||||
update_label_counters($feed);
|
||||
|
||||
// p_notify(\"\");
|
||||
|
||||
|
|
|
@ -318,7 +318,7 @@ function label_counters_callback() {
|
|||
|
||||
if (ctr > 0) {
|
||||
feedctr.className = "odd";
|
||||
if (!feedr.className.match("Unread") && id != -1) {
|
||||
if (!feedr.className.match("Unread")) {
|
||||
feedr.className = feedr.className + "Unread";
|
||||
}
|
||||
} else {
|
||||
|
@ -329,9 +329,9 @@ function label_counters_callback() {
|
|||
}
|
||||
}
|
||||
|
||||
function update_label_counters() {
|
||||
function update_label_counters(feed) {
|
||||
if (xmlhttp_ready(xmlhttp_rpc)) {
|
||||
var query = "backend.php?op=rpc&subop=getLabelCounters";
|
||||
var query = "backend.php?op=rpc&subop=getLabelCounters&aid=" + feed;
|
||||
xmlhttp_rpc.open("GET", query, true);
|
||||
xmlhttp_rpc.onreadystatechange=label_counters_callback;
|
||||
xmlhttp_rpc.send(null);
|
||||
|
|
|
@ -70,7 +70,7 @@ function refetch_callback() {
|
|||
|
||||
if (ctr > 0) {
|
||||
feedctr.className = "odd";
|
||||
if (id != -1 && !feedr.className.match("Unread")) {
|
||||
if (!feedr.className.match("Unread")) {
|
||||
feedr.className = feedr.className + "Unread";
|
||||
}
|
||||
} else {
|
||||
|
|
2
view.js
2
view.js
|
@ -19,6 +19,7 @@ if (!xmlhttp_rpc && typeof XMLHttpRequest!='undefined') {
|
|||
xmlhttp_rpc = new XMLHttpRequest();
|
||||
}
|
||||
|
||||
/*
|
||||
function label_counters_callback() {
|
||||
if (xmlhttp_rpc.readyState == 4) {
|
||||
var reply = xmlhttp_rpc.responseXML.firstChild;
|
||||
|
@ -51,3 +52,4 @@ function update_label_counters() {
|
|||
xmlhttp_rpc.send(null);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
|
18
viewfeed.js
18
viewfeed.js
|
@ -34,7 +34,7 @@ function view(id, feed_id) {
|
|||
|
||||
var crow = h_document.getElementById("RROW-" + id);
|
||||
|
||||
if (crow.className.match("Unread")) {
|
||||
/* if (crow.className.match("Unread")) {
|
||||
var umark = f_document.getElementById("FEEDU-" + feed_id);
|
||||
|
||||
umark.innerHTML = umark.innerHTML - 1;
|
||||
|
@ -52,8 +52,9 @@ function view(id, feed_id) {
|
|||
}
|
||||
|
||||
total_unread--;
|
||||
}
|
||||
} */
|
||||
|
||||
crow.className = crow.className.replace("Unread", "");
|
||||
|
||||
cleanSelected("headlinesList");
|
||||
|
||||
|
@ -63,23 +64,14 @@ function view(id, feed_id) {
|
|||
upd_img_pic.src = "images/blank_icon.gif";
|
||||
}
|
||||
|
||||
var unread_rows = getVisibleUnreadHeadlines();
|
||||
|
||||
if (unread_rows.length == 0) {
|
||||
var button = h_document.getElementById("btnCatchupPage");
|
||||
if (button) {
|
||||
button.className = "disabledButton";
|
||||
button.href = "";
|
||||
}
|
||||
}
|
||||
|
||||
active_post_id = id;
|
||||
setActiveFeedId(feed_id);
|
||||
|
||||
var content = m_document.getElementById("content-frame");
|
||||
|
||||
if (content) {
|
||||
content.src = "backend.php?op=view&addheader=true&id=" + param_escape(id);
|
||||
content.src = "backend.php?op=view&addheader=true&id=" + param_escape(id) +
|
||||
"&feed=" + param_escape(feed_id);
|
||||
markHeadline(active_post_id);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue