Jump to content

Edit History

cryoth

cryoth

Bonjour à tous,

Je souhaite créer un clone d'un panier existant pour un système d'abonnement, le 1er panier est récupéré et cloné avec la fonction duplicate().

Dans le cas ou il y a eut une offre spécifique sur le 1er achat je dois supprimer cette règle du panier qui a été cloné.

En suivant les commentaires de la classe Cart je trouve "RemoveCartRule" (joie), mais lorsque je l'utilise, la règle ne semble pas être supprimée du panier.

Voici mon code

$cart = new Cart($idCart);
$result = $cart->duplicate();
if ($result['success']) {
  $new_cart = $result['cart'];
  $rules = $new_cart->getCartRules();
  foreach ($rules as $rule) {
  	$new_cart->removeCartRule($rule["id_cart_rule"]);
  }
  var_dump($new_cart, $new_cart->getCartRules());
}

Mon panier cloné ($new_cart) affiche toujours la règle de prix malgré que removeCartRule() me retourne un résultat vrai.

Aurais-je oublié quelquechose dans ma démarche ?

Merci à tous ceux qui pourront m'aider.

cryoth

cryoth

Bonjour à tous,

Je souhaite créer un clone d'un panier existant pour un système d'abonnement, le 1er panier est récupéré et cloné avec la fonction duplicate().

Dans le cas ou il y a eut une offre spécifique sur le 1er achat je dois supprimer cette règle du panier qui a été cloné.

En suivant les commentaires de la classe Cart je trouve "RemoveCartRule" (joie), mais lorsque je l'utilise, la règle ne semble pas être supprimée du panier.

Voici mon code

$cart = new Cart($idCart);
$result = $cart->duplicate();
if ($result['success']) {
  $new_cart = $result['cart'];
  $rules = $new_cart->getCartRules();
  foreach ($rules as $rule) {
  	$new_cart->removeCartRule($rule["id_cart_rule"]);
  }
  var_dump($new_cart, $new_cart->getCartRules());
}

Mon panier cloné ($new_cart) affiche toujours la règle de prix malgré que removeCartRule() me retourne un résultat vrai.

Aurais-je oublié quelquechose dans ma démarche ?

Merci à tous ceux qui pourront m'aider.

×
×
  • Create New...