From eead4d26944d5e871ac5b712e81713f2b06e31d0 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Mar 2006 07:19:20 +0100 Subject: [PATCH] mobile: support tags --- mobile/functions.php | 120 ++++++++++++++++++++++++++++--------------- mobile/mobile.css | 6 +++ 2 files changed, 85 insertions(+), 41 deletions(-) diff --git a/mobile/functions.php b/mobile/functions.php index 89314ad7..7ffc433d 100644 --- a/mobile/functions.php +++ b/mobile/functions.php @@ -1,33 +1,20 @@ " . $line["description"] . ""; - } - } + $tags = $_GET["tags"]; - $result = db_query($link, "SELECT id,title - FROM ttrss_feeds WHERE ttrss_feeds.owner_uid = '$owner_uid' - ORDER BY title"); + print "
"; - while ($line = db_fetch_assoc($result)) { - print ""; + if ($tags) { + print "Tags + (View feeds, "; + } else { + print "Feeds + (View tags, "; } - - } - - function render_feeds_list($link, $tags = false) { - - print "
"; - print "My feeds (Logout)"; + + print "Logout)"; print "
"; print "
    "; @@ -108,10 +95,6 @@ } -// if (!get_pref($link, 'ENABLE_FEED_CATS')) { -// print "

  • "; -// } - if (get_pref($link, 'ENABLE_FEED_CATS')) { $order_by_qpart = "category,title"; } else { @@ -255,7 +238,35 @@ } } else { - print "Tags: function not implemented."; + // tags + + $result = db_query($link, "SELECT tag_name,SUM((SELECT COUNT(int_id) + FROM ttrss_user_entries WHERE int_id = post_int_id + AND unread = true)) AS count FROM ttrss_tags + WHERE owner_uid = 2 GROUP BY tag_name ORDER BY tag_name"); + + $tags = array(); + + while ($line = db_fetch_assoc($result)) { + $tags[$line["tag_name"]] += $line["count"]; + } + + foreach (array_keys($tags) as $tag) { + + $unread = $tags[$tag]; + + $class = "tag"; + + if ($unread > 0) { + $class .= "Unread"; + } + + printMobileFeedEntry($tag, $class, $tag, $unread, + "../images/tag.png", $link); + + } + + } } @@ -301,18 +312,24 @@ if (!$view_mode) $view_mode = "Adaptive"; if (!$limit) $limit = 30; - $result = db_query($link, "SELECT rtl_content FROM ttrss_feeds - WHERE id = '$feed' AND owner_uid = " . $_SESSION["uid"]); + if (preg_match("/^-?[0-9][0-9]*$/", $feed) != false) { - if (db_num_rows($result) == 1) { - $rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content")); - } else { - $rtl_content = false; - } + $result = db_query($link, "SELECT rtl_content FROM ttrss_feeds + WHERE id = '$feed' AND owner_uid = " . $_SESSION["uid"]); - if ($rtl_content) { - $rtl_tag = "dir=\"RTL\""; + if (db_num_rows($result) == 1) { + $rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content")); + } else { + $rtl_content = false; + } + + if ($rtl_content) { + $rtl_tag = "dir=\"RTL\""; + } else { + $rtl_tag = ""; + } } else { + $rtl_content = false; $rtl_tag = ""; } @@ -694,16 +711,37 @@ } } + $tmp_result = db_query($link, "SELECT DISTINCT tag_name FROM + ttrss_tags WHERE post_int_id = " . $line["int_id"] . " + ORDER BY tag_name"); + + $tags_str = ""; + $f_tags_str = ""; + + $num_tags = 0; + + while ($tmp_line = db_fetch_assoc($tmp_result)) { + $num_tags++; + $tag = $tmp_line["tag_name"]; + $tag_str = "$tag, "; + $tags_str .= $tag_str; + } + + $tags_str = preg_replace("/, $/", "", $tags_str); + $parsed_updated = date(get_pref($link, 'LONG_DATE_FORMAT'), strtotime($line["updated"])); print "
    "; - print $line["title"] . " ($parsed_updated)"; + print $line["title"] . " ($parsed_updated)"; print "
    "; - print "
    " . $line["content"] . "
    "; + if ($num_tags > 0) { + print "
    Tags: $tags_str
    "; + } - + print $line["content"]; + } print ""; diff --git a/mobile/mobile.css b/mobile/mobile.css index 7e236c9b..04fedbe8 100644 --- a/mobile/mobile.css +++ b/mobile/mobile.css @@ -176,4 +176,10 @@ ul.headlines img { text-align : center; } +div.postTags { + color : gray; +} +#headingAddon { + font-weight : normal; +} -- 2.39.2