| | |
| | | |
| | | /* |
| | | +-----------------------------------------------------------------------+ |
| | | | program/include/rcube_user.inc | |
| | | | | |
| | | | This file is part of the Roundcube Webmail client | |
| | | | Copyright (C) 2005-2012, The Roundcube Dev Team | |
| | | | | |
| | |
| | | | PURPOSE: | |
| | | | This class represents a system user linked and provides access | |
| | | | to the related database records. | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Thomas Bruederli <roundcube@gmail.com> | |
| | | | Author: Aleksander Machniak <alec@alec.pl> | |
| | | +-----------------------------------------------------------------------+ |
| | | */ |
| | | |
| | | |
| | | /** |
| | | * Class representing a system user |
| | |
| | | if (!$this->ID) |
| | | return false; |
| | | |
| | | $config = $this->rc->config; |
| | | $old_prefs = (array)$this->get_prefs(); |
| | | $plugin = $this->rc->plugins->exec_hook('preferences_update', array( |
| | | 'userid' => $this->ID, 'prefs' => $a_user_prefs, 'old' => (array)$this->get_prefs())); |
| | | |
| | | if (!empty($plugin['abort'])) { |
| | | return; |
| | | } |
| | | |
| | | $a_user_prefs = $plugin['prefs']; |
| | | $old_prefs = $plugin['old']; |
| | | $config = $this->rc->config; |
| | | |
| | | // merge (partial) prefs array with existing settings |
| | | $save_prefs = $a_user_prefs + $old_prefs; |