alecpl
2010-01-28 b5846eed4ddd8e2a3f5f0fee42d91d5243c2afec
- Login preformance: Create default folders on first login only


3 files modified
18 ■■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/include/rcmail.php 15 ●●●● patch | view | raw | blame | history
program/include/rcube_imap.php 2 ●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail
===========================
- Login preformance: Create default folders on first login only
- Import contacts into the selected address book (by Phil Weir)
- Add support for MDB2's 'sqlsrv' driver (#1486395)
- Use jQuery-1.4
program/include/rcmail.php
@@ -492,17 +492,22 @@
    if (!($imap_login  = $this->imap->connect($host, $username, $pass, $imap_port, $imap_ssl)))
      return false;
    $this->set_imap_prop();
    // user already registered -> update user's record
    if (is_object($user)) {
      // create default folders on first login
      if (!$user->data['last_login'] && $config['create_default_folders'])
        $this->imap->create_default_folders();
      $user->touch();
    }
    // create new system user
    else if ($config['auto_create_user']) {
      if ($created = rcube_user::create($username, $host)) {
        $user = $created;
        // get existing mailboxes (but why?)
        // $a_mailboxes = $this->imap->list_mailboxes();
        // create default folders on first login
        if ($config['create_default_folders'])
          $this->imap->create_default_folders();
      }
      else {
        raise_error(array(
@@ -537,11 +542,7 @@
        $_SESSION['timezone'] = floatval($_REQUEST['_timezone']);
      // force reloading complete list of subscribed mailboxes
      $this->set_imap_prop();
      $this->imap->clear_cache('mailboxes');
      if ($config['create_default_folders'])
          $this->imap->create_default_folders();
      return true;
    }
program/include/rcube_imap.php
@@ -2139,7 +2139,7 @@
   */
  function create_default_folders()
    {
    $a_folders = iil_C_ListMailboxes($this->conn, $this->mod_mailbox(''), '*');
    $a_folders = iil_C_ListMailboxes($this->conn, $this->mod_mailbox(''), 'Drafts');
    $a_subscribed = iil_C_ListSubscribed($this->conn, $this->mod_mailbox(''), '*');
    
    // create default folders if they do not exist