Jump to content

[Résolu] Urgent ! Modification du panier


Recommended Posts

Bonjour à tous,

ne connaissant pas grand chose à PHP / SQL,

je vous indique mon projet sans savoir s'il est réalisable ou non:

 

Sur mon site, dans le panier, j'ai un espace intitulé "Ma cagnotte" ou l'on retrouve le montant total de la commande mais je souhaite le remplacer par un système de cagnotte.

 

Pour gérer ce système de cagnotte, je présume qu'il va falloir créer une BDD (ça je sais faire) dans laquelle je souhaite ajouter le montant de mon choix (montant qui apparaitra en BO à la place de l'actuel montant total des articles, une fois l'utilisateur connecté).

 

L'autre difficulté, c'est qu'il faut que ce système de cagnotte affiche le montant cumulé (si ajout de plusieurs montants).

 

C'est très clair dans ma tête mais j'imagine que ce n'est pas si simple que ça.

 

Est-ce qu'un membre de la communauté a une idée ou peut me dire si c'est réalisable ou non, ou au moins me donner une piste à explorer.

 

Ou est-il possible de faire quelque chose à partir du module bons de réductions?

Par exemple, l'utilisateur à accès à ses bons de réductions normalement mais le cumul sera affiché en lieu et place de l'actuel total des articles dans le panier.

 

Si vous avez une tout autre idée, n'hésitez pas à m'en faire part.

 

D'avance merci à vous.

 

Adresse du site: http://www.choisistoncadeau.com

Pour info, j'utilise PS 1.4.8.2

Edited by emma35 (see edit history)
Link to comment
Share on other sites

Merci d'être encore là Franck,

Alors pour essayer de faire simple (parce qu'il est vrai que mes explications précédentes sont un peu confuses).

Est-ce qu'il est possible d'afficher dans le panier (de preférence sous "montant total de vos cadeaux") une nouvelle ligne nomée "Vos Kdoz disponibles" qui affiche le montant cumulé des bons d'achats dont bénéficie le client?

C'est réalisable selon toi?

Merci de ton aide (encore une fois).

 

PS: Bravo pour le footer (présent en bas de mon site), il est très réduit pour l'instant mais ne t'inquiètes pas ce n'est que temporaire.

En tout cas super module !

Edited by emma35 (see edit history)
Link to comment
Share on other sites

En fait, c'est tout simplement à partir du module bons de réduction.

Je ne sais pas si c'est la meilleure solution mais lorsque l'utilisateur gagne des Kdoz via le formulaire de paiement (www.choisistoncadeau.com/form_kdoz.php) j'en suis informé et je crée un bon de reduction du nombre de kdoz.

Tous les "Kdoz" se retrouvent donc dans "mes bons de réductions" à partir de "mon compte".

Maintenant l'idéal serait que l'utilisateur visualise directement le nombre de "Kdoz gagnés" directement depuis le panier plutot que d'aller à chaque fois dans "mon compte"...

 

Mon problème se divise en 2 étapes:

- Au niveau de la BDD, faire une modif afin d'obtenir les cumul de tous les bons de reductions de l'utilisateur.

- Faire en sorte que ce cumul soit affiché directement dans le panier de l'utilisateur.

 

Est-ce que ca te parait plus clair?

Parce que à chaque fois, j'ai l'impression que je fais des détours dans mes explications.

 

Au final, est-ce que selon toi c'est réalisable et peux-tu me donner des pistes?

Link to comment
Share on other sites

Bonjour Hedrad,

j'y ai effectivement pensé mais je ne vois pas comment l'adapter.

Le fonctionnement est différent, il faudrait que l'utilisateur commande pour que celà génère des Kdoz.

Si tu as une idée, n'hésites pas à m'en faire part.

Merci

Edited by emma35 (see edit history)
Link to comment
Share on other sites

Tu peux faire un truc comme ça:

Dans le module BlockCart (répertoire modules). Tu édites le fichier blockcart.php. Après:

public function hookRightColumn($params)
{
 if (Configuration::get('PS_CATALOG_MODE'))
  return;
 global $smarty;

 

Tu rajoutes:

global $cookie;
 $totaldiscount=0;
 $discounts=Discount::getCustomerDiscounts($cookie->id_lang,$cookie->id_customer);
 foreach ($discounts as $discount)
  {
$totaldiscount+= $discount['value'];
  }
 $smarty->assign('totaldiscount',$totaldiscount);

 

Ensuite tu édites le fichier blockcart.tpl. Aaprès:

<p id="cart-buttons">
  {if $order_process == 'order'}<a href="{$link->getPageLink("$order_process.php", true)}" class="button_small" title="{l s='Cart' mod='blockcart'}">{l s='Cart' mod='blockcart'}</a>{/if}
  <a href="{$link->getPageLink("$order_process.php", true)}{if $order_process == 'order'}?step=1{/if}" id="button_order_cart" class="exclusive{if $order_process == 'order-opc'}_large{/if}" title="{l s='Check out' mod='blockcart'}">{l s='Check out' mod='blockcart'}</a>
 </p>

 

Tu rajoutes:

<p>
	 {if isset($totaldiscount)}
		 Total de vos points Kdoz: {$totaldiscount}
		{/if}
   </p>

 

Et normalement, quand le client est loggé ça doit lui donner sa valeur totale de réduction.

 

Seule contrainte: il faut assigner les bons à une personne à chaque fois et pas à tout le monde. Si tu assignes une réduction de 10€ par exemple à tous les clients, même sans être loggé apparaîtra 10€ de réduction. Ou alors cette remise peut servir comme Kdoz "de base" quand on s'inscrit.

Edited by franckm1000 (see edit history)
Link to comment
Share on other sites

oki,

je viens de tester et j'ai fait comme indiqué mais je crois que j'ai quand même réussie à faire une boulette.

J'ai testé en remettant le blockcart de base parce que normalement j'utilise le module BlockCartPremium et le code ne semble pas foutu pareil et j'ai trop peur de faire une connerie.

Pour l'heure, j'obtiens le message suivant:

  • blockcart (erreur de syntaxe dans /modules/blockcart/blockcart.php)
  • blockcart (classe manquante dans /modules/blockcart/blockcart.php)

 

Et j'ai du mettre le site en maintenance parce qu'il n'est plus possible d'acceder au FO, seul le BO fonctionne.

Le module Blockcart a completement disparu de la liste des modules.

 

Voilou, pour l'instant les news ne sont pas top mais ça va venir.
Link to comment
Share on other sites

Pour ceux que ça intéresse, le module retravaillé par Franckm1000 fonctionne à merveille.

Il faut simplement s'assurer que le module n'entre pas en conflit avec le module Blockcart proposé en natif dans PS (dans le BO: modules/positions) et si c'est le cas, de-greffé le module d'origine puis forcer la compil (dans le BO: preferences/performances/puis selectionner "vider la compil").

 

Voilou

Encore un fois, je tiens à remercier Franck pour son assistance.

Ce mec est juste "génial" !!!

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...