Neu JTL SHop - loescheWarenkorbPositionen() - löscht unter umständen nicht

  • Temporäre Senkung der Mehrwertsteuer Hier findet ihr gesammelt alle Informationen, Videos und Fragen inkl. Antworten: https://forum.jtl-software.de/threads/mehrwertsteuer-senkung-vom-01-07-31-12-2020-offizieller-diskussionthread-video.129542/

broesHPB

Neues Mitglied
9. Dezember 2020
1
0
Betrifft: 4.06 (Build: 17)[ICODE] - [ICODE]includes/warenkorb_inc.php - loescheWarenkorbPositionen():

Ist-Zustand:
Es wird return benutzt.

PHP:
foreach ($nPos_arr as $nPos) {
    //Kupons bearbeiten
    if (!isset($_SESSION['Warenkorb']->PositionenArr[$nPos])) {
        return;
    }
    if ($_SESSION['Warenkorb']->PositionenArr[$nPos]->nPosTyp != C_WARENKORBPOS_TYP_ARTIKEL &&
        $_SESSION['Warenkorb']->PositionenArr[$nPos]->nPosTyp != C_WARENKORBPOS_TYP_GRATISGESCHENK
       ) {
        return;
    }
    $cUnique = $_SESSION['Warenkorb']->PositionenArr[$nPos]->cUnique;
    // Kindartikel?
    if (strlen($cUnique) > 0 && $_SESSION['Warenkorb']->PositionenArr[$nPos]->kKonfigitem > 0) {
        return;
    }
    executeHook(HOOK_WARENKORB_LOESCHE_POSITION, [
        'nPos'     => $nPos,
        'position' => &$_SESSION['Warenkorb']->PositionenArr[$nPos]
    ]);

    if (class_exists('Upload')) {
        Upload::deleteArtikelUploads($_SESSION['Warenkorb']->PositionenArr[$nPos]->kArtikel);
    }

    $cUnique_arr[] = $cUnique;

    unset($_SESSION['Warenkorb']->PositionenArr[$nPos]);
}

Soll-Zustand
Es wird continue benutzt.

PHP:
foreach ($nPos_arr as $nPos) {
    //Kupons bearbeiten
    if (!isset($_SESSION['Warenkorb']->PositionenArr[$nPos])) {
        continue;
    }
    if ($_SESSION['Warenkorb']->PositionenArr[$nPos]->nPosTyp != C_WARENKORBPOS_TYP_ARTIKEL &&
        $_SESSION['Warenkorb']->PositionenArr[$nPos]->nPosTyp != C_WARENKORBPOS_TYP_GRATISGESCHENK
       ) {
        continue;
    }
    $cUnique = $_SESSION['Warenkorb']->PositionenArr[$nPos]->cUnique;
    // Kindartikel?
    if (strlen($cUnique) > 0 && $_SESSION['Warenkorb']->PositionenArr[$nPos]->kKonfigitem > 0) {
        continue;
    }
    executeHook(HOOK_WARENKORB_LOESCHE_POSITION, [
        'nPos'     => $nPos,
        'position' => &$_SESSION['Warenkorb']->PositionenArr[$nPos]
    ]);

    if (class_exists('Upload')) {
        Upload::deleteArtikelUploads($_SESSION['Warenkorb']->PositionenArr[$nPos]->kArtikel);
    }

    $cUnique_arr[] = $cUnique;

    unset($_SESSION['Warenkorb']->PositionenArr[$nPos]);
}
Hintergrund
Wir nutzen diese Methode und haben festgestellt, dass unter bestimmten Bedingungen, in der oben dargestellten Schleife, statt die betreffende Warenkorb-Position zu überspringen, gleich direkt aus der gesamten Funktion gesprungen wird und somit weitere zu löschende Warenkorbpositionen ignoriert werden.

Wir haben das jetzt, wie im Soll-Zustand für uns erstmal gefixt, würden hierzu Eurerseits aber noch Feedback bekommen wollen, warum da return statt continue genutzt wird (kann ja sein, dass dies einen driftigen Grund hat).

Freundliche Grüße
Hape
 
