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