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: ANLEITUNG: Zustimmen der AGB in checkout_confirmation

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #60 am: 25. Juli 2012, 13:38:40
    Habs hinbekommen. Erledigt!  :-B
    Managed Server

    Body62

    • Neu im Forum
    • Beiträge: 15
    • Geschlecht:
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #61 am: 29. Juli 2012, 15:01:51
     @ kyhn

    Nach der überarbeitete Anleitung von Dir nach Fehlermeldung von Websell funktioniert jetzt auch Paypal.

    Leider habe ich noch Probleme mit der Zahlung per Iclear. Das Zahlungsmodul muß wahrscheinlich überprüfen ob die AGB bestätigt wurde und da diese jetzt in der checkout_confirmation befindet kommt immer die Fehlermeldung das die AGB nicht bestätigt ist.

    Gruß Uwe

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #62 am: 31. Juli 2012, 01:19:54
    Habs gefunden: in "lang_german.conf". Aber den Doppelpunkt bekommen ich irgendwie nicht weg...

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #63 am: 01. August 2012, 03:25:53
    Hi zusammen,

    habe mich strikt an die Anleitung von Kyhn/Websell gehalten.

    Sobald ich jetzt den "Kaufen"-Button betätige, kommt die Fehlermeldung (AGB bestätigen), obwohl das Häkchen gesetzt ist.....:-(

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #64 am: 01. August 2012, 14:49:22
    Hab den Fehler gefunden. Somit...

    CLOSED!

    Trotzdem danke für die vielen Antworten ;-).

    fishnet

    • Fördermitglied
    • Beiträge: 4.821
    • Geschlecht:
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #65 am: 01. August 2012, 15:52:41
    Für alle, die später auf diesen Thread stoßen, wäre deine Lösung hilfreich  :-)

    Body62

    • Neu im Forum
    • Beiträge: 15
    • Geschlecht:
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #66 am: 01. August 2012, 17:36:51
    @ kyhn

    Nach der überarbeitete Anleitung von Dir nach Fehlermeldung von Websell funktioniert jetzt auch Paypal.

    Leider habe ich noch Probleme mit der Zahlung per Iclear. Das Zahlungsmodul muß wahrscheinlich überprüfen ob die AGB bestätigt wurde und da diese jetzt in der checkout_confirmation befindet kommt immer die Fehlermeldung das die AGB nicht bestätigt ist.

    Gruß Uwe

    so der Techniker von iclear hat das Problem gelöst nun ist aber noch ein Problem aufgetreten bei Zahlung mit Klarna, das aber auch schon vor dem Einsatz der Iclear-Technikers bestanden hat

    Man muß bei Zahlweise das Geburtsdatum und die Tel.-Nr. angeben.
    Wenn man jetzt vergisst die AGB zu bestätigen kommt die Fehlermeldung (AGB bestätigen).
    Bestätigt man jetzt die AGB kommt die Fehlermeldung das das Geburtsdatum noch nicht angebeben wurde, also merkt er sich diese Einträge nicht.
    Gibt man jetzt wieder das Datum und die Tel.-Nr. an kann man ohne Bestätigung der AGB ( kein Haken im Checkout) die Bestellung auslösen.

    Hätte ich vorher gewust das die AGB in checkout_confirmation sooooo viele Probleme bereitet hätte ich es lieber gelassen.  :’-( :’-( :’-(

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #67 am: 05. August 2012, 22:35:47
    Für alle, die später auf diesen Thread stoßen, wäre deine Lösung hilfreich  :-)

    Nun, die Anleitung funktioniert... im Prinzip. Leider ist der Code dann teilweise überladen, so dass ich es auch nur durch "Try and Error" hinbekommen habe. Bei mir waren dann eben z.B. Widerruf und AGB doppelt da, was in der Anleitung nicht auftaucht. Genau erinnern, was ich gemacht habe, kann ich mich jetzt nicht mehr.

    Allgemein: die Tipps und Hinweise hier im Forum sind zwar zu 90% nützlich. Das Nachdenken und Eigen-Modifikation am Code ersetzen sie aber nicht. Habe zwei Wochen gebraucht, um meinen Shop aufzusetzen und das hat mächtig Nerven gekostet (trotz oder gerade wegen der vielen Anleitungen hier) und SSL Proxy über all-inkl geht immer noch nicht...schon gar nicht nach Anleitung ;-).

    Trotzdem wirklich ne tolle und vor allem günstige Sache das Modified - ganz ohne Kenntnisse gehts aber nicht.

    shoppi

    • Neu im Forum
    • Beiträge: 8
    • Geschlecht:
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #68 am: 06. August 2012, 09:51:23
    Vielen Dank für die Anleitung.

    Leider läßt sich nach dem Einbau keine Bestellung mehr abschicken. Die Fehlermeldung, wenn das Kästchen nicht angehakt wird, erscheint auch nicht. Woran kann das liegen?

    Grüße

    jannemann

    • modified Team
    • Beiträge: 6.275
    • Geschlecht:
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #69 am: 06. August 2012, 10:54:12
    Hallo shopi,

    überprüfe noch mal deinen Einbau.
    Wenn du alleine nicht weiter kommst, kannst du dir auch kommerzielle Hilfe holen.

    Schöne Grüße,
    Jan

    freidenker77

    • Frisch an Board
    • Beiträge: 69
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #70 am: 07. August 2012, 11:09:53
    Es wäre wesentlich einfacher für Anfänger, wenn jemand mal den komplett fertigen Code posten würde. Aber da es für die Meisten ja sooo problematisch ist, erworbenes Wissen weiterzugeben (Sinn eines Forums???), mache ich das hier mal ganz altruistisch:

    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>
    {if $error!=''}<div class="errormessage">{$error}</div>{/if}
    <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_LINK}<br />

    <h2>{#title_agb#}</h2>
    <p>{$CHECKOUT_FORM}{if $MODULE_BUTTONS!=''}&nbsp;{$MODULE_BUTTONS}{/if}</p>
    <p class="checkoutagb"></p>
    <table width="100%" border="0" cellspacing="0" cellpadding="4">
      <tr>
        <td>{$AGB_checkbox}</td>
        <td width="100%"><strong>{#text_accept_agb#}</strong></td>
     </tr>
    </table>
    <p><strong>{$AGB_TITLE}</strong>{$AGB_LINK}{/if}</p>
    {$CHECKOUT_BUTTON}

    checkout_confirmation.php (unter den Release-Angaben):

    Code: PHP  [Auswählen]
    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');

    // 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;

    /* BOF - kyhn - 2011-06-21 - AGB/conditions check not necessary */
    /*
    // 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));
            }
    }
    */

    /*EOF - kyhn - 2011-06-21 - AGB/conditionscheck not necessary */

    // 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"><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">' . $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";

            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 = 'wie gewünscht.');
            }
    }

    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
    }

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

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

            $shop_content_query = xtc_db_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_data = xtc_db_fetch_array($shop_content_query);

            if ($shop_content_data['content_file'] != '') {
                    /* BOF - Hetfield - 2010-01-21 - Bugfix including contentfiles at SSL-Proxy */
                    //$conditions = '<iframe SRC="' . DIR_WS_CATALOG . 'media/content/' . $shop_content_data['content_file'] . '" width="100%" height="300">';
                    $conditions = '<div class="agbframe">' . file_get_contents(DIR_FS_DOCUMENT_ROOT . 'media/content/' . $shop_content_data['content_file']) . '</div>';
                    /* EOF - Hetfield - 2010-01-21 - Bugfix including contentfiles at SSL-Proxy */
            } else {
                    /* BOF - Hetfield - 2010-01-20 - Remove agb-textarea from checkout_payment */
                    //$conditions = '<textarea name="blabla" cols="60" rows="10" readonly="readonly">' . strip_tags(str_replace('<br />', "\n", $shop_content_data['content_text'])) . '</textarea>';
                    $conditions = '<div class="agbframe">' . $shop_content_data['content_text'] . '</div>';
                    /* EOF - Hetfield - 2010-01-20 - Remove agb-textarea from checkout_payment */
            }

            $smarty->assign('AGB', $conditions);
      //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

            // BOF - Tomcraft - 2009-10-01 - AGB checkbox re-implemented
            if (isset ($_GET['step']) && $_GET['step'] == 'step2') {
                    $smarty->assign('AGB_checkbox', '<input type="checkbox" value="conditions" name="conditions" checked />');
            } else {
                    $smarty->assign('AGB_checkbox', '<input type="checkbox" value="conditions" name="conditions" />');
            }
            // EOF - Tomcraft - 2009-10-01 - AGB checkbox re-implemented

    }

    $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');
    ?>

    Das dürfte Euch um einiges weiter bringen - bei mir funzt es. ;-)

    Gruß,

    Guido

    Rubi

    • Neu im Forum
    • Beiträge: 47
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #71 am: 14. Oktober 2013, 10:02:54
    Danke für die Anleitung, funktioniert sehr gut, bis auf die Bezahlung per Sofort-Überweisung: man wird auf die Sofort-Überweisungs-Seite weitergeleitet und kann die Bezahlung durchführen, landet dann aber wieder auf der Confirmation-Seite mit dem Hinweis, dass man die AGBs akzeptieren muss. Die Bezahlung wurde also abgeschlossen, man kann den Kauf jedoch nicht abschließen!

    Anscheinend wird die Session-Variable, dass die AGBs akzeptiert wurden, nicht übergeben...

    Rubi

    • Neu im Forum
    • Beiträge: 47
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #72 am: 14. Oktober 2013, 10:59:58
    Nachtrag: als Quickfix habe ich den Code aus checkout_process.php entfernt und arbeite jetzt direkt auf der checkout_confirmation.html mit Parsley.js: http://parsleyjs.org/index.html

    bennyle

    • Neu im Forum
    • Beiträge: 16
    Re: ANLEITUNG: Zustimmen der AGB in checkout_confirmation
    Antwort #73 am: 19. Februar 2021, 07:49:26
    Um das Problem mit Sofortüberweisung zu lösen könnte man in checkout_process.php folgenden Code:
    Code: PHP  [Auswählen]
    if ($_POST['conditions'] == false) {
    mit diesem ersetzen:
    Code: PHP  [Auswählen]
    if ($_POST['conditions'] == false AND !isset ($_GET['transaction'])) {
    rechtstexte für onlineshop
    16 Antworten
    11452 Aufrufe
    07. August 2012, 23:51:43 von maxxin
    39 Antworten
    22738 Aufrufe
    02. September 2013, 12:47:32 von pomm
    1 Antworten
    2943 Aufrufe
    20. Juli 2012, 13:18:53 von jannemann
    6 Antworten
    5728 Aufrufe
    13. Juli 2011, 07:29:07 von Tomcraft
               
    anything