summaryrefslogtreecommitdiff
path: root/backend.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2005-11-19 09:32:00 +0100
committerAndrew Dolgov <[email protected]>2005-11-19 09:32:00 +0100
commitf23a2177ec6c440ce3aa4dce109109892efb0b57 (patch)
tree67f4ac4fcc29ad4330f15d71f387b94cce859d3d /backend.php
parent05732aa0b6a95d6d6c5986b28077d7fe28edab0c (diff)
misc new schema support related work (2)
Diffstat (limited to 'backend.php')
-rw-r--r--backend.php41
1 files changed, 33 insertions, 8 deletions
diff --git a/backend.php b/backend.php
index 19aebd899..0cc1e1726 100644
--- a/backend.php
+++ b/backend.php
@@ -565,36 +565,61 @@
if ($subop == "MarkAllRead") {
- return; // FIXME disabled
-
if (sprintf("%d", $feed) != 0) {
if ($feed > 0) {
- db_query($link, "UPDATE ttrss_entries
+ db_query($link, "UPDATE ttrss_user_entries
SET unread = false,last_read = NOW()
- WHERE feed_id = '$feed'");
+ WHERE feed_id = '$feed' AND owner_uid = " . $_SESSION["uid"]);
} else if ($feed < 0 && $feed > -10) { // special, like starred
if ($feed == -1) {
- db_query($link, "UPDATE ttrss_entries
+ db_query($link, "UPDATE ttrss_user_entries
SET unread = false,last_read = NOW()
WHERE marked = true AND owner_uid = ".$_SESSION["uid"]);
}
} else if ($feed < -10) { // label
+ // TODO make this more efficient
+
$label_id = -$feed - 11;
$tmp_result = db_query($link, "SELECT sql_exp FROM ttrss_labels
- WHERE id = '$label_id'");
+ WHERE id = '$label_id'");
if ($tmp_result) {
$sql_exp = db_fetch_result($tmp_result, 0, "sql_exp");
- db_query($link, "UPDATE ttrss_entries
+ db_query($link, "BEGIN");
+
+ $tmp2_result = db_query($link,
+ "SELECT
+ int_id
+ FROM
+ ttrss_user_entries,ttrss_entries
+ WHERE
+ ref_id = id AND
+ $sql_exp AND
+ owner_uid = " . $_SESSION["uid"]);
+
+ while ($tmp_line = db_fetch_assoc($tmp2_result)) {
+ db_query($link, "UPDATE
+ ttrss_user_entries
+ SET
+ unread = false, last_read = NOW()
+ WHERE
+ int_id = " . $tmp_line["int_id"]);
+ }
+
+ db_query($link, "COMMIT");
+
+/* db_query($link, "UPDATE ttrss_user_entries,ttrss_entries
SET unread = false,last_read = NOW()
- WHERE $sql_exp AND owner_uid = ".$_SESSION["uid"]);
+ WHERE $sql_exp
+ AND ref_id = id
+ AND owner_uid = ".$_SESSION["uid"]); */
}
}
} else { // tag