alecpl
2011-07-27 5ed119e5341a9c1225bbb40c6e3d6ea787ca17ed
- Don't use default source if source id is specified in get_address_source()


1 files modified
28 ■■■■■ changed files
program/include/rcmail.php 28 ●●●●● patch | view | raw | blame | history
program/include/rcmail.php
@@ -403,18 +403,28 @@
      if ($plugin['instance'] instanceof rcube_addressbook) {
        $contacts = $plugin['instance'];
      }
      else if ($abook_type == 'ldap') {
        // Use the first writable LDAP address book.
        foreach ($ldap_config as $id => $prop) {
          if (!$writeable || $prop['writable']) {
            $contacts = new rcube_ldap($prop, $this->config->get('ldap_debug'), $this->config->mail_domain($_SESSION['imap_host']));
            break;
      else if (!$id) {
        if ($abook_type == 'ldap') {
          // Use the first writable LDAP address book.
          foreach ($ldap_config as $id => $prop) {
            if (!$writeable || $prop['writable']) {
              $contacts = new rcube_ldap($prop, $this->config->get('ldap_debug'), $this->config->mail_domain($_SESSION['imap_host']));
              break;
            }
          }
        }
        else { // $id == 'sql'
          $contacts = new rcube_contacts($this->db, $this->user->ID);
        }
      }
      else { // $id == 'sql'
        $contacts = new rcube_contacts($this->db, $this->user->ID);
      }
    }
    if (!$contacts) {
      raise_error(array(
        'code' => 600, 'type' => 'php',
        'file' => __FILE__, 'line' => __LINE__,
        'message' => "Addressbook source ($id) not found!"),
        true, true);
    }
    // add to the 'books' array for shutdown function