From bc7a144dd589302025c3b024d6da71f2e53d6496 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 15 Apr 2013 18:22:48 +0400 Subject: properly remove and replace favicon color when favicon gets manually removed/uploaded --- classes/pref/feeds.php | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'classes/pref') diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php index c57cccc44..c5d6245fe 100644 --- a/classes/pref/feeds.php +++ b/classes/pref/feeds.php @@ -464,6 +464,9 @@ class Pref_Feeds extends Handler_Protected { if (db_num_rows($result) != 0) { @unlink(ICONS_DIR . "/$feed_id.ico"); + + db_query($this->link, "UPDATE ttrss_feeds SET favicon_avg_color = NULL + where id = '$feed_id'"); } return; @@ -498,8 +501,19 @@ class Pref_Feeds extends Handler_Protected { if (db_num_rows($result) != 0) { @unlink(ICONS_DIR . "/$feed_id.ico"); - rename($icon_file, ICONS_DIR . "/$feed_id.ico"); - $rc = 0; + if (rename($icon_file, ICONS_DIR . "/$feed_id.ico")) { + + require_once "colors.php"; + + $favicon_color = db_escape_string($this->link, + calculate_avg_color(ICONS_DIR . "/$feed_id.ico")); + + db_query($this->link, "UPDATE ttrss_feeds SET + favicon_avg_color = '$favicon_color' + WHERE id = '$feed_id'"); + + $rc = 0; + } } else { $rc = 2; } -- cgit v1.2.3