diff options
author | thomascube <thomas@roundcube.net> | 2011-02-06 22:21:23 +0000 |
---|---|---|
committer | thomascube <thomas@roundcube.net> | 2011-02-06 22:21:23 +0000 |
commit | 07b95dc49b31d131b1fecdabf2059a447935c196 (patch) | |
tree | 91f3fd3b86ecb88da28e16edceab52306bb3458e /program/include/rcube_contacts.php | |
parent | 361ce60948bfc0eb75a4c144f9e1e76c3cdd7f35 (diff) |
Delegate contact input validation to rcube_addressbook instance; accept already localized texts in rcube_output::show_message()
Diffstat (limited to 'program/include/rcube_contacts.php')
-rw-r--r-- | program/include/rcube_contacts.php | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/program/include/rcube_contacts.php b/program/include/rcube_contacts.php index 4a4c1e27e..9ad4f17bb 100644 --- a/program/include/rcube_contacts.php +++ b/program/include/rcube_contacts.php @@ -396,6 +396,28 @@ class rcube_contacts extends rcube_addressbook /** + * Check the given data before saving. + * If input not valid, the message to display can be fetched using get_error() + * + * @param array Assoziative array with data to save + * @return boolean True if input is valid, False if not. + */ + public function validate($save_data) + { + // check for name input + $valid = parent::validate($save_data); + + // require at least one e-mail address (syntax check is done later in save.inc) + if ($valid && !array_filter($this->get_col_values('email', $save_data, true))) { + $this->set_error('warning', 'noemailwarning'); + $valid = false; + } + + return $valid; + } + + + /** * Create a new contact record * * @param array Associative array with save data |