Jump to content

Ajouter colonne adminCarts.php


Recommended Posts

Bonjour,

J'ai réussi a ajouter un champs dans ps_cart qui se rempli lors de la création d'un panier et j'aimerais pouvoir rajouter un champs dans la vu adminCarts (clients > panier).

Quelqu'un pourrait-il m'aider s'il vous plait? Car quand je rajoute un champs dans fieldsDisplay (après customer par exemple), il m'affiche le titre de la colonne voulu à la place de customer MAIS me garde les valeurs de customers.

(Si vous avez du mal à comprendre, je peux peut-être ré-expliquer ^^')

        $this->fieldsDisplay = array(
       'id_cart' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
       'customer' => array('title' => $this->l('Customer'), 'width' => 80, 'filter_key' => 'c!lastname'),
       'total' => array('title' => $this->l('Total'), 'callback' => 'getTotalCart', 'orderby' => false, 'search' => false, 'width' => 50, 'align' => 'right', 'prefix' => '', 'suffix' => '', 'currency' => true),
       'carrier' => array('title' => $this->l('Carrier'), 'width' => 25, 'align' => 'center', 'callback' => 'replaceZeroByShopName'),
       'date_add' => array('title' => $this->l('Date'), 'width' => 90, 'align' => 'right', 'type' => 'datetime', 'filter_key' => 'a!date_add'));



J'aimerais en gros que ça ressemble à ceci (avec "ma valeur" récupérée de la bdd (champs que j'ai rajouté et qui est correctement rempli):

valeurb.jpg

Help me plz.
Cordialement, Guillaume.

Link to comment
Share on other sites

Bonjour,

je viens de regarder le code de adminCarts.php et je pense qu'il te manque des modifications, en effet, tu trouveras quelques lignes plus haut que le fieldsDisplay, la requête correspondant à l'affichage. imaginons que nous voulons ajouter le "id_customer" du panier, on va transformer la requête de la manière suivante (en ajoutant , c.id_customer dans la liste des champs sélectionnés) :

$this->_select = 'CONCAT(LEFT(c.`firstname`, 1), \'. \', c.`lastname`) AS `customer`, a.id_cart as total, ca.name as carrier, c.id_customer';
       $this->_join = 'LEFT JOIN '._DB_PREFIX_.'customer c on (c.id_customer = a.id_customer)
       LEFT JOIN '._DB_PREFIX_.'currency cu on (cu.id_currency = a.id_currency)
       LEFT JOIN '._DB_PREFIX_.'carrier ca on (ca.id_carrier = a.id_carrier)
       ';



ensuite, on peut modifier le fieldsDisplay comme ceci :

    $this->fieldsDisplay = array(
       'id_cart' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
       'customer' => array('title' => $this->l('Customer'), 'width' => 80, 'filter_key' => 'c!lastname'),
       'id_customer' => array('title' => $this->l('Id Customer'), 'width' => 80, 'filter_key' => 'c!id_customer'),
       'total' => array('title' => $this->l('Total'), 'callback' => 'getTotalCart', 'orderby' => false, 'search' => false, 'width' => 50, 'align' => 'right', 'prefix' => '', 'suffix' => '', 'currency' => true),
       'carrier' => array('title' => $this->l('Carrier'), 'width' => 25, 'align' => 'center', 'callback' => 'replaceZeroByShopName'),
       'date_add' => array('title' => $this->l('Date'), 'width' => 90, 'align' => 'right', 'type' => 'datetime', 'filter_key' => 'a!date_add'));



on voit sur cette exemple l'insertion d'une ligne :

'id_customer' => array('title' => $this->l('Id Customer'), 'width' => 80, 'filter_key' => 'c!id_customer'),



permettant d'afficher l'id_customer.
et voilà, en espérant que cela puisse t'aider.... ;-)

Link to comment
Share on other sites

Écoute, c'est super sympa, mais je viens de trouver juste avant de voir ta réponse.

En fait j'oubliais de modifier quelques valeurs.

Il suffit en fait de dupliquer la ligne customer. En début de changer le nom par le nom du champs de la bdd et dans filter_key => pareil, mettre le nom du champs de la bdd.

Cela fonctionne bien maintenant.

Merci quand même de t'être penché sur mon cas.

Cordialement, Guillaume.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...