27 require
'../main.inc.php';
28 require_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
29 require_once DOL_DOCUMENT_ROOT.
'/societe/class/societe.class.php';
30 require_once DOL_DOCUMENT_ROOT.
'/core/class/vcard.class.php';
38 $result =
restrictedArea($user,
'contact', $id,
'socpeople&societe');
41 $result = $contact->fetch($id);
49 if ($contact->socid) {
50 $result = $company->fetch($contact->socid);
55 $v->setProdId(
'Dolibarr '.DOL_VERSION);
57 $v->setUid(
'DOLIBARR-CONTACTID-'.$contact->id);
58 $v->setName($contact->lastname, $contact->firstname,
"", $contact->civility,
"");
59 $v->setFormattedName($contact->getFullName($langs, 1));
61 $v->setPhoneNumber($contact->phone_pro,
"TYPE=WORK;VOICE");
63 $v->setPhoneNumber($contact->phone_mobile,
"TYPE=CELL;VOICE");
64 $v->setPhoneNumber($contact->fax,
"TYPE=WORK;FAX");
66 $country = $contact->country_code ? $contact->country :
'';
68 $v->setAddress(
"",
"", $contact->address, $contact->town, $contact->state, $contact->zip, $country,
"TYPE=WORK;POSTAL");
69 $v->setLabel(
"",
"", $contact->address, $contact->town, $contact->state, $contact->zip, $country,
"TYPE=WORK");
71 $v->setEmail($contact->email);
72 $v->setNote($contact->note);
73 $v->setTitle($contact->poste);
77 $v->setURL($company->url,
"TYPE=WORK");
78 if (!$contact->phone_pro) {
79 $v->setPhoneNumber($company->phone,
"TYPE=WORK;VOICE");
82 $v->setPhoneNumber($company->fax,
"TYPE=WORK;FAX");
85 $v->setAddress(
"",
"", $company->address, $company->town, $company->state, $company->zip, $company->country,
"TYPE=WORK;POSTAL");
89 if (empty(trim($company->email))) {
91 } elseif (empty(trim($contact->email))) {
93 $v->setEmail($company->email);
94 } elseif (strtolower(end(explode(
"@", $contact->email))) == strtolower(end(explode(
"@", $company->email)))) {
96 $v->setEmail($contact->email);
99 $v->setEmail($company->email,
'INTERNET');
102 $v->setEmail($company->email);
105 $v->setEmail($contact->email,
'INTERNET');
109 if ($company->typent_code !=
'TE_PRIVATE') {
110 $v->setOrg($company->name);
115 $v->setPhoneNumber($contact->phone_perso,
"TYPE=HOME;VOICE");
116 if ($contact->birthday) {
117 $v->setBirthday($contact->birthday);
125 $output = $v->getVCard();
127 $filename = trim(urldecode($v->getFileName()));
132 header(
"Content-Disposition: attachment; filename=\"".$filename.
"\"");
133 header(
"Content-Length: ".
dol_strlen($output));
134 header(
"Connection: close");
135 header(
"Content-Type: text/x-vcard; name=\"".$filename.
"\"");