private function _createVcardData(VCardModel $vcardModel)
 {
     $vcard = new VCard();
     $vcard->addName($vcardModel->lastName, $vcardModel->firstName, $vcardModel->additional, $vcardModel->prefix, $vcardModel->suffix);
     if ($vcardModel->company) {
         $vcard->addCompany($vcardModel->company);
     }
     if ($vcardModel->jobTitle) {
         $vcard->addJobtitle($vcardModel->jobTitle);
     }
     if ($vcardModel->url and is_array($vcardModel->url)) {
         foreach ($vcardModel->url as $url) {
             if ($url instanceof VCard_UrlModel) {
                 if ($url->validate()) {
                     $vcard->addUrl($url->address, $url->type);
                 }
             }
         }
     }
     if ($vcardModel->address and is_array($vcardModel->address)) {
         foreach ($vcardModel->address as $address) {
             if ($address instanceof VCard_AddressModel) {
                 if ($address->validate()) {
                     $vcard->addAddress($address->name, $address->extended, $address->street, $address->city, $address->region, $address->zip, $address->country, $address->type);
                 }
             }
         }
     }
     if ($vcardModel->phoneNumber and is_array($vcardModel->phoneNumber)) {
         foreach ($vcardModel->phoneNumber as $phoneNumber) {
             if ($phoneNumber instanceof VCard_PhoneNumberModel) {
                 if ($phoneNumber->validate()) {
                     $vcard->addPhoneNumber($phoneNumber->number, $phoneNumber->type);
                 }
             }
         }
     }
     if ($vcardModel->email and is_array($vcardModel->email)) {
         foreach ($vcardModel->email as $email) {
             if ($email instanceof VCard_EmailModel) {
                 if ($email->validate()) {
                     $vcard->addEmail($email->address, $email->type);
                 }
             }
         }
     }
     if ($vcardModel->photo) {
         $vcard->addPhoto($vcardModel->photo);
     }
     if ($vcardModel->note) {
         $vcard->addNote($vcardModel->note);
     }
     return $vcard;
 }
Exemple #2
0
 public function testAddUrl()
 {
     $this->assertEquals($this->vcard, $this->vcard->addUrl('1'));
     $this->assertEquals($this->vcard, $this->vcard->addUrl('2'));
     $this->assertEquals(2, count($this->vcard->getProperties()));
 }
 public function testUrl()
 {
     $vcard = new VCard();
     $vcard->addUrl('http://example.com');
     $vcard->addUrl('http://home.example.com', 'HOME');
     $vcard->addUrl('http://work1.example.com', 'PREF;WORK');
     $vcard->addUrl('http://work2.example.com', 'PREF;WORK');
     $parser = new VCardParser($vcard->buildVCard());
     $this->assertEquals($parser->getCardAtIndex(0)->url['default'][0], 'http://example.com');
     $this->assertEquals($parser->getCardAtIndex(0)->url['HOME'][0], 'http://home.example.com');
     $this->assertEquals($parser->getCardAtIndex(0)->url['PREF;WORK'][0], 'http://work1.example.com');
     $this->assertEquals($parser->getCardAtIndex(0)->url['PREF;WORK'][1], 'http://work2.example.com');
 }