]> git.wh0rd.org Git - tt-rss.git/commitdiff
enable tags support in CDM
authorAndrew Dolgov <fox@madoka.spb.ru>
Thu, 25 Jan 2007 09:38:13 +0000 (10:38 +0100)
committerAndrew Dolgov <fox@madoka.spb.ru>
Thu, 25 Jan 2007 09:38:13 +0000 (10:38 +0100)
backend.php
viewfeed.js

index 223842f349ad609689cd50a3e018f26e37876ecb..d61d18f20e93a4f0875e3c856a93b5da85aaebe3 100644 (file)
 
                                        print "<div class=\"cdmHeader\">";
 
-                                       print "<div style=\"float : right\">$updated_fmt $id
+                                       print "<div style=\"float : right\">$updated_fmt
                                                <!-- <a class=\"cdmToggleLink\"
                                                        href=\"javascript:toggleUnread($id)\">Toggle unread</a> -->
                                        </div>";
                                        print "<div class=\"cdmContent\">" . $line["content_preview"] . "</div><br clear=\"all\">";
 
                                        print "<div style=\"float : right\">$marked_pic</div>
-                                               <div lass=\"cdmFooter\">
-                                                       <input type=\"checkbox\" onclick=\"toggleSelectRowById(this, 
-                                                       'RROW-$id')\" class=\"feedCheckBox\" id=\"RCHK-$id\"></div>";
+                                               <div class=\"cdmFooter\">";
+
+                                       
+                                       print "<input type=\"checkbox\" onclick=\"toggleSelectRowById(this, 
+                                                       'RROW-$id')\" class=\"feedCheckBox\" id=\"RCHK-$id\">";
+
+                                       $tags = get_article_tags($link, $id);
+
+                                       $tags_str = "";
+
+                                       foreach ($tags as $tag) {
+                                               $num_tags++;
+                                               $tags_str .= "<a href=\"javascript:viewfeed('$tag')\">$tag</a>, "; 
+                                       }
+
+                                       $tags_str = preg_replace("/, $/", "", $tags_str);
+       
+                                       print " &nbsp; $tags_str <a title=\"Edit tags for this article\" 
+                                                       href=\"javascript:editArticleTags($id, $feed_id, true)\">(+)</a>";
+
+                                       print "</div>";
 
 #                                      print "<div align=\"center\"><a class=\"cdmToggleLink\"
 #                                                      href=\"javascript:toggleUnread($id)\">
index 6595b0b1a891b0f6b63dbbc22e0cf7e3c170fd21..8e3fe422ed46f8f15b2ab8dea75a80b0db7816ea 100644 (file)
@@ -5,8 +5,12 @@ var active_real_feed_id = false;
 
 var _tag_active_post_id = false;
 var _tag_active_feed_id = false;
+var _tag_active_cdm = false;
 
-// FIXME: kludge, needs proper implementation
+// FIXME: kludge, to restore scrollTop after tag editor terminates
+var _tag_cdm_scroll = false;
+
+// FIXME: kludges, needs proper implementation
 var _reload_feedlist_after_view = false;
 
 var _cdm_wd_timeout = false;
@@ -47,6 +51,13 @@ function headlines_callback() {
                        _cdm_wd_vishist = new Array();
                }
 
+               if (_tag_cdm_scroll) {
+                       try {
+                               document.getElementById("headlinesInnerContainer").scrollTop = _tag_cdm_scroll;
+                               _tag_cdm_scroll = false;
+                       } catch (e) { }
+               }
+
                notify("");
        }
 }
@@ -454,9 +465,13 @@ function labelFromSearch(search, search_mode, match_on, feed_id, is_cat) {
 
 }
 
-function editArticleTags(id, feed_id) {
+function editArticleTags(id, feed_id, cdm_enabled) {
        _tag_active_post_id = id;
        _tag_active_feed_id = feed_id;
+       _tag_active_cdm = cdm_enabled;
+       try {
+               _tag_cdm_scroll = document.getElementById("headlinesInnerContainer").scrollTop;
+       } catch (e) { }
        displayDlg('editArticleTags', id);
 }
 
@@ -473,10 +488,15 @@ function tag_saved_callback() {
                                _reload_feedlist_after_view = true;
                        }
 
-                       if (active_post_id == _tag_active_post_id) {
-                               debug("reloading current article");
-                               view(_tag_active_post_id, _tag_active_feed_id);                 
-                       } 
+                       if (!_tag_active_cdm) {
+                               if (active_post_id == _tag_active_post_id) {
+                                       debug("reloading current article");
+                                       view(_tag_active_post_id, _tag_active_feed_id);                 
+                               }
+                       } else {
+                               debug("reloading current feed");
+                               viewCurrentFeed();
+                       }
 
                } catch (e) {
                        exception_error("catchup_callback", e);