summaryrefslogtreecommitdiff
path: root/classes/pref
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-01-22 22:32:17 +0400
committerAndrew Dolgov <[email protected]>2013-01-22 22:32:17 +0400
commit87d7e8507a4a41c4e0d7a4f2d54fe48f3a6f72cb (patch)
tree569db7d16c8f1d529d382039b1ead0d6e0c46c68 /classes/pref
parent04f60eb729e1444bb3363677584c8179050403c4 (diff)
split some more functions from functions.php
Diffstat (limited to 'classes/pref')
-rw-r--r--classes/pref/feeds.php26
1 files changed, 25 insertions, 1 deletions
diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php
index f11c746bf..e9b09829d 100644
--- a/classes/pref/feeds.php
+++ b/classes/pref/feeds.php
@@ -1070,7 +1070,7 @@ class Pref_Feeds extends Handler_Protected {
function clear() {
$id = db_escape_string($_REQUEST["id"]);
- clear_feed_articles($this->link, $id);
+ $this->clear_feed_articles($this->link, $id);
}
function rescore() {
@@ -1677,5 +1677,29 @@ class Pref_Feeds extends Handler_Protected {
print "</div>";
}
+ /**
+ * Purge a feed contents, marked articles excepted.
+ *
+ * @param mixed $link The database connection.
+ * @param integer $id The id of the feed to purge.
+ * @return void
+ */
+ private function clear_feed_articles($link, $id) {
+
+ if ($id != 0) {
+ $result = db_query($link, "DELETE FROM ttrss_user_entries
+ WHERE feed_id = '$id' AND marked = false AND owner_uid = " . $_SESSION["uid"]);
+ } else {
+ $result = db_query($link, "DELETE FROM ttrss_user_entries
+ WHERE feed_id IS NULL AND marked = false AND owner_uid = " . $_SESSION["uid"]);
+ }
+
+ $result = db_query($link, "DELETE FROM ttrss_entries WHERE
+ (SELECT COUNT(int_id) FROM ttrss_user_entries WHERE ref_id = id) = 0");
+
+ ccache_update($link, $id, $_SESSION['uid']);
+ } // function clear_feed_articles
+
+
}
?>