- Squirrelmail_usercopy: support reply-to field (#1486506)

- Use rcube_user::insert_identity() instead of custom SQL query in rcube_user::create()
release-0.6
alecpl 15 years ago
parent 6a31558dd8
commit 333c48caf7

@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail CHANGELOG RoundCube Webmail
=========================== ===========================
- Squirrelmail_usercopy: support reply-to field (#1486506)
- Fix IE spellcheck suggestion popup issue (#1486471) - Fix IE spellcheck suggestion popup issue (#1486471)
- Fix email address auto-completion shows regexp pattern (#1486258) - Fix email address auto-completion shows regexp pattern (#1486258)
- Fix merging of configuration parameters: user prefs always survive (#1486368) - Fix merging of configuration parameters: user prefs always survive (#1486368)

@ -5,7 +5,7 @@
* *
* Currently only file-based data storage of Squirrelmail is supported. * Currently only file-based data storage of Squirrelmail is supported.
* *
* @version 1.0 * @version 1.1
* @author Thomas Bruederli * @author Thomas Bruederli
*/ */
class squirrelmail_usercopy extends rcube_plugin class squirrelmail_usercopy extends rcube_plugin
@ -33,17 +33,20 @@ class squirrelmail_usercopy extends rcube_plugin
public function create_identity($p) public function create_identity($p)
{ {
$rcmail = rcmail::get_instance();
// only execute on login // only execute on login
if ($p['login'] && $this->prefs) { if ($rcmail->task == 'login' && $this->prefs) {
if ($this->prefs['full_name']) if ($this->prefs['full_name'])
$p['record']['name'] = $this->prefs['full_name']; $p['record']['name'] = $this->prefs['full_name'];
if ($this->prefs['email_address']) if ($this->prefs['email_address'])
$p['record']['email'] = $this->prefs['email_address']; $p['record']['email'] = $this->prefs['email_address'];
if ($this->prefs['signature']) if ($this->prefs['signature'])
$p['record']['signature'] = $this->prefs['signature']; $p['record']['signature'] = $this->prefs['signature'];
if ($this->prefs['reply-to'])
$p['record']['reply-to'] = $this->prefs['reply-to'];
// copy address book // copy address book
$rcmail = rcmail::get_instance();
$contacts = $rcmail->get_address_book(null, true); $contacts = $rcmail->get_address_book(null, true);
if ($contacts && count($this->abook)) { if ($contacts && count($this->abook)) {
foreach ($this->abook as $rec) foreach ($this->abook as $rec)
@ -93,4 +96,4 @@ class squirrelmail_usercopy extends rcube_plugin
} }
?> ?>

@ -215,6 +215,8 @@ class rcube_user
if (!$this->ID) if (!$this->ID)
return false; return false;
unset($data['user_id']);
$insert_cols = $insert_values = array(); $insert_cols = $insert_values = array();
foreach ((array)$data as $col => $value) foreach ((array)$data as $col => $value)
{ {
@ -422,20 +424,11 @@ class rcube_user
'name' => strip_newlines($name), 'name' => strip_newlines($name),
'email' => $email, 'email' => $email,
'standard' => $standard, 'standard' => $standard,
'signature' => '',
), ),
)); ));
if (!$plugin['abort'] && $plugin['record']['email']) { if (!$plugin['abort'] && $plugin['record']['email']) {
$dbh->query( $rcmail->user->insert_identity($plugin['record']);
"INSERT INTO ".get_table_name('identities')."
(user_id, del, standard, name, email, signature)
VALUES (?, 0, ?, ?, ?, ?)",
$user_id,
$plugin['record']['standard'],
$plugin['record']['name'] != NULL ? $plugin['record']['name'] : '',
$plugin['record']['email'],
$plugin['record']['signature']);
} }
$standard = 0; $standard = 0;
} }

Loading…
Cancel
Save