"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"]),
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();
}
}
- 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"],
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)));
}
}
+ 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;
+ }
+
}
}
}
- 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);
}
}
- 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'
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);