Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
jiji2018
Hello, can you tell me which page you modified which code?
I never found it
No I cannot because I don't know where in your template you have checkout buttons.
1 Attachment(s)
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
mprough
No I cannot because I don't know where in your template you have checkout buttons.
Checkout button on the shopping cart page
As shown in the screenshot below
Attachment 18607
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
jiji2018
Checkout button on the shopping cart page
As shown in the screenshot below
Attachment 18607
That edit, depending on your template is in includes/templates/your-template/templates/tpl_shopping_cart_default.php
1 Attachment(s)
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
mprough
That edit, depending on your template is in includes/templates/your-template/templates/tpl_shopping_cart_default.php
This link should be judged by existence, where is the real link modified?
Attachment 18608
Re: One-Page Checkout [Support Thread]
Hello everyone.
Installed the mod on a fresh installation v1.5.6c. While testing the checkout process I'm getting this error "Please contact the store owner; some required elements of this page are missing". No log files generated (weird right?)
So looking at the console I get:
Missing #current-order-total
Missing #opc-order-confirm
Missing #opc-order-review
from jquery.checkout_one.min.js
Any idea why??
Re: One-Page Checkout [Support Thread]
@mvstudio, those console-errors are logged by OPC's jQuery (so there aren't any logs). From the missing elements, it looks like there's been a change (or template-override) to the /includes/templates/template_default/templates/tpl_modules_opc_submit_block.php; that's where those elements are added to the checkout_one page.
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
lat9
@mvstudio, those console-errors are logged by OPC's jQuery (so there aren't any logs). From the missing elements, it looks like there's been a change (or template-override) to the /includes/templates/template_default/templates/tpl_modules_opc_submit_block.php; that's where those elements are added to the checkout_one page.
Thank you Lat9 for the quick reply. I thought I made sure when I installed the plugin that all the files were exactly in the folders they were supposed to be. But I did miss copying the rest of the files on the modules>pages>checkout_payment to the modules>pages>checkout_one. It seems to be working now the way it should.
I do have another question I couldn't find the answer for. Do Square and PayPal require confirmation? Should they be entered in the Payment Methods Requiring Confirmation setting in the admin or not?
Thanks so much!
Re: One-Page Checkout [Support Thread]
Spoke too soon!
Apparently the issue didn't get fix and now I know why.
I modified the tpl_modules_opc_submit_block.php and added that block of code to prevent the checkout button from showing up if the order didn't reach the minimum amount $100 for free shipping. With the regular checkout it works, and it works with OPC as long as the amount is above $100. However in testing with lower amounts that's when I get the error and I have no clue how to make it work.
Code:
<?php
// -----
// Part of the One-Page Checkout plugin, provided under GPL 2.0 license by lat9 ([email protected]).
// Copyright (C) 2013-2017, Vinos de Frutas Tropicales. All rights reserved.
//
// Check to see that at least one shipping-method and one payment-method is enabled; if not, don't render the submit-button.
//
if ($shipping_module_available && $payment_module_available) {
// -----
// Set up two form-submittal buttons, one for payment methods that require confirmation and one for those that don't.
// This page's header_php.php has created an array of payment modules that require confirmation, which is pulled into the
// page's jscript_main.php.
//
?>
<!-- bof disable checkout button from displaying 1 of 2 -->
<?php
if (!IS_ADMIN_FLAG) {
global $order;
if (($order->info['total'] < 100) && is_object ($freeoptions)) {
echo '<div style="border: 3px solid #777777; padding: 10px 0;"><p style="text-align: center;"><strong>Your order does not qualify for Free Shipping at this time.</strong></p>
<p style="text-align: center;"><strong>Please go back to the - <a href="index.php?main_page=shopping_cart">SHOPPING BAG</a> - to add more products or increase the quantity of products in your bag to meet the minimum order amount required to qualify
for free shipping,</strong><br /><strong>or select a different shipping option.</strong></p>';
} else {
?>
<!-- eof disable checkout button from displaying 1 of 2 -->
<!--bof submit block -->
<div id="checkoutOneSubmit" class="buttonRow">
<span id="opc-order-confirm"><?php echo zen_image_button(BUTTON_IMAGE_CHECKOUT_ONE_CONFIRM, BUTTON_CHECKOUT_ONE_CONFIRM_ALT, 'name="btn_submit" id="btn_submit"'); ?></span>
<span id="opc-order-review"><?php echo zen_image_button(BUTTON_IMAGE_CHECKOUT_ONE_REVIEW, BUTTON_CHECKOUT_ONE_REVIEW_ALT, 'name="btn_submit" id="btn_submit"'); ?></span>
<?php echo zen_draw_hidden_field('order_confirmed', '1', 'id="confirm-the-order"') . zen_draw_hidden_field ('current_order_total', '0', 'id="current-order-total"'); ?>
</div>
<!-- bof disable checkout button from displaying 2 of 2 -->
<?php } } ?>
<!-- eof disable checkout button from displaying 2 of 2 -->
<div class="clearBoth"></div>
<!--eof submit block -->
<?php
}
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
mvstudio
Thank you Lat9 for the quick reply. I thought I made sure when I installed the plugin that all the files were exactly in the folders they were supposed to be. But I did miss copying the rest of the files on the modules>pages>checkout_payment to the modules>pages>checkout_one. It seems to be working now the way it should.
I do have another question I couldn't find the answer for. Do Square and PayPal require confirmation? Should they be entered in the Payment Methods Requiring Confirmation setting in the admin or not?
Thanks so much!
The payment methods that use an AJAX form of checkout (e.g. square and paypaldp) don't specifically require confirmation; it depends on how you want your store configured.
Re: One-Page Checkout [Support Thread]
Quote:
Originally Posted by
mvstudio
Spoke too soon!
Apparently the issue didn't get fix and now I know why.
I modified the tpl_modules_opc_submit_block.php and added that block of code to prevent the checkout button from showing up if the order didn't reach the minimum amount $100 for free shipping. With the regular checkout it works, and it works with OPC as long as the amount is above $100. However in testing with lower amounts that's when I get the error and I have no clue how to make it work.
Code:
<?php
// -----
// Part of the One-Page Checkout plugin, provided under GPL 2.0 license by lat9 ([email protected]).
// Copyright (C) 2013-2017, Vinos de Frutas Tropicales. All rights reserved.
//
// Check to see that at least one shipping-method and one payment-method is enabled; if not, don't render the submit-button.
//
if ($shipping_module_available && $payment_module_available) {
// -----
// Set up two form-submittal buttons, one for payment methods that require confirmation and one for those that don't.
// This page's header_php.php has created an array of payment modules that require confirmation, which is pulled into the
// page's jscript_main.php.
//
?>
<!-- bof disable checkout button from displaying 1 of 2 -->
<?php
if (!IS_ADMIN_FLAG) {
global $order;
if (($order->info['total'] < 100) && is_object ($freeoptions)) {
echo '<div style="border: 3px solid #777777; padding: 10px 0;"><p style="text-align: center;"><strong>Your order does not qualify for Free Shipping at this time.</strong></p>
<p style="text-align: center;"><strong>Please go back to the - <a href="index.php?main_page=shopping_cart">SHOPPING BAG</a> - to add more products or increase the quantity of products in your bag to meet the minimum order amount required to qualify
for free shipping,</strong><br /><strong>or select a different shipping option.</strong></p>';
} else {
?>
<!-- eof disable checkout button from displaying 1 of 2 -->
<!--bof submit block -->
<div id="checkoutOneSubmit" class="buttonRow">
<span id="opc-order-confirm"><?php echo zen_image_button(BUTTON_IMAGE_CHECKOUT_ONE_CONFIRM, BUTTON_CHECKOUT_ONE_CONFIRM_ALT, 'name="btn_submit" id="btn_submit"'); ?></span>
<span id="opc-order-review"><?php echo zen_image_button(BUTTON_IMAGE_CHECKOUT_ONE_REVIEW, BUTTON_CHECKOUT_ONE_REVIEW_ALT, 'name="btn_submit" id="btn_submit"'); ?></span>
<?php echo zen_draw_hidden_field('order_confirmed', '1', 'id="confirm-the-order"') . zen_draw_hidden_field ('current_order_total', '0', 'id="current-order-total"'); ?>
</div>
<!-- bof disable checkout button from displaying 2 of 2 -->
<?php } } ?>
<!-- eof disable checkout button from displaying 2 of 2 -->
<div class="clearBoth"></div>
<!--eof submit block -->
<?php
}
That's because the checkout process shouldn't be entered if the checkout can't be completed. You could add the code fragment as an extra "header", e.g. /includes/modules/pages/checkout_one/header_php_min_order.php, and redirect back to the shopping-cart page with a message.