6.0.0-beta1
7/5/25

[#11183] IMP Autocomplete not working
Summary IMP Autocomplete not working
Queue IMP
Queue Version 5.0.19
Type Bug
State Duplicate
Priority 1. Low
Owners
Requester roliverio.ve (at) gmail (dot) com
Created 05/09/2012 (4805 days ago)
Due
Updated 05/09/2012 (4805 days ago)
Assigned
Resolved 05/09/2012 (4805 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
05/09/2012 02:19:41 PM roliverio (dot) ve (at) gmail (dot) com Comment #3 Reply to this comment
Sorry, forgot to mention that some of my users indeed have more than 
one email address, so i properly use: "emails" instead of "email".


05/09/2012 02:16:00 PM Jan Schneider Comment #2
State ⇒ Duplicate
Reply to this comment
05/09/2012 01:57:30 PM roliverio (dot) ve (at) gmail (dot) com Comment #1
Priority ⇒ 1. Low
Patch ⇒ No
Milestone ⇒
Queue ⇒ IMP
Summary ⇒ IMP Autocomplete not working
Type ⇒ Bug
State ⇒ Unconfirmed
Reply to this comment
The contact autocompleter doesn't work under IMP, altought it's 
working in other applications (like kronolith) and the Addressbooks 
work fine when directly searched with turba.

Relevant configurations:

turba backends.local.php (obscured LDAP details and password)

<?php
$cfgSources['localldap'] = array(
      'disabled' => false,
      'title' => _("GAL"),
      'type' => 'ldap',
      'params' => array(
         'server' => 'ldaps://ldap.example.net',
         'port' => 686,
         'tls' => false,
         'root' => 'ou=users,dc=example,dc=net',
         'bind_dn' => 'uid=gal,ou=replicas,dc=example,dc=net',
         'bind_password' => '*********',
         'sizelimit' => 200,
         'dn' => array('cn'),
         'objectclass' => array('calEntry',
                                'inetOrgPerson'),
         'scope' => 'sub',
         'charset' => 'utf-8',
         'checkrequired' => false,
         'checkrequired_string' => ' ',
         'checksyntax' => false,
         'version' => 3,
      ),
      'map' => array(
         '__key' => 'dn',
         '__uid' => 'uid',
         'firstname' => 'givenName',
         'lastname' => 'sn',
         /*      'name' => 'cn', */
         'name' => array('fields' => array('firstname','lastname'),
                                 'format' => '%s %s',
                                 'parse' => array(
                                     array('fields' => 
array('firstname','lastname'),
                                     'format' => '%s %s'))),
         'emails' => 'mail',
         'workPhone' => 'telephonenumber',
         'cellPhone' => 'mobile',
         'freebusyUrl' => 'calFBURL',
         'employeeNumber' => 'employeeNumber',
      ),
      'search' => array(
         'name',
         'emails',
      ),
      'strict' => array(
        'dn',
      ),
      'approximate' => array(
         'cn',
         'sn',
         'uid',
      ),
      'export' => true,
      'browse' => true,
);

$cfgSources['localsql'] = array(
     // ENABLED by default
     'disabled' => false,
     'title' => _("Personal Addressbook"),
     'type' => 'sql',
     'params' => array_merge($GLOBALS['conf']['sql'], array('table' => 
'turba_objects')),
     'map' => array(
         '__key' => 'object_id',
         '__owner' => 'owner_id',
/*      '__type' => 'object_type',
         '__members' => 'object_members',
         '__uid' => 'object_uid',*/
         'firstname' => 'object_firstname',
         'lastname' => 'object_lastname',
         'middlenames' => 'object_middlenames',
/*      'namePrefix' => 'object_nameprefix',
         'nameSuffix' => 'object_namesuffix',
         'name' => array('fields' => array('namePrefix', 'firstname',
                                           'middlenames', 'lastname',
                                           'nameSuffix'),
                         'format' => '%s %s %s %s %s',
                         'parse' => array(
                             array('fields' => array('firstname', 
'middlenames',
                                                     'lastname'),
                                   'format' => '%s %s %s'),
                             array('fields' => array('firstname', 'lastname'),
                             'format' => '%s %s'))),*/
         // This is a shorter version of a "name" composite field which only
         // consists of the first name and last name.
         'name' => array('fields' => array('firstname', 'lastname'),
                          'format' => '%s %s'),
/*      'alias' => 'object_alias',
         'birthday' => 'object_bday',
         'anniversary' => 'object_anniversary',
         'spouse' => 'object_spouse',
         'photo' => 'object_photo',
         'phototype' => 'object_phototype',
         'homeStreet' => 'object_homestreet',
         'homePOBox' => 'object_homepob',
         'homeCity' => 'object_homecity',
         'homeProvince' => 'object_homeprovince',
         'homePostalCode' => 'object_homepostalcode',
         'homeCountry' => 'object_homecountry',
         'homeAddress' => array('fields' => array('homeStreet', 'homeCity',
                                                  'homeProvince',
                                                  'homePostalCode'),
                                'format' => "%s \n %s, %s  %s"),
         'workStreet' => 'object_workstreet',
         'workPOBox' => 'object_workpob',
         'workCity' => 'object_workcity',
         'workProvince' => 'object_workprovince',
         'workPostalCode' => 'object_workpostalcode',
         'workCountry' => 'object_workcountry',
         'workAddress' => array('fields' => array('workStreet', 'workCity',
                                                  'workProvince',
                                                  'workPostalCode'),
                                'format' => "%s \n %s, %s  %s"),
         'department' => 'object_department',
         'timezone' => 'object_tz',*/
         'email' => 'object_email',
/*      'homePhone' => 'object_homephone',
         'homeFax' => 'object_homefax',*/
         'workPhone' => 'object_workphone',
/*      'cellPhone' => 'object_cellphone',
         'assistPhone' => 'object_assistantphone',
         'fax' => 'object_fax',
         'pager' => 'object_pager',
         'title' => 'object_title',
         'role' => 'object_role',
         'company' => 'object_company',
         'logo' => 'object_logo',
         'logotype' => 'object_logotype',
         'category' => 'object_category',
         'notes' => 'object_notes',
         'website' => 'object_url',
         'freebusyUrl' => 'object_freebusyurl',
         'pgpPublicKey' => 'object_pgppublickey',
         'smimePublicKey' => 'object_smimepublickey',
         'imaddress' => 'object_imaddress',
         'imaddress2' => 'object_imaddress2',
         'imaddress3' => 'object_imaddress3' */
     ),
     'tabs' => array(
         _("Personal") => array('firstname', 'lastname', 'middlenames',
                                'namePrefix', 'nameSuffix', 'name', 'alias',
                                'birthday', 'spouse', 'anniversary', 'photo'),
         _("Location") => array('homeStreet', 'homePOBox', 'homeCity',
                                'homeProvince', 'homePostalCode', 
'homeCountry',
                                'homeAddress', 'workStreet', 'workPOBox',
                                'workCity', 'workProvince', 'workPostalCode',
                                'workCountry', 'workAddress', 'timezone'),
         _("Communications") => array('email', 'homePhone', 'workPhone',
                                      'assistPhone', 'homeFax',
                                      'cellPhone', 'fax', 'pager', 'imaddress',
                                      'imaddress2', 'imaddress3'),
         _("Organization") => array('title', 'role', 'company', 
'department', 'logo'),
         _("Other") => array('category', 'notes', 'website', 'freebusyUrl',
                             'pgpPublicKey', 'smimePublicKey'),
     ),
     'search' => array(
         'name',
         'email'
     ),
/*    'strict' => array(
         'object_id',
         'owner_id',
         'object_type',
),*/
     'export' => true,
     'browse' => true,
     'use_shares' => true,
     'list_name_field' => 'lastname',
     'alternative_name' => 'company',
);

Turba conf.php

$conf['menu']['import_export'] = true;
$conf['menu']['apps'] = array();
$conf['client']['addressbook'] = 'localsql';
$conf['gal']['addressbook'] = 'localldap';
$conf['shares']['source'] = '\'\'';
$conf['comments']['allow'] = true;
$conf['documents']['type'] = 'horde';

IMP conf.php
$conf['user']['autocreate_special'] = false;
$conf['user']['select_sentmail_folder'] = false;
$conf['user']['allow_folders'] = true;
$conf['user']['allow_view_source'] = true;
$conf['server']['server_list'] = 'none';
$conf['server']['fixed_folders'] = array();
$conf['msgsettings']['filtering']['words'] = './config/filter.txt';
$conf['msgsettings']['filtering']['replacement'] = '****';
$conf['spam']['reporting'] = false;
$conf['notspam']['reporting'] = false;
$conf['print']['add_printedby'] = false;
$conf['compose']['use_vfs'] = false;
$conf['compose']['link_attachments'] = false;
$conf['compose']['attach_size_limit'] = 0;
$conf['compose']['attach_count_limit'] = 0;
$conf['compose']['convert_to_related'] = true;
$conf['compose']['reply_limit'] = 200000;
$conf['compose']['ac_browser'] = 50;
$conf['compose']['ac_threshold'] = 3;
$conf['maillog']['use_maillog'] = true;
$conf['sentmail']['params']['threshold'] = 60;
$conf['sentmail']['params']['limit_period'] = 24;
$conf['sentmail']['params']['table'] = 'imp_sentmail';
$conf['sentmail']['params']['driverconfig'] = 'horde';
$conf['sentmail']['driver'] = 'Sql';
$conf['tasklist']['use_tasklist'] = true;
$conf['notepad']['use_notepad'] = true;
$conf['dimp']['viewport']['buffer_pages'] = 10;
$conf['dimp']['viewport']['viewport_wait'] = 10;
$conf['menu']['apps'] = array('ingo', 'kronolith', 'mnemo', 'turba');
$conf['menu']['apps_iframe'] = false;

With these configs as i noted before, it's possible to autocomplete 
and search in other apps. IMP however it's uncapable of doing so. 
(i've even tested a new user without any specific preferences set)

Could you help me track down the issue?

Kind regards.

Saved Queries