diff options
| author | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2012-01-10 21:42:06 +0000 |
|---|---|---|
| committer | thomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2012-01-10 21:42:06 +0000 |
| commit | 496266862acc7e2aa964df1debab37edc036f658 (patch) | |
| tree | 041a52bf5db65fdd40952b948dd1b534141feb51 /roundcubemail/program | |
| parent | 2a35e4744b4b922357ab40015f9a5bda74f28aff (diff) | |
Allow plugins to extend the vcard fieldmap for contact data
git-svn-id: https://svn.roundcube.net/trunk@5752 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program')
| -rw-r--r-- | roundcubemail/program/include/rcube_contacts.php | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/roundcubemail/program/include/rcube_contacts.php b/roundcubemail/program/include/rcube_contacts.php index ab3b181a5..2185b6f40 100644 --- a/roundcubemail/program/include/rcube_contacts.php +++ b/roundcubemail/program/include/rcube_contacts.php @@ -31,6 +31,7 @@ class rcube_contacts extends rcube_addressbook protected $db_name = 'contacts'; protected $db_groups = 'contactgroups'; protected $db_groupmembers = 'contactgroupmembers'; + protected $vcard_fieldmap = array(); /** * Store database connection. @@ -692,7 +693,7 @@ class rcube_contacts extends rcube_addressbook if ($sql_arr['vcard']) { unset($sql_arr['email']); - $vcard = new rcube_vcard($sql_arr['vcard']); + $vcard = new rcube_vcard($sql_arr['vcard'], RCMAIL_CHARSET, false, $this->vcard_fieldmap); $record += $vcard->get_assoc() + $sql_arr; } else { @@ -711,7 +712,7 @@ class rcube_contacts extends rcube_addressbook $words = ''; // copy values into vcard object - $vcard = new rcube_vcard($record['vcard'] ? $record['vcard'] : $save_data['vcard']); + $vcard = new rcube_vcard($record['vcard'] ? $record['vcard'] : $save_data['vcard'], RCMAIL_CHARSET, false, $this->vcard_fieldmap); $vcard->reset(); foreach ($save_data as $key => $values) { list($field, $section) = explode(':', $key); |
