hook on thirdparty list

This commit is contained in:
Frédéric FRANCE 2022-11-15 14:31:08 +01:00
parent 23a5fa7d62
commit df78a8d218

View File

@ -767,7 +767,7 @@ if ($num == 1 && !empty($conf->global->MAIN_SEARCH_DIRECT_OPEN_IF_ONLY_ONE) && (
$obj = $db->fetch_object($resql);
$id = $obj->rowid;
if (!empty($conf->global->SOCIETE_ON_SEARCH_AND_LIST_GO_ON_CUSTOMER_OR_SUPPLIER_CARD)) {
if ($obj->client > 0) {
if ($companystatic->client > 0) {
header("Location: ".DOL_URL_ROOT.'/comm/card.php?socid='.$id);
exit;
}
@ -1447,27 +1447,37 @@ $totalarray = array();
$totalarray['nbfield'] = 0;
while ($i < min($num, $limit)) {
$obj = $db->fetch_object($resql);
$parameters = array('staticdata' => $obj);
// Note that $action and $object may have been modified by hook
$reshook = $hookmanager->executeHooks('loadStaticObject', $parameters, $companystatic, $action);
if ($reshook < 0) {
$companystatic->fetch($obj->rowid);
} else {
$companystatic->id = $obj->rowid;
$companystatic->name = $obj->name;
$companystatic->name_alias = $obj->name_alias;
$companystatic->logo = $obj->logo;
$companystatic->barcode = $obj->barcode;
$companystatic->canvas = $obj->canvas;
$companystatic->client = $obj->client;
$companystatic->status = $obj->status;
$companystatic->email = $obj->email;
$companystatic->address = $obj->address;
$companystatic->zip = $obj->zip;
$companystatic->town = $obj->town;
$companystatic->fournisseur = $obj->fournisseur;
$companystatic->code_client = $obj->code_client;
$companystatic->code_fournisseur = $obj->code_fournisseur;
$companystatic->tva_intra = $obj->tva_intra;
$companystatic->country_code = $obj->country_code;
$companystatic->id = $obj->rowid;
$companystatic->name = $obj->name;
$companystatic->name_alias = $obj->name_alias;
$companystatic->logo = $obj->logo;
$companystatic->canvas = $obj->canvas;
$companystatic->client = $obj->client;
$companystatic->status = $obj->status;
$companystatic->email = $obj->email;
$companystatic->fournisseur = $obj->fournisseur;
$companystatic->code_client = $obj->code_client;
$companystatic->code_fournisseur = $obj->code_fournisseur;
$companystatic->tva_intra = $obj->tva_intra;
$companystatic->country_code = $obj->country_code;
$companystatic->code_compta_client = $obj->code_compta;
$companystatic->code_compta_fournisseur = $obj->code_compta_fournisseur;
$companystatic->code_compta_client = $obj->code_compta;
$companystatic->code_compta_fournisseur = $obj->code_compta_fournisseur;
$companystatic->fk_prospectlevel = $obj->fk_prospectlevel;
$companystatic->fk_parent = $obj->fk_parent;
$companystatic->entity = $obj->entity;
$companystatic->fk_prospectlevel = $obj->fk_prospectlevel;
$companystatic->fk_parent = $obj->fk_parent;
$companystatic->entity = $obj->entity;
}
print '<tr class="oddeven"';
if ($contextpage == 'poslist') {
@ -1501,7 +1511,7 @@ while ($i < min($num, $limit)) {
if (!empty($arrayfields['s.nom']['checked'])) {
print '<td'.(empty($conf->global->MAIN_SOCIETE_SHOW_COMPLETE_NAME) ? ' class="tdoverflowmax200"' : '').' data-key="ref">';
if ($contextpage == 'poslist') {
print dol_escape_htmltag($obj->name);
print dol_escape_htmltag($companystatic->name);
} else {
print $companystatic->getNomUrl(1, '', 100, 0, 1, empty($arrayfields['s.name_alias']['checked']) ? 0 : 1);
}
@ -1520,56 +1530,56 @@ while ($i < min($num, $limit)) {
}
// Barcode
if (!empty($arrayfields['s.barcode']['checked'])) {
print '<td class="tdoverflowmax150" title="'.dol_escape_htmltag($obj->barcode).'">'.dol_escape_htmltag($obj->barcode).'</td>';
print '<td class="tdoverflowmax150" title="'.dol_escape_htmltag($companystatic->barcode).'">'.dol_escape_htmltag($companystatic->barcode).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Customer code
if (!empty($arrayfields['s.code_client']['checked'])) {
print '<td class="nowraponall">'.dol_escape_htmltag($obj->code_client).'</td>';
print '<td class="nowraponall">'.dol_escape_htmltag($companystatic->code_client).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Supplier code
if (!empty($arrayfields['s.code_fournisseur']['checked'])) {
print '<td class="nowraponall">'.dol_escape_htmltag($obj->code_fournisseur).'</td>';
print '<td class="nowraponall">'.dol_escape_htmltag($companystatic->code_fournisseur).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Account customer code
if (!empty($arrayfields['s.code_compta']['checked'])) {
print '<td>'.dol_escape_htmltag($obj->code_compta).'</td>';
print '<td>'.dol_escape_htmltag($companystatic->code_compta_client).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Account supplier code
if (!empty($arrayfields['s.code_compta_fournisseur']['checked'])) {
print '<td>'.dol_escape_htmltag($obj->code_compta_fournisseur).'</td>';
print '<td>'.dol_escape_htmltag($companystatic->code_compta_fournisseur).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Address
if (!empty($arrayfields['s.address']['checked'])) {
print '<td class="tdoverflowmax250" title="'.dol_escape_htmltag($obj->address).'">'.dol_escape_htmltag($obj->address).'</td>';
print '<td class="tdoverflowmax250" title="'.dol_escape_htmltag($companystatic->address).'">'.dol_escape_htmltag($companystatic->address).'</td>';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Zip
if (!empty($arrayfields['s.zip']['checked'])) {
print "<td>".dol_escape_htmltag($obj->zip)."</td>\n";
print "<td>".dol_escape_htmltag($companystatic->zip)."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
}
// Town
if (!empty($arrayfields['s.town']['checked'])) {
print '<td class="tdoverflowmax150" title="'.dol_escape_htmltag($obj->town).'">'.dol_escape_htmltag($obj->town)."</td>\n";
print '<td class="tdoverflowmax150" title="'.dol_escape_htmltag($companystatic->town).'">'.dol_escape_htmltag($companystatic->town)."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
@ -1591,7 +1601,7 @@ while ($i < min($num, $limit)) {
// Country
if (!empty($arrayfields['country.code_iso']['checked'])) {
print '<td class="center tdoverflowmax100">';
$labelcountry = ($obj->country_code && ($langs->trans("Country".$obj->country_code) != "Country".$obj->country_code)) ? $langs->trans("Country".$obj->country_code) : $obj->country_label;
$labelcountry = ($companystatic->country_code && ($langs->trans("Country".$companystatic->country_code) != "Country".$companystatic->country_code)) ? $langs->trans("Country".$companystatic->country_code) : $obj->country_label;
print $labelcountry;
print '</td>';
if (!$i) {
@ -1638,13 +1648,13 @@ while ($i < min($num, $limit)) {
}
}
if (!empty($arrayfields['s.phone']['checked'])) {
print '<td class="nowraponall">'.dol_print_phone($obj->phone, $obj->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'phone')."</td>\n";
print '<td class="nowraponall">'.dol_print_phone($obj->phone, $companystatic->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'phone')."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
}
if (!empty($arrayfields['s.fax']['checked'])) {
print '<td class="nowraponall">'.dol_print_phone($obj->fax, $obj->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'fax')."</td>\n";
print '<td class="nowraponall">'.dol_print_phone($obj->fax, $companystatic->country_code, 0, $obj->rowid, 'AC_TEL', ' ', 'fax')."</td>\n";
if (!$i) {
$totalarray['nbfield']++;
}
@ -1693,11 +1703,11 @@ while ($i < min($num, $limit)) {
}
// VAT
if (!empty($arrayfields['s.tva_intra']['checked'])) {
print '<td class="tdoverflowmax125" title="'.dol_escape_htmltag($obj->tva_intra).'">';
if ($obj->tva_intra && !isValidVATID($companystatic)) {
print '<td class="tdoverflowmax125" title="'.dol_escape_htmltag($companystatic->tva_intra).'">';
if ($companystatic->tva_intra && !isValidVATID($companystatic)) {
print img_warning("BadVATNumber", '', 'pictofixedwidth');
}
print $obj->tva_intra;
print $companystatic->tva_intra;
print "</td>\n";
if (!$i) {
$totalarray['nbfield']++;