From 5d66a4bcf3ad5d584255184776f1f04451c929fc Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 19 Apr 2012 03:42:19 -0400
Subject: [PATCH] - Improved ttl values handling

---
 program/include/rcube_cache.php |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/program/include/rcube_cache.php b/program/include/rcube_cache.php
index 6d7a9ea..ef04beb 100644
--- a/program/include/rcube_cache.php
+++ b/program/include/rcube_cache.php
@@ -59,7 +59,7 @@
      * @param string $type   Engine type ('db' or 'memcache' or 'apc')
      * @param int    $userid User identifier
      * @param string $prefix Key name prefix
-     * @param int    $ttl    Expiration time of memcache/apc items in seconds (max.2592000)
+     * @param string $ttl    Expiration time of memcache/apc items
      * @param bool   $packed Enables/disabled data serialization.
      *                       It's possible to disable data serialization if you're sure
      *                       stored data will be always a safe string
@@ -82,8 +82,12 @@
             $this->db   = $rcube->get_dbh();
         }
 
+        // convert ttl string to seconds
+        $ttl = get_offset_sec($ttl);
+        if ($ttl > 2592000) $ttl = 2592000;
+
         $this->userid    = (int) $userid;
-        $this->ttl       = (int) $ttl;
+        $this->ttl       = $ttl;
         $this->packed    = $packed;
         $this->prefix    = $prefix;
     }

--
Gitblit v1.9.1