]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - inc/3rdparty/FlattrItem.class.php
Fix fetched entries when localized
[github/wallabag/wallabag.git] / inc / 3rdparty / FlattrItem.class.php
index c940fcd65c63621da772c26030d1ee8389e947c2..ef8c62f7f5606a8f72e2bedd05a5658580c23836 100644 (file)
@@ -1,28 +1,35 @@
 <?php
-/* 
-* Class for Flattr querying
-*/
-class FlattrItem {
+/**
+ * wallabag, self hostable application allowing you to not miss any content anymore
+ *
+ * @category   wallabag
+ * @author     Nicolas LÅ“uillet <nicolas@loeuillet.org>
+ * @copyright  2013
+ * @license    http://opensource.org/licenses/MIT see COPYING file
+ */
 
+class FlattrItem
+{
     public $status;
-    public $urltoflattr;
+    public $urlToFlattr;
     public $flattrItemURL;
-    public $numflattrs;
+    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;
+                $this->numFlattrs = $result->flattrs;
             }
             else {
                 $this->status = NOT_FLATTRABLE;
@@ -33,17 +40,18 @@ 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)) {
-            $askForFlattr = Tools::getFile(FLATTR_API . $urltoflattr);
-            $flattrCacheFile = fopen(CACHE . "/flattr/".base64_encode($urltoflattr).".cache", 'w+');
+        if ((!file_exists(CACHE . "/flattr/".$id.".cache")) || (time() - filemtime(CACHE . "/flattr/".$id.".cache") > 86400)) {
+            $askForFlattr = Tools::getFile(FLATTR_API . $urlToFlattr);
+            $flattrCacheFile = fopen(CACHE . "/flattr/".$id.".cache", 'w+');
             fwrite($flattrCacheFile, $askForFlattr);
             fclose($flattrCacheFile);
         }
     }
-}
\ No newline at end of file
+}