| | |
| | | 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; |
| | |
| | | "INSERT INTO ".$dbh->table_name('users'). |
| | | " (created, last_login, username, mail_host, language)". |
| | | " VALUES (".$dbh->now().", ".$dbh->now().", ?, ?, ?)", |
| | | strip_newlines($data['user']), |
| | | strip_newlines($data['host']), |
| | | strip_newlines($data['language'])); |
| | | $data['user'], |
| | | $data['host'], |
| | | $data['language']); |
| | | |
| | | if ($user_id = $dbh->insert_id('users')) { |
| | | // create rcube_user instance to make plugin hooks work |
| | |
| | | if (empty($user_email)) { |
| | | $user_email = strpos($data['user'], '@') ? $user : sprintf('%s@%s', $data['user'], $mail_domain); |
| | | } |
| | | $email_list[] = strip_newlines($user_email); |
| | | $email_list[] = $user_email; |
| | | } |
| | | // identities_level check |
| | | else if (count($email_list) > 1 && $rcube->config->get('identities_level', 0) > 1) { |
| | |
| | | $record['name'] = $user_name != $record['email'] ? $user_name : ''; |
| | | } |
| | | |
| | | $record['name'] = strip_newlines($record['name']); |
| | | $record['user_id'] = $user_id; |
| | | $record['standard'] = $standard; |
| | | |