Browse Source

move get_article_labels to Article

Andrew Dolgov 3 years ago
parent
commit
4a0da0e5bf
5 changed files with 51 additions and 55 deletions
  1. 3 6
      classes/api.php
  2. 46 1
      classes/article.php
  3. 1 1
      classes/feeds.php
  4. 0 46
      include/labels.php
  5. 1 1
      include/rssfuncs.php

+ 3 - 6
classes/api.php

@@ -354,7 +354,7 @@ class API extends Handler {
 						"guid" => $line["guid"],
 						"title" => $line["title"],
 						"link" => $line["link"],
-						"labels" => get_article_labels($line['id']),
+						"labels" => Article::get_article_labels($line['id']),
 						"unread" => sql_bool_to_bool($line["unread"]),
 						"marked" => sql_bool_to_bool($line["marked"]),
 						"published" => sql_bool_to_bool($line["published"]),
@@ -450,7 +450,7 @@ class API extends Handler {
 			WHERE owner_uid = '".$_SESSION['uid']."' ORDER BY caption");
 
 		if ($article_id)
-			$article_labels = get_article_labels($article_id);
+			$article_labels = Article::get_article_labels($article_id);
 		else
 			$article_labels = array();
 
@@ -740,10 +740,7 @@ class API extends Handler {
 						}
 					}
 
-					if (!is_array($labels)) $labels = get_article_labels($line["id"]);
-
-					//if (!$tags) $tags = get_article_tags($line["id"]);
-					//if (!$labels) $labels = get_article_labels($line["id"]);
+					if (!is_array($labels)) $labels = Article::get_article_labels($line["id"]);
 
 					$headline_row = array(
 						"id" => (int)$line["id"],

+ 46 - 1
classes/article.php

@@ -358,7 +358,7 @@ class Article extends Handler_Protected {
 				else
 					label_remove_article($id, $label, $_SESSION["uid"]);
 
-				$labels = get_article_labels($id, $_SESSION["uid"]);
+				$labels = $this->get_article_labels($id, $_SESSION["uid"]);
 
 				array_push($reply["info-for-headlines"],
 				array("id" => $id, "labels" => $this->format_article_labels($labels)));
@@ -924,4 +924,49 @@ class Article extends Handler_Protected {
 		}
 	}
 
+	static function get_article_labels($id, $owner_uid = false) {
+		$rv = array();
+
+		if (!$owner_uid) $owner_uid = $_SESSION["uid"];
+
+		$result = db_query("SELECT label_cache FROM
+			ttrss_user_entries WHERE ref_id = '$id' AND owner_uid = " .
+			$owner_uid);
+
+		if (db_num_rows($result) > 0) {
+			$label_cache = db_fetch_result($result, 0, "label_cache");
+
+			if ($label_cache) {
+				$label_cache = json_decode($label_cache, true);
+
+				if ($label_cache["no-labels"] == 1)
+					return $rv;
+				else
+					return $label_cache;
+			}
+		}
+
+		$result = db_query(
+			"SELECT DISTINCT label_id,caption,fg_color,bg_color
+				FROM ttrss_labels2, ttrss_user_labels2
+			WHERE id = label_id
+				AND article_id = '$id'
+				AND owner_uid = ". $owner_uid . "
+			ORDER BY caption");
+
+		while ($line = db_fetch_assoc($result)) {
+			$rk = array(label_to_feed_id($line["label_id"]),
+				$line["caption"], $line["fg_color"],
+				$line["bg_color"]);
+			array_push($rv, $rk);
+		}
+
+		if (count($rv) > 0)
+			label_update_cache($owner_uid, $id, $rv);
+		else
+			label_update_cache($owner_uid, $id, array("no-labels" => 1));
+
+		return $rv;
+	}
+
 }

+ 1 - 1
classes/feeds.php

@@ -350,7 +350,7 @@ class Feeds extends Handler_Protected {
 					}
 				}
 
-				if (!is_array($labels)) $labels = get_article_labels($id);
+				if (!is_array($labels)) $labels = Article::get_article_labels($id);
 
 				$labels_str = "<span class=\"HLLCTR-$id\">";
 				$labels_str .= Article::format_article_labels($labels);

+ 0 - 46
include/labels.php

@@ -11,52 +11,6 @@
 		}
 	}
 
-	function get_article_labels($id, $owner_uid = false) {
-		$rv = array();
-
-		if (!$owner_uid) $owner_uid = $_SESSION["uid"];
-
-		$result = db_query("SELECT label_cache FROM
-			ttrss_user_entries WHERE ref_id = '$id' AND owner_uid = " .
-			$owner_uid);
-
-		if (db_num_rows($result) > 0) {
-			$label_cache = db_fetch_result($result, 0, "label_cache");
-
-			if ($label_cache) {
-				$label_cache = json_decode($label_cache, true);
-
-				if ($label_cache["no-labels"] == 1)
-					return $rv;
-				else
-					return $label_cache;
-			}
-		}
-
-		$result = db_query(
-			"SELECT DISTINCT label_id,caption,fg_color,bg_color
-				FROM ttrss_labels2, ttrss_user_labels2
-			WHERE id = label_id
-				AND article_id = '$id'
-				AND owner_uid = ". $owner_uid . "
-			ORDER BY caption");
-
-		while ($line = db_fetch_assoc($result)) {
-			$rk = array(label_to_feed_id($line["label_id"]),
-				$line["caption"], $line["fg_color"],
-				$line["bg_color"]);
-			array_push($rv, $rk);
-		}
-
-		if (count($rv) > 0)
-			label_update_cache($owner_uid, $id, $rv);
-		else
-			label_update_cache($owner_uid, $id, array("no-labels" => 1));
-
-		return $rv;
-	}
-
-
 	function label_find_caption($label, $owner_uid) {
 		$result = db_query(
 			"SELECT caption FROM ttrss_labels2 WHERE id = '$label'

+ 1 - 1
include/rssfuncs.php

@@ -683,7 +683,7 @@
 				if (db_num_rows($result) != 0) {
 					$base_entry_id = db_fetch_result($result, 0, "id");
 					$entry_stored_hash = db_fetch_result($result, 0, "content_hash");
-					$article_labels = get_article_labels($base_entry_id, $owner_uid);
+					$article_labels = Article::get_article_labels($base_entry_id, $owner_uid);
 					$entry_language = db_fetch_result($result, 0, "lang");
 
 					$existing_tags = Article::get_article_tags($base_entry_id, $owner_uid);