Forum CMS Made Simple FR

Version complète : [Résolu] Comment vider automatiquement le panier Cart2 ?
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Bonjour,

Comment vider le panier Cart2 de la suite commerce de CMSMS sans que l'internaute ne clique sur un bouton "Vider le panier" ?

J'ai trouvé une réponse qui date de 2010 sur le forum de cmsmadesimple.org avec le tag {session_erase var='cgcart'}, mais ça ne marche pas.

Sinon, je vois qu'il y a une fonction prévue pour ça dans /module/Cart2/Cart2.module.php
Code :
[== PHP ==]
  public function EraseCart($adddata = '')
  {
    if( isset($_SESSION[$this->_key]) ) {
      cg_ecomm_cart::on_cart_adjusted('before',$adddata);
      unset($_SESSION[$this->_key]);
      $this->_items = array();
      $this->_calculated = 0;
      cg_ecomm_cart::on_cart_adjusted('after',$adddata);
    }
  }

Mais je ne sais pas comment l'appeler depuis un gabarit Smarty. J'ai essayé {$Cart2->EraseCart()} mais ça me donne :
Fatal error: Call to a member function EraseCart() on null in /home/adrien/test/lib/smarty/sysplugins/smarty_internal_templatebase.php(165) : eval()'d code on line 163

Est-ce possible d'appeler une fonction d'un module depuis un gabarit Smarty ?
Bon, j'aurais bien aimé pouvoir effacer le panier du client depuis Smarty avec une simple balise du genre {cart2_smarty::EraseCart()} comme on peut le faire avec FEU, mais ça ne semble pas prévu.
J'ai donc résolu mon problème avec une UDT que j'ai appelé {empty_cart} :
Code :
[== PHP ==]
## UDT empty_cart pour CMSMS 2.x
$gCms = CmsApp::get_instance();
$Panier = $gCms->GetModuleInstance('Cart2');
$Panier->EraseCart();
Bonjour,

désolé pour la réponse tardive, mais as-tu tenté :
Code :
{cgecomm_erasecart}
?

Regarde la doc de CGEcommerceBase pour cela.

Bonne continuation !
Aaahhhh, je n'avais pas pensé à regarder du côté de CGEcommerceBase.
Il me semblait qu'il devait y avoir un truc plus simple qu'une UDT pour cette action basique.
J'ai testé, ça marche.
Merci !