contacts: every card needs a version!

This commit is contained in:
Jakob Sack 2011-11-09 11:34:04 +01:00
parent 4b424e12df
commit 938c5ef21c
1 changed files with 10 additions and 0 deletions

View File

@ -95,10 +95,15 @@ class OC_Contacts_VCard{
$card = self::parse($data);
if(!is_null($card)){
// VCARD must have a version
$hasversion = false;
foreach($card->children as $property){
if($property->name == 'FN'){
$fn = $property->value;
}
elseif($property->name == 'VERSION'){
$hasversion = true;
}
elseif(is_null($uri) && $property->name == 'UID' ){
$uri = $property->value.'.vcf';
}
@ -109,6 +114,11 @@ class OC_Contacts_VCard{
$card->add(new Sabre_VObject_Property('UID',$uid));
$data = $card->serialize();
};
// Add version if needed
if(!$hasversion){
$card->add(new Sabre_VObject_Property('VERSION','3.0'));
$data = $card->serialize();
}
}
else{
// that's hard. Creating a UID and not saving it