]> git.immae.eu Git - github/wallabag/wallabag.git/blobdiff - inc/poche/Database.class.php
implement #1123
[github/wallabag/wallabag.git] / inc / poche / Database.class.php
index 210ebb74cc279b0f55d61cced87dd46108f36206..4f55a7fe20211848564d6284708acd7c0df0a1b8 100755 (executable)
@@ -411,12 +411,34 @@ class Database {
 
         return $count;
     }
-    public function getRandomId($row, $user_id) {
-       $sql = "SELECT id FROM entries WHERE user_id=? LIMIT 1 OFFSET ? ";
-       $params = array($user_id, $row);
-       $query = $this->executeQuery($sql, $params);
+    public function getRandomId($user_id) {
+        $random = (STORAGE == 'mysql') ? 'RAND()' : 'RANDOM()';
+        $sql = "SELECT id FROM entries WHERE user_id=? ORDER BY ". $random . " LIMIT 1";
+        $params = array($user_id);
+        $query = $this->executeQuery($sql, $params);
+        $id = $query->fetchAll();
+
+        return $id;
+    }
+
+    public function getPreviousArticle($id, $user_id) 
+    {
+        $sql = "SELECT id FROM entries WHERE id = (SELECT max(id) FROM entries WHERE id < ?) AND user_id=? AND is_read=0";
+        $params = array($id, $user_id);
+        $query = $this->executeQuery($sql, $params);
+        $id_entry = $query->fetchAll();
+        $id = $id_entry[0][0];
+        return $id;
+    }
 
-       return $query->fetchAll();
+    public function getNextArticle($id, $user_id) 
+    {
+        $sql = "SELECT id FROM entries WHERE id = (SELECT min(id) FROM entries WHERE id > ?) AND user_id=? AND is_read=0";
+        $params = array($id, $user_id);
+        $query = $this->executeQuery($sql, $params);
+        $id_entry = $query->fetchAll();
+        $id = $id_entry[0][0];
+        return $id;
     }