Bonjour à tous,
Je bloque sur un override qui se passe très bien si on ne fait pas de recherche. J'explique:
C'est dans l'admin, clients/clients. J'ai ajouté une colonne sur Prestashop 1.7.3 via override. La colonne récupère une information d'une autre table, tout se passe bien à l'affichage. Mais si on fait une recherche par ex via le nom du client ou un email, j'obtient:
class AdminCustomersController extends AdminCustomersControllerCore
{
public function printLink($value, $tr)
{ $token = Tools::getAdminTokenLite('AdminMemberPlan');
return '<a href="?controller=AdminMemberPlan&token=' .$token . '&id_customer=' . $tr['id_customer'] . '">' . $value . '</a>';
}
public function renderList()
{
$this->fields_list = array_merge($this->fields_list, array(
'abonnement' => array(
'title' => $this->trans('Abonnement', array(), 'Admin.Global'),
'orderby' => false,
'search' => false,
'callback' => 'printLink',
)
)
);
$this->_select .= ', (
SELECT abo.expire_on FROM ' . _DB_PREFIX_ . 'ps_member_plan abo WHERE abo.id_customer = a.id_customer) as abonnement ';
return parent::renderList();
}
}
Avez-vous une idée svp ?
Merci par avance.