print '<td><a href="' . DOL_URL_ROOT . '/comm/mailing/list.php?filteremail=' . urlencode($object->email) . '">' . $object->getNbOfEMailings() . '</a></td>'; } else { print '<td colspan="2"> </td>'; } print '</tr>'; // Instant message and no email print '<tr><td>' . $langs->trans("IM") . '</td><td>' . $object->jabberid . '</td>'; if (!empty($conf->mailing->enabled)) { print '<td>' . $langs->trans("No_Email") . '</td><td>' . yn($object->no_email) . '</td>'; } else { print '<td colspan="2"> </td>'; } print '</tr>'; // Skype if (!empty($conf->skype->enabled)) { print '<tr><td>' . $langs->trans("Skype") . '</td><td colspan="3">' . dol_print_skype($object->skype, 0, $object->fk_soc, 1) . '</td></tr>'; } print '<tr><td>' . $langs->trans("ContactVisibility") . '</td><td colspan="3">'; print $object->LibPubPriv($object->priv); print '</td></tr>'; // Note Public print '<tr><td class="tdtop">' . $langs->trans("NotePublic") . '</td><td colspan="3">'; print nl2br($object->note_public); print '</td></tr>'; // Note Private print '<tr><td class="tdtop">' . $langs->trans("NotePrivate") . '</td><td colspan="3">'; print nl2br($object->note_private); // Statut print '<tr><td>' . $langs->trans("Status") . '</td>'; print '<td>'; print $object->getLibStatut(4);
// Phone mobile if (!empty($arrayfields['p.phone_mobile']['checked'])) { print '<td>' . dol_print_phone($obj->phone_mobile, $obj->country_code, $obj->cidp, $obj->socid, 'AC_TEL') . '</td>'; } // Fax if (!empty($arrayfields['p.fax']['checked'])) { print '<td>' . dol_print_phone($obj->fax, $obj->country_code, $obj->cidp, $obj->socid, 'AC_TEL') . '</td>'; } // EMail if (!empty($arrayfields['p.email']['checked'])) { print '<td>' . dol_print_email($obj->email, $obj->cidp, $obj->socid, 'AC_EMAIL', 18) . '</td>'; } // Skype if (!empty($arrayfields['p.skype']['checked'])) { if (!empty($conf->skype->enabled)) { print '<td>' . dol_print_skype($obj->skype, $obj->cidp, $obj->socid, 'AC_SKYPE', 18) . '</td>'; } } // Company if (!empty($arrayfields['p.thirdparty']['checked'])) { print '<td>'; if ($obj->socid) { print '<a href="' . DOL_URL_ROOT . '/comm/card.php?socid=' . $obj->socid . '">'; print img_object($langs->trans("ShowCompany"), "company") . ' ' . dol_trunc($obj->name, 20) . '</a>'; } else { print ' '; } print '</td>'; } // Private/Public if (!empty($arrayfields['p.priv']['checked'])) {
/** * Return full address of contact * * @param string $htmlkey HTML id to make banner content unique * @param Object $object Object (thirdparty, thirdparty of contact for contact, null for a member) * @return string Full address string */ function getBannerAddress($htmlkey, $object) { global $conf, $langs; $countriesusingstate = array('AU', 'US', 'IN', 'GB', 'ES', 'UK', 'TR'); $contactid = 0; $thirdpartyid = 0; if ($this->element == 'societe') { $thirdpartyid = $this->id; } if ($this->element == 'contact') { $contactid = $this->id; $thirdpartyid = $object->fk_soc; } if ($this->element == 'user') { $contactid = $this->contact_id; $thirdpartyid = $object->fk_soc; } $out = '<!-- BEGIN part to show address block -->'; $outdone = 0; $coords = $this->getFullAddress(1, ', '); if ($coords) { if (!empty($conf->use_javascript_ajax)) { $namecoords = $this->getFullName($langs, 1) . '<br>' . $coords; // hideonsmatphone because copyToClipboard call jquery dialog that does not work with jmobile $out .= '<a href="#" class="hideonsmartphone" onclick="return copyToClipboard(\'' . dol_escape_js($namecoords) . '\',\'' . dol_escape_js($langs->trans("HelpCopyToClipboard")) . '\');">'; $out .= img_picto($langs->trans("Address"), 'object_address.png'); $out .= '</a> '; } $out .= dol_print_address($coords, 'address_' . $htmlkey . '_' . $this->id, $this->element, $this->id, 1); $outdone++; $outdone++; } if (!in_array($this->country_code, $countriesusingstate) && empty($conf->global->MAIN_FORCE_STATE_INTO_ADDRESS) && !empty($conf->global->SOCIETE_DISABLE_STATE) && $this->state) { $out .= ($outdone ? '<br>' : '') . $this->state; $outdone++; } if (!empty($this->phone_pro) || !empty($this->phone_mobile) || !empty($this->phone_perso) || !empty($this->fax) || !empty($this->office_phone) || !empty($this->user_mobile) || !empty($this->office_fax)) { $out .= $outdone ? '<br>' : ''; } if (!empty($this->phone) && empty($this->phone_pro)) { // For objects that store pro phone into ->phone $out .= dol_print_phone($this->phone, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhonePro")); $outdone++; } if (!empty($this->phone_pro)) { $out .= dol_print_phone($this->phone_pro, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhonePro")); $outdone++; } if (!empty($this->phone_mobile)) { $out .= dol_print_phone($this->phone_mobile, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhoneMobile")); $outdone++; } if (!empty($this->phone_perso)) { $out .= dol_print_phone($this->phone_perso, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhonePerso")); $outdone++; } if (!empty($this->fax)) { $out .= dol_print_phone($this->fax, $this->country_code, $contactid, $thirdpartyid, 'AC_FAX', ' ', 'fax', $langs->trans("Fax")); $outdone++; } if (!empty($this->office_phone)) { $out .= dol_print_phone($this->office_phone, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhonePro")); $outdone++; } if (!empty($this->user_mobile)) { $out .= dol_print_phone($this->user_mobile, $this->country_code, $contactid, $thirdpartyid, 'AC_TEL', ' ', 'phone', $langs->trans("PhoneMobile")); $outdone++; } if (!empty($this->office_fax)) { $out .= dol_print_phone($this->fax, $this->country_code, $contactid, $thirdpartyid, 'AC_FAX', ' ', 'fax', $langs->trans("Fax")); $outdone++; } $out .= '<div style="clear: both;"></div>'; $outdone = 0; if (!empty($this->email)) { $out .= dol_print_email($this->email, $this->id, $object->id, 'AC_EMAIL', 0, 0, 1); $outdone++; } if (!empty($this->url)) { $out .= dol_print_url($this->url, '', 0, 1); $outdone++; } if (!empty($conf->skype->enabled)) { $out .= '<div style="clear: both;"></div>'; if ($this->skype) { $out .= dol_print_skype($this->skype, $this->id, $object->id, 'AC_SKYPE'); } $outdone++; } $out .= '<!-- END Part to show address block -->'; return $out; }
// State if (empty($conf->global->SOCIETE_DISABLE_STATE)) { print '<tr><td>' . $langs->trans('State') . '</td><td colspan="' . (2 + ($showlogo || $showbarcode ? 0 : 1)) . '">' . $object->state . '</td>'; } // EMail print '<tr><td>' . $langs->trans('EMail') . '</td><td colspan="' . (2 + ($showlogo || $showbarcode ? 0 : 1)) . '">'; print dol_print_email($object->email, 0, $object->id, 'AC_EMAIL'); print '</td></tr>'; // Web print '<tr><td>' . $langs->trans('Web') . '</td><td colspan="' . (2 + ($showlogo || $showbarcode ? 0 : 1)) . '">'; print dol_print_url($object->url); print '</td></tr>'; // Skype if (!empty($conf->skype->enabled)) { print '<tr><td>' . $langs->trans('Skype') . '</td><td colspan="3">'; print dol_print_skype($object->skype, 0, $object->id, 'AC_SKYPE'); print '</td></tr>'; } // Phone / Fax print '<tr><td>' . $langs->trans('Phone') . '</td><td style="min-width: 25%;">' . dol_print_phone($object->phone, $object->country_code, 0, $object->id, 'AC_TEL') . '</td>'; print '<td>' . $langs->trans('Fax') . '</td><td style="min-width: 25%;">' . dol_print_phone($object->fax, $object->country_code, 0, $object->id, 'AC_FAX') . '</td></tr>'; // Prof ids $i = 1; $j = 0; while ($i <= 6) { $idprof = $langs->transcountry('ProfId' . $i, $object->country_code); if ($idprof != '-') { if ($j % 2 == 0) { print '<tr>'; } print '<td>' . $idprof . '</td><td>';
/** * Show html area for list of contacts * * @param Conf $conf Object conf * @param Translate $langs Object langs * @param DoliDB $db Database handler * @param Object $object Third party object * @param string $backtopage Url to go once contact is created * @return void */ function show_contacts($conf, $langs, $db, $object, $backtopage = '') { global $user, $conf; global $bc; $form = new Form($db); $sortfield = GETPOST("sortfield", 'alpha'); $sortorder = GETPOST("sortorder", 'alpha'); $search_status = GETPOST("search_status", 'int'); if ($search_status == '') { $search_status = 1; } // always display activ customer first $search_name = GETPOST("search_name", 'alpha'); if (!$sortorder) { $sortorder = "ASC"; } if (!$sortfield) { $sortfield = "p.lastname"; } $i = -1; $contactstatic = new Contact($db); if (!empty($conf->clicktodial->enabled)) { $user->fetch_clicktodial(); // lecture des infos de clicktodial } $buttoncreate = ''; if ($user->rights->societe->contact->creer) { $addcontact = !empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("AddContact") : $langs->trans("AddContactAddress"); $buttoncreate = '<a class="addnewrecord" href="' . DOL_URL_ROOT . '/contact/fiche.php?socid=' . $object->id . '&action=create&backtopage=' . urlencode($backtopage) . '">' . $addcontact; if (empty($conf->dol_optimize_smallscreen)) { $buttoncreate .= ' ' . img_picto($addcontact, 'filenew'); } $buttoncreate .= '</a>' . "\n"; } print "\n"; $title = !empty($conf->global->SOCIETE_ADDRESSES_MANAGEMENT) ? $langs->trans("ContactsForCompany") : $langs->trans("ContactsAddressesForCompany"); print_fiche_titre($title, $buttoncreate, ''); print '<form method="GET" action="' . $_SERVER["PHP_SELF"] . '" name="formfilter">'; print '<input type="hidden" name="socid" value="' . $object->id . '">'; print '<input type="hidden" name="sortorder" value="' . $sortorder . '">'; print '<input type="hidden" name="sortfield" value="' . $sortfield . '">'; print "\n" . '<table class="noborder" width="100%">' . "\n"; $param = "socid=" . $object->id; if ($search_status != '') { $param .= '&search_status=' . $search_status; } if ($search_name != '') { $param .= '&search_name=' . urlencode($search_name); } $colspan = 9; print '<tr class="liste_titre">'; print_liste_field_titre($langs->trans("Name"), $_SERVER["PHP_SELF"], "p.lastname", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Poste"), $_SERVER["PHP_SELF"], "p.poste", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("PhonePro"), $_SERVER["PHP_SELF"], "p.phone", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("PhoneMobile"), $_SERVER["PHP_SELF"], "p.phone_mobile", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("Fax"), $_SERVER["PHP_SELF"], "p.fax", "", $param, '', $sortfield, $sortorder); print_liste_field_titre($langs->trans("EMail"), $_SERVER["PHP_SELF"], "p.email", "", $param, '', $sortfield, $sortorder); if (!empty($conf->skype->enabled)) { $colspan++; print '<td>' . $langs->trans("Skype") . '</td>'; } print_liste_field_titre($langs->trans("Status"), $_SERVER["PHP_SELF"], "p.statut", "", $param, '', $sortfield, $sortorder); // Copy to clipboard print "<td> </td>"; // Add to agenda if (!empty($conf->agenda->enabled) && !empty($user->rights->agenda->myactions->create)) { $colspan++; print '<td> </td>'; } // Edit print '<td> </td>'; print "</tr>"; print '<tr class="liste_titre">'; print '<td class="liste_titre">'; print '<input type="text" class="flat" name="search_name" size="20" value="' . $search_name . '">'; print '</td>'; print '<td> </td>'; print '<td> </td>'; print '<td> </td>'; print '<td> </td>'; print '<td> </td>'; if (!empty($conf->skype->enabled)) { $colspan++; print '<td> </td>'; } // Status print '<td class="liste_titre maxwidthonsmartphone">'; print $form->selectarray('search_status', array('0' => $langs->trans('ActivityCeased'), '1' => $langs->trans('InActivity')), $search_status); print '</td>'; // Copy to clipboard print "<td> </td>"; // Add to agenda if (!empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) { $colspan++; print '<td> </td>'; } // Edit print '<td class="liste_titre" align="right">'; print '<input type="image" class="liste_titre" name="button_search" src="' . img_picto($langs->trans("Search"), 'search.png', '', '', 1) . '" value="' . dol_escape_htmltag($langs->trans("Search")) . '" title="' . dol_escape_htmltag($langs->trans("Search")) . '">'; print '</td>'; print "</tr>"; $sql = "SELECT p.rowid, p.lastname, p.firstname, p.fk_pays as country_id, p.poste, p.phone, p.phone_mobile, p.fax, p.email, p.skype, p.statut "; $sql .= ", p.civilite as civility_id, p.address, p.zip, p.town"; $sql .= " FROM " . MAIN_DB_PREFIX . "socpeople as p"; $sql .= " WHERE p.fk_soc = " . $object->id; if ($search_status != '') { $sql .= " AND p.statut = " . $db->escape($search_status); } if ($search_name) { $sql .= " AND (p.lastname LIKE '%" . $db->escape($search_name) . "%' OR p.firstname LIKE '%" . $db->escape($search_name) . "%')"; } $sql .= " ORDER BY {$sortfield} {$sortorder}"; dol_syslog('core/lib/company.lib.php :: show_contacts sql=' . $sql, LOG_DEBUG); $result = $db->query($sql); $num = $db->num_rows($result); $var = true; if ($num) { $i = 0; while ($i < $num) { $obj = $db->fetch_object($result); $var = !$var; print "<tr " . $bc[$var] . ">"; print '<td>'; $contactstatic->id = $obj->rowid; $contactstatic->statut = $obj->statut; $contactstatic->lastname = $obj->lastname; $contactstatic->firstname = $obj->firstname; $contactstatic->civility_id = $obj->civility_id; print $contactstatic->getNomUrl(1); print '</td>'; print '<td>' . $obj->poste . '</td>'; $country_code = getCountry($obj->country_id, 'all'); // Lien click to dial print '<td>'; print dol_print_phone($obj->phone, $country_code['code'], $obj->rowid, $object->id, 'AC_TEL'); print '</td>'; print '<td>'; print dol_print_phone($obj->phone_mobile, $country_code['code'], $obj->rowid, $object->id, 'AC_TEL'); print '</td>'; print '<td>'; print dol_print_phone($obj->fax, $country_code['code'], $obj->rowid, $object->id, 'AC_FAX'); print '</td>'; print '<td>'; print dol_print_email($obj->email, $obj->rowid, $object->id, 'AC_EMAIL'); print '</td>'; if (!empty($conf->skype->enabled)) { print '<td>'; print dol_print_skype($obj->skype, $obj->rowid, $object->id, 'AC_SKYPE'); print '</td>'; } // Status print '<td>' . $contactstatic->getLibStatut(5) . '</td>'; print '<td align="center">'; if (!empty($conf->use_javascript_ajax)) { // Copy to clipboard $coords = ''; if (!empty($object->name)) { $coords .= $object->name . "<br>"; } $coords .= $contactstatic->getFullName($langs, 1) . ' '; $coords .= "<br>"; if (!empty($obj->address)) { $coords .= dol_nl2br($obj->address, 1, true) . "<br>"; if (!empty($obj->zip)) { $coords .= $obj->zip . ' '; } if (!empty($obj->town)) { $coords .= $obj->town; } if (!empty($obj->country_id)) { $coords .= "<br>" . $country_code['label']; } } else { if (!empty($object->address)) { $coords .= dol_nl2br($object->address, 1, true) . "<br>"; if (!empty($object->zip)) { $coords .= $object->zip . ' '; } if (!empty($object->town)) { $coords .= $object->town; } if (!empty($object->country_id)) { $coords .= "<br>" . $country_code['label']; } } } // hideonsmatphone because copyToClipboard call jquery dialog that does not work with jmobile print '<a href="#" class="hideonsmartphone" onclick="return copyToClipboard(\'' . dol_escape_js($coords) . '\',\'' . dol_escape_js($langs->trans("HelpCopyToClipboard")) . '\');">'; print img_picto($langs->trans("Address"), 'object_address.png'); print '</a>'; } print '</td>'; // Add to agenda if (!empty($conf->agenda->enabled) && $user->rights->agenda->myactions->create) { print '<td align="center">'; if (!empty($conf->global->AGENDA_USE_EVENT_TYPE)) { print '<a class="hideonsmartphone" href="' . DOL_URL_ROOT . '/comm/action/fiche.php?action=create&actioncode=AC_RDV&contactid=' . $obj->rowid . '&socid=' . $object->id . '&backtopage=' . urlencode($backtopage) . '">'; print img_object($langs->trans("Rendez-Vous"), "action_rdv"); print '</a> '; } print '<a href="' . DOL_URL_ROOT . '/comm/action/fiche.php?action=create&actioncode=&contactid=' . $obj->rowid . '&socid=' . $object->id . '&backtopage=' . urlencode($backtopage) . '">'; print img_object($langs->trans("Event"), "action"); print '</a></td>'; } // Edit if ($user->rights->societe->contact->creer) { print '<td align="right">'; print '<a href="' . DOL_URL_ROOT . '/contact/fiche.php?action=edit&id=' . $obj->rowid . '&backtopage=' . urlencode($backtopage) . '">'; print img_edit(); print '</a></td>'; } else { print '<td> </td>'; } print "</tr>\n"; $i++; } } else { print "<tr " . $bc[$var] . ">"; print '<td colspan="' . $colspan . '">' . $langs->trans("None") . '</td>'; print "</tr>\n"; } print "\n</table>\n"; print '</form>' . "\n"; print "<br>\n"; ?> <div id="dialog" title="<?php echo dol_escape_htmltag($langs->trans('Address')); ?> " style="display: none;"></div> <?php return $i; }
// Tel pro print '<tr><td valign="top">' . $langs->trans("PhonePro") . '</td>'; print '<td colspan="2">' . dol_print_phone($object->office_phone, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Tel mobile print '<tr><td valign="top">' . $langs->trans("PhoneMobile") . '</td>'; print '<td colspan="2">' . dol_print_phone($object->user_mobile, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Fax print '<tr><td valign="top">' . $langs->trans("Fax") . '</td>'; print '<td colspan="2">' . dol_print_phone($object->office_fax, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Skype if (!empty($conf->skype->enabled)) { print '<tr><td valign="top">' . $langs->trans("Skype") . '</td>'; print '<td colspan="2">' . dol_print_skype($object->skype, 0, 0, 1) . '</td>'; print "</tr>\n"; } // EMail print '<tr><td valign="top">' . $langs->trans("EMail") . '</td>'; print '<td colspan="2">' . dol_print_email($object->email, 0, 0, 1) . '</td>'; print "</tr>\n"; // Signature print '<tr><td valign="top">' . $langs->trans('Signature') . '</td><td colspan="2">'; print dol_htmlentitiesbr($object->signature); print "</td></tr>\n"; // Hierarchy print '<tr><td valign="top">' . $langs->trans("HierarchicalResponsible") . '</td>'; print '<td colspan="2">'; if (empty($object->fk_user)) { print $langs->trans("None");
print $object->code_client; if ($object->check_codeclient() != 0) { print ' <font class="error">(' . $langs->trans("WrongCustomerCode") . ')</font>'; } print '</td></tr>'; print '<tr>'; print '<td>'; print $form->editfieldkey("CustomerAccountancyCode", 'customeraccountancycode', $object->code_compta, $object, $user->rights->societe->creer); print '</td><td colspan="3">'; print $form->editfieldval("CustomerAccountancyCode", 'customeraccountancycode', $object->code_compta, $object, $user->rights->societe->creer); print '</td>'; print '</tr>'; } // Skype if (!empty($conf->skype->enabled)) { print '<td>' . $langs->trans('Skype') . '</td><td colspan="3">' . dol_print_skype($object->skype, 0, $object->id, 'AC_SKYPE') . '</td></tr>'; } // Assujeti a TVA ou pas print '<tr>'; print '<td class="nowrap">' . $langs->trans('VATIsUsed') . '</td><td colspan="3">'; print yn($object->tva_assuj); print '</td>'; print '</tr>'; // Local Taxes if ($mysoc->useLocalTax(1)) { print '<tr><td class="nowrap">' . $langs->trans("LocalTax1IsUsedES") . '</td><td colspan="3">'; print yn($object->localtax1_assuj); print '</td></tr>'; } if ($mysoc->useLocalTax(2)) { print '<tr><td class="nowrap">' . $langs->trans("LocalTax2IsUsedES") . '</td><td colspan="3">';
// Tel pro print '<tr><td valign="top">' . $langs->trans("PhonePro") . '</td>'; print '<td>' . dol_print_phone($object->office_phone, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Tel mobile print '<tr><td valign="top">' . $langs->trans("PhoneMobile") . '</td>'; print '<td>' . dol_print_phone($object->user_mobile, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Fax print '<tr><td valign="top">' . $langs->trans("Fax") . '</td>'; print '<td>' . dol_print_phone($object->office_fax, '', 0, 0, 1) . '</td>'; print '</tr>' . "\n"; // Skype if (!empty($conf->skype->enabled)) { print '<tr><td valign="top">' . $langs->trans("Skype") . '</td>'; print '<td>' . dol_print_skype($object->skype, 0, 0, 1) . '</td>'; print "</tr>\n"; } // EMail print '<tr><td valign="top">' . $langs->trans("EMail") . '</td>'; print '<td>' . dol_print_email($object->email, 0, 0, 1) . '</td>'; print "</tr>\n"; // Signature print '<tr><td valign="top">' . $langs->trans('Signature') . '</td><td>'; if (empty($conf->global->FCKEDITOR_ENABLE_USERSIGN)) { print dol_htmlentitiesbr($object->signature); } else { print $object->signature; } print "</td></tr>\n"; // Hierarchy
if ($img) { print $img . ' '; } print getCountry($object->country_code); print '</td></tr>'; // State print '<tr><td>' . $langs->trans('State') . '</td><td class="valeur">' . $object->state . '</td>'; // Tel pro. print '<tr><td>' . $langs->trans("PhonePro") . '</td><td class="valeur">' . dol_print_phone($object->phone, $object->country_code, 0, $object->fk_soc, 1) . '</td></tr>'; // Tel perso print '<tr><td>' . $langs->trans("PhonePerso") . '</td><td class="valeur">' . dol_print_phone($object->phone_perso, $object->country_code, 0, $object->fk_soc, 1) . '</td></tr>'; // Tel mobile print '<tr><td>' . $langs->trans("PhoneMobile") . '</td><td class="valeur">' . dol_print_phone($object->phone_mobile, $object->country_code, 0, $object->fk_soc, 1) . '</td></tr>'; // Skype if (!empty($conf->skype->enabled)) { print '<tr><td>' . $langs->trans("Skype") . '</td><td class="valeur">' . dol_print_skype($object->skype, 0, $object->fk_soc, 1) . '</td></tr>'; } // Birthday print '<tr><td>' . $langs->trans("Birthday") . '</td><td class="valeur">' . dol_print_date($object->birth, 'day') . '</td></tr>'; // Public print '<tr><td>' . $langs->trans("Public") . '</td><td class="valeur">' . yn($object->public) . '</td></tr>'; // Status print '<tr><td>' . $langs->trans("Status") . '</td><td class="valeur">' . $object->getLibStatut(4) . '</td></tr>'; // Categories if (!empty($conf->categorie->enabled) && !empty($user->rights->categorie->lire)) { print '<tr><td>' . $langs->trans("Categories") . '</td>'; print '<td colspan="2">'; print $form->showCategories($object->id, 'member', 1); print '</td></tr>'; } // Other attributes