Thomas Bruederli
2014-06-04 3412e50b54e3daac8745234e21ab6e72be0ed165
program/lib/Roundcube/rcube_vcard.php
@@ -149,6 +149,11 @@
            $this->email[0] = $this->email[$pref_index];
            $this->email[$pref_index] = $tmp;
        }
        // fix broken vcards from Outlook that only supply ORG but not the required N or FN properties
        if (!strlen(trim($this->displayname . $this->surname . $this->firstname)) && strlen($this->organization)) {
            $this->displayname = $this->organization;
        }
    }
    /**
@@ -378,7 +383,7 @@
        default:
            if ($field == 'phone' && $this->phonetypemap[$type_uc]) {
                $type = $this->phonetypemap[$type_uc];
             }
            }
            if (($tag = self::$fieldmap[$field]) && (is_array($value) || strlen($value))) {
                $index = count($this->raw[$tag]);
@@ -617,8 +622,8 @@
                $enc   = null;
                foreach($regs2[1] as $attrid => $attr) {
                    $attr = preg_replace('/[\s\t\n\r\0\x0B]/', '', $attr);
                    if ((list($key, $value) = explode('=', $attr)) && $value) {
                        $value = trim($value);
                        if ($key == 'ENCODING') {
                            $value = strtoupper($value);
                            // add next line(s) to value string if QP line end detected
@@ -797,7 +802,7 @@
                return $result;
            }
            $s = strtr($s, $rep2);
            $s = trim(strtr($s, $rep2));
        }
        // some implementations (GMail) use non-standard backslash before colon (#1489085)