<?php
/**
 * OpenMage
 *
 * This source file is subject to the Academic Free License (AFL 3.0)
 * that is bundled with this package in the file LICENSE_AFL.txt.
 * It is also available at https://opensource.org/license/afl-3-0-php
 *
 * @category    design
 * @package     base_default
 * @copyright   Copyright (c) 2006-2020 Magento, Inc. (https://www.magento.com)
 * @copyright   Copyright (c) 2021-2022 The OpenMage Contributors (https://www.openmage.org)
 * @license     https://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
 */
/** @var $this Mage_Paypal_Block_Express_Review */
?>
<div class="page-title">
    <h1><?php echo $this->__('Review Order') ?></h1>
</div>
<?php echo $this->getMessagesBlock()->toHtml() ?>
<?php if ($this->getShippingAddress()): ?>
    <div class="info-set col2-set">
        <h2 class="legend"><?php echo $this->__('Shipping Information') ?></h2>
        <div class="col-1">
            <div class="box">
                <div class="box-title">
                    <h3><?php echo $this->__('Shipping Address') ?><span class="separator"><?php if ($this->getCanEditShippingAddress()):?> | </span><a href="<?php echo $this->getEditUrl() ?>"><?php echo $this->__('Edit') ?></a><?php endif ?></h3>
                </div>
                <div class="box-content">
                    <address><?php echo $this->renderAddress($this->getShippingAddress())?></address>
                </div>
            </div>
        </div>
        <div class="col-2">
            <div class="box">
                <div class="box-title">
                    <h3><?php echo $this->__('Shipping Method') ?></h3>
                </div>
                <div class="box-content">
                    <form method="post" id="shipping_method_form" action="<?php echo $this->escapeHtml($this->getShippingMethodSubmitUrl()) ?>">
                        <?php if ($this->getCanEditShippingMethod() || !$this->getCurrentShippingRate()):?>
                            <?php if ($groups = $this->getShippingRateGroups()):?>
                                <?php $currentRate = $this->getCurrentShippingRate(); ?>
                                <fieldset>
                                    <select name="shipping_method" id="shipping_method" style="width:250px;" class="required-entry">
                                        <?php if (!$currentRate):?>
                                            <option value=""><?php echo $this->__('Please select a shipping method...') ?></option>
                                        <?php endif ?>
                                        <?php foreach ($groups as $code => $rates):?>
                                            <optgroup label="<?php echo $this->escapeHtml($this->getCarrierName($code)) ?>" style="font-style:normal;">
                                                <?php foreach ($rates as $rate):?>
                                                    <option value="<?php echo $this->renderShippingRateValue($rate)?>"<?php echo ($currentRate === $rate) ? ' selected="selected"' : '' ;?>>
                                                        <?php echo $this->renderShippingRateOption($rate)?>
                                                    </option>
                                                <?php endforeach ?>
                                            </optgroup>
                                        <?php endforeach ?>
                                    </select>
                                </fieldset>
                                <p class="actions">
                                    <button id="update_shipping_method_submit" type="submit" class="button"><span><span><?php echo $this->__('Update Shipping Method') ?></span></span></button>
                                </p>
                            <?php else: ?>
                                <p><strong><?php echo $this->__('Sorry, no quotes are available for this order at this time.') ?></strong></p>
                            <?php endif ?>
                        <?php else: ?>
                            <p><strong><?php echo $this->renderShippingRateOption($this->getCurrentShippingRate())?></strong></p>
                        <?php endif ?>
                    </form>
                </div>
            </div>
        </div>
    </div>
<?php endif ?>

<div class="info-set col2-set">
    <h2 class="legend"><?php echo $this->__('Billing Information') ?></h2>
    <div class="col-1">
        <div class="box">
            <div class="box-title">
                <h3><?php echo $this->__('Payment Method') ?> <span class="separator">|</span>
                    <?php if($this->getEditUrl()):?><a href="<?php echo $this->getEditUrl() ?>"><?php echo $this->__('Edit Payment Information') ?></a> <?php endif ?>
                </h3>
            </div>
            <div class="box-content">
                <?php echo $this->escapeHtml($this->getPaymentMethodTitle()) ?>
            </div>
        </div>
    </div>
</div>

<div class="info-set">
    <h2 class="legend"><?php echo $this->__('Items in Your Shopping Cart') ?><span class="separator"> | </span><a href="<?php echo $this->getUrl('checkout/cart') ?>"><?php echo $this->__('Edit Shopping Cart') ?></a></h2>
    <div id="details-reload">
        <?php echo $this->getChildHtml('details') ?>
    </div>
</div>
<form method="post" id="order_review_form" action="<?php echo $this->getPlaceOrderUrl() ?>">
    <?php echo $this->getChildHtml('agreements'); ?>
    <div class="buttons-set buttons-set-order" id="review-buttons-container">
        <button type="button" id="review_button" value="<?php echo Mage::helper('core')->quoteEscape($this->__('Place Order')) ?>" class="button btn-checkout"><span><span><?php echo $this->__('Place Order') ?></span></span></button>
        <button type="button" id="review_submit" value="<?php echo Mage::helper('core')->quoteEscape($this->__('Place Order')) ?>" class="button btn-checkout"><span><span><?php echo $this->__('Place Order') ?></span></span></button>
        <span class="please-wait" id="review-please-wait" style="display:none;">
            <img src="<?php echo $this->getSkinUrl('images/opc-ajax-loader.gif') ?>" alt="<?php echo Mage::helper('core')->quoteEscape($this->__('Submitting order information...')) ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Submitting order information...')) ?>" class="v-middle" /> <?php echo $this->__('Submitting order information...') ?>
        </span>
    </div>
</form>
<script type="text/javascript">
    //<![CDATA[
    // submit buttons are not needed when submitting with ajax
    $('review_submit').hide();
    if ($('update_shipping_method_submit')) {
        $('update_shipping_method_submit').hide();
    }

    <?php if ($this->getUseAjax()):?>
    OrderReviewController.prototype._submitOrder = function() {
        if (this._canSubmitOrder) {
            if (this._pleaseWait) {
                this._pleaseWait.show();
            }
            new Ajax.Request(this.form.action, {
                parameters: {isAjax: 1, method: 'POST'},
                onSuccess: function(transport) {
                    var response = transport.responseJSON || transport.responseText.evalJSON(true) || {};
                    if (response.redirect) {
                        setLocation(response.redirect);
                        return;
                    }
                    if (response.success) {
                        setLocation('<?php echo $this->getSuccessUrl()?>');
                        return;
                    } else {
                        var msg = response.error_messages;
                        if (Object.isArray(msg)) {
                            msg = msg.join("\n").stripTags().toString();
                        }
                        if (msg) {
                            $('review-please-wait').hide();
                            alert(msg.stripTags().toString());
                            return;
                        }
                    }
                    $('review-please-wait').hide();
                    alert('<?php echo $this->jsQuoteEscape($this->__('Unknown Error. Please try again later.')); ?>');
                    return;
                },
                onFailure: function(){
                    alert('<?php echo $this->jsQuoteEscape($this->__('Server Error. Please try again.')) ?>');
                    $('review-please-wait').hide();
                }
            });
        }
    }
    <?php endif ?>

    PayPalExpressAjax = new OrderReviewController($('order_review_form'), $('review_button'),
        $('shipping_method'), $('shipping_method_form'), 'details-reload'
    );
    PayPalExpressAjax.addPleaseWait($('review-please-wait'));
    //]]>
</script>
