thomascube
2012-03-14 168e5409239583343ae40695585aa8dbc276f740
Request all needed fields from address book backends (#1488394)

5 files modified
17 ■■■■ changed files
program/steps/addressbook/delete.inc 2 ●●● patch | view | raw | blame | history
program/steps/addressbook/list.inc 4 ●●●● patch | view | raw | blame | history
program/steps/addressbook/search.inc 2 ●●● patch | view | raw | blame | history
program/steps/mail/autocomplete.inc 7 ●●●●● patch | view | raw | blame | history
program/steps/mail/list_contacts.inc 2 ●●● patch | view | raw | blame | history
program/steps/addressbook/delete.inc
@@ -86,7 +86,7 @@
        $source->set_search_set($set);
        // get records
        $result = $source->list_records(array('name', 'email'));
        $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
        if (!$result->count) {
            unset($search[$s]);
program/steps/addressbook/list.inc
@@ -46,7 +46,7 @@
        $source->set_search_set($set);
        // get records
        $result = $source->list_records(array('name', 'email'));
        $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
        while ($row = $result->next()) {
            $row['sourceid'] = $s;
@@ -76,7 +76,7 @@
    $CONTACTS = rcmail_contact_source(null, true);
    // get contacts for this user
    $result = $CONTACTS->list_records(array('name'));
    $result = $CONTACTS->list_records(array('name', 'firstname', 'surname', 'email'));
    if (!$result->count && $result->searchonly) {
        $OUTPUT->show_message('contactsearchonly', 'notice');
program/steps/addressbook/search.inc
@@ -182,7 +182,7 @@
        }
        // get records
        $result = $source->list_records(array('name', 'email'));
        $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
        while ($row = $result->next()) {
            $row['sourceid'] = $s['id'];
program/steps/mail/autocomplete.inc
@@ -29,10 +29,10 @@
    $members = array();
    $abook->set_group($gid);
    $abook->set_pagesize(1000);  // TODO: limit number of group members by config
    $result = $abook->list_records(array('email','name'));
    $result = $abook->list_records(array('name', 'firstname', 'surname', 'email'));
    while ($result && ($sql_arr = $result->iterate())) {
      foreach ((array)$sql_arr['email'] as $email) {
        $members[] = format_email_recipient($email, $sql_arr['name']);
        $members[] = format_email_recipient($email, rcube_addressbook::compose_list_name($sql_arr));
        break;  // only expand one email per contact
      }
    }
@@ -67,7 +67,7 @@
    $abook = $RCMAIL->get_address_book($id);
    $abook->set_pagesize($MAXNUM);
    if ($result = $abook->search(array('email','name'), $search, $mode, true, true, 'email')) {
    if ($result = $abook->search(array('name', 'firstname', 'surname', 'email'), $search, $mode, true, true, 'email')) {
      while ($sql_arr = $result->iterate()) {
        // Contact can have more than one e-mail address
        $email_arr = (array)$abook->get_col_values('email', $sql_arr, true);
@@ -78,6 +78,7 @@
            continue;
          }
          $sql_arr['name'] = rcube_addressbook::compose_list_name($sql_arr);
          $contact = format_email_recipient($email, $sql_arr['name']);
          // skip entries that don't match
program/steps/mail/list_contacts.inc
@@ -60,7 +60,7 @@
    // get contacts for this user
    $CONTACTS->set_group(0);
    $result = $CONTACTS->list_records(array('name', 'email'));
    $result = $CONTACTS->list_records(array('name', 'firstname', 'surname', 'email'));
    if (!$result->count && $result->searchonly) {
        $OUTPUT->show_message('contactsearchonly', 'notice');