Trade Republic - Provisionsfrei Aktien handeln
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: WIKI "Umstellung des Shops auf Buttonlösung" kleine Verbesserung

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Hallo

    im WIKI "Umstellung des Shops auf Buttonlösung" steht:

    Zitat
    Alternativ, wenn man das ganze ein wenig vom HTML Code "entschlacken" will und bei der Langbeschreibung maximal 300 Zeichen anzeigen will:

    Code: PHP  [Auswählen]
    $data_products .= '<tr>
                  <td class="main" align="left" valign="top">&nbsp;</td>
                  <td class="main" align="left" valign="top"><small>'
    . (!empty($order->products[$i]['short_description'])?trim(strip_tags($order->products[$i]['short_description'])):trim(substr(strip_tags($order->products[$i]['description']),0,300))). ' [...]' . '</small></td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  </tr>'
    ;

    Damit wird nun schon mal die Kurzbeschreibung angezeigt. Sollte keine vorhanden sein, wird die normale Beschreibung angezeigt.

    nur....
    Jetzt wird jedesmal wenn die Langbeschreibung angezeigt wird hinten ein [...] angehängt egal wie lange die Langbeschreibung auch ist.
    Beispiel: Langbeschreibung = 'Tolles Teil'
    Ausgabe = 'Tolles Teil [...]'

    Das ist ja sicher nicht im Sinne des Erfinders, deshalb habe ich den Code Modifiziert:

    Code: PHP  [Auswählen]
    $data_products .= '<tr>
                  <td class="main" align="left" valign="top">&nbsp;</td>
                  <td class="main" align="left" valign="top"><small>'
    ;
    if (!empty($order->products[$i]['short_description'])) {
                    $data_products .=trim(strip_tags($order->products[$i]['short_description']));
    } else {
                    $data_products .=trim(substr(strip_tags($order->products[$i]['description']),0,300));
                    if (strlen(strip_tags($order->products[$i]['description'])) > 300) $data_products.=' [...]';
    }
    $data_products .='</small></td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  </tr>'
    ;

    Damit wird erst bei Langtexten mit einer Länge über 300 Zeichen das [...] angehängt.

    Vielleicht braucht das ja mal jemand

    Gruß
    Robert

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

    versand-richter

    • Frisch an Board
    • Beiträge: 82
    • Geschlecht:
    Laut Trusted Shops reicht es leider nicht nur den Button zu ändern und die Kurzbeschreibung (und ggf. noch ein Produktbild) hinzuzufügen. Auf der Seite sollen div. Pflichtinformationen hervorgehoben werden, hier im Muster-Beispiel im grünen Feld.

    Die Reihenfolge der verschiedenen Elemente auf der Bestell-Seite muss verändert werden. Die Beschreibung der Produkte, die der Kunde bestellen möchte, muss ausführlicher ausfallen, als auf den bisherigen Bestellseiten. Daneben gibt es eine Reihe von Pflichtinformationen, die hervorgehoben werden müssen.

    Zwischen diesen Informationen und dem Bestellbutton dürfen sich keine ablenkenden Elemente mehr befinden, also auch nicht der Hinweis auf das Widerrufsrecht oder die AGB, diese sollten also umplatziert werden.

    Hat sich hier schon mal jemand rangetraut?

    Die Muster-Seite habe ich mal beigefügt, hier dazu nochmals die Erläuterungen dazu:

    Zitat
       
    Produktbeschreibung („die wesentlichen Merkmale der Ware oder Dienstleistung“)

    Mindestlaufzeit („die Mindestlaufzeit des Vertrags, wenn dieser eine dauernde oder regelmäßig wiederkehrende Leistung zum Inhalt hat“)

    Gesamtpreis („den Gesamtpreis der Ware oder Dienstleistung einschließlich aller damit verbundenen Preisbestandteile sowie alle über den Unternehmer abgeführten Steuern oder, wenn kein genauer Preis angegeben werden kann, seine Berechnungsgrundlage, die dem Verbraucher eine Überprüfung des Preises ermöglicht“)

    Versand- und Zusatzkosten („gegebenenfalls zusätzlich anfallende Liefer- und Versandkosten sowie einen Hinweis auf mögliche weitere Steuern oder Kosten, die nicht über den Unternehmer abgeführt oder von ihm in Rechnung gestellt werden“)

    Auf unserer Musterbestellseite haben wir diese Pflichtinformationen in dem grünen Feld platziert. Eine derartige farbliche Hinterlegung genügt dem Hervorhebungserfordernis. Diese muss nicht zwingend bunt sein, es würde z.B. auch eine graue Hinterlegung ausreichen. Da das Beispiel eine Warenbestellung betrifft, fehlt die Information zur Mindestlaufzeit des Vertrages, da diese hier nicht notwendig ist.
    Unmittelbar darunter haben wir den Bestellbutton platziert. Zwischen diesem und den hervorgehobenen Pflichtinformationen dürfen sich keine zusätzlichen Texte oder Gestaltungselemente befinden. Wir haben den Button mit den im Gesetz vorgesehenen Worten „zahlungspflichtig bestellen“ beschriftet. Laut Gesetzesbegründung sind auch die Bezeichnungen „Kaufen“, „zahlungspflichtigen Vertrag schließen“ oder „kostenpflichtig bestellen“ zulässig.

    Den Hinweis auf die AGB und die Widerrufsbelehrung haben wir an den Anfang der Seite verschoben. Die Checkboxen zum „Abhaken“ der AGB sind zwar nicht erforderlich, damit diese Vertragsbestandteil werden. Da sich diese Checkboxen aber zum Standard entwickelten, haben auch wir diese Variante in das Muster aufgenommen.

    Darunter befinden sich die weiteren für die Bestellung wichtigen Informationen wie Liefer- und Rechnungsanschrift sowie zur Zahlungsart.

    Weder die Hinweise auf AGB und Widerrufsrecht noch die weiteren Informationen dürfen in irgendeiner Art und Weise hervorgehoben werden. Eine Hervorhebung dieser Informationen würde die Hervorhebung der Pflichtinformationen neutralisieren.
    Die Hervorhebung der Pflichtinformationen soll die Aufmerksamkeit des Verbrauchers auf diese lenken.

    Wir weisen noch einmal ausdrücklich darauf hin, dass derzeit noch ungeklärt ist, in welchem Umfang die wesentlichen Merkmale der Ware oder Dienstleistung auf der Bestellseite dargestellt werden müssen. Trusted Shops favorisiert hier eine „Teaser-mit-Detail-Link“-Variante. In einem informellen Austausch mit Anwaltskanzleien stieß dieser Vorschlag jedoch nicht nur auf Zustimmung. Die sicherste Variante wird sein, alle Produktmerkmale noch einmal auf der Bestellseite aufzuführen.

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Hallo,

    bezieht sich dein:
    Zitat
    Hat sich hier schon mal jemand rangetraut?
    auf deisen Abschnitt ?
    Zitat
    Zwischen diesen Informationen und dem Bestellbutton dürfen sich keine ablenkenden Elemente mehr befinden, also auch nicht der Hinweis auf das Widerrufsrecht oder die AGB, diese sollten also umplatziert werden.
    Dann ja, das ist definitiv kein Problem.

    Dieser Teil:
    Zitat
    Die Reihenfolge der verschiedenen Elemente auf der Bestell-Seite muss verändert werden. Die Beschreibung der Produkte, die der Kunde bestellen möchte, muss ausführlicher ausfallen, als auf den bisherigen Bestellseiten. Daneben gibt es eine Reihe von Pflichtinformationen, die hervorgehoben werden müssen.
    ist eigentlich schon durch den Wiki eintrag gemacht, wenn man etwas mehr hervorheben möchte kann man es mit Styles tun.

    Gruß
    Robert

    versand-richter

    • Frisch an Board
    • Beiträge: 82
    • Geschlecht:
    Hallo,

    vielen lieben Dank für die schnelle Antwort. Habe die Umstellung gem. Wiki vorgenommen und es sieht alles sehr gut aus, nur leider wird jetzt der Link zu AGB/Widerrufsbelehrung gar nicht mehr angezeigt?

    Da ich leider so überhaupt gar keine Html-Kenntnisse habe, weiß ich leider nicht, wie ich z. Bsp. den Text mit den Pflichtinformationen mit Styles hervorheben kann. Ich würde es gern in einem hellen orange machen (damit es zum Shop paßt), aber nur wie?

    Für einen html-Code, welchen ich dann 1 zu 1 in die Datei checkout_conformation übernehmen könnte, wäre ich sehr dankbar.

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Hallo,

    kann mal über deine Datei schauen.
    muss sie nur sehen.

    Gruß
    Robert

    versand-richter

    • Frisch an Board
    • Beiträge: 82
    • Geschlecht:
    oh wow das wäre super, hier der gesamte Code:

    Code: PHP  [Auswählen]
    <?php

    /* -----------------------------------------------------------------------------------------
       $Id: checkout_confirmation.php 1277 2005-10-01 17:02:59Z mz $

       XT-Commerce - community made shopping
       http://www.(( Wir dulden keine kommerziellen Werbelinks - Bitte <a href="index.php?topic=3013.0">Forenregeln</a> beachten! ))

       Copyright (c) 2003 XT-Commerce
       -----------------------------------------------------------------------------------------
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(checkout_confirmation.php,v 1.137 2003/05/07); www.oscommerce.com
       (c) 2003         nextcommerce (checkout_confirmation.php,v 1.21 2003/08/17); www.nextcommerce.org

       Released under the GNU General Public License
       -----------------------------------------------------------------------------------------
       Third Party contributions:
       agree_conditions_1.01                Autor:        Thomas Ploenkers (webmaster@oscommerce.at)

       Customers Status v3.x  (c) 2002-2003 Copyright Elari elari@free.fr | www.unlockgsm.com/dload-osc/ | CVS : http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/elari/?sortby=date#dirlist

       Credit Class/Gift Vouchers/Discount Coupons (Version 5.10)
       http://www.oscommerce.com/community/contributions,282
       Copyright (c) Strider | Strider@oscworks.com
       Copyright (c  Nick Stanko of UkiDev.com, nick@ukidev.com
       Copyright (c) Andre ambidex@gmx.net
       Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org

       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/


    include ('includes/application_top.php');
    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG . 'templates/' . CURRENT_TEMPLATE . '/source/boxes.php');
    // include needed functions
    require_once (DIR_FS_INC . 'xtc_calculate_tax.inc.php');
    require_once (DIR_FS_INC . 'xtc_check_stock.inc.php');
    require_once (DIR_FS_INC . 'xtc_display_tax_value.inc.php');
    require_once (DIR_FS_INC . 'xtc_get_products_image.inc.php');

    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    require (DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php');
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    // if the customer is not logged on, redirect them to the login page


    if (!isset ($_SESSION['customer_id']))
            xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));

    // if there is nothing in the customers cart, redirect them to the shopping cart page
    if ($_SESSION['cart']->count_contents() < 1)
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));

    // avoid hack attempts during the checkout procedure by checking the internal cartID
    if (isset ($_SESSION['cart']->cartID) && isset ($_SESSION['cartID'])) {
            if ($_SESSION['cart']->cartID != $_SESSION['cartID'])
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    }

    // if no shipping method has been selected, redirect the customer to the shipping method selection page
    if (!isset ($_SESSION['shipping']))
            xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));

    //check if display conditions on checkout page is true

    if (isset ($_POST['payment']))
            $_SESSION['payment'] = xtc_db_prepare_input($_POST['payment']);

    if ($_POST['comments_added'] != '')
            $_SESSION['comments'] = xtc_db_prepare_input($_POST['comments']);

    //-- TheMedia Begin check if display conditions on checkout page is true
    if (isset ($_POST['cot_gv']))
            $_SESSION['cot_gv'] = true;
    // if conditions are not accepted, redirect the customer to the payment method selection page

    if (DISPLAY_CONDITIONS_ON_CHECKOUT == 'true') {
            if ($_POST['conditions'] == false) {
                    $error = str_replace('\n', '<br />', ERROR_CONDITIONS_NOT_ACCEPTED);
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode($error), 'SSL', true, false));
            }
    }

    // load the selected payment module
    require (DIR_WS_CLASSES . 'payment.php');
    if (isset ($_SESSION['credit_covers']))
            $_SESSION['payment'] = 'no_payment'; // GV Code Start/End ICW added for CREDIT CLASS
    $payment_modules = new payment($_SESSION['payment']);

    // GV Code ICW ADDED FOR CREDIT CLASS SYSTEM
    require (DIR_WS_CLASSES . 'order_total.php');
    require (DIR_WS_CLASSES . 'order.php');
    $order = new order();

    $payment_modules->update_status();

    // GV Code Start
    $order_total_modules = new order_total();
    $order_total_modules->collect_posts();
    $order_total_modules->pre_confirmation_check();
    // GV Code End

    // GV Code line changed
    if ((is_array($payment_modules->modules) && (sizeof($payment_modules->modules) > 1) && (!is_object($$_SESSION['payment'])) && (!isset ($_SESSION['credit_covers']))) || (is_object($$_SESSION['payment']) && ($$_SESSION['payment']->enabled == false))) {
            xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(ERROR_NO_PAYMENT_MODULE_SELECTED), 'SSL'));
    }

    if (is_array($payment_modules->modules))
            $payment_modules->pre_confirmation_check();

    // load the selected shipping module
    require (DIR_WS_CLASSES . 'shipping.php');
    $shipping_modules = new shipping($_SESSION['shipping']);

    // Stock Check
    $any_out_of_stock = false;
    if (STOCK_CHECK == 'true') {
            for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
                    if (xtc_check_stock($order->products[$i]['id'], $order->products[$i]['qty']))
                            $any_out_of_stock = true;
            }
            // Out of Stock
            if ((STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock == true))
                    xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));
    }

    $breadcrumb->add(NAVBAR_TITLE_1_CHECKOUT_CONFIRMATION, xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    $breadcrumb->add(NAVBAR_TITLE_2_CHECKOUT_CONFIRMATION);

    require (DIR_WS_INCLUDES . 'header.php');
    if (SHOW_IP_LOG == 'true') {
            $smarty->assign('IP_LOG', 'true');
            if ($_SERVER["HTTP_X_FORWARDED_FOR"]) {
                    $customers_ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
            } else {
                    $customers_ip = $_SERVER["REMOTE_ADDR"];
            }
            $smarty->assign('CUSTOMERS_IP', $customers_ip);
    }
    $smarty->assign('DELIVERY_LABEL', xtc_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br />'));
    if ($_SESSION['credit_covers'] != '1') {
            $smarty->assign('BILLING_LABEL', xtc_address_format($order->billing['format_id'], $order->billing, 1, ' ', '<br />'));
    }
    $smarty->assign('PRODUCTS_EDIT', xtc_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL')); // web28 - 2011-04-14 - change SSL -> NONSSL
    $smarty->assign('SHIPPING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING_ADDRESS, '', 'SSL'));
    $smarty->assign('BILLING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT_ADDRESS, '', 'SSL'));

    if ($_SESSION['sendto'] != false) {

            if ($order->info['shipping_method']) {
                    $smarty->assign('SHIPPING_METHOD', $order->info['shipping_method']);
                    $smarty->assign('SHIPPING_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));

            }

    }

    if (sizeof($order->info['tax_groups']) > 1) {

            if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {

            }

    } else {

    }
    //BOF - 2009-06-05 - replace table with div
     $data_products = "\n".
        ' <table width="100%" border="0" cellspacing="0" cellpadding="0">';
        // products table header TR
        if (file_exists(DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php')) {
                $data_products.= "\n".
                '  <tr>'."\n".
                '   <td class="main_header" align="left" valign="top"><b>'.HEADER_QTY.'</b></td>'."\n".
                '   <td class="main_header" align="left" valign="top" colspan="2"><b>'.HEADER_ARTICLE.'</b></td>'."\n".
                '   <td class="main_header" align="right" valign="top"><b>'.HEADER_SINGLE.'</b></td>'."\n".
                '   <td class="main_header" align="right" valign="top"><b>'.HEADER_TOTAL.'</b></td>'."\n".
                '  </tr>';
        }
        // products TR for each product in cart
        for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
                $data_products .= "\n".
                '  <tr>'."\n".
                '   <td class="main_row" align="left" valign="top">'.$order->products[$i]['qty'].' x</td>'."\n".
                '   <td class="main_row" align="left" valign="top" width="90"><img src="'.DIR_WS_THUMBNAIL_IMAGES.xtc_get_products_image($order->products[$i]['id']).'" width="50" /></td>'."\n".
                '   <td class="main_row" align="left" valign="top">'.$order->products[$i]['name'];
                // shipping information for each product
                if (ACTIVATE_SHIPPING_STATUS == true) {
                        $data_products .= "\n".
                        '    <br />'."\n".
                        '    <nobr><small><b style="color:steelblue">'.SHIPPING_TIME.$order->products[$i]['shipping_time'].'</b></small></nobr>';
                }
                // selected attributes for each product
                if ((isset ($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0)) {
                        for ($j = 0, $n2 = sizeof($order->products[$i]['attributes']); $j < $n2; $j++) {
                                $data_products .= "\n".
                                '    <br />'."\n".
                                '    <nobr><small>&nbsp;<i> - '.$order->products[$i]['attributes'][$j]['option'].': '.$order->products[$i]['attributes'][$j]['value'].'</i></small></nobr>';
                        }
                }
                $data_products .= '</td>'."\n".
                '   <td class="main_row" align="right" valign="top">'.$xtPrice->xtcFormat($order->products[$i]['price'], true).'</td>'."\n".
                '   <td class="main_row" align="right" valign="top">'.$xtPrice->xtcFormat($order->products[$i]['final_price'], true).'</td>'."\n".
                '  </tr>';
                            // Produktbeschreibung
                                $data_products .= '<tr>
                  <td class="main_row_text" align="left" valign="top"  colspan="5"><small>'
    . (!empty($order->products[$i]['short_description'])?$order->products[$i]['short_description']:$order->products[$i]['description']). '</small></td>
                  </tr>'
    ;
              }

                // tax TR

                            //EOF - 2009-06-05 - replace table with div
                    //}


            //BOF - 2009-07-21 - remove Changes div to table //  Christian

    $data_products = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    if (file_exists(DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php')) {
            $data_products.= '<tr>' . "\n" . '  <td class="main_header" align="left" valign="top"><b>' . HEADER_QTY . '</b></td>'
                                                            . "\n" . '  <td class="main_header" align="left" valign="top"><b>' . HEADER_ARTICLE . '</b></td>'
                                                            . "\n" . '  <td class="main_header" align="right" valign="top"><b>' . HEADER_SINGLE . '</b></td>'
                                                            . "\n" . '  <td class="main_header" align="right" valign="top"><b>' . HEADER_TOTAL . '</b></td>
                                             </tr>'
    . "\n";
    }
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {

    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    //        $data_products .= '<tr>' . "\n" . '            <td class="main" align="left" valign="top">' . $order->products[$i]['qty'] . ' x ' . $order->products[$i]['name'] . '</td>' . "\n" . '                <td class="main" align="right" valign="top">' . $xtPrice->xtcFormat($order->products[$i]['final_price'], true) . '</td></tr>' . "\n";
            $data_products .= '<tr>' . "\n" . '  <td class="main_row" align="left" valign="top">' . $order->products[$i]['qty'] . ' x ' . '</td>'
                                                             . "\n" . '  <td class="main_row" align="left" valign="top"><a target="_blank" href="' . xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($order->products[$i]['id'])) . '"> ' . $order->products[$i]['name'] . '</a></td>'
                                                             . "\n"        . '  <td class="main_row" align="right" valign="top">' . $xtPrice->xtcFormat($order->products[$i]['price'], true) . '</td>'
                                                             . "\n"        . '  <td class="main_row" align="right" valign="top">' . $xtPrice->xtcFormat($order->products[$i]['final_price'], true) . '</td>
                                               </tr>'
    . "\n";
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    $data_products .= '<tr>
                  <td class="main" align="left" valign="top">&nbsp;</td>
                  <td class="main" align="left" valign="top"><small>'
    . (!empty($order->products[$i]['short_description'])?trim(strip_tags($order->products[$i]['short_description'])):trim(substr(strip_tags($order->products[$i]['description']),0,300))). ' [...]' . '</small></td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  </tr>'
    ;
            if (ACTIVATE_SHIPPING_STATUS == 'true') {

    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    /*
                    $data_products .= '<tr>
                                                            <td class="main" align="left" valign="top">
                                                            <nobr><small>' . SHIPPING_TIME . $order->products[$i]['shipping_time'] . '
                                                            </small><nobr></td>
                                                            <td class="main" align="right" valign="top">&nbsp;</td></tr>';
    */

                    $data_products .= '<tr>
                                                            <td class="main" align="left" valign="top">&nbsp;</td>
                                                            <td class="main" align="left" valign="top">
                                                            <nobr><small>'
    . SHIPPING_TIME . $order->products[$i]['shipping_time'] . '
                                                            </small><nobr></td>
                                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                                            </tr>'
    ;
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation

            }
            if ((isset ($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0)) {
                    for ($j = 0, $n2 = sizeof($order->products[$i]['attributes']); $j < $n2; $j++) {
    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    /*
                            $data_products .= '<tr>
                                                                    <td class="main" align="left" valign="top">
                                                                    <nobr><small>&nbsp;<i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '
                                                                    </i></small><nobr></td>
                                                                    <td class="main" align="right" valign="top">&nbsp;</td></tr>';
    */

                            $data_products .= '<tr>
                                                <td class="main" align="left" valign="top">&nbsp;</td>
                                                                    <td class="main" align="left" valign="top">
                                                                    <nobr><small>&nbsp;<i> - '
    . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '
                                                                    </i></small><nobr></td>
                                                                    <td class="main" align="right" valign="top">&nbsp;</td>
                                                                    <td class="main" align="right" valign="top">&nbsp;</td></tr>'
    ;
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
                    }
            }

            $data_products .= '' . "\n";

            if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
                    if (sizeof($order->info['tax_groups']) > 1)
                            $data_products .= '            <td class="main" valign="top" align="right">' . xtc_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n";
            }
            $data_products .= '</tr>' . "\n";
    }
    $data_products .= '</table>';
    $smarty->assign('PRODUCTS_BLOCK', $data_products);

    if ($order->info['payment_method'] != 'no_payment' && $order->info['payment_method'] != '') {
            include (DIR_WS_LANGUAGES . '/' . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_method'] . '.php');
            $smarty->assign('PAYMENT_METHOD', constant(MODULE_PAYMENT_ . strtoupper($order->info['payment_method']) . _TEXT_TITLE));
    }
    $smarty->assign('PAYMENT_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));

    $total_block = '<table align="right">';
    if (MODULE_ORDER_TOTAL_INSTALLED) {
            $order_total_modules->process();
            $total_block .= $order_total_modules->output();
    }
    $total_block .= '</table><div style="clear:both"></div>';
    $smarty->assign('TOTAL_BLOCK', $total_block);

    if (is_array($payment_modules->modules)) {
            if ($confirmation = $payment_modules->confirmation()) {

                    $payment_info = $confirmation['title'];
                    for ($i = 0, $n = sizeof($confirmation['fields']); $i < $n; $i++) {

                            $payment_info .= '<table>
                                                                    <tr>
                                                                    <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                                                    <td class="main">'
    . $confirmation['fields'][$i]['title'] . '</td>
                                                                    <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                                                    <td class="main">'
    . stripslashes($confirmation['fields'][$i]['field']) . '</td>
                                                                  </tr></table>'
    ;

                    }
                    $smarty->assign('PAYMENT_INFORMATION', $payment_info);

            }
    }

    if (xtc_not_null($order->info['comments'])) {
            $smarty->assign('ORDER_COMMENTS', nl2br(htmlspecialchars($order->info['comments'])) . xtc_draw_hidden_field('comments', $order->info['comments']));

    }

    if (isset ($$_SESSION['payment']->form_action_url) && !$$_SESSION['payment']->tmpOrders) {

            $form_action_url = $$_SESSION['payment']->form_action_url;

    } else {
            $form_action_url = xtc_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL');
    }
    $smarty->assign('CHECKOUT_FORM', xtc_draw_form('checkout_confirmation', $form_action_url, 'post'));
    $payment_button = '';
    if (is_array($payment_modules->modules)) {
            $payment_button .= $payment_modules->process_button();
    }
    $smarty->assign('MODULE_BUTTONS', $payment_button);
    $smarty->assign('CHECKOUT_BUTTON', xtc_image_submit('button_confirm_order.gif', IMAGE_BUTTON_CONFIRM_ORDER) . '</form>' . "\n");

    //check if display conditions on checkout page is true
    if (DISPLAY_REVOCATION_ON_CHECKOUT == 'true') {

            if (GROUP_CHECK == 'true') {
                    $group_check = "and group_ids LIKE '%c_" . $_SESSION['customers_status']['customers_status_id'] . "_group%'";
            }

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='"
    . REVOCATION_ID . "' " . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'";

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            if ($shop_content_data['content_file'] != '') {
                    ob_start();
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '<pre>';
                    include (DIR_FS_CATALOG . 'media/content/' . $shop_content_data['content_file']);
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '</pre>';
                    $revocation = ob_get_contents();
                    ob_end_clean();
            } else {
                    $revocation = $shop_content_data['content_text'];
            }

            $smarty->assign('REVOCATION', $revocation);
            $smarty->assign('REVOCATION_TITLE', $shop_content_data['content_heading']);
            //BOF - Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink
            //$smarty->assign('REVOCATION_LINK', $main->getContentLink(REVOCATION_ID, MORE_INFO));
            $smarty->assign('REVOCATION_LINK', $main->getContentLink(REVOCATION_ID, MORE_INFO,'SSL'));
            //EOF - Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='3' "
    . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'";

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            $smarty->assign('AGB_TITLE', $shop_content_data['content_heading']);
      //BOF - Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink
            //$smarty->assign('AGB_LINK', $main->getContentLink(3, MORE_INFO));
            $smarty->assign('AGB_LINK', $main->getContentLink(3, MORE_INFO,'SSL'));
      //EOF - Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink
    }

    $smarty->assign('language', $_SESSION['language']);
    $smarty->assign('PAYMENT_BLOCK', $payment_block);
    $smarty->caching = 0;
    $main_content = $smarty->fetch(CURRENT_TEMPLATE . '/module/checkout_confirmation.html');

    $smarty->assign('language', $_SESSION['language']);
    $smarty->assign('main_content', $main_content);
    $smarty->caching = 0;
    if (!defined('RM'))
            $smarty->load_filter('output', 'note');
    $smarty->display(CURRENT_TEMPLATE . '/index.html');
    include ('includes/application_bottom.php');
    ?>
     

    Nach wie vor besteht auch noch das Problem, dass die kl. Fotos nicht angezeigt werden, wie hier schon geschrieben:

    http://www.modified-shop.org/forum/index.php?topic=19167.msg196494#msg196494

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Hallo,

    das mit der AGB und der Wiedrrufsbelehrung steht in einer anderen Datei:
    "DeinTemplate"/Module/checkout_confirmation.htm

    Die muss man ändern damit AGB woanders angezeigt wird.

    Das die Bilder angezeigt werden ist wieder was anderes. Habe es nicht Umgesetzt da es nicht nötig ist.
    Aber ich schaue mal danach.

    Gruß
    Robert

    versand-richter

    • Frisch an Board
    • Beiträge: 82
    • Geschlecht:
    okay dann hier die richtige Datei ... schon mal ein großes DANKE für die Mühe:

    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="checkout_confirmation"} {config_load file="$language/lang_$language.conf" section="checkout_navigation"}
    <ul id="checkoutnavigation">
        <li class="inactive"><span class="number">1.</span> <span class="title">{#title_shipping#}</span><br />
           <span class="description">{#desc_shipping#}</span></li>
       <li class="inactive"><span class="number">2.</span> <span class="title">{#title_payment#}</span><br />
           <span class="description">{#desc_payment#}</span></li>
       <li class="active"><span class="number">3.</span> <span class="title">{#title_confirmation#}</span><br />
           <span class="description">{#desc_confirmation#}</span></li>
       <li class="inactive"><span class="number">4.</span> <span class="title">{#title_success#}</span><br />
           <span class="description">{#desc_success#}</span></li>
    </ul>
    <div style="clear:both"></div>
    <br />
    <h1>{#heading_confirmation#}</h1>
    <p>{#text_information#}</p>
    {if $IP_LOG=='true'}
    <p>{#text_ip#}:&nbsp;<strong>{$CUSTOMERS_IP}</strong></p>
    <p>{/if}</p>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="40%"><strong>{#text_shipping_address#}</strong><br />
               {$DELIVERY_LABEL}<br />
                <a href="{$SHIPPING_ADDRESS_EDIT}">{#text_edit#}</a></span></td>
           <td width="60%">{if $BILLING_LABEL}<strong>{#text_payment_address#}</strong><br />
               {$BILLING_LABEL}<br />
                <a href="{$BILLING_ADDRESS_EDIT}">{#text_edit#}</a>{/if}</td>
       </tr>
    </table>
    {if $SHIPPING_METHOD}
    <h2>{#text_shipping_method#}</h2>
    <p>{$SHIPPING_METHOD}&nbsp;<a href="{$SHIPPING_EDIT}">{#text_edit#}</a></p>
    {/if} {if $PAYMENT_METHOD!=''}
    <h2>{#text_payment_method#}</h2>
    <p>{$PAYMENT_METHOD}&nbsp;<a href="{$PAYMENT_EDIT}">{#text_edit#}</a></p>
    {/if} {if $ORDER_COMMENTS!=''}
    <h2>{#text_comments#}</h2>
    <p>{$ORDER_COMMENTS}&nbsp;<a href="{$PAYMENT_EDIT}">{#text_edit#}</a></p>
    {/if} {if $PAYMENT_INFORMATION!=''}
    <h2>{#text_payment_info#}</h2>
    <p>{$PAYMENT_INFORMATION}</p>
    {/if}
    <h2>{#text_products#}</h2>
    <p>{#text_products#}&nbsp;<a href="{$PRODUCTS_EDIT}">{#text_edit#}</a></p>
    <div class="highlightbox"> {$PRODUCTS_BLOCK}
        <div class="hr"></div>
        {$TOTAL_BLOCK} </div>
    <br />
    {if $REVOCATION} <strong>{$REVOCATION_TITLE} </strong> {$REVOCATION} <strong>{$REVOCATION_TITLE}</strong> {$REVOCATION_LINK}<br />
    <strong>{$AGB_TITLE}</strong> {$AGB_LINK} {/if}
    <p>{$CHECKOUT_FORM}{if $MODULE_BUTTONS!=''}&nbsp;{$MODULE_BUTTONS}{/if}&nbsp;{$CHECKOUT_BUTTON}</p>

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Sorry, hat bisserl gedauert hab noch was anderes dazwichen gemacht  :-)

    habe jetzt beides, das mit dem Bild und mit der AGB eingebaut.
    Die von mir vorgeschalgnen änderungen sind auch schon drin.

    checkout_confirmation.php:
    Code: PHP  [Auswählen]
    <?php
    /* -----------------------------------------------------------------------------------------
       $Id: checkout_confirmation.php 2791 2012-04-27 13:10:18Z web28 $

       modified eCommerce Shopsoftware - community made shopping
       http://www.modified eCommerce Shopsoftware.org

       Copyright (c) 2010 modified eCommerce Shopsoftware
       -----------------------------------------------------------------------------------------
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(checkout_confirmation.php,v 1.137 2003/05/07); www.oscommerce.com
       (c) 2003 nextcommerce (checkout_confirmation.php,v 1.21 2003/08/17); www.nextcommerce.org
       (c) 2006 XT-Commerce (checkout_confirmation.php 1277 2005-10-01)

       Released under the GNU General Public License
       -----------------------------------------------------------------------------------------
       Third Party contributions:
       agree_conditions_1.01                Autor:  Thomas Ploenkers (webmaster@oscommerce.at)

       Customers Status v3.x  (c) 2002-2003 Copyright Elari elari@free.fr | www.unlockgsm.com/dload-osc/ | CVS : http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/elari/?sortby=date#dirlist

       Credit Class/Gift Vouchers/Discount Coupons (Version 5.10)
       http://www.oscommerce.com/community/contributions,282
       Copyright (c) Strider | Strider@oscworks.com
       Copyright (c) Nick Stanko of UkiDev.com, nick@ukidev.com
       Copyright (c) Andre ambidex@gmx.net
       Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org

       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/


    include ('includes/application_top.php');
    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG . 'templates/' . CURRENT_TEMPLATE . '/source/boxes.php');
    // include needed functions
    require_once (DIR_FS_INC . 'xtc_calculate_tax.inc.php');
    require_once (DIR_FS_INC . 'xtc_check_stock.inc.php');
    require_once (DIR_FS_INC . 'xtc_display_tax_value.inc.php');
    require_once (DIR_FS_INC . 'xtc_get_products_image.inc.php');

    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    require (DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php');
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    // if the customer is not logged on, redirect them to the login page
    if (!isset ($_SESSION['customer_id']))
            xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));

    // if there is nothing in the customers cart, redirect them to the shopping cart page
    if ($_SESSION['cart']->count_contents() < 1)
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));

    // avoid hack attempts during the checkout procedure by checking the internal cartID
    if (isset ($_SESSION['cart']->cartID) && isset ($_SESSION['cartID'])) {
            if ($_SESSION['cart']->cartID != $_SESSION['cartID'])
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    }

    // if no shipping method has been selected, redirect the customer to the shipping method selection page
    if (!isset ($_SESSION['shipping']))
            xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));

    //check if display conditions on checkout page is true

    if (isset ($_POST['payment']))
            $_SESSION['payment'] = xtc_db_prepare_input($_POST['payment']);

    if ($_POST['comments_added'] != '')
            $_SESSION['comments'] = xtc_db_prepare_input($_POST['comments']);

    //-- TheMedia Begin check if display conditions on checkout page is true
    if (isset ($_POST['cot_gv']))
            $_SESSION['cot_gv'] = true;
    // if conditions are not accepted, redirect the customer to the payment method selection page

    if (DISPLAY_CONDITIONS_ON_CHECKOUT == 'true') {
            if (!isset($_POST['conditions']) || $_POST['conditions'] == false) {
                    $error = str_replace('\n', '<br />', ERROR_CONDITIONS_NOT_ACCEPTED);
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode($error), 'SSL', true, false));
            }
    }

    // load the selected payment module
    require_once (DIR_WS_CLASSES . 'payment.php');
    if (isset ($_SESSION['credit_covers']) || !isset($_SESSION['payment'])) { //DokuMan - 2010-10-14 - check that payment is not yet set
            $_SESSION['payment'] = 'no_payment'; // GV Code Start/End ICW added for CREDIT CLASS
    }
    $payment_modules = new payment($_SESSION['payment']);

    // GV Code ICW ADDED FOR CREDIT CLASS SYSTEM
    require (DIR_WS_CLASSES . 'order_total.php');
    require (DIR_WS_CLASSES . 'order.php');
    $order = new order();

    $payment_modules->update_status();

    // GV Code Start
    $order_total_modules = new order_total();
    $order_total_modules->collect_posts();
    $order_total_modules->pre_confirmation_check();
    // GV Code End

    // GV Code line changed
    if(isset($_SESSION['payment']) && $_SESSION['payment'] != 'no_payment') { //web28 - 2012-04-27 - fix for coupon amount == order total
      if ((is_array($payment_modules->modules) && (sizeof($payment_modules->modules) > 1) && (!is_object($$_SESSION['payment'])) && (!isset ($_SESSION['credit_covers']))) || (is_object($$_SESSION['payment']) && ($$_SESSION['payment']->enabled == false))) {
        xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(ERROR_NO_PAYMENT_MODULE_SELECTED), 'SSL'));
      }
    }

    if (is_array($payment_modules->modules)) {
            $payment_modules->pre_confirmation_check();
    }
    // load the selected shipping module
    require (DIR_WS_CLASSES . 'shipping.php');
    $shipping_modules = new shipping($_SESSION['shipping']);

    // Stock Check
    $any_out_of_stock = false;
    if (STOCK_CHECK == 'true') {
            for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
                    if (xtc_check_stock($order->products[$i]['id'], $order->products[$i]['qty'])) {
                            $any_out_of_stock = true;
       }
            }
            // Out of Stock
            if ((STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock == true)) {
                    xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));
      }
    }

    $breadcrumb->add(NAVBAR_TITLE_1_CHECKOUT_CONFIRMATION, xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    $breadcrumb->add(NAVBAR_TITLE_2_CHECKOUT_CONFIRMATION);

    require (DIR_WS_INCLUDES . 'header.php');
    if (SHOW_IP_LOG == 'true') {
            $smarty->assign('IP_LOG', 'true');
            if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] != '') {
        $customers_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
      } else {
        $customers_ip = $_SERVER['REMOTE_ADDR'];
      }
      $smarty->assign('CUSTOMERS_IP', $customers_ip);
    }
    $smarty->assign('DELIVERY_LABEL', xtc_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br />'));
    if (!isset($_SESSION['credit_covers']) || $_SESSION['credit_covers'] != '1') {
            $smarty->assign('BILLING_LABEL', xtc_address_format($order->billing['format_id'], $order->billing, 1, ' ', '<br />'));
    }
    $smarty->assign('PRODUCTS_EDIT', xtc_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL')); // web28 - 2011-04-14 - change SSL -> NONSSL
    $smarty->assign('SHIPPING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING_ADDRESS, '', 'SSL'));
    $smarty->assign('BILLING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT_ADDRESS, '', 'SSL'));

    if ($_SESSION['sendto'] != false) {
            if ($order->info['shipping_method']) {
                    $smarty->assign('SHIPPING_METHOD', $order->info['shipping_method']);
                    $smarty->assign('SHIPPING_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
            }
    }

    if (sizeof($order->info['tax_groups']) > 1) {
            if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
            }
    } else {
    }

    $data_products = '<table width="100%" border="0" cellspacing="0" cellpadding="0">';
    $data_products.= '<tr>' . "\n" . '  <td class="main_header" align="left" valign="top" colspan="2"><b>' . HEADER_QTY . '</b></td>'

                . "\n" . '  <td class="main_header" align="left" valign="top"><b>' . HEADER_ARTICLE . '</b></td>'
                . "\n" . '  <td class="main_header" align="right" valign="top"><b>' . HEADER_SINGLE . '</b></td>'
                . "\n" . '  <td class="main_header" align="right" valign="top"><b>' . HEADER_TOTAL . '</b></td>
             </tr>'
    . "\n";

    for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
            $data_products .= '<tr>' . "\n" . '  <td class="main_row" align="left" valign="top">' . $order->products[$i]['qty'] . ' x ' . '</td>'
            . "\n" . '<td class="main_row" align="left" valign="top" width="90" rowspan="4"><img src="'.DIR_WS_THUMBNAIL_IMAGES.xtc_get_products_image($order->products[$i]['id']).'" /></td>'
                                                             . "\n" . '  <td class="main_row" align="left" valign="top">' . $order->products[$i]['name'] . '</td>'
                   . "\n"  . '  <td class="main_row" align="right" valign="top"><nobr>' . $xtPrice->xtcFormat($order->products[$i]['price'], true) . '</nobr></td>'
                   . "\n"  . '  <td class="main_row" align="right" valign="top"><nobr>' . $xtPrice->xtcFormat($order->products[$i]['final_price'], true) . '</nobr></td>
                                               </tr>'
    . "\n";

    /* $data_products .= '<tr>
                  <td class="main" align="left" valign="top">&nbsp;</td>
                  <td class="main" align="left" valign="top"><small>' . (!empty($order->products[$i]['short_description'])?trim(strip_tags($order->products[$i]['short_description'])):trim(substr(strip_tags($order->products[$i]['description']),0,300))). ' [...]' . '</small></td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  <td class="main" align="right" valign="top">&nbsp;</td>
                  </tr>';
    */

    $data_products .= '<tr>
                                            <td class="main" align="left" valign="top">&nbsp;</td>
                                            <td class="main" align="left" valign="top"><small>'
    ;
    if (!empty($order->products[$i]['short_description'])) {
                    $data_products .=trim(strip_tags($order->products[$i]['short_description']));
    } else {
                    $data_products .=trim(substr(strip_tags($order->products[$i]['description']),0,300));
                    if (strlen(strip_tags($order->products[$i]['description'])) > 300) $data_products.=' [...]';
    }
    $data_products .='</small></td>
                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                    </tr>'
    ;


            if (ACTIVATE_SHIPPING_STATUS == 'true') {
                    $data_products .= '<tr>
                                                            <td class="main" align="left" valign="top">&nbsp;</td>
                                                            <td class="main" align="left" valign="top">
                                                            <nobr><small>'
    . SHIPPING_TIME . $order->products[$i]['shipping_time'] . '
                                                            </small></nobr></td>
                                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                                            </tr>'
    ;
            }
            if ((isset ($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0)) {
                    for ($j = 0, $n2 = sizeof($order->products[$i]['attributes']); $j < $n2; $j++) {
                            $data_products .= '<tr>
                                                <td class="main" align="left" valign="top">&nbsp;</td>
                                                                    <td class="main" align="left" valign="top">
                                                                    <nobr><small>&nbsp;<i> - '
    . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '
                                                                    </i></small></nobr></td>
                                                                    <td class="main" align="right" valign="top">&nbsp;</td>
                                                                    <td class="main" align="right" valign="top">&nbsp;</td></tr>'
    ;
                    }
            }

            $data_products .= '' . "\n";

            if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
                    if (sizeof($order->info['tax_groups']) > 1)
                            $data_products .= '            <td class="main" valign="top" align="right">' . xtc_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n";
            }
            $data_products .= '</tr>' . "\n";
    }
    $data_products .= '</table>';
    $smarty->assign('PRODUCTS_BLOCK', $data_products);

    if ($order->info['payment_method'] != 'no_payment' && $order->info['payment_method'] != '') {
            include_once (DIR_WS_LANGUAGES . '/' . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_method'] . '.php');
            $smarty->assign('PAYMENT_METHOD', constant('MODULE_PAYMENT_' . strtoupper($order->info['payment_method']) . '_TEXT_TITLE'));
    }
    $smarty->assign('PAYMENT_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));

    $total_block = '<table align="right">';
    if (MODULE_ORDER_TOTAL_INSTALLED) {
            $order_total_modules->process();
            $total_block .= $order_total_modules->output();
    }
    $total_block .= '</table><div style="clear:both"></div>';
    $smarty->assign('TOTAL_BLOCK', $total_block);

    if (is_array($payment_modules->modules)) {
            if ($confirmation = $payment_modules->confirmation()) {
                    $payment_info = $confirmation['title'];
        if (isset($confirmation['fields'])) { //DokuMan - 2010-09-17 - Undefined index
          for ($i = 0, $n = sizeof($confirmation['fields']); $i < $n; $i++) {
            $confirmation_text= isset($confirmation['fields'][$i]['field']) ? stripslashes($confirmation['fields'][$i]['field']) : '&nbsp;';
            $payment_info .= '<table><tr>
                                  <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                  <td class="main">'
    . $confirmation['fields'][$i]['title'] . '</td>
                                  <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                  <td class="main">'
    .$confirmation_text. '</td>
                                </tr></table>'
    ;
          }
        }
                    $smarty->assign('PAYMENT_INFORMATION', $payment_info);
            }
    }

    if (xtc_not_null($order->info['comments'])) {
            $smarty->assign('ORDER_COMMENTS', nl2br(htmlspecialchars($order->info['comments'])) . xtc_draw_hidden_field('comments', $order->info['comments']));
    }

    if (isset ($$_SESSION['payment']->form_action_url) && (!isset($$_SESSION['payment']->tmpOrders) || !$$_SESSION['payment']->tmpOrders)) {
            $form_action_url = $$_SESSION['payment']->form_action_url;
    } else {
            $form_action_url = xtc_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL');
    }
    $smarty->assign('CHECKOUT_FORM', xtc_draw_form('checkout_confirmation', $form_action_url, 'post'));
    $payment_button = '';

    if (is_array($payment_modules->modules)) {
            $payment_button .= $payment_modules->process_button();
    }
    $smarty->assign('MODULE_BUTTONS', $payment_button);
    $smarty->assign('CHECKOUT_BUTTON', xtc_image_submit('button_confirm_order.gif', IMAGE_BUTTON_CONFIRM_ORDER) . '</form>' . "\n");

    //check if display conditions on checkout page is true
    if (DISPLAY_REVOCATION_ON_CHECKOUT == 'true') {

            if (GROUP_CHECK == 'true') {
                    $group_check = "and group_ids LIKE '%c_" . $_SESSION['customers_status']['customers_status_id'] . "_group%'";
            }

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='"
    . REVOCATION_ID . "'
                                                        "
    . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'
                                                        LIMIT 1"
    ; //DokuMan - 2011-05-13 - added LIMIT 1

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            if ($shop_content_data['content_file'] != '') {
                    ob_start();
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '<pre>';
                    include (DIR_FS_CATALOG . 'media/content/' . $shop_content_data['content_file']);
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '</pre>';
                    $revocation = ob_get_contents();
                    ob_end_clean();
            } else {
                    $revocation = $shop_content_data['content_text'];
            }

            $smarty->assign('REVOCATION', $revocation);
            $smarty->assign('REVOCATION_TITLE', $shop_content_data['content_heading']);
      $smarty->assign('REVOCATION_LINK', $main->getContentLink(REVOCATION_ID, MORE_INFO,'SSL')); // Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='3'
                                                        "
    . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'
                                                        LIMIT 1"
    ; //DokuMan - 2011-05-13 - added LIMIT 1

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            $smarty->assign('AGB_TITLE', $shop_content_data['content_heading']);
      $smarty->assign('AGB_LINK', $main->getContentLink(3, MORE_INFO,'SSL')); // Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink
    }

    $smarty->assign('language', $_SESSION['language']);
    //$smarty->assign('PAYMENT_BLOCK', $payment_block); //DokuMan - PAYMENT_BLOCK not needed in checkout_confimation
    $main_content = $smarty->fetch(CURRENT_TEMPLATE . '/module/checkout_confirmation.html');
    $smarty->assign('main_content', $main_content);
    $smarty->caching = 0;
    if (!defined('RM')) {
            $smarty->load_filter('output', 'note');
    }
    $smarty->display(CURRENT_TEMPLATE . '/index.html');
    include ('includes/application_bottom.php');
    ?>

    tempalates/module/deintamplate/checkout_confirmation.html:
    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="checkout_confirmation"} {config_load file="$language/lang_$language.conf" section="checkout_navigation"}
    <ul id="checkoutnavigation">
        <li class="inactive"><span class="number">1.</span> <span class="title">{#title_shipping#}</span><br />
           <span class="description">{#desc_shipping#}</span></li>
       <li class="inactive"><span class="number">2.</span> <span class="title">{#title_payment#}</span><br />
           <span class="description">{#desc_payment#}</span></li>
       <li class="active"><span class="number">3.</span> <span class="title">{#title_confirmation#}</span><br />
           <span class="description">{#desc_confirmation#}</span></li>
       <li class="inactive"><span class="number">4.</span> <span class="title">{#title_success#}</span><br />
           <span class="description">{#desc_success#}</span></li>
    </ul>
    <div style="clear:both"></div>
    <br />
    <h1>{#heading_confirmation#}</h1>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="50%">{#text_information#}</td>
           <td width="50%">Bitte nehmen Sie unsere <strong>{$AGB_TITLE}</strong> {$AGB_LINK} und die <strong>{$REVOCATION_TITLE}</strong> {$REVOCATION_LINK} zur Kenntnis.</td>
        </tr>
    </table>
    {if $IP_LOG=='true'}
    <p>{#text_ip#}:&nbsp;<strong>{$CUSTOMERS_IP}</strong></p>
    <p>{/if}</p>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="40%"><strong>{#text_shipping_address#}</strong><br />
               {$DELIVERY_LABEL}<br />
                <a href="{$SHIPPING_ADDRESS_EDIT}">{#text_edit#}</a></span></td>
           <td width="60%">{if $BILLING_LABEL}<strong>{#text_payment_address#}</strong><br />
               {$BILLING_LABEL}<br />
                <a href="{$BILLING_ADDRESS_EDIT}">{#text_edit#}</a>{/if}</td>
       </tr>
    </table>
    {if $SHIPPING_METHOD}
    <h2>{#text_shipping_method#}</h2>
    <p>{$SHIPPING_METHOD}&nbsp;<a href="{$SHIPPING_EDIT}">{#text_edit#}</a></p>
    {/if} {if $PAYMENT_METHOD!=''}
    <h2>{#text_payment_method#}</h2>
    <p>{$PAYMENT_METHOD}&nbsp;<a href="{$PAYMENT_EDIT}">{#text_edit#}</a></p>
    {/if} {if $ORDER_COMMENTS!=''}
    <h2>{#text_comments#}</h2>
    <p>{$ORDER_COMMENTS}&nbsp;<a href="{$PAYMENT_EDIT}">{#text_edit#}</a></p>
    {/if} {if $PAYMENT_INFORMATION!=''}
    <h2>{#text_payment_info#}</h2>
    <p>{$PAYMENT_INFORMATION}</p>
    {/if}
    <h2>{#text_products#}</h2>
    <p>{#text_products#}&nbsp;<a href="{$PRODUCTS_EDIT}">{#text_edit#}</a></p>
    <div class="highlightbox"> {$PRODUCTS_BLOCK}
        <div class="hr"></div>
        {$TOTAL_BLOCK} </div>
    <br />
    <div>{$CHECKOUT_FORM}{if $MODULE_BUTTONS!=''}&nbsp;{$MODULE_BUTTONS}{/if}&nbsp;{$CHECKOUT_BUTTON}</div>

    Bei mir klappts :-)
    Ich hoffe auch bei dir.

    Gruß
    Robert

    saez

    • Frisch an Board
    • Beiträge: 50
    • Geschlecht:
    Hallo ich habe auch ein kleines Problem und zwar wenn ich die short description rein setzte verschiebt sich alles. Hat jemand einen Rat.

    Code: PHP  [Auswählen]
    <?php
    /* -----------------------------------------------------------------------------------------
       $Id: checkout_confirmation.php 2791 2012-04-27 13:10:18Z web28 $

       modified eCommerce Shopsoftware - community made shopping
       http://www.modified eCommerce Shopsoftware.org

       Copyright (c) 2010 modified eCommerce Shopsoftware
       -----------------------------------------------------------------------------------------
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(checkout_confirmation.php,v 1.137 2003/05/07); www.oscommerce.com
       (c) 2003 nextcommerce (checkout_confirmation.php,v 1.21 2003/08/17); www.nextcommerce.org
       (c) 2006 XT-Commerce (checkout_confirmation.php 1277 2005-10-01)

       Released under the GNU General Public License
       -----------------------------------------------------------------------------------------
       Third Party contributions:
       agree_conditions_1.01                Autor:  Thomas Ploenkers (webmaster@oscommerce.at)

       Customers Status v3.x  (c) 2002-2003 Copyright Elari elari@free.fr | www.unlockgsm.com/dload-osc/ | CVS : http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/elari/?sortby=date#dirlist

       Credit Class/Gift Vouchers/Discount Coupons (Version 5.10)
       http://www.oscommerce.com/community/contributions,282
       Copyright (c) Strider | Strider@oscworks.com
       Copyright (c) Nick Stanko of UkiDev.com, nick@ukidev.com
       Copyright (c) Andre ambidex@gmx.net
       Copyright (c) 2001,2002 Ian C Wilson http://www.phesis.org

       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/


    include ('includes/application_top.php');
    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG . 'templates/' . CURRENT_TEMPLATE . '/source/boxes.php');
    // include needed functions
    require_once (DIR_FS_INC . 'xtc_calculate_tax.inc.php');
    require_once (DIR_FS_INC . 'xtc_check_stock.inc.php');
    require_once (DIR_FS_INC . 'xtc_display_tax_value.inc.php');
    require_once (DIR_FS_INC . 'xtc_get_products_image.inc.php');
    require_once (DIR_FS_INC . 'xtc_get_short_description.inc.php');

    // BOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    require (DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php');
    // EOF - Tomcraft - 2009-10-02 - Include "Single Price" in checkout_confirmation
    // if the customer is not logged on, redirect them to the login page
    if (!isset ($_SESSION['customer_id']))
            xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));

    // if there is nothing in the customers cart, redirect them to the shopping cart page
    if ($_SESSION['cart']->count_contents() < 1)
            xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));

    // avoid hack attempts during the checkout procedure by checking the internal cartID
    if (isset ($_SESSION['cart']->cartID) && isset ($_SESSION['cartID'])) {
            if ($_SESSION['cart']->cartID != $_SESSION['cartID'])
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    }

    // if no shipping method has been selected, redirect the customer to the shipping method selection page
    if (!isset ($_SESSION['shipping']))
            xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));

    //check if display conditions on checkout page is true

    if (isset ($_POST['payment']))
            $_SESSION['payment'] = xtc_db_prepare_input($_POST['payment']);

    if ($_POST['comments_added'] != '')
            $_SESSION['comments'] = xtc_db_prepare_input($_POST['comments']);

    //-- TheMedia Begin check if display conditions on checkout page is true
    if (isset ($_POST['cot_gv']))
            $_SESSION['cot_gv'] = true;
    // if conditions are not accepted, redirect the customer to the payment method selection page

    if (DISPLAY_CONDITIONS_ON_CHECKOUT == 'true') {
            if (!isset($_POST['conditions']) || $_POST['conditions'] == false) {
                    $error = str_replace('\n', '<br />', ERROR_CONDITIONS_NOT_ACCEPTED);
                    xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode($error), 'SSL', true, false));
            }
    }

    // load the selected payment module
    require_once (DIR_WS_CLASSES . 'payment.php');
    if (isset ($_SESSION['credit_covers']) || !isset($_SESSION['payment'])) { //DokuMan - 2010-10-14 - check that payment is not yet set
            $_SESSION['payment'] = 'no_payment'; // GV Code Start/End ICW added for CREDIT CLASS
    }
    $payment_modules = new payment($_SESSION['payment']);

    // GV Code ICW ADDED FOR CREDIT CLASS SYSTEM
    require (DIR_WS_CLASSES . 'order_total.php');
    require (DIR_WS_CLASSES . 'order.php');
    $order = new order();

    $payment_modules->update_status();

    // GV Code Start
    $order_total_modules = new order_total();
    $order_total_modules->collect_posts();
    $order_total_modules->pre_confirmation_check();
    // GV Code End

    // GV Code line changed
    if(isset($_SESSION['payment']) && $_SESSION['payment'] != 'no_payment') { //web28 - 2012-04-27 - fix for coupon amount == order total
      if ((is_array($payment_modules->modules) && (sizeof($payment_modules->modules) > 1) && (!is_object($$_SESSION['payment'])) && (!isset ($_SESSION['credit_covers']))) || (is_object($$_SESSION['payment']) && ($$_SESSION['payment']->enabled == false))) {
        xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(ERROR_NO_PAYMENT_MODULE_SELECTED), 'SSL'));
      }
    }

    if (is_array($payment_modules->modules)) {
            $payment_modules->pre_confirmation_check();
    }
    // load the selected shipping module
    require (DIR_WS_CLASSES . 'shipping.php');
    $shipping_modules = new shipping($_SESSION['shipping']);

    // Stock Check
    $any_out_of_stock = false;
    if (STOCK_CHECK == 'true') {
            for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
                    if (xtc_check_stock($order->products[$i]['id'], $order->products[$i]['qty'])) {
                            $any_out_of_stock = true;
       }
            }
            // Out of Stock
            if ((STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock == true)) {
                    xtc_redirect(xtc_href_link(FILENAME_SHOPPING_CART));
      }
    }

    $breadcrumb->add(NAVBAR_TITLE_1_CHECKOUT_CONFIRMATION, xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
    $breadcrumb->add(NAVBAR_TITLE_2_CHECKOUT_CONFIRMATION);

    require (DIR_WS_INCLUDES . 'header.php');
    if (SHOW_IP_LOG == 'true') {
            $smarty->assign('IP_LOG', 'true');
            if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR'] != '') {
        $customers_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
      } else {
        $customers_ip = $_SERVER['REMOTE_ADDR'];
      }
      $smarty->assign('CUSTOMERS_IP', $customers_ip);
    }
    $smarty->assign('DELIVERY_LABEL', xtc_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br />'));
    if (!isset($_SESSION['credit_covers']) || $_SESSION['credit_covers'] != '1') {
            $smarty->assign('BILLING_LABEL', xtc_address_format($order->billing['format_id'], $order->billing, 1, ' ', '<br />'));
    }
    $smarty->assign('PRODUCTS_EDIT', xtc_href_link(FILENAME_SHOPPING_CART, '', 'NONSSL')); // web28 - 2011-04-14 - change SSL -> NONSSL
    $smarty->assign('SHIPPING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING_ADDRESS, '', 'SSL'));
    $smarty->assign('BILLING_ADDRESS_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT_ADDRESS, '', 'SSL'));

    if ($_SESSION['sendto'] != false) {
            if ($order->info['shipping_method']) {
                    $smarty->assign('SHIPPING_METHOD', $order->info['shipping_method']);
                    $smarty->assign('SHIPPING_EDIT', xtc_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'));
            }
    }

    if (sizeof($order->info['tax_groups']) > 1) {
            if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
            }
    } else {
    }

    $data_products = "\n".
        ' <table width="100%" border="0" cellspacing="0" cellpadding="0">';
        // products table header TR
        if (file_exists(DIR_WS_LANGUAGES.$_SESSION['language'].'/checkout_confirmation.php')) {
                $data_products.= "\n".
                '  <tr>'."\n".
                '   <td class="main_header" align="left" valign="top"><b>'.HEADER_QTY.'</b></td>'."\n".
                '   <td class="main_header" align="left" valign="top" colspan="2"><b>'.HEADER_ARTICLE.'</b></td>'."\n".
                '   <td class="main_header" align="right" valign="top"><b>'.HEADER_SINGLE.'</b></td>'."\n".
                '   <td class="main_header" align="right" valign="top"><b>'.HEADER_TOTAL.'</b></td>'."\n".
                '  </tr>';
        }
        // products TR for each product in cart
        for ($i = 0, $n = sizeof($order->products); $i < $n; $i++) {
                $data_products .= "\n".
                '  <tr>'."\n".
                '   <td class="main_row" align="left" valign="top">'.$order->products[$i]['qty'].' x</td>'."\n".
                '   <td class="main_row" align="left" valign="top" ><img src="'.DIR_WS_THUMBNAIL_IMAGES.xtc_get_products_image($order->products[$i]['id']).'" width="50px" /></td>'."\n".
                            '   <td class="main_row" align="left" valign="top"><a target="_blank" href="' . xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($order->products[$i]['id'])) . '"> ' . $order->products[$i]['name'] ;
                // shipping information for each product
                if (ACTIVATE_SHIPPING_STATUS == true) {
                        $data_products .= "\n".
                        '    <br /><br />'."\n".
                        '    <nobr><small>'.SHIPPING_TIME.$order->products[$i]['shipping_time'].'</small></nobr>';
                }
                // selected attributes for each product
                if ((isset ($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0)) {
                        for ($j = 0, $n2 = sizeof($order->products[$i]['attributes']); $j < $n2; $j++) {
                                $data_products .= "\n".
                                '    <br />'."\n".
                                '    <nobr><small>&nbsp;<i> - '.$order->products[$i]['attributes'][$j]['option'].': '.$order->products[$i]['attributes'][$j]['value'].'</i></small></nobr>';
                        }
                }
                           
                $data_products .= '</td>'."\n".
                '   <td class="main_row" align="right" valign="top">'.$xtPrice->xtcFormat($order->products[$i]['price'], true).'</td>'."\n".
                '   <td class="main_row" align="right" valign="top">'.$xtPrice->xtcFormat($order->products[$i]['final_price'], true).'</td>'."\n".
                '  </tr>';
                // tax TR
                if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
                        if (sizeof($order->info['tax_groups']) > 1)
                                $data_products .= "\n".
                                '  <tr>'."\n".
                                '   <td class="main" valign="top" align="right">'.xtc_display_tax_value($order->products[$i]['tax']).'%</td>'."\n".
                                '  </tr>';
                }
                            $data_products .= '<tr>
                                            <td class="main" align="left" valign="top">&nbsp;</td>
                                            <td class="main" align="left" valign="top"><small>'
    ;
    if (!empty($order->products[$i]['short_description'])) {
                    $data_products .=trim(strip_tags($order->products[$i]['short_description']));
    } else {
                    $data_products .=trim(substr(strip_tags($order->products[$i]['description']),0,300));
                    if (strlen(strip_tags($order->products[$i]['description'])) > 300) $data_products.=' [...]';
    }
    $data_products .='</small></td>
                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                            <td class="main" align="right" valign="top">&nbsp;</td>
                                    </tr>'
    ;
                $data_products .= "\n";
        }
        $data_products .= ' </table>';
    $smarty->assign('PRODUCTS_BLOCK', $data_products);

    if ($order->info['payment_method'] != 'no_payment' && $order->info['payment_method'] != '') {
            include_once (DIR_WS_LANGUAGES . '/' . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_method'] . '.php');
            $smarty->assign('PAYMENT_METHOD', constant('MODULE_PAYMENT_' . strtoupper($order->info['payment_method']) . '_TEXT_TITLE'));
    }
    $smarty->assign('PAYMENT_EDIT', xtc_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));

    $total_block = '<table align="right">';
    if (MODULE_ORDER_TOTAL_INSTALLED) {
            $order_total_modules->process();
            $total_block .= $order_total_modules->output();
    }
    $total_block .= '</table><div style="clear:both"></div>';
    $smarty->assign('TOTAL_BLOCK', $total_block);

    if (is_array($payment_modules->modules)) {
            if ($confirmation = $payment_modules->confirmation()) {
                    $payment_info = $confirmation['title'];
        if (isset($confirmation['fields'])) { //DokuMan - 2010-09-17 - Undefined index
          for ($i = 0, $n = sizeof($confirmation['fields']); $i < $n; $i++) {
            $confirmation_text= isset($confirmation['fields'][$i]['field']) ? stripslashes($confirmation['fields'][$i]['field']) : '&nbsp;';
            $payment_info .= '<table><tr>
                                  <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                  <td class="main">'
    . $confirmation['fields'][$i]['title'] . '</td>
                                  <td>'
    . xtc_draw_separator('pixel_trans.gif', '10', '1') . '</td>
                                  <td class="main">'
    .$confirmation_text. '</td>
                                </tr></table>'
    ;
          }
        }
                    $smarty->assign('PAYMENT_INFORMATION', $payment_info);
            }
    }

    if (xtc_not_null($order->info['comments'])) {
            $smarty->assign('ORDER_COMMENTS', nl2br(htmlspecialchars($order->info['comments'])) . xtc_draw_hidden_field('comments', $order->info['comments']));
    }

    if (isset ($$_SESSION['payment']->form_action_url) && (!isset($$_SESSION['payment']->tmpOrders) || !$$_SESSION['payment']->tmpOrders)) {
            $form_action_url = $$_SESSION['payment']->form_action_url;
    } else {
            $form_action_url = xtc_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL');
    }
    $smarty->assign('CHECKOUT_FORM', xtc_draw_form('checkout_confirmation', $form_action_url, 'post'));
    $payment_button = '';

    if (is_array($payment_modules->modules)) {
            $payment_button .= $payment_modules->process_button();
    }
    $smarty->assign('MODULE_BUTTONS', $payment_button);
    $smarty->assign('CHECKOUT_BUTTON', xtc_image_submit('button_confirm_order.gif', IMAGE_BUTTON_CONFIRM_ORDER) . '</form>' . "\n");

    //check if display conditions on checkout page is true
    if (DISPLAY_REVOCATION_ON_CHECKOUT == 'true') {

            if (GROUP_CHECK == 'true') {
                    $group_check = "and group_ids LIKE '%c_" . $_SESSION['customers_status']['customers_status_id'] . "_group%'";
            }

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='"
    . REVOCATION_ID . "'
                                                        "
    . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'
                                                        LIMIT 1"
    ; //DokuMan - 2011-05-13 - added LIMIT 1

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            if ($shop_content_data['content_file'] != '') {
                    ob_start();
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '<pre>';
                    include (DIR_FS_CATALOG . 'media/content/' . $shop_content_data['content_file']);
                    if (strpos($shop_content_data['content_file'], '.txt'))
                            echo '</pre>';
                    $revocation = ob_get_contents();
                    ob_end_clean();
            } else {
                    $revocation = $shop_content_data['content_text'];
            }

            $smarty->assign('REVOCATION', $revocation);
            $smarty->assign('REVOCATION_TITLE', $shop_content_data['content_heading']);
      $smarty->assign('REVOCATION_LINK', $main->getContentLink(REVOCATION_ID, MORE_INFO,'SSL')); // Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink

            $shop_content_query = "SELECT
                                                                    content_title,
                                                                    content_heading,
                                                                    content_text,
                                                                    content_file
                                                                    FROM "
    . TABLE_CONTENT_MANAGER . "
                                                                    WHERE content_group='3'
                                                        "
    . $group_check . "
                                                                    AND languages_id='"
    . $_SESSION['languages_id'] . "'
                                                        LIMIT 1"
    ; //DokuMan - 2011-05-13 - added LIMIT 1

            $shop_content_query = xtc_db_query($shop_content_query);
            $shop_content_data = xtc_db_fetch_array($shop_content_query);

            $smarty->assign('AGB_TITLE', $shop_content_data['content_heading']);
      $smarty->assign('AGB_LINK', $main->getContentLink(3, MORE_INFO,'SSL')); // Hetfield - 2009-07-29 - SSL for Content-Links per getContentLink
    }

    $smarty->assign('language', $_SESSION['language']);
    //$smarty->assign('PAYMENT_BLOCK', $payment_block); //DokuMan - PAYMENT_BLOCK not needed in checkout_confimation
    $main_content = $smarty->fetch(CURRENT_TEMPLATE . '/module/checkout_confirmation.html');
    $smarty->assign('main_content', $main_content);
    $smarty->caching = 0;
    if (!defined('RM')) {
            $smarty->load_filter('output', 'note');
    }
    $smarty->display(CURRENT_TEMPLATE . '/index.html');
    include ('includes/application_bottom.php');
    ?>

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Schau dir mal deine Zeile 185 an:

    Code: PHP  [Auswählen]
    '   <td class="main_row" align="left" valign="top" ><img src="'.DIR_WS_THUMBNAIL_IMAGES.xtc_get_products_image($order->products[$i]['id']).'" width="50px" /></td>'."\n".

    ändere die nach:
    Code: PHP  [Auswählen]
    '   <td class="main_row" align="left" valign="top" rowspan="2"><img src="'.DIR_WS_THUMBNAIL_IMAGES.xtc_get_products_image($order->products[$i]['id']).'" width="50px" /></td>'."\n".

    Damit sollte es Funktionieren.

    Gruß
    Robert

    saez

    • Frisch an Board
    • Beiträge: 50
    • Geschlecht:
    Danke für die Antwort aber es klappt noch nicht ganz. Die Preise sind zu weit links und das Artikelbild zu weit rechts.

    mr.mc.mauser

    • Fördermitglied
    • Beiträge: 343
    • Geschlecht:
    Versuch doch mal den Tabellen zellen ein Breite vorzugeben.

    z.b. so: (nur beispielwerte)
    Code: PHP  [Auswählen]
    $data_products.= '<tr>' . "\n" . '  <td class="main_header" align="left" valign="top" width="7%"><b>' . HEADER_QTY . '</b></td>'
                . "\n" . '  <td class="main_header" align="left" valign="top" colspan="2"><b>' . HEADER_ARTICLE . '</b></td>'
                . "\n" . '  <td class="main_header" align="right" valign="top" width="10%"><b>' . HEADER_SINGLE . '</b></td>'
                . "\n" . '  <td class="main_header" align="right" valign="top" width="10%"><b>' . HEADER_TOTAL . '</b></td>
             </tr>'
    . "\n";

    saez

    • Frisch an Board
    • Beiträge: 50
    • Geschlecht:
    Das ist es. Vielen Dank.  :-B

    saez

    • Frisch an Board
    • Beiträge: 50
    • Geschlecht:
    Hat jemand vielleich noch eine Idee wie ich die Verlinkung von der Größe und der Lieferzeit weg bekomme.
    Werbung / Banner buchen
    3 Antworten
    3209 Aufrufe
    31. Juli 2012, 06:39:14 von jannemann
    2 Antworten
    4391 Aufrufe
    23. Juli 2012, 19:35:04 von saez
    7 Antworten
    3983 Aufrufe
    18. Januar 2013, 10:19:45 von expanse
               
    anything