From c5a5f989a9bf91927e6bb627f9f789800ce02fad Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Fri, 1 Feb 2013 15:24:33 +0100 Subject: Allow to list contact groups in (paged) list (yet incomplete) --- config/main.inc.php.dist | 1 + 1 file changed, 1 insertion(+) (limited to 'config') diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist index b113b41a8..d4246a001 100644 --- a/config/main.inc.php.dist +++ b/config/main.inc.php.dist @@ -680,6 +680,7 @@ $rcmail_config['ldap_public']['Verisign'] = array( 'object_classes' => array("top", "groupOfNames"), 'member_attr' => 'member', // name of the member attribute, e.g. uniqueMember 'name_attr' => 'cn', // attribute to be used as group name + 'member_filter' => '(objectclass=*)', // optional filter to use when querying for group members ), ); */ -- cgit v1.2.3 From e43cc4bd9d6c99f8737ee8a316c21ba3a0dbd04a Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Thu, 7 Feb 2013 17:49:05 +0100 Subject: Describe the new option 'group_filters' in the sample config block --- config/main.inc.php.dist | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'config') diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist index d4246a001..e0b6807e5 100644 --- a/config/main.inc.php.dist +++ b/config/main.inc.php.dist @@ -636,6 +636,7 @@ $rcmail_config['ldap_public']['Verisign'] = array( 'phone:work' => 'telephoneNumber', 'phone:mobile' => 'mobile', 'phone:pager' => 'pager', + 'phone:workfax' => 'facsimileTelephoneNumber', 'street' => 'street', 'zipcode' => 'postalCode', 'region' => 'st', @@ -646,9 +647,8 @@ $rcmail_config['ldap_public']['Verisign'] = array( 'department' => 'ou', 'jobtitle' => 'title', 'notes' => 'description', + 'photo' => 'jpegPhoto', // these currently don't work: - // 'phone:workfax' => 'facsimileTelephoneNumber', - // 'photo' => 'jpegPhoto', // 'manager' => 'manager', // 'assistant' => 'secretary', ), @@ -682,6 +682,23 @@ $rcmail_config['ldap_public']['Verisign'] = array( 'name_attr' => 'cn', // attribute to be used as group name 'member_filter' => '(objectclass=*)', // optional filter to use when querying for group members ), + // this configuration replaces the regular groups listing in the directory tree with + // a hard-coded list of groups, each listing entries with the configured base DN and filter. + // if the 'groups' option from above is set, it'll be shown as the first entry with the name 'Groups' + 'group_filters' => array( + 'departments' => array( + 'name' => 'Company Departments', + 'scope' => 'list', + 'base_dn' => 'ou=Groups,dc=mydomain,dc=com', + 'filter' => '(|(objectclass=groupofuniquenames)(objectclass=groupofurls))', + ), + 'customers' => array( + 'name' => 'Customers', + 'scope' => 'sub', + 'base_dn' => 'ou=Customers,dc=mydomain,dc=com', + 'filter' => '(objectClass=inetOrgPerson)', + ), + ), ); */ -- cgit v1.2.3 From a6d4185a896a721a16c9cad4518687474c939d8b Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Wed, 13 Feb 2013 18:08:20 +0100 Subject: Describe new options for LDAP address books --- config/main.inc.php.dist | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) (limited to 'config') diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist index e0b6807e5..543bdb6dc 100644 --- a/config/main.inc.php.dist +++ b/config/main.inc.php.dist @@ -659,28 +659,31 @@ $rcmail_config['ldap_public']['Verisign'] = array( // 'uid' => 'md5(microtime())', // You may specify PHP code snippets which are then eval'ed // 'mail' => '{givenname}.{sn}@mydomain.com', // or composite strings with placeholders for existing attributes ), - 'sort' => 'cn', // The field to sort the listing by. - 'scope' => 'sub', // search mode: sub|base|list - 'filter' => '(objectClass=inetOrgPerson)', // used for basic listing (if not empty) and will be &'d with search queries. example: status=act - 'fuzzy_search' => true, // server allows wildcard search - 'vlv' => false, // Enable Virtual List View to more efficiently fetch paginated data (if server supports it) - 'numsub_filter' => '(objectClass=organizationalUnit)', // with VLV, we also use numSubOrdinates to query the total number of records. Set this filter to get all numSubOrdinates attributes for counting - 'sizelimit' => '0', // Enables you to limit the count of entries fetched. Setting this to 0 means no limit. - 'timelimit' => '0', // Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit. - 'referrals' => true|false, // Sets the LDAP_OPT_REFERRALS option. Mostly used in multi-domain Active Directory setups + 'sort' => 'cn', // The field to sort the listing by. + 'scope' => 'sub', // search mode: sub|base|list + 'filter' => '(objectClass=inetOrgPerson)', // used for basic listing (if not empty) and will be &'d with search queries. example: status=act + 'fuzzy_search' => true, // server allows wildcard search + 'vlv' => false, // Enable Virtual List View to more efficiently fetch paginated data (if server supports it) + 'vlv_search' => false, // Use Virtual List View functions for autocompletion searches (if server supports it) + 'numsub_filter' => '(objectClass=organizationalUnit)', // with VLV, we also use numSubOrdinates to query the total number of records. Set this filter to get all numSubOrdinates attributes for counting + 'config_root_dn' => 'cn=config', // Root DN to search config entries (e.g. vlv indexes) + 'sizelimit' => '0', // Enables you to limit the count of entries fetched. Setting this to 0 means no limit. + 'timelimit' => '0', // Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit. + 'referrals' => false, // Sets the LDAP_OPT_REFERRALS option. Mostly used in multi-domain Active Directory setups // definition for contact groups (uncomment if no groups are supported) // for the groups base_dn, the user replacements %fu, %u, $d and %dc work as for base_dn (see above) // if the groups base_dn is empty, the contact base_dn is used for the groups as well // -> in this case, assure that groups and contacts are separated due to the concernig filters! - 'groups' => array( - 'base_dn' => '', - 'scope' => 'sub', // search mode: sub|base|list - 'filter' => '(objectClass=groupOfNames)', + 'groups' => array( + 'base_dn' => '', + 'scope' => 'sub', // Search mode: sub|base|list + 'filter' => '(objectClass=groupOfNames)', 'object_classes' => array("top", "groupOfNames"), - 'member_attr' => 'member', // name of the member attribute, e.g. uniqueMember - 'name_attr' => 'cn', // attribute to be used as group name - 'member_filter' => '(objectclass=*)', // optional filter to use when querying for group members + 'member_attr' => 'member', // Name of the member attribute, e.g. uniqueMember + 'name_attr' => 'cn', // Attribute to be used as group name + 'member_filter' => '(objectclass=*)', // Optional filter to use when querying for group members + 'vlv' => false, // Use VLV controls to list groups ), // this configuration replaces the regular groups listing in the directory tree with // a hard-coded list of groups, each listing entries with the configured base DN and filter. -- cgit v1.2.3