Add option 'searchonly' for address books; currently used by LDAP directories
| | |
| | | CHANGELOG Roundcube Webmail |
| | | =========================== |
| | | |
| | | - Add option 'searchonly' for LDAP address books |
| | | - Add Priority filter to the messages list |
| | | - Cache synchronization using QRESYNC/CONDSTORE |
| | | - Fix locked folder rename option on servers supporting RFC2086 only (#1488089) |
| | |
| | | 'auth_cid' => '', |
| | | // SASL authentication method (for proxy auth), e.g. DIGEST-MD5 |
| | | 'auth_method' => '', |
| | | // Indicates if the addressbook shall be displayed on the list. |
| | | // Indicates if the addressbook shall be hidden from the list. |
| | | // With this option enabled you can still search/view contacts. |
| | | 'hidden' => false, |
| | | // Indicates if the addressbook shall not list contacts but only allows searching. |
| | | 'searchonly' => false, |
| | | // Indicates if we can write to the LDAP directory or not. |
| | | // If writable is true then these fields need to be populated: |
| | | // LDAP_Object_Classes, required_fields, LDAP_rdn |
| | |
| | | public $primary_key; |
| | | public $groups = false; |
| | | public $readonly = true; |
| | | public $searchonly = false; |
| | | public $undelete = false; |
| | | public $ready = false; |
| | | public $group_id = null; |
| | |
| | | function __construct($p, $debug=false, $mail_domain=NULL) |
| | | { |
| | | $this->prop = $p; |
| | | |
| | | if (isset($p['searchonly'])) |
| | | $this->searchonly = $p['searchonly']; |
| | | |
| | | // check if groups are configured |
| | | if (is_array($p['groups']) && count($p['groups'])) { |
| | |
| | | */ |
| | | function list_records($cols=null, $subset=0) |
| | | { |
| | | if ($this->prop['searchonly'] && empty($this->filter) && !$this->group_id) { |
| | | $this->result = new rcube_result_set(0); |
| | | $this->result->searchonly = true; |
| | | return $this->result; |
| | | } |
| | | |
| | | // add general filter to query |
| | | if (!empty($this->prop['filter']) && empty($this->filter)) |
| | | { |
| | |
| | | | program/include/rcube_result_set.php | |
| | | | | |
| | | | This file is part of the Roundcube Webmail client | |
| | | | Copyright (C) 2006-2010, The Roundcube Dev Team | |
| | | | Copyright (C) 2006-2011, The Roundcube Dev Team | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | | PURPOSE: | |
| | |
| | | var $count = 0; |
| | | var $first = 0; |
| | | var $current = 0; |
| | | var $searchonly = false; |
| | | var $records = array(); |
| | | |
| | | |
| | |
| | | $messages['encryptedmessage'] = 'Dies ist eine verschlüsselte Nachricht und kann leider nicht angezeigt werden.'; |
| | | $messages['nocontactsfound'] = 'Keine Kontakte gefunden'; |
| | | $messages['contactnotfound'] = 'Die gewählte Adresse wurde nicht gefunden'; |
| | | $messages['contactsearchonly'] = 'Geben Sie einen Suchbegriff ein, um Kontakte zu finden'; |
| | | $messages['sendingfailed'] = 'Versand der Nachricht fehlgeschlagen'; |
| | | $messages['senttooquickly'] = 'Bitte warten Sie $sec Sekunde(n) vor dem Senden dieser Nachricht'; |
| | | $messages['errorsavingsent'] = 'Ein Fehler ist beim Speichern der gesendeten Nachricht aufgetreten'; |
| | |
| | | $messages['encryptedmessage'] = 'Dies ist eine verschlüsselte Nachricht und kann leider nicht angezeigt werden.'; |
| | | $messages['nocontactsfound'] = 'Keine Kontakte gefunden'; |
| | | $messages['contactnotfound'] = 'Der angeforderte Kontakt wurde nicht gefunden'; |
| | | $messages['contactsearchonly'] = 'Geben Sie einen Suchbegriff ein, um Kontakte zu finden'; |
| | | $messages['sendingfailed'] = 'Versenden der Nachricht fehlgeschlagen'; |
| | | $messages['senttooquickly'] = 'Bitte warten Sie $sec Sekunde(n) vor dem Senden dieser Nachricht'; |
| | | $messages['errorsavingsent'] = 'Ein Fehler ist beim Speichern der gesendeten Nachricht aufgetreten'; |
| | |
| | | $messages['encryptedmessage'] = 'This is an encrypted message and can not be displayed. Sorry!'; |
| | | $messages['nocontactsfound'] = 'No contacts found.'; |
| | | $messages['contactnotfound'] = 'The requested contact was not found.'; |
| | | $messages['contactsearchonly'] = 'Enter some search terms to find contacts'; |
| | | $messages['sendingfailed'] = 'Failed to send message.'; |
| | | $messages['senttooquickly'] = 'Please wait $sec sec(s). before sending this message.'; |
| | | $messages['errorsavingsent'] = 'An error occured while saving sent message.'; |
| | |
| | | |
| | | // get contacts for this user |
| | | $result = $CONTACTS->list_records(array('name')); |
| | | |
| | | if (!$result->count && $result->searchonly) |
| | | $OUTPUT->show_message('contactsearchonly', 'notice'); |
| | | } |
| | | |
| | | // update message count display |