diff options
| author | roundcube <roundcube@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-02-05 15:38:51 +0000 |
|---|---|---|
| committer | roundcube <roundcube@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-02-05 15:38:51 +0000 |
| commit | e4c5b65c94cf5dcad52692b8e9474c1b080d3dcb (patch) | |
| tree | 03e88bbc0cf94685566b0a17a248ebf743fa720a /roundcubemail/program/include/rcube_shared.inc | |
| parent | ac2c4a9ef69d798c359f6942db266d355c4cfb8b (diff) | |
Added message cache garbage collector
git-svn-id: https://svn.roundcube.net/trunk@132 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include/rcube_shared.inc')
| -rw-r--r-- | roundcubemail/program/include/rcube_shared.inc | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/roundcubemail/program/include/rcube_shared.inc b/roundcubemail/program/include/rcube_shared.inc index a36458b00..fb200de57 100644 --- a/roundcubemail/program/include/rcube_shared.inc +++ b/roundcubemail/program/include/rcube_shared.inc @@ -1353,4 +1353,37 @@ function clear_directory($dir_path) } +// create a unix timestamp with a specified offset from now +function get_offset_time($offset_str, $factor=1) + { + if (preg_match('/^([0-9]+)\s*([smhdw])/i', $offset_str, $regs)) + { + $amount = (int)$regs[1]; + $unit = strtolower($regs[2]); + } + else + { + $amount = (int)$offset_str; + $unit = 's'; + } + + $ts = mktime(); + switch ($unit) + { + case 'w': + $amount *= 7; + case 'd': + $amount *= 24; + case 'h': + $amount *= 60; + case 'h': + $amount *= 60; + case 's': + $ts += $amount * $factor; + } + + return $ts; + } + + ?>
\ No newline at end of file |
