/* For licensing terms, see /license.txt */ /** * VCard Generator * @package chamilo.social * @author José Loguercio Silva <*****@*****.**> */ require_once '../inc/global.inc.php'; use JeroenDesloovere\VCard\VCard; api_block_anonymous_users(); if (isset($_REQUEST['userId'])) { $userId = intval($_REQUEST['userId']); } else { api_not_allowed(); } // Return User Info to vCard Export $userInfo = api_get_user_info($userId, true, false, true); // Pre-Loaded User Info $firstname = $userInfo['firstname']; $lastname = $userInfo['lastname']; $email = $userInfo['email']; $phone = $userInfo['phone']; $language = get_lang('Language') . ': ' . $userInfo['language']; // Instance the vCard Class $vcard = new VCard(); // Adding the User Info to the vCard $vcard->addName($lastname, $firstname); $vcard->addEmail($email); $vcard->addPhoneNumber($phone, 'CELL'); $vcard->addNote($language); // Generate the vCard return $vcard->download();
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; }
/** * Test multiple notes * * @expectedException JeroenDesloovere\VCard\Exception */ public function testMultipleNotes() { $this->assertEquals($this->vcard, $this->vcard->addNote('1')); $this->assertEquals($this->vcard, $this->vcard->addNote('2')); }
public function testNote() { $vcard = new VCard(); $vcard->addNote('This is a testnote'); $parser = new VCardParser($vcard->buildVCard()); $vcardMultiline = new VCard(); $vcardMultiline->addNote("This is a multiline note\nNew line content!\r\nLine 2"); $parserMultiline = new VCardParser($vcardMultiline->buildVCard()); $this->assertEquals($parser->getCardAtIndex(0)->note, 'This is a testnote'); $this->assertEquals(nl2br($parserMultiline->getCardAtIndex(0)->note), nl2br("This is a multiline note" . PHP_EOL . "New line content!" . PHP_EOL . "Line 2")); }