From 84ffd59c0c3ff78bca5fbcd2c8893b741f36c9ba Mon Sep 17 00:00:00 2001 From: Thomas Bruederli <bruederli@kolabsys.com> Date: Thu, 19 Sep 2013 12:00:28 -0400 Subject: [PATCH] Allow sysadmins to define static responses which are immutable for the user --- config/main.inc.php.dist | 69 +++++++++++++++++++++++++--------- 1 files changed, 51 insertions(+), 18 deletions(-) diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist index 64f3643..2bd9491 100644 --- a/config/main.inc.php.dist +++ b/config/main.inc.php.dist @@ -253,6 +253,9 @@ // Session name. Default: 'roundcube_sessid' $rcmail_config['session_name'] = null; +// Session authentication cookie name. Default: 'roundcube_sessauth' +$rcmail_config['session_auth_name'] = null; + // Session path. Defaults to PHP session.cookie_path setting. $rcmail_config['session_path'] = null; @@ -403,6 +406,12 @@ // Note: useful when SMTP server stores sent mail in user mailbox $rcmail_config['no_save_sent_messages'] = false; +// A static list of canned responses which are immutable for the user +$rcmail_config['compose_responses_static'] = array( +// array('name' => 'Canned Response 1', 'text' => 'Static Response One'), +// array('name' => 'Canned Response 2', 'text' => 'Static Response Two'), +); + // ---------------------------------- // PLUGINS // ---------------------------------- @@ -433,7 +442,8 @@ $rcmail_config['date_format'] = 'Y-m-d'; // give this choice of date formats to the user to select from -$rcmail_config['date_formats'] = array('Y-m-d', 'd-m-Y', 'Y/m/d', 'm/d/Y', 'd/m/Y', 'd.m.Y', 'j.n.Y'); +// Note: do not use ambiguous formats like m/d/Y +$rcmail_config['date_formats'] = array('Y-m-d', 'Y/m/d', 'Y.m.d', 'd-m-Y', 'd/m/Y', 'd.m.Y', 'j.n.Y'); // use this format for time display (date or strftime format) $rcmail_config['time_format'] = 'H:i'; @@ -638,6 +648,7 @@ 'phone:work' => 'telephoneNumber', 'phone:mobile' => 'mobile', 'phone:pager' => 'pager', + 'phone:workfax' => 'facsimileTelephoneNumber', 'street' => 'street', 'zipcode' => 'postalCode', 'region' => 'st', @@ -648,9 +659,8 @@ 'department' => 'ou', 'jobtitle' => 'title', 'notes' => 'description', + 'photo' => 'jpegPhoto', // these currently don't work: - // 'phone:workfax' => 'facsimileTelephoneNumber', - // 'photo' => 'jpegPhoto', // 'manager' => 'manager', // 'assistant' => 'secretary', ), @@ -661,27 +671,50 @@ // '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_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. + // 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))', + 'name_attr' => 'cn', + ), + 'customers' => array( + 'name' => 'Customers', + 'scope' => 'sub', + 'base_dn' => 'ou=Customers,dc=mydomain,dc=com', + 'filter' => '(objectClass=inetOrgPerson)', + 'name_attr' => 'sn', + ), ), ); */ -- Gitblit v1.9.1