From c44591e27a4f7a2dbe3a9e1cfa5e0ff53404126d Mon Sep 17 00:00:00 2001 From: Thomas Tanghus Date: Tue, 12 Jun 2012 12:31:28 +0200 Subject: [PATCH] Contacts: Final (for now) fix to encoding probs on import. --- apps/contacts/lib/vcard.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/contacts/lib/vcard.php b/apps/contacts/lib/vcard.php index 168e8af3e5..71a874d783 100644 --- a/apps/contacts/lib/vcard.php +++ b/apps/contacts/lib/vcard.php @@ -131,7 +131,7 @@ class OC_Contacts_VCard{ foreach($property->parameters as $key=>&$parameter){ if(strtoupper($parameter->name) == 'ENCODING') { if(strtoupper($parameter->value) == 'QUOTED-PRINTABLE') { // what kind of other encodings could be used? - $property->value = str_replace("\r\n", "\n", mb_convert_encoding(quoted_printable_decode($property->value), 'utf-8', 'auto')); + $property->value = quoted_printable_decode($property->value); unset($property->parameters[$key]); } } elseif(strtoupper($parameter->name) == 'CHARSET') { @@ -188,6 +188,7 @@ class OC_Contacts_VCard{ if($upgrade && in_array($property->name, $stringprops)) { self::decodeProperty($property); } + $property->value = str_replace("\r\n", "\n", iconv(mb_detect_encoding($property->value, 'UTF-8, ISO-8859-1'), 'utf-8', $property->value)); if(in_array($property->name, $stringprops)) { $property->value = strip_tags($property->value); }