From c0c2abbaa73363a1349e41ec08cd54a0d1e8ad8e Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 25 Oct 2012 13:15:14 +0400 Subject: force refetch feed when clicking update/clicking on same feed in the tree --- classes/feeds.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'classes') diff --git a/classes/feeds.php b/classes/feeds.php index 836bbb060..df206c2ef 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -134,9 +134,20 @@ class Feeds extends Handler_Protected { $method_split = explode(":", $method); - if ($method == "ForceUpdate" && $feed && is_numeric($feed) > 0) { - include "rssfuncs.php"; - update_rss_feed($this->link, $feed, true); + if ($method == "ForceUpdate" && $feed > 0 && is_numeric($feed)) { + // Update the feed if required with some basic flood control + + $result = db_query($this->link, + "SELECT ".SUBSTRING_FOR_DATE."(last_updated,1,19) AS last_updated + FROM ttrss_feeds WHERE id = '$feed'"); + + if (db_num_rows($result) != 0) { + $last_updated = strtotime(db_fetch_result($result, 0, "last_updated")); + if (time() - $last_updated > 120) { + include "rssfuncs.php"; + update_rss_feed($this->link, $feed, true, true); + } + } } if ($method_split[0] == "MarkAllReadGR") { -- cgit v1.2.3