Fixed grouped Properties naming (e.g. Addresses: item1.ADR instead of just ADR) that caused item1.ADR to be written to DB(address_address_adr) because it doesn't match ADR, fix works ofr every grouped Property (yet there is only ADR...)

Added VCard Property ORG as nondefault (because it takes more then one Value)
Fixed false handling of Properties that can have more than one value (e.g. ORG) where values are seperated by semicolons
This commit is contained in:
ClemensN 2015-11-13 21:52:22 +01:00
parent 2eb0566621
commit 5fd88ce1cb
2 changed files with 4 additions and 3 deletions

View File

@ -103,8 +103,7 @@ elseif( !preg_match('{^\d{8}T\d{6}Z$}', $last_modified) ) {
$vcard->ClearProperties('REV');
$vcard->AddProperty('REV',$last_modified);
}
$rendered_card = $vcard->Render();
$rendered_card = $vcard->Render();
$etag = md5($rendered_card);
$params = array(
':user_no' => $user_no,

View File

@ -93,7 +93,9 @@ CREATE TABLE addressbook_address_adr (
$type = $adr->GetParameterValue('TYPE');
if ( is_array($type) ) $type = implode('~|~',$type);
$params[':type'] = $type;
$address = explode(';',$adr->Value());
//explode on ; that is not preceeded by an \
$address = preg_split( '{(?<!\\\\);}', $adr->Value());
//$address = explode(';',$adr->Value());
// We use @ to suppress the warnings here, because the NULL in the database suits us well.
@$params[':box_no'] = $address[0];