THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonsoir,
j'essaie en vain de récuperer les valeurs obtenues avec le module DynamicProductAttributes,
dans le module gift voucher.

L'idée c'est que j'aimerais pouvoir afficher les valeurs saisies par le client, dans le mail envoyé.

J'ai vu que les valeurs sont liés au cart item, mais avec gift voucher je suis au stade ou la commande est passée.
Je vois aussi qu'il doit y avoir une possibilité puisque les fameuses valeurs de DynamicProductAttributes pris tout seul apparaisse bien sur la facture pdf.

J'ai commencé par ajouter use DynamicProductAttributes\Model\DynamicProductAttributeQuery;
dans le listener de gift voucher, c'est peut être très simple mais je ne sais pas par quel bout attaquer la chose.

Last edited by vz777 (05-03-2023 13:30:35)

Offline


Bon ben au lieu d'envisager des trucs compliqués, chercher à récuperer ces données sans jamais y arriver avec des     ->filterByCartItemId($cart_id) et parcourir ensuite un tableau au niveau du module lui même, il y a quand même très simple.

Thelia fournit des boucles .. Le tout c'est de s'en rappeler ..

Dans invoice.pdf, ceci fonctionne très bien :

         {loop type="order_product_attribute_combination" name="combinations" order_product=$ID}
                        {$ATTRIBUTE_TITLE} - {$ATTRIBUTE_AVAILABILITY_TITLE}<br>
         {/loop}

Désolé

Offline


Résolu, résolu, j'ai parlé un peu vite.

Le problème que j'ai, je ne m'en rappelai plus, c'est que les données s'affichent en double aussi bien sur la facture pdf, que sur l'onglet produits commandés / détails de la commande, que, quand j'appele ma boucle comme dit plus haut.

{$ATTRIBUTE_TITLE} - {$ATTRIBUTE_AVAILABILITY_TITLE} me donnent :
testa - aze
testa - aze
testb - nbv
testb - nb

J'ai pris le temps de regarder le code mais je vois pas ce qui me provoque ce comportement, j'ai été vérifié dans la base, l'enregistrement n'a bien lieu qu'une fois.

Last edited by vz777 (05-03-2023 12:35:14)

Offline


Bon je me suis dépatouillé avec :

                    {loop type="order_product_attribute_combination" name="combinations" order_product=$ID}
                       {if $LOOP_COUNT == 1}{$ATTRIBUTE_AVAILABILITY_TITLE}{/if} 
                       {if $LOOP_COUNT == 3}{$ATTRIBUTE_AVAILABILITY_TITLE}{/if}

                    {/loop}

Je trouve ça un peu crade mais bon ça fait le taf