]> git.wh0rd.org - tt-rss.git/blobdiff - classes/feeds.php
universal image caching and automatic cache directories maintenance
[tt-rss.git] / classes / feeds.php
index 98ea55c0bc629372a7c15cc3adf8ab01d753a716..f9f82cd163e4dda7098fb72e671a13a88db91d2d 100644 (file)
@@ -1,6 +1,12 @@
 <?php\r
 class Feeds extends Protected_Handler {\r
 \r
+       function csrf_ignore($method) {\r
+               $csrf_ignored = array("index");\r
+\r
+               return array_search($method, $csrf_ignored) !== false;\r
+       }\r
+\r
        private function feedlist_init_cat($cat_id, $hidden = false) {\r
                $obj = array();\r
                $cat_id = (int) $cat_id;\r
@@ -68,7 +74,43 @@ class Feeds extends Protected_Handler {
                $tog_marked_link = "selectionToggleMarked()";\r
                $tog_published_link = "selectionTogglePublished()";\r
 \r
-               $reply = "<div id=\"subtoolbar_main\">";\r
+               if ($is_cat) $cat_q = "&is_cat=$is_cat";\r
+\r
+               if ($search) {\r
+                       $search_q = "&q=$search&m=$match_on&smode=$search_mode";\r
+               } else {\r
+                       $search_q = "";\r
+               }\r
+\r
+               $rss_link = htmlspecialchars(get_self_url_prefix() .\r
+                       "/public.php?op=rss&id=$feed_id$cat_q$search_q");\r
+\r
+               // right part\r
+\r
+               $reply .= "<span class='r'>";\r
+\r
+               if ($feed_site_url) {\r
+                       $target = "target=\"_blank\"";\r
+                       $reply .= "<a title=\"".__("Visit the website")."\" $target href=\"$feed_site_url\">".\r
+                               truncate_string($feed_title,30)."</a>";\r
+\r
+                       if ($error) {\r
+                               $reply .= " (<span class=\"error\" title=\"$error\">Error</span>)";\r
+                       }\r
+\r
+               } else {\r
+                       $reply .= $feed_title;\r
+               }\r
+\r
+               $reply .= "\r
+                       <a href=\"#\"\r
+                               title=\"".__("View as RSS feed")."\"\r
+                               onclick=\"displayDlg('generatedFeed', '$feed_id:$is_cat:$rss_link')\">\r
+                               <img class=\"noborder\" style=\"vertical-align : middle\" src=\"images/feed-icon-12x12.png\"></a>";\r
+\r
+               $reply .= "</span>";\r
+\r
+               // left part\r
 \r
                $reply .= __('Select:')."\r
                        <a href=\"#\" onclick=\"$sel_all_link\">".__('All')."</a>,\r
@@ -103,17 +145,6 @@ class Feeds extends Protected_Handler {
                $reply .= "<option value=\"emailArticle(false)\">".__('Forward by email').\r
                        "</option>";\r
 \r
-               if ($is_cat) $cat_q = "&is_cat=$is_cat";\r
-\r
-               if ($search) {\r
-                       $search_q = "&q=$search&m=$match_on&smode=$search_mode";\r
-               } else {\r
-                       $search_q = "";\r
-               }\r
-\r
-               $rss_link = htmlspecialchars(get_self_url_prefix() .\r
-                       "/public.php?op=rss&id=$feed_id$cat_q$search_q");\r
-\r
                $reply .= "<option value=\"0\" disabled=\"1\">".__('Feed:')."</option>";\r
 \r
                $reply .= "<option value=\"catchupPage()\">".__('Mark as read')."</option>";\r
@@ -122,50 +153,9 @@ class Feeds extends Protected_Handler {
 \r
                $reply .= "</select>";\r
 \r
-               $reply .= "</div>";\r
-\r
-               $reply .= "<div id=\"subtoolbar_ftitle\">";\r
-\r
-               if ($feed_site_url) {\r
-                       $target = "target=\"_blank\"";\r
-                       $reply .= "<a title=\"".__("Visit the website")."\" $target href=\"$feed_site_url\">".\r
-                               truncate_string($feed_title,30)."</a>";\r
-\r
-                       if ($error) {\r
-                               $reply .= " (<span class=\"error\" title=\"$error\">Error</span>)";\r
-                       }\r
-\r
-               } else {\r
-                       if ($feed_id < -10) {\r
-                               $label_id = -11-$feed_id;\r
-\r
-                               $result = db_query($this->link, "SELECT fg_color, bg_color\r
-                                       FROM ttrss_labels2 WHERE id = '$label_id' AND owner_uid = " .\r
-                                       $_SESSION["uid"]);\r
-\r
-                               if (db_num_rows($result) != 0) {\r
-                                       $fg_color = db_fetch_result($result, 0, "fg_color");\r
-                                       $bg_color = db_fetch_result($result, 0, "bg_color");\r
-\r
-                                       $reply .= "<span style=\"background : $bg_color; color : $fg_color\" >";\r
-                                       $reply .= $feed_title;\r
-                                       $reply .= "</span>";\r
-                               } else {\r
-                                       $reply .= $feed_title;\r
-                               }\r
-\r
-                       } else {\r
-                               $reply .= $feed_title;\r
-                       }\r
-               }\r
+               //$reply .= "</div>";\r
 \r
-               $reply .= "\r
-                       <a href=\"#\"\r
-                               title=\"".__("View as RSS feed")."\"\r
-                               onclick=\"displayDlg('generatedFeed', '$feed_id:$is_cat:$rss_link')\">\r
-                               <img class=\"noborder\" style=\"vertical-align : middle\" src=\"images/feed-icon-12x12.png\"></a>";\r
-\r
-               $reply .= "</div>";\r
+               //$reply .= "</h2";\r
 \r
                return $reply;\r
        }\r
@@ -194,9 +184,10 @@ class Feeds extends Protected_Handler {
                        catchupArticlesById($this->link, $ids, $cmode);\r
                } */\r
 \r
-               //if ($method == "ForceUpdate" && $feed && is_numeric($feed) > 0) {\r
-               //      update_rss_feed($this->link, $feed, true);\r
-               //}\r
+               if ($method == "ForceUpdate" && $feed && is_numeric($feed) > 0) {\r
+                       include "rssfuncs.php";\r
+                       update_rss_feed($this->link, $feed, true);\r
+               }\r
 \r
                if ($method == "MarkAllRead")  {\r
                        catchup_feed($this->link, $feed, $cat_view);\r
@@ -288,6 +279,18 @@ class Feeds extends Protected_Handler {
 \r
                $headlines_count = db_num_rows($result);\r
 \r
+               if (get_pref($this->link, 'COMBINED_DISPLAY_MODE')) {\r
+                       $button_plugins = array();\r
+                       foreach (explode(",", ARTICLE_BUTTON_PLUGINS) as $p) {\r
+                               $pclass = trim("${p}_button");\r
+\r
+                               if (class_exists($pclass)) {\r
+                                       $plugin = new $pclass($link);\r
+                                       array_push($button_plugins, $plugin);\r
+                               }\r
+                       }\r
+               }\r
+\r
                if (db_num_rows($result) > 0) {\r
 \r
                        $lnum = $offset;\r
@@ -710,34 +713,14 @@ class Feeds extends Protected_Handler {
 \r
                                        //$note_escaped = htmlspecialchars($line['note'], ENT_QUOTES);\r
 \r
-                                       $reply['content'] .= "<img src=\"images/art-pub-note.png\"\r
-                                               style=\"cursor : pointer\" style=\"cursor : pointer\"\r
-                                               onclick=\"editArticleNote($id)\"\r
-                                               alt='PubNote' title='".__('Edit article note')."'>";\r
-\r
-                                       if (DIGEST_ENABLE) {\r
-                                               $reply['content'] .= "<img src=\"".theme_image($this->link, 'images/art-email.png')."\"\r
-                                                       style=\"cursor : pointer\"\r
-                                                       onclick=\"emailArticle($id)\"\r
-                                                       alt='Zoom' title='".__('Forward by email')."'>";\r
+                                       foreach ($button_plugins as $p) {\r
+                                               $reply['content'] .= $p->render($id, $line);\r
                                        }\r
 \r
-                                       if (ENABLE_TWEET_BUTTON) {\r
-                                               $reply['content'] .= "<img src=\"".theme_image($this->link, 'images/art-tweet.png')."\"\r
-                                                       class='tagsPic' style=\"cursor : pointer\"\r
-                                                       onclick=\"tweetArticle($id)\"\r
-                                                       alt='Zoom' title='".__('Share on Twitter')."'>";\r
-                                       }\r
-\r
-                                       $reply['content'] .= "<img src=\"".theme_image($this->link, 'images/art-share.png')."\"\r
-                                               class='tagsPic' style=\"cursor : pointer\"\r
-                                               onclick=\"shareArticle(".$line['int_id'].")\"\r
-                                               alt='Zoom' title='".__('Share by URL')."'>";\r
-\r
                                        $reply['content'] .= "<img src=\"images/digest_checkbox.png\"\r
                                                style=\"cursor : pointer\" style=\"cursor : pointer\"\r
                                                onclick=\"dismissArticle($id)\"\r
-                                               alt='Dismiss' title='".__('Dismiss article')."'>";\r
+                                               title='".__('Close article')."'>";\r
 \r
                                        $reply['content'] .= "</div>";\r
                                        $reply['content'] .= "</div>";\r