thomascube
2006-04-04 f3704e18d89e4065cede8509256d7fbf483b7fe6
commit | author | age
4e17e6 1 <?php
T 2
3 /*
4  +-----------------------------------------------------------------------+
5  | program/steps/settings/save_prefs.inc                                 |
6  |                                                                       |
7  | This file is part of the RoundCube Webmail client                     |
8  | Copyright (C) 2005, RoundCube Dev. - Switzerland                      |
30233b 9  | Licensed under the GNU GPL                                            |
4e17e6 10  |                                                                       |
T 11  | PURPOSE:                                                              |
12  |   Save user preferences to DB and to the current session              |
13  |                                                                       |
14  +-----------------------------------------------------------------------+
15  | Author: Thomas Bruederli <roundcube@gmail.com>                        |
16  +-----------------------------------------------------------------------+
17
18  $Id$
19
20 */
21
22 $a_user_prefs = $_SESSION['user_prefs'];
23 if (!is_array($a_user_prefs))
24   $a_user_prefs = array();
25
26
4b5d2d 27 $a_user_prefs['timezone'] = isset($_POST['_timezone']) ? floatval($_POST['_timezone']) : $CONFIG['timezone'];
4647e1 28 $a_user_prefs['dst_active'] = isset($_POST['_dst_active']) ? TRUE : FALSE;
4e17e6 29 $a_user_prefs['pagesize'] = is_numeric($_POST['_pagesize']) ? (int)$_POST['_pagesize'] : $CONFIG['pagesize'];
T 30 $a_user_prefs['prefer_html'] = isset($_POST['_prefer_html']) ? TRUE : FALSE;
31
30233b 32 // MM: Date format toggle (Pretty / Standard)
T 33 $a_user_prefs['prettydate'] = isset($_POST['_pretty_date']) ? TRUE : FALSE;
34
4e17e6 35 if (isset($_POST['_language']))
7cc38e 36   {
4e17e6 37   $sess_user_lang = $_SESSION['user_lang'] = $_POST['_language'];
7cc38e 38   rcmail_set_locale($sess_user_lang);
T 39   }
4e17e6 40
T 41
d7cb77 42 $DB->query("UPDATE ".get_table_name('users')."
S 43             SET    preferences=?,
44                    language=?
45             WHERE  user_id=?",
46             serialize($a_user_prefs),
47             $sess_user_lang,
48             $_SESSION['user_id']);
4e17e6 49
T 50 if ($DB->affected_rows())
51   {
52   show_message('successfullysaved', 'confirmation');
53   
54   $_SESSION['user_prefs'] = $a_user_prefs;  
55   $CONFIG = array_merge($CONFIG, $a_user_prefs);
56   }
57
58
59 // go to next step
60 $_action = 'preferences';
61
62 // overwrite action variable  
63 $OUTPUT->add_script(sprintf("\n%s.set_env('action', '%s');", $JS_OBJECT_NAME, $_action));  
64
65 ?>