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: Sonderangebote auf Lieferschein kennzeichnen

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Sonderangebote auf Lieferschein kennzeichnen
    am: 06. November 2011, 20:25:08
    Hallo
    Ich möchte gerne, dass auf dem Lieferschein ("print_packingslip.html") alle Produkte mit Sonderpreis in roter Farbe dargestellt werden. Kann mir bitte jemand helfen?
    Vielen Dank

    Martin
    nici-shop.ch



    Linkback: https://www.modified-shop.org/forum/index.php?topic=16537.0

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #1 am: 07. November 2011, 01:03:45
    Hallo stocki68,

    kannst Du mal probieren, ist aber ungetestet. Vorher am Besten eine Sicherheitskopie der Dateien.

    In der "/admin/print_packingslip.php" nach Z. 42:
    Code: PHP  [Auswählen]
            $smarty->assign('csID',$order->customer['csID']);
    das einfügen:
    Code: PHP  [Auswählen]
            require(DIR_FS_CATALOG.DIR_WS_CLASSES . 'xtcPrice.php');
            $xtPrice = new xtcPrice(DEFAULT_CURRENCY,$_SESSION['customers_status']['customers_status_id']);

    nach Z.67:

    Code: PHP  [Auswählen]
                    while ($attributes_data_values = xtc_db_fetch_array($attributes_query)) {
                    $attributes_data .='<br />'.$attributes_data_values['products_options'].':'.$attributes_data_values['products_options_values'];
                    $attributes_model .='<br />'.xtc_get_attributes_model($order_data_values['products_id'],$attributes_data_values['products_options_values'],$attributes_data_values['products_options']);
                    }

    das einfügen:

    Code: PHP  [Auswählen]
            if ($discount = $xtPrice->xtcCheckDiscount($order_data_values['products_id'])) {
              $products_discount = true;
            } else {
              $products_discount = false;
            }

    und in Z.73 nach:

    Code: PHP  [Auswählen]
                            'PRODUCTS_ATTRIBUTES_MODEL' => $attributes_model,
                            'PRODUCTS_PRICE' =>  xtc_format_price_order($order_data_values['final_price'],1,$order->info['currency']),

    das einfügen:

    Code: PHP  [Auswählen]
                            'PRODUCTS_DISCOUNT' =>  $products_discount,

    Dann noch in "/templates/<dein-template>/admin/print_packingslip.html" nach Z.61:

    Code: PHP  [Auswählen]
            {foreach name=aussen item=order_values from=$order_data}

    das einfügen:

    Code: PHP  [Auswählen]
            {if $PRODUCTS_DISCOUNT} <font color="#FF0000">{/if}

    und nach Z.67:

    Code: PHP  [Auswählen]
              <td style="border-right: 2px solid; border-bottom: 2px solid; border-color: #ffffff;"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">{$order_values.PRODUCTS_MODEL}<em>{$order_values.PRODUCTS_ATTRIBUTES_MODEL}</em></font></td>
            </tr>

    das einfügen:

    Code: PHP  [Auswählen]
            {if $PRODUCTS_DISCOUNT} </font>{/if}

    Könnte evtl. klappen! :)

    Viele Grüße

    Franky

    [EDIT franky_n 08.11.2011: Fehler im Code korrigiert.]

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #2 am: 07. November 2011, 16:39:05
    Vielen Dank Franky

    Werde ich gleich probieren ...

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.369
    • Geschlecht:
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #3 am: 07. November 2011, 21:11:28
    Und bitte nicht vergessen uns auch Feedback zu geben und vielleicht sogar einen Screenshot. ;-)

    Grüße

    Torsten

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #4 am: 07. November 2011, 22:15:08
    Hallo Franky, Hallo Torsten

    Ich habe den Code mal wie vorgeschlagen eingetragen. Nun erscheint folgende Fehlermeldung beim Aufruf des Lieferscheins:

    Code: PHP  [Auswählen]
    Fatal error: Using $this when not in object context in /var/www/domains/nici-shop.ch/admin/print_packingslip.php on line 71

    Zeile 71 entspricht Zeile 3 im folgenden Code:

    Code: PHP  [Auswählen]
                require(DIR_FS_CATALOG.DIR_WS_CLASSES . 'xtcPrice.php');
                $xtPrice = new xtcPrice(DEFAULT_CURRENCY,$_SESSION['customers_status']['customers_status_id']);
                if ($discount = $this->xtcCheckDiscount($order_data_values['products_id'])) {
                  $products_discount = true;
                } else {
                  $products_discount = false;
                }

    Danke für Eure Hilfe.

    Gruss
    Martin

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #5 am: 08. November 2011, 00:14:03
    Hallo stocki68,
    mach mal aus dem:

    Code: PHP  [Auswählen]
    if ($discount = $this->xtcCheckDiscount($order_data_values['products_id'])) {

    das:

    Code: PHP  [Auswählen]
    if ($discount = $xtPrice->xtcCheckDiscount($order_data_values['products_id'])) {

    Viele Grüße

    Franky

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #6 am: 08. November 2011, 21:48:43
    Hallo Franky

    Jetzt erhalte ich folgende Meldung:

    Code: PHP  [Auswählen]
    Fatal error: Cannot redeclare class xtcPrice in /var/www/domains/nici-shop.ch/includes/classes/xtcPrice.php on line 30

    Nachstehend ein Auschnitt von besagter Datei:

    Code: PHP  [Auswählen]
    class xtcPrice {
            var $currencies;

            // class constructor
            function xtcPrice($currency, $cGroup) {

                    $this->currencies = array ();
                    $this->cStatus = array ();
                    $this->actualGroup = $cGroup;
                    $this->actualCurr = $currency;
                    $this->TAX = array ();
                    $this->SHIPPING = array();
                    $this->showFrom_Attributes = true;

    Gruss
    Martin

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #7 am: 08. November 2011, 22:10:45
    Hallo stocki68,

    dann mach mal diese Zeile raus:

    Code: PHP  [Auswählen]
                require(DIR_FS_CATALOG.DIR_WS_CLASSES . 'xtcPrice.php');

    denn es wird wohl die Klasse schon geladen...

    Viele Grüße

    Franky

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #8 am: 08. November 2011, 22:24:24
    Hallo Franky

    Es erscheint folgende Meldung:

    Code: PHP  [Auswählen]
    Fatal error: Class 'xtcPrice' not found in /var/www/domains/nici-shop.ch/admin/print_packingslip.php on line 70

    Gruss Martin

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #9 am: 08. November 2011, 23:08:38
    Hallo stocki68,

    ach sorry habe eine Schleife übersehen!

    Diese beiden Zeilen bitte rausnehmen:

    Code: PHP  [Auswählen]
            require(DIR_FS_CATALOG.DIR_WS_CLASSES . 'xtcPrice.php');
            $xtPrice = new xtcPrice(DEFAULT_CURRENCY,$_SESSION['customers_status']['customers_status_id']);

    und in Z. 42 nach dem:

    Code: PHP  [Auswählen]
            $smarty->assign('csID',$order->customer['csID']);

    einfügen.

    Dann sollte es passen! :)

    EDIT: Habe oben die Anleitung mal angepasst!

    Viele Grüße

    Franky

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #10 am: 10. November 2011, 21:22:27
    Hallo Franky

    Leider funktioniert es noch nicht. Eine Fehlermeldung erscheint zwar keine mehr, doch werden die Sonderpreisartikel nicht rot ausgezeichnet. Habe mal alle relevanten Dateien unten angehängt.

    Danke

    Gruss
    Martin

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #11 am: 12. November 2011, 17:10:29
    Hallo Franky
    Kannst du mir bitte noch einen Tipp geben.
    Wäre flott. Danke

    Gruß Martin

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #12 am: 12. November 2011, 23:21:07
    Hallo stocki68,

    wie sieht der Quelltext der Seite aus?
    Wird denn wenigstens bei den Sonderangeboten ein <font color="#FF0000"> ausgegeben?

    Viele Grüße

    Franky

    stocki68

    • Neu im Forum
    • Beiträge: 13
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #13 am: 13. November 2011, 11:58:36
    Hallo Franky,
    Danke, dass du dich meldest. Nein, im Quelltext wird nichts entsprechendes angezeigt. Der Quelltext ist auch in den angehängten Dateien weiter oben zu finden. Ich denke man müsste mal verifizieren können, dass die Artikel überhaupt den Sonderpreis Status tragen.

    Danke für die Hilfe

    Gruss
    Martin

    franky_n

    • Experte
    • Beiträge: 4.950
    Re: Sonderangebote auf Lieferschein kennzeichnen
    Antwort #14 am: 13. November 2011, 16:26:12
    Hallo stocki68,

    dann schreib mal vor das eingefügte:

    Code: PHP  [Auswählen]
    <font color="#FF0000">

    einfach ein: TEST

    Code: PHP  [Auswählen]
    TEST<font color="#FF0000">

    Dann müsste man sehen können ob er überhaupt erkennt das es ein Sonderangebot ist.
    Vor dem Artikel sollte dann das Wort "TEST" erscheinen...

    Viele Grüße

    Franky
    10 Antworten
    4997 Aufrufe
    29. November 2013, 11:31:06 von noRiddle (revilonetz)
    8 Antworten
    4785 Aufrufe
    19. Oktober 2012, 11:03:40 von eddyexp
    4 Antworten
    2717 Aufrufe
    20. Mai 2011, 11:27:27 von Tomcraft
               
    anything