Ähnliche Themen Forum Antworten Erstelldatum des Themas
Neu JTL Shop 5 - Falsche Preise im Shop? JTL-Shop - Fehler und Bugs 5
Neu Upselling im JTL Shop Allgemeine Fragen zu JTL-Shop 0
Neu JTL-Shop 5.0.1 Fatal Error JTL-Shop - Fehler und Bugs 0
Neu JTL WAWI 1.4.5.40.0, JTL Shop 5 Nova-Template User helfen Usern - Fragen zu JTL-Wawi 0
Neu JTL Shop 5 mit SSL - Darstellung ohne Bilder und Formatierung Allgemeine Fragen zu JTL-Shop 0
Neu Consent Manager JTL Shop 5 - Neue Einträge Allgemeine Fragen zu JTL-Shop 2
Neu JTL Shop 5.0.1 - NOVA - Statisch komprimieren funktioniert nicht richtig JTL-Shop - Fehler und Bugs 3
Neu JTL shop und JTL WAWI auf rootserver einrichten Starten mit JTL: Projektabwicklung & Migration 1
Neu Im JTL Shop Preisbezeichnung ändern "Alter Preis" Allgemeine Fragen zu JTL-Shop 1
Neu Shopware - Connector - JTL 5 Shop Umstieg auf JTL-Shop 0
Neu Auswahlhilfe JTL Shop 5 Allgemeine Fragen zu JTL-Shop 2
Neu JTL Shop 5 Hosting mit Miete wo? User helfen Usern - Fragen zu JTL-Wawi 1
Neu [S] Freelancer für Pluginerstellung JTL Shop 5 - global payments Zahlungsanbieter Dienstleistung, Jobs und Ähnliches 0
Neu Artikelexport aus JTL Shop 5 exportieren fehler JTL-Shop - Fehler und Bugs 1
Neu authorized by Plugin exs_aby_252 JTL Shop 5 defekt? Plugins für JTL-Shop 2
Neu Bilderanimation im JTL Shop Allgemeine Fragen zu JTL-Shop 0
Kontaktformular JTL Shop 5 Einrichtung JTL-Shop5 0
Neu JTL Shop 5 Ladezeit 3 - 5 sek. aber JTL Shop 4 nur max. 2 Sekunden Allgemeine Fragen zu JTL-Shop 9
Neu Retouren Verwaltung etc. in JTL Shop JTL-Shop - Ideen, Lob und Kritik 0
Neu JTL Shop 5 - Artikeldetailseite - Artikelpreise mit vierstellen nach dem Komma & Artikelpreise zusammenrechnen Allgemeine Fragen zu JTL-Shop 10
Neu 502 Bad Gateway durch JTL Shop 5 Amazon Pay plugin 1.02 Technische Fragen zu Plugins und Templates 5
Neu Bestehenden ebay Shop in JTL richtig einpflegen Einrichtung und Installation von JTL-eazyAuction 3
Neu JTL-Shop 5 - Wie fit für SEO Allgemeine Fragen zu JTL-Shop 0
nach Update von JTL Shop 4 auf 5 keine Kategoriebilder mehr Upgrade JTL-Shop4 auf JTL-Shop5 5
Neu JTL Shop 5 - Kunden Login funktioniert plötzlich nicht mehr JTL-Shop - Fehler und Bugs 1
Udpate auf JTL 5.1 Shop Upgrade JTL-Shop4 auf JTL-Shop5 2
Neu JTL-Shop3 Tiny für JTL Shop 4.06.17 Templates für JTL-Shop 0
Neu Verbindung JTL Shop 5 mit Wawi nicht möglich Allgemeine Fragen zu JTL-Shop 1
Neu JTL Shop 5 Keine Neuregistrierung möglich Einrichtung JTL-Shop5 3
Neu JTL Shop 5 Ausverkaufte Produkte in der Suche ausblenden Allgemeine Fragen zu JTL-Shop 0
Neu JTL Shop verleihen Allgemeine Fragen zu JTL-Shop 0
Neu Varianten als einzelne Artikel im JTL Shop Allgemeine Fragen zu JTL-Shop 6
Neu JTL Shop 4 - Als Gast bestellen - Einstellung 326 auf "ja" - Bestellung trotzdem nicht möglich als Gast - warum? Allgemeine Fragen zu JTL-Shop 4
Neu JTL Shop 5 - Datenschutzeinstellungen Allgemeine Fragen zu JTL-Shop 1
Neu JTL Shop 5, Nova Template, wie bekomme ich Kategorien und unter diesen, die Artikel sichtbar? Allgemeine Fragen zu JTL-Shop 4
Neu JTL Shop 5 mit Internet Explorer Allgemeine Fragen zu JTL-Shop 3
Google Analytics in JTL-Shop 5 Upgrade JTL-Shop4 auf JTL-Shop5 2
Gelöst JTL Shop 5 Nova Template Problem beim Einrichten des PayPal Plug-ins Einrichtung JTL-Shop5 2
JTL Shop 5: Seiten im KOPF-Bereich werden nicht mehr angezeigt Einrichtung JTL-Shop5 7
Gutscheine Einlösen in JTL-Shop 5 Einrichtung JTL-Shop5 2
Neu JTL Shop 5 Artikelsortierung Allgemeine Fragen zu JTL-Shop 2
Neu JTL Shop 5.0 Artikelsortierung Elemente hinzufügen Allgemeine Fragen zu JTL-Shop 0
JTL Shop sync mit WAWI im internen Netz Einrichtung JTL-Shop5 1
JTL Shop reizt die "max_user_connections" von mysql aus.. Einrichtung JTL-Shop5 4
Neu JTL Shop 4 auf MariaDB Allgemeine Fragen zu JTL-Shop 2
Neu JTL Shop einrichten - JTL Hosting Allgemeine Fragen zu JTL-Shop 2
Neu JTL Shop 5 mit lokaler IP Adresse (Lizenz) möglich Onlineshop-Anbindung 3
Neu JTL Shop Versandarten - Versandklassen einrichten Betrieb / Pflege von JTL-Shop 1
Neu JTL Shop 5 - Datenbank optimieren Allgemeine Fragen zu JTL-Shop 0
Neu Sprachvariablen in JTL-Wawi Artikelbeschreibung aus dem JTL-Shop Allgemeine Fragen zu JTL-Shop 0
Ähnliche Themen