]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - inc/3rdparty/FlattrItem.class.php
Merge pull request #391 from Newinx/master
[github/wallabag/wallabag.git] / inc / 3rdparty / FlattrItem.class.php
index c940fcd65c63621da772c26030d1ee8389e947c2..711b4ee0787aa6f906419bf642ab7969a4e06581 100644 (file)
@@ -9,17 +9,17 @@ class FlattrItem {
     public $flattrItemURL;
     public $numflattrs;
 
-    public function checkItem($urltoflattr) {
-        $this->cacheflattrfile($urltoflattr);
-        $flattrResponse = file_get_contents(CACHE . "/flattr/".base64_encode($urltoflattr).".cache");
+    public function checkItem($urltoflattr,$id) {
+        $this->cacheflattrfile($urltoflattr, $id);
+        $flattrResponse = file_get_contents(CACHE . "/flattr/".$id.".cache");
         if($flattrResponse != FALSE) {
             $result = json_decode($flattrResponse);
-            if (isset($result->message)){
+                       if (isset($result->message)){
                 if ($result->message == "flattrable") {
                     $this->status = FLATTRABLE;
                 }
             } 
-            elseif ($result->link) {
+               elseif (is_object($result) && $result->link) {
                 $this->status = FLATTRED;
                 $this->flattrItemURL = $result->link;
                 $this->numflattrs = $result->flattrs;
@@ -33,15 +33,15 @@ class FlattrItem {
         }
     }
 
-    private function cacheflattrfile($urltoflattr) {
+    private function cacheflattrfile($urltoflattr, $id) {
         if (!is_dir(CACHE . '/flattr')) {
             mkdir(CACHE . '/flattr', 0777);
         }
 
         // if a cache flattr file for this url already exists and it's been less than one day than it have been updated, see in /cache
-        if ((!file_exists(CACHE . "/flattr/".base64_encode($urltoflattr).".cache")) || (time() - filemtime(CACHE . "/flattr/".base64_encode($urltoflattr).".cache") > 86400)) {
+        if ((!file_exists(CACHE . "/flattr/".$id.".cache")) || (time() - filemtime(CACHE . "/flattr/".$id.".cache") > 86400)) {
             $askForFlattr = Tools::getFile(FLATTR_API . $urltoflattr);
-            $flattrCacheFile = fopen(CACHE . "/flattr/".base64_encode($urltoflattr).".cache", 'w+');
+            $flattrCacheFile = fopen(CACHE . "/flattr/".$id.".cache", 'w+');
             fwrite($flattrCacheFile, $askForFlattr);
             fclose($flattrCacheFile);
         }