From 333c48caf7b7e166d744a747c90ad2837c17c082 Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Tue, 23 Feb 2010 13:31:23 -0500 Subject: [PATCH] - Squirrelmail_usercopy: support reply-to field (#1486506) - Use rcube_user::insert_identity() instead of custom SQL query in rcube_user::create() --- CHANGELOG | 1 + program/include/rcube_user.php | 13 +++---------- plugins/squirrelmail_usercopy/squirrelmail_usercopy.php | 13 ++++++++----- 3 files changed, 12 insertions(+), 15 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 34c3e76..14fc172 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ CHANGELOG RoundCube Webmail =========================== +- Squirrelmail_usercopy: support reply-to field (#1486506) - Fix IE spellcheck suggestion popup issue (#1486471) - Fix email address auto-completion shows regexp pattern (#1486258) - Fix merging of configuration parameters: user prefs always survive (#1486368) diff --git a/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php b/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php index aff2f49..634f837 100644 --- a/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php +++ b/plugins/squirrelmail_usercopy/squirrelmail_usercopy.php @@ -5,7 +5,7 @@ * * Currently only file-based data storage of Squirrelmail is supported. * - * @version 1.0 + * @version 1.1 * @author Thomas Bruederli */ class squirrelmail_usercopy extends rcube_plugin @@ -33,17 +33,20 @@ public function create_identity($p) { + $rcmail = rcmail::get_instance(); + // only execute on login - if ($p['login'] && $this->prefs) { + if ($rcmail->task == 'login' && $this->prefs) { if ($this->prefs['full_name']) $p['record']['name'] = $this->prefs['full_name']; if ($this->prefs['email_address']) $p['record']['email'] = $this->prefs['email_address']; if ($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 - $rcmail = rcmail::get_instance(); $contacts = $rcmail->get_address_book(null, true); if ($contacts && count($this->abook)) { foreach ($this->abook as $rec) @@ -93,4 +96,4 @@ } -?> \ No newline at end of file +?> diff --git a/program/include/rcube_user.php b/program/include/rcube_user.php index a5294f5..127efa7 100644 --- a/program/include/rcube_user.php +++ b/program/include/rcube_user.php @@ -215,6 +215,8 @@ if (!$this->ID) return false; + unset($data['user_id']); + $insert_cols = $insert_values = array(); foreach ((array)$data as $col => $value) { @@ -422,20 +424,11 @@ 'name' => strip_newlines($name), 'email' => $email, 'standard' => $standard, - 'signature' => '', ), )); if (!$plugin['abort'] && $plugin['record']['email']) { - $dbh->query( - "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']); + $rcmail->user->insert_identity($plugin['record']); } $standard = 0; } -- Gitblit v1.9.1