forked from extern/egroupware
Better address and email parsing
This commit is contained in:
parent
e44a2d17e4
commit
1080b3ad97
@ -46,14 +46,15 @@
|
|||||||
"adr_one_type" => "ADR;TYPE;WORK",
|
"adr_one_type" => "ADR;TYPE;WORK",
|
||||||
"adr_two_type" => "ADR;TYPE;HOME",
|
"adr_two_type" => "ADR;TYPE;HOME",
|
||||||
"tel_prefer" => "TEL;PREFER",
|
"tel_prefer" => "TEL;PREFER",
|
||||||
"email_type" => "MAIL;TYPE;WORK",
|
"email_type" => "EMAIL;TYPE;WORK",
|
||||||
"email_home_type" => "MAIL;TYPE;HOME",
|
"email_home_type" => "EMAIL;TYPE;HOME",
|
||||||
|
|
||||||
"adr_one_street" => "ADR;WORK;STREET",
|
"adr_one_street" => "ADR;WORK;STREET",
|
||||||
"adr_one_locality" => "ADR;WORK;LOCALITY",
|
"adr_one_locality" => "ADR;WORK;LOCALITY",
|
||||||
"adr_one_region" => "ADR;WORK;REGION",
|
"adr_one_region" => "ADR;WORK;REGION",
|
||||||
"adr_one_postalcode" => "ADR;WORK;POSTALCODE",
|
"adr_one_postalcode" => "ADR;WORK;POSTALCODE",
|
||||||
"adr_one_countryname" => "ADR;WORK;COUNTRYNAME",
|
"adr_one_countryname" => "ADR;WORK;COUNTRYNAME",
|
||||||
|
"address2" => "EXT",
|
||||||
"label" => "LABEL",
|
"label" => "LABEL",
|
||||||
|
|
||||||
"adr_two_street" => "ADR;HOME;STREET",
|
"adr_two_street" => "ADR;HOME;STREET",
|
||||||
@ -74,8 +75,8 @@
|
|||||||
"tel_car" => "TEL;CAR",
|
"tel_car" => "TEL;CAR",
|
||||||
"tel_isdn" => "TEL;ISDN",
|
"tel_isdn" => "TEL;ISDN",
|
||||||
"tel_video" => "TEL;VIDEO",
|
"tel_video" => "TEL;VIDEO",
|
||||||
"email" => "MAIL;WORK",
|
"email" => "EMAIL;WORK",
|
||||||
"email_home" => "MAIL;HOME",
|
"email_home" => "EMAIL;HOME",
|
||||||
);
|
);
|
||||||
|
|
||||||
// make sure to order how we ask for these
|
// make sure to order how we ask for these
|
||||||
@ -251,15 +252,19 @@
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "MAIL":
|
case "EMAIL":
|
||||||
switch($mult[1]) {
|
switch($mult[1]) {
|
||||||
|
case "TYPE":
|
||||||
|
if ($mult[2] == "WORK") { $emailtype = ";".$buffer[$i][$value]; }
|
||||||
|
if ($mult[2] == "HOME") { $hemailtype = ";".$buffer[$i][$value]; }
|
||||||
|
break;
|
||||||
case "WORK":
|
case "WORK":
|
||||||
$newval = "A.".$value;
|
$newval = "A.".$value;
|
||||||
$entries .= $newval.":".$buffer[$i][$value]."\r\n";
|
$entries .= $newval.$emailtype.":".$buffer[$i][$value]."\r\n";
|
||||||
break;
|
break;
|
||||||
case "HOME":
|
case "HOME":
|
||||||
$newval = "B.".$value;
|
$newval = "B.".$value;
|
||||||
$entries .= $newval.":".$buffer[$i][$value]."\r\n";
|
$entries .= $newval.$hemailtype.":".$buffer[$i][$value]."\r\n";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -279,8 +284,9 @@
|
|||||||
}
|
}
|
||||||
$workattr = ereg_replace("ADR;","",$workattr);
|
$workattr = ereg_replace("ADR;","",$workattr);
|
||||||
$homeattr = ereg_replace("ADR;","",$homeattr);
|
$homeattr = ereg_replace("ADR;","",$homeattr);
|
||||||
if ($workaddr) {$work = "A.ADR;".$workattr.":".substr($workaddr,0,-1)."\r\n"; }
|
if (!$buffer[$i]['EXT']) { $buffer[$i]['EXT'] = ";"; }
|
||||||
if ($homeaddr) {$home = "B.ADR;".$homeattr.":".substr($homeaddr,0,-1)."\r\n"; }
|
if ($workaddr) {$work = "A.ADR;".$workattr.":;".$buffer[$i]['EXT'].substr($workaddr,0,-1)."\r\n"; }
|
||||||
|
if ($homeaddr) {$home = "B.ADR;".$homeattr.":;;".substr($homeaddr,0,-1)."\r\n"; }
|
||||||
$entries .= $work.$home."END:VCARD\r\n";
|
$entries .= $work.$home."END:VCARD\r\n";
|
||||||
$entries .= "\r\n";
|
$entries .= "\r\n";
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user