]> git.wh0rd.org - tt-rss.git/commitdiff
Replace SQL query which led to problems for some, refactor a bit and document what...
authornhoening <nhoening@gmail.com>
Tue, 26 Feb 2013 10:42:46 +0000 (11:42 +0100)
committernhoening <nhoening@gmail.com>
Tue, 26 Feb 2013 10:42:46 +0000 (11:42 +0100)
plugins/flattr/init.php

index 09796d862e4c29f52a506f6ed76cce4fac00ccf7..d5e4ad0259b71f4fa630c5f226da91b7755e083b 100644 (file)
@@ -11,41 +11,35 @@ class Flattr extends Plugin {
        }
 
        function about() {
-               return array(1.0,
-                       "Share articles on Flattr",
-                       "Nic Honing");
+               return array(1.1,
+                       "Share articles on Flattr (if they exist in their catalogue)",
+                       "F. Eitel, N. Honing");
        }
 
   function hook_article_button($line) {
 
-       $article_id = $line["id"];
+    $rv = "";
+    $article_link = $line['link'];
 
-    $result = db_query($this->link, "SELECT link
-      FROM ttrss_entries, ttrss_user_entries
-      WHERE id = '$article_id' AND ref_id = id AND owner_uid = " .$_SESSION['uid']);
-
-    if (db_num_rows($result) != 0) {
-      $article_link = db_fetch_result($result, 0, 'link');
-    }
-
-    $response = null;
     if ($article_link) {
-      $encoded = urlencode($article_link);
-      $r = file_get_contents("https://api.flattr.com/rest/v2/things/lookup/?url=$encoded");
-      $response = json_decode($r, true);
+        $encoded = urlencode($article_link);
+        $r = file_get_contents("https://api.flattr.com/rest/v2/things/lookup/?url=$encoded");
+        $response = json_decode($r, true);
+        $image = "<img src=\"".theme_image($this->link, 'plugins/flattr/flattr.png')."\"
+                       class='tagsPic' style=\"cursor : pointer\"
+                       title='".__('Flattr this article.')."'>";
+        // if Flattr has it in the catalogue, we display the button
+        if ($response and array_key_exists('link', $response)) {
+            $rv = "<a id='flattr' target='_blank' href='" . $response['link'] . "'> . $image . </a>";
+        } else {
+            // We can't submit a thing to the catalogue without giving a Flattr user id (who would be the owner)
+            // see http://developers.flattr.net/auto-submit
+            //$rv = "<a id='flattr' href='https://flattr.com/submit/auto?url=" . $encoded  . "'>" . $image . "</a>";
+            $rv = '';
+            // Another useful thing would be any rel=payment link (which would have the user id as well),
+            // but tt-rss is not checking that (yet), I believe. See http://developers.flattr.net/feed
+        }
     }
-
-    $rv = null;
-    if ($response and array_key_exists('link', $response)) {
-      $rv = "<a id='flattr' target='_blank' href='" . $response['link'] . "'>
-        <img src=\"".theme_image($this->link, 'plugins/flattr/flattr.png')."\"
-        class='tagsPic' style=\"cursor : pointer\"
-        title='".__('Flattr article')."'>
-        </a>";
-    } else {
-      $rv = "";
-    }
-
     return $rv;
   }
 }