From 02195b9d48c4267a8bc450759c56258a26cd9b71 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sat, 27 Oct 2012 11:25:26 +0400 Subject: [PATCH] fix label row backgrounds only used when cached data is available --- classes/feeds.php | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/classes/feeds.php b/classes/feeds.php index 113e2768e..72abc41e2 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -283,25 +283,29 @@ class Feeds extends Handler_Protected { if ($label_cache) { if ($label_cache["no-labels"] == 1) $labels = array(); - else { + else $labels = $label_cache; - if (count($labels) > 0) { - $bg = rgb2hsl(_color_unpack($labels[0][3])); - if ($bg && $bg[1] > 0) { - - $bg[1] = 0.1; - $bg[2] = 1; - - $bg = _color_pack(hsl2rgb($bg)); - $label_row_style = $this->make_gradient($bg, $class);; - } - } - } } } if (!is_array($labels)) $labels = get_article_labels($this->link, $id); + if (count($labels) > 0) { + for ($i = 0; $i < min(4, count($labels)); $i++) { + $bg = rgb2hsl(_color_unpack($labels[$i][3])); + + if ($bg && $bg[1] > 0) { + $bg[1] = 0.1; + $bg[2] = 1; + + $bg = _color_pack(hsl2rgb($bg)); + $label_row_style = $this->make_gradient($bg, $class);; + + break; + } + } + } + $labels_str = ""; $labels_str .= format_article_labels($labels, $id); $labels_str .= "";