diff --git a/lib/classes/FilesSearch/FilesIndexManager.php b/lib/classes/FilesSearch/FilesIndexManager.php
index 818bb21a7789ec3bdf20376ea3907a39871f24d6..9f762d5e60a420e4154bfff906e20ba9b86efac2 100644
--- a/lib/classes/FilesSearch/FilesIndexManager.php
+++ b/lib/classes/FilesSearch/FilesIndexManager.php
@@ -197,7 +197,7 @@ class FilesIndexManager
     private static function relevance($base, $modifier)
     {
         // 31556926 is the number of seconds in one year
-        return "POW( $base , ((UNIX_TIMESTAMP() - $modifier ) / 31556926)) AS relevance";
+        return "POW( $base , ((UNIX_TIMESTAMP() - CAST($modifier AS SIGNED)) / 31556926)) AS relevance";
     }
 
     /**
diff --git a/lib/classes/Score.class.php b/lib/classes/Score.class.php
index ededb7ec71e7ef379ee7f552052aa98e352b35c6..5fa80d9b1e6701980162935b0c1da9562daba097 100644
--- a/lib/classes/Score.class.php
+++ b/lib/classes/Score.class.php
@@ -25,7 +25,7 @@ class Score
         $query = "SELECT nr.range_id as user_id, COUNT(*) AS newscount
                   FROM news_range AS nr
                   INNER JOIN news AS n ON (nr.news_id = n.news_id)
-                  WHERE nr.range_id IN (?) AND (UNIX_TIMESTAMP() - n.date) <= n.expire
+                  WHERE nr.range_id IN (?) AND UNIX_TIMESTAMP() <= n.date + n.expire
                   GROUP BY nr.range_id
                   ORDER BY NULL";
         $statement = DBManager::get()->prepare($query);