From ca03a26f150f957222aacc99bf5f60b0019b3625 Mon Sep 17 00:00:00 2001 From: Thomas Tanghus Date: Thu, 19 Jan 2012 19:47:09 +0100 Subject: - Added fix for empty 'FN' field on import via CardDAV clients. - Make sure that the contact in the list has a display name. - More tweaks on thumbnail caching. --- apps/contacts/lib/vcard.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'apps/contacts/lib/vcard.php') diff --git a/apps/contacts/lib/vcard.php b/apps/contacts/lib/vcard.php index 04b59a040fb..c99d53c9716 100644 --- a/apps/contacts/lib/vcard.php +++ b/apps/contacts/lib/vcard.php @@ -159,15 +159,27 @@ class OC_Contacts_VCard{ */ public static function addFromDAVData($id,$uri,$data){ $fn = null; + $email = null; $card = OC_VObject::parse($data); if(!is_null($card)){ foreach($card->children as $property){ if($property->name == 'FN'){ $fn = $property->value; - break; + } + if($property->name == 'EMAIL' && is_null($email)){ + $email = $property->value; } } } + if(!$fn) { + if($email) { + $fn = $email; + } else { + $fn = 'Unknown'; + } + $card->addProperty('EMAIL', $email); + $data = $card->serialize(); + } $stmt = OC_DB::prepare( 'INSERT INTO *PREFIX*contacts_cards (addressbookid,fullname,carddata,uri,lastmodified) VALUES(?,?,?,?,?)' ); $result = $stmt->execute(array($id,$fn,$data,$uri,time())); -- cgit v1.2.3