ghprosvs Posted June 6, 2018 Share Posted June 6, 2018 Hi Craig, again, thank you so much for your efforts to help us out. Unfortunately for me the result remains the same, customer can still place the order and is then logged out and redirected to the login page in stead of the checkout success page. Please see below my checkout_confirmation page (where the MATC should be applied on) I appreciate any further help you maybe can provide. Kind regards Gerry <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2010 osCommerce Released under the GNU General Public License */ require('includes/application_top.php'); // if the customer is not logged on, redirect them to the login page if (!tep_session_is_registered('customer_id')) { $navigation->set_snapshot(array('mode' => 'SSL', 'page' => 'checkout_payment.php')); tep_redirect(tep_href_link('login.php', '', 'SSL')); } // if there is nothing in the customers cart, redirect them to the shopping cart page if ($cart->count_contents() < 1) { tep_redirect(tep_href_link('shopping_cart.php')); } // avoid hack attempts during the checkout procedure by checking the internal cartID if (isset($cart->cartID) && tep_session_is_registered('cartID')) { if ($cart->cartID != $cartID) { tep_redirect(tep_href_link('checkout_shipping.php', '', 'SSL')); } } // if no shipping method has been selected, redirect the customer to the shipping method selection page if (!tep_session_is_registered('shipping')) { tep_redirect(tep_href_link('checkout_shipping.php', '', 'SSL')); } if (!tep_session_is_registered('payment')) tep_session_register('payment'); if (isset($_POST['payment'])) $payment = $_POST['payment']; if (!tep_session_is_registered('comments')) tep_session_register('comments'); if (isset($_POST['comments']) && tep_not_null($_POST['comments'])) { $comments = tep_db_prepare_input($_POST['comments']); } // load the selected payment module require('includes/classes/payment.php'); $payment_modules = new payment($payment); require('includes/classes/order.php'); $order = new order; $payment_modules->update_status(); if ( ($payment_modules->selected_module != $payment) || ( is_array($payment_modules->modules) && (sizeof($payment_modules->modules) > 1) && !is_object($$payment) ) || (is_object($$payment) && ($$payment->enabled == false)) ) { tep_redirect(tep_href_link('checkout_payment.php', '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('includes/classes/shipping.php'); $shipping_modules = new shipping($shipping); require('includes/classes/order_total.php'); $order_total_modules = new order_total; $order_total_modules->process(); // Stock Check $any_out_of_stock = false; if (STOCK_CHECK == 'true') { for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { if (tep_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) ) { tep_redirect(tep_href_link('shopping_cart.php')); } } //----- BEGINNING OF ADDITION: MATC -----// if (tep_db_prepare_input($_POST['TermsAgree']) != 'true' and MATC_AT_CHECKOUT != 'false') { tep_redirect(tep_href_link('checkout_payment.php', 'matcerror=true', 'SSL')); } //----- END OF ADDITION: MATC -----// require('includes/languages/' . $language . '/checkout_confirmation.php'); $breadcrumb->add(NAVBAR_TITLE_1, tep_href_link('checkout_shipping.php', '', 'SSL')); $breadcrumb->add(NAVBAR_TITLE_2); require('includes/template_top.php'); ?> <div class="page-header"> <h1 class="h3"><?php echo HEADING_TITLE; ?></h1> </div> <?php if ($messageStack->size('checkout_confirmation') > 0) { echo $messageStack->output('checkout_confirmation'); } if (isset($$payment->form_action_url)) { $form_action_url = $$payment->form_action_url; } else { $form_action_url = tep_href_link('checkout_process.php', '', 'SSL'); } echo tep_draw_form('checkout_confirmation', $form_action_url, 'post'); ?> <div class="contentContainer"> <div class="contentText"> <div class="panel panel-default"> <div class="panel-heading"><?php echo '<strong>' . HEADING_PRODUCTS . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('shopping_cart.php'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></div> <div class="panel-body"> <table width="100%" class="table-hover order_confirmation"> <tbody> <?php for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { echo ' <tr>' . "\n" . ' <td align="right" valign="top" width="30">' . $order->products[$i]['qty'] . ' x </td>' . "\n" . ' <td valign="top">' . $order->products[$i]['name']; if (STOCK_CHECK == 'true') { echo tep_check_stock($order->products[$i]['id'], $order->products[$i]['qty']); } if ( (isset($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0) ) { for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++) { echo '<br /><nobr><small> <i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '</i></small></nobr>'; } } echo '</td>' . "\n"; if (sizeof($order->info['tax_groups']) > 1) echo ' <td valign="top" align="right">' . tep_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n"; echo ' <td align="right" valign="top">' . $currencies->display_price($order->products[$i]['final_price'], $order->products[$i]['tax'], $order->products[$i]['qty']) . '</td>' . "\n" . ' </tr>' . "\n"; } ?> </tbody> </table> <hr> <table width="100%" class="pull-right"> <?php if (MODULE_ORDER_TOTAL_INSTALLED) { echo $order_total_modules->output(); } ?> </table> </div> </div> </div> <div class="clearfix"></div> <div class="row"> <?php if ($sendto != false) { ?> <div class="col-sm-4"> <div class="panel panel-info"> <div class="panel-heading"><?php echo '<strong>' . HEADING_DELIVERY_ADDRESS . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('checkout_shipping_address.php', '', 'SSL'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></div> <div class="panel-body"> <?php echo tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br />'); ?> </div> </div> </div> <?php } ?> <div class="col-sm-4"> <div class="panel panel-warning"> <div class="panel-heading"><?php echo '<strong>' . HEADING_BILLING_ADDRESS . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('checkout_payment_address.php', '', 'SSL'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></div> <div class="panel-body"> <?php echo tep_address_format($order->billing['format_id'], $order->billing, 1, ' ', '<br />'); ?> </div> </div> </div> <div class="col-sm-4"> <?php if ($order->info['shipping_method']) { ?> <div class="panel panel-info"> <div class="panel-heading"><?php echo '<strong>' . HEADING_SHIPPING_METHOD . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('checkout_shipping.php', '', 'SSL'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></div> <div class="panel-body"> <?php echo $order->info['shipping_method']; ?> </div> </div> <?php } ?> <div class="panel panel-warning"> <div class="panel-heading"><?php echo '<strong>' . HEADING_PAYMENT_METHOD . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('checkout_payment.php', '', 'SSL'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></div> <div class="panel-body"> <?php echo $order->info['payment_method']; ?> </div> </div> </div> </div> <?php if (is_array($payment_modules->modules)) { if ($confirmation = $payment_modules->confirmation()) { ?> <hr> <h2 class="h3"><?php echo HEADING_PAYMENT_INFORMATION; ?></h2> <div class="contentText row"> <?php if (tep_not_null($confirmation['title'])) { echo '<div class="col-sm-6">'; echo ' <div class="alert alert-danger">'; echo $confirmation['title']; echo ' </div>'; echo '</div>'; } ?> <?php if (isset($confirmation['fields'])) { echo '<div class="col-sm-6">'; echo ' <div class="alert alert-info">'; $fields = ''; for ($i=0, $n=sizeof($confirmation['fields']); $i<$n; $i++) { $fields .= $confirmation['fields'][$i]['title'] . ' ' . $confirmation['fields'][$i]['field'] . '<br>'; } if (strlen($fields) > 4) echo substr($fields,0,-4); echo ' </div>'; echo '</div>'; } ?> </div> <div class="clearfix"></div> <?php } } if (tep_not_null($order->info['comments'])) { ?> <hr> <h2 class="h3"><?php echo '<strong>' . HEADING_ORDER_COMMENTS . '</strong>' . tep_draw_button(TEXT_EDIT, 'fa fa-edit', tep_href_link('checkout_payment.php', '', 'SSL'), NULL, NULL, 'pull-right btn-info btn-xs' ); ?></h2> <blockquote> <?php echo nl2br(tep_output_string_protected($order->info['comments'])) . tep_draw_hidden_field('comments', $order->info['comments']); ?> </blockquote> <?php } ?> <?php //----- BEGINNING OF ADDITION: MATC -----// if($_GET['matcerror'] == 'true'){ ?> <div class="contentText"> <div class="alert alert-danger"> <div class="row"> <div class="col-xs-8"> <i class="fas fa-exclamation-circle"></i> <?php echo MATC_ERROR; ?> </div> </div> </div> </div> <?php } //----- END OF ADDITION: MATC -----// ?> <!-- BEGINNING OF ADDITION: MATC --> <?php if(MATC_AT_CHECKOUT != 'false'){ require('includes/modules/'. 'matc.php'); } ?> <div class="buttonSet"> <div class="text-right"> <?php if (is_array($payment_modules->modules)) { echo $payment_modules->process_button(); } echo tep_draw_button(IMAGE_BUTTON_FINALISE_ORDER, 'fas fa-check-circle', null, 'primary', null, 'btn-success btn-block btn-lg'); ?> </div> </div> <div class="clearfix"></div> <div class="contentText"> <div class="stepwizard"> <div class="stepwizard-row"> <div class="stepwizard-step"> <a href="<?php echo tep_href_link('checkout_shipping.php', '', 'SSL'); ?>"><button type="button" class="btn btn-default btn-circle">1</button></a> <p><a href="<?php echo tep_href_link('checkout_shipping.php', '', 'SSL'); ?>"><?php echo CHECKOUT_BAR_DELIVERY; ?></a></p> </div> <div class="stepwizard-step"> <a href="<?php echo tep_href_link('checkout_payment.php', '', 'SSL'); ?>"><button type="button" class="btn btn-default btn-circle">2</button></a> <p><a href="<?php echo tep_href_link('checkout_payment.php', '', 'SSL'); ?>"><?php echo CHECKOUT_BAR_PAYMENT; ?></a></p> </div> <div class="stepwizard-step"> <button type="button" class="btn btn-primary btn-circle">3</button> <p><?php echo CHECKOUT_BAR_CONFIRMATION; ?></p> </div> </div> </div> </div> </div> </form> <?php require('includes/template_bottom.php'); require('includes/application_bottom.php'); ?> Link to comment Share on other sites More sharing options...
ArtcoInc Posted June 6, 2018 Author Share Posted June 6, 2018 I appreciate the answers to my original question. As for the help with trying to get this MATC module to work, I think that this should have all been moved to the correct support area of this forum. That said, it does seem that people are having difficulties getting this old MATC add-on to work. I should point out that @burt wrote a MATC module for one of his 28 days collections, and a newer MATC module for his latest GDPR collection. Both of these work great. Please support him for all of his hard work in moving the osC community forward! M Link to comment Share on other sites More sharing options...
ArtcoInc Posted June 6, 2018 Author Share Posted June 6, 2018 On 5/25/2018 at 1:02 AM, inra311 said: I am not a lawyer so I cannot answer this question. Personally, I'd think when the customer creates an account he only has to accept the privacy policy. When he places an order he should accept the T&C as only then a contract is established, basing on the T&Cs. @inra311 @14steve14 I agree with you here on principal, but ... If a shop has a guest checkout, the 'guest' customer doesn't have to agree to the privacy policy. Do you think this could be an issue? I've also seen it where, upon checkout, the acceptance questions asks that the customer (either guest or otherwise) agrees to both the T&C and the Privacy policy (with the appropriate links). Thoughts? M Link to comment Share on other sites More sharing options...
inra311 Posted June 6, 2018 Share Posted June 6, 2018 Agreed, both T&C and Privacy policy on checkout. I think even as a guest he must agree the privacy policy as you work with his personal data nevertheless, like passing it to the delivery service, or to paypal etc. Link to comment Share on other sites More sharing options...
Jack_mcs Posted June 6, 2018 Share Posted June 6, 2018 For those interested, I have a BS version of MATC. I'll package it up as a new addon, probably this weekend. Support Links: For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc. All of My Addons Get the latest versions of my addons Recommended SEO Addons Link to comment Share on other sites More sharing options...
Jack_mcs Posted June 9, 2018 Share Posted June 9, 2018 The BS version of this addon can be found here. Support Links: For Hire: Contact me for anything you need help with for your shop: upgrading, hosting, repairs, code written, etc. All of My Addons Get the latest versions of my addons Recommended SEO Addons Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.