commit | author | age
|
42de33
|
1 |
#!/usr/bin/env php |
TB |
2 |
<?php |
|
3 |
/* |
|
4 |
+-----------------------------------------------------------------------+ |
|
5 |
| bin/gc.sh | |
|
6 |
| | |
|
7 |
| This file is part of the Roundcube Webmail client | |
|
8 |
| Copyright (C) 2013, The Roundcube Dev Team | |
|
9 |
| | |
|
10 |
| Licensed under the GNU General Public License version 3 or | |
|
11 |
| any later version with exceptions for skins & plugins. | |
|
12 |
| See the README file for a full license statement. | |
|
13 |
| | |
|
14 |
| PURPOSE: | |
|
15 |
| Trigger garbage collecting routines manually (e.g. via cronjob) | |
|
16 |
| | |
|
17 |
+-----------------------------------------------------------------------+ |
|
18 |
| Author: Thomas Bruederli <roundcube@gmail.com> | |
|
19 |
+-----------------------------------------------------------------------+ |
|
20 |
*/ |
|
21 |
|
|
22 |
define('INSTALL_PATH', realpath(dirname(__FILE__) . '/..') . '/' ); |
|
23 |
|
|
24 |
require INSTALL_PATH.'program/include/clisetup.php'; |
|
25 |
|
|
26 |
$rcmail = rcube::get_instance(); |
6ab155
|
27 |
|
AM |
28 |
$session_driver = $rcmail->config->get('session_storage', 'db'); |
|
29 |
$session_lifetime = $rcmail->config->get('session_lifetime', 0) * 60 * 2; |
|
30 |
|
|
31 |
// Clean expired SQL sessions |
|
32 |
if ($session_driver == 'db' && $session_lifetime) { |
|
33 |
$db = $rcmail->get_dbh(); |
|
34 |
$db->query("DELETE FROM " . $db->table_name('session') |
|
35 |
. " WHERE changed < " . $db->now(-$session_lifetime)); |
|
36 |
} |
|
37 |
|
|
38 |
// Clean caches and temp directory |
ee73a7
|
39 |
$rcmail->gc(); |