alecpl
2010-02-23 333c48caf7b7e166d744a747c90ad2837c17c082
- Squirrelmail_usercopy: support reply-to field (#1486506)
- Use rcube_user::insert_identity() instead of custom SQL query in rcube_user::create()


3 files modified
23 ■■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
plugins/squirrelmail_usercopy/squirrelmail_usercopy.php 9 ●●●●● patch | view | raw | blame | history
program/include/rcube_user.php 13 ●●●● patch | view | raw | blame | history
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) 
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)
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;
      }