| | |
| | | 'valid' => $valid, |
| | | )); |
| | | |
| | | if ($valid && !$plugin['valid']) { |
| | | $this->set_error(self::ERROR_VALIDATE, $plugin['error']); |
| | | } |
| | | |
| | | if (is_array($plugin['record'])) { |
| | | $save_data = $plugin['record']; |
| | | } |
| | |
| | | * @param array Assoziative array with save data |
| | | * Keys: Field name with optional section in the form FIELD:SECTION |
| | | * Values: Field value. Can be either a string or an array of strings for multiple values |
| | | * @return boolean True on success, False on error |
| | | * |
| | | * @return mixed On success if ID has been changed returns ID, otherwise True, False on error |
| | | */ |
| | | function update($id, $save_cols) |
| | | { |
| | |
| | | |
| | | /** |
| | | * Mark all records in database as deleted |
| | | * |
| | | * @param bool $with_groups Remove also groups |
| | | */ |
| | | function delete_all() |
| | | function delete_all($with_groups = false) |
| | | { |
| | | /* empty for read-only address books */ |
| | | } |
| | |
| | | $fn = join(' ', array($contact['surname'], $contact['firstname'], $contact['middlename'])); |
| | | else if ($compose_mode == 1) |
| | | $fn = join(' ', array($contact['firstname'], $contact['middlename'], $contact['surname'])); |
| | | else |
| | | else if ($compose_mode == 0) |
| | | $fn = !empty($contact['name']) ? $contact['name'] : join(' ', array($contact['prefix'], $contact['firstname'], $contact['middlename'], $contact['surname'], $contact['suffix'])); |
| | | else { |
| | | $plugin = rcube::get_instance()->plugins->exec_hook('contact_listname', array('contact' => $contact)); |
| | | $fn = $plugin['fn']; |
| | | } |
| | | |
| | | $fn = trim($fn, ', '); |
| | | |