summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authornhoening <[email protected]>2013-02-26 11:42:46 +0100
committernhoening <[email protected]>2013-02-26 11:42:46 +0100
commite0abb8d7688551397c40b7bb2faf7ec0901a256b (patch)
treeb2e3cd3d766ecbf43038b64a2c071ecf94c0cc33 /plugins
parentcfe6d444a99beb9085036374adfbd6dd5886f8bf (diff)
Replace SQL query which led to problems for some, refactor a bit and document what this plugin cannot do if articles are not in the Flattr cataloge.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/flattr/init.php50
1 files changed, 22 insertions, 28 deletions
diff --git a/plugins/flattr/init.php b/plugins/flattr/init.php
index 09796d862..d5e4ad025 100644
--- a/plugins/flattr/init.php
+++ b/plugins/flattr/init.php
@@ -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;
}
}