Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Fehler bei Sonderangebote beim bearbeiten des Artikels

    MrWhite

    • Frisch an Board
    • Beiträge: 95
    • Geschlecht:
    Hallo

    Möchte hier auf einen kleinen Fehler hinweisen, der beim bearbeiten der Sonderangebote auftritt.
    Datei: admin/includes/module/categories_specials.php

    Das Problem tritt auf wenn in der Shop-Einstellung -> Brutto Admin = true gesetzt ist.

    Und zwar wird in der specials.php im input Feld "products_price" der Wert in Netto übergeben.
    Bei der Artikel-Bearbeitung und brutto=true wird der Preis somit in Brutto übergeben.
    Der Preis wird falsch berechnet.
    Kann man in der Demo testen.

    Es wird noch ein weiteres verstecktes input Feld benötigt (specials_products_price),
    um den Preis in Netto zu übergeben wie in der specials.php gemacht wird.

    Folgende Änderungen in der Datei beheben das Problem:
    admin/includes/module/categories_specials.php

    Zeile 85 suchen:
    Code: PHP  [Auswählen]
    if(isset($_GET['pID']) and xtc_db_num_rows($specials_query, true) > 0)
            echo xtc_draw_hidden_field('specials_id', $sInfo->specials_id);

    Danach folgendes hinzufügen: (Input mit Netto Preis übergeben)            
    Code: PHP  [Auswählen]
    if(isset($_GET['pID']) and xtc_db_num_rows($specials_query, true) > 0)
            echo xtc_draw_hidden_field('specials_products_price', $sInfo->products_price);

    Zeile ca. 234 suchen:
    Code: PHP  [Auswählen]
    $_POST['specials_price'] = ($_POST['products_price'] - (($_POST['specials_price'] / 100) * $_POST['products_price']));

    Ersetzen durch:
    Code: PHP  [Auswählen]
    $_POST['specials_price'] = ($_POST['specials_products_price'] - (($_POST['specials_price'] / 100) * $_POST['specials_products_price']));
    //$_POST['specials_price'] = ($_POST['products_price'] - (($_POST['specials_price'] / 100) * $_POST['products_price']));

    Außerdem lässt sich der Status nicht verändern.
    Diese kleine erweiterung fügt eine checkbox hinzu.

    Suche Zeile 132 & 133:
    Code: PHP  [Auswählen]
                <td class="main"><?php echo xtc_draw_input_field('specials_quantity', $sInfo->specials_quantity, 'style="width: 135px"');?> </td>
                <td class="main">&nbsp;</td>

    Ersetzen mit:
    Code: PHP  [Auswählen]
    <td class="main"><?php echo xtc_draw_input_field('specials_quantity', $sInfo->specials_quantity, 'style="width: 135px"');?> </td>
                <td class="main"><?php echo xtc_draw_selection_field('specials_status', 'checkbox', '1',$sInfo->status==1 ? true : false); ?> Status Aktiv</td>

    Zusätzlich wenn man nicht möchte das bei Anzahl 0 beim Bestellprozess das Sonderangebot deaktiviert wird hilft folgende Änderung:
    Datei: checkout_process.php

    Zeile ca 230:
    Code: PHP  [Auswählen]
    if ($new_sp_quantity >= 1) {
                            xtc_db_query("update ".TABLE_SPECIALS." set specials_quantity = '".$new_sp_quantity."' where products_id = '".xtc_get_prid($order->products[$i]['id'])."' ");
                    } else {
                            xtc_db_query("update ".TABLE_SPECIALS." set status = '0', specials_quantity = '".$new_sp_quantity."' where products_id = '".xtc_get_prid($order->products[$i]['id'])."' ");
                    }

    Ersetzen durch:
    Code: PHP  [Auswählen]
    if ($new_sp_quantity >= 1) {
                            xtc_db_query("update ".TABLE_SPECIALS." set specials_quantity = '".$new_sp_quantity."' where products_id = '".xtc_get_prid($order->products[$i]['id'])."' ");
                    } else {
                            xtc_db_query("update ".TABLE_SPECIALS." set specials_quantity = '".$new_sp_quantity."' where products_id = '".xtc_get_prid($order->products[$i]['id'])."' ");
                            //xtc_db_query("update ".TABLE_SPECIALS." set status = '0', specials_quantity = '".$new_sp_quantity."' where products_id = '".xtc_get_prid($order->products[$i]['id'])."' ");
                    }

    Das sollte die kleinen Fehler beseitigen.
    Viel Spaß damit

    Linkback: https://www.modified-shop.org/forum/index.php?topic=19939.0
    Werbung / Banner buchen

    piru

    • Fördermitglied
    • Beiträge: 1.263
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #1 am: 09. Mai 2012, 14:38:59
    Hallo MrWhite,

    das mit dem Fehler kann ich bei mir nicht sehen, vielleicht weil ich die Shopversion 1.05 ohne SP habe... Im aktuellen Demoshop habe ich nicht getestet.

    Aber deine Erweiterung finde ich toll!! Die habe ich schon lange gesucht und gepostet.
    Nur, man kann jetzt das Angebot aus der Artikelbearbeitung aktivieren, aber deaktivieren nicht. Das wäre auch schön...

    Danke und wilkommen in der Comunity!

    Gruß piru

    Edit: jetzt sehe ich den Fehler, das ist wenn man den Preis mit % berechnet möchte, ich trage den Preis manuell und das funktioniert doch. Aber stimmt, mit % wird falsch berechnet

    MrWhite

    • Frisch an Board
    • Beiträge: 95
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #2 am: 09. Mai 2012, 15:06:08
    Zitat
    Nur, man kann jetzt das Angebot aus der Artikelbearbeitung aktivieren, aber deaktivieren nicht.

    Aktivieren oder deaktivieren des Sonderangebots in der Artikelbearbeitung funktioniert beides.
    Nur in der specials.php beim bearbeiten ist dies nicht mit drin, aber da man die dann ehh nicht mehr nutzt, spare ich mir die Änderung / Erweiterung in der specials.php.

    Ja stimmt das Problem tritt nur auf wenn man die Angabe in Prozent angibt.

    Gruß MrW

    web28

    • modified Team
    • Beiträge: 9.404
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #3 am: 09. Mai 2012, 21:08:32
    Mit dem SP1c werden alle Probleme gefixt, Ihr könnt das im aktuellen Trunk Demoshop testen.

    Gruss Web28

    MrWhite

    • Frisch an Board
    • Beiträge: 95
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #4 am: 17. Mai 2012, 20:12:46
    Ok, hatte ich jetzt nicht mitbekommen das es in der Trunk-Version oder im nächsten SP1c beseitigt bereits wurde. (Bin ja noch neu hier ;)
    Aber mal noch so als Hinweis:
    Wenn man kein Special Preis beim nachträglichen Bearbeiten angibt dann ist der Preis gleich 0.
    Eine Empfehlung auch beim Update des Sonderangebot-Preis zu prüfen ob ein Wert angegeben wurde.
    Zeile: 226
    Code: PHP  [Auswählen]
    && !empty($_POST['specials_price'])
    Sonst landen Produkte ausversehen mit 0 Euro im Shop und der Kunde freut sich  :-)

    jannemann

    • modified Team
    • Beiträge: 6.275
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #5 am: 17. Mai 2012, 23:19:20
    Hallo MrWhite,

    trotzdem danke fürs Teilen!  :thumbs:

    Schöne Grüße,
    Jan

    piru

    • Fördermitglied
    • Beiträge: 1.263
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #6 am: 18. Mai 2012, 10:22:44
    Mit dem SP1c werden alle Probleme gefixt, Ihr könnt das im aktuellen Trunk Demoshop testen.

    Die Probleme sind ja gefixt, aber die Erweiterung nicht.

    Außerdem lässt sich der Status nicht verändern.
    Diese kleine erweiterung fügt eine checkbox hinzu.

    Zu mindestens ich habe die Erweiterung in dem Trunk Shop noch nicht gesehen.

    Gruß piru

    web28

    • modified Team
    • Beiträge: 9.404
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #7 am: 18. Mai 2012, 12:15:42
    Zitat
    Zu mindestens ich habe die Erweiterung in dem Trunk Shop noch nicht gesehen.

    Die Checkboxes sieht man erst, wenn der Artikel als Sonderangebot angelegt ist, vorher nicht.

    Gruss Web28

    piru

    • Fördermitglied
    • Beiträge: 1.263
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #8 am: 18. Mai 2012, 13:25:05
    @web28,

    ja, so hatte ich mir gedacht und so habe ich geguckt. Die Sache ist, da ist 2 Mal Testprodukt1 in Top, und ich habe natürlich geguckt wo keine Sonderangebote war (habe nicht gesehen dass 2 mal der Art. da war). Jetzt habe ich bei dem richtigen geguckt, und stimmt, und sieht super aus!
    Freue mich schon auf die nächste Version  :thumbs:

    Gruß piru

    MrWhite

    • Frisch an Board
    • Beiträge: 95
    • Geschlecht:
    Re: Fehler bei Sonderangebote beim bearbeiten des Artikels
    Antwort #9 am: 22. Mai 2012, 20:38:06
    Hallo
    @web28
    Ich hab mir mal deine Erweiterungen in dem Versandkosten Tool angesehen, wo ich so ein paar bedenken habe.
    Die Übergabe mit “tax_rate” ist nicht ganz so fein.
    Was ist denn wenn ich beim bearbeiten des Produktes die Steuerklasse ändere, was jetzt nicht oft der Fall wäre denk ich mal, aber dann wird nicht der geänderte  Steuersatz mit $_POST[tax_rate] übergeben,
    und somit der Preis falsch berechnet.

    Natürlich nur bei Admin Brutto = true
    Und somit ist am ende die Preis-Ausgabe im Shop noch mehr oder weniger je nach dem.
    Gruß MrW
    Modulshop - Eine große Auswahl an neuen und hilfreichen Modulen für die modified eCommerce Shopsoftware