Jump to content
xt:Commerce Community Forum
Sign in to follow this  
zockermann

Alter Warenkorb falsch bei danach deaktiviertem Produkt

Recommended Posts

Hallo,

ich benutze XT Commerce 3.0.3 und habe folgendes Problem festgestellt:

Wenn ein Kunde einen Artikel im Warenkorb hat und sich später erneut einloggt, so ist dieser Artikel immer noch im Warenkorb und kann somit auch bestellt werden, auch wenn dieser bereits deaktiviert wurde.

Gibt es eine Möglichkeit bei der Wiederherstellung des Warenkorbes bei der Anmeldung zu prüfen, ob diese Artikel noch aktiv sind?

Es kann ja nicht sein, dass ein Kunde ein Produkt im Warenkorb speichert, ein halbes Jahr später vorbeikommt und dann dieses bestellen kann, obwohl der Artikel bereits seit 3 Monaten nicht mehr auf dem Markt ist.

Ich bin für jeden Lösungsansatz dankbar und denke es haben noch mehrere hier das gleiche Problem. Vielen Dank vorab.

MFG Sven

Share this post


Link to post
Share on other sites

:confused: ...nach einer Woche nur 1 Hit auf dieses Posting? Alle im Urlaub? Ich glaube dieses Problem besteht bei fast jedem und keinen interessiert es?

Aber ich gebe die Hoffnung nicht so schnell auf und hoffe WIR können das Problem gemeinsam lösen. Nur ein Ansatz muss mal her... THX

Grüsse Sven

Share this post


Link to post
Share on other sites

Hallo!

Die Lösung lässt sich direkt im SQL realisieren.

Dazu muss die Datei "shopping-cart.php" im Verzeichnis "includes/classes" angepasst werden.

Suche in der Datei die Funktion "restore_contents()" und in dieser Funktion die Zeile "// reset per-session cart contents, but not the database contents".

Zwei Zeilen tiefer wird der Warenkorb aus der Datenbank gelesen.

Ersetze die Zeile

$products_query = xtc_db_query("select products_id, customers_basket....
durch:
$products_query = xtc_db_query("select cb.products_id, cb.customers_basket_quantity from " . TABLE_CUSTOMERS_BASKET . " AS cb LEFT JOIN ".TABLE_PRODUCTS." AS p ON cb.products_id = p.products_id where cb.customers_id = '" . $_SESSION['customer_id'] . "' AND p.products_status = 1");

Damit werden die Produkte automatisch rausgefiltert, die nicht mehr aktiv sind!

Gruß

Dennis

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...