From 64b129a807e7a623c37b2a60e72d9c931b8d9752 Mon Sep 17 00:00:00 2001 From: Jan Schneider Date: Tue, 21 Sep 2010 23:37:59 +0200 Subject: [PATCH] MFB: [jan] Correctly export FN vCard property if 'alternative_name' is set, but not 'name' (Bug #9207). Fix charset conversion. --- turba/docs/CHANGES | 2 ++ turba/lib/Driver.php | 9 ++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/turba/docs/CHANGES b/turba/docs/CHANGES index 1491b200f..aef9a1b64 100644 --- a/turba/docs/CHANGES +++ b/turba/docs/CHANGES @@ -14,6 +14,8 @@ v3.0-git v2.3.5-cvs ---------- +[jan] Correctly export FN vCard property if 'alternative_name' is set, but not + 'name' (Bug #9207). [jan] Fix import of addresses from LDIF (Axel Jurak, Bug #9215). [jan] Speed up browsing of long address books. diff --git a/turba/lib/Driver.php b/turba/lib/Driver.php index cb4425000..0d04120f8 100644 --- a/turba/lib/Driver.php +++ b/turba/lib/Driver.php @@ -1650,14 +1650,17 @@ class Turba_Driver implements Countable } if (!$formattedname && (!$fields || isset($fields['FN']))) { - if (!empty($this->alternativeName) && + if ($object->getValue('name')) { + $val = $object->getValue('name'); + } elseif (!empty($this->alternativeName) && isset($hash[$this->alternativeName])) { $val = $hash[$this->alternativeName]; - } elseif (isset($hash['lastname'])) { - $val = empty($hash['firstname']) ? $hash['lastname'] : $hash['firstname'] . ' ' . $hash['lastname']; } else { $val = ''; } + if ($version != '2.1') { + $val = Horde_String::convertCharset($val, $GLOBALS['registry']->getCharset(), 'utf-8'); + } $vcard->setAttribute('FN', $val, Horde_Mime::is8bit($val) ? $charset : array()); } -- 2.11.0