Example #1
0
function fflcommerce_process_checkout()
{
    if (!is_checkout() || is_fflcommerce_single_page(FFLCOMMERCE_PAY)) {
        return;
    }
    if (count(fflcommerce_cart::get_cart()) == 0) {
        wp_safe_redirect(get_permalink(fflcommerce_get_page_id('cart')));
        exit;
    }
    /** @var fflcommerce_checkout $_checkout */
    $_checkout = fflcommerce_checkout::instance();
    $result = $_checkout->process_checkout();
    if (isset($result['result']) && $result['result'] === 'success') {
        wp_safe_redirect(apply_filters('fflcommerce_is_ajax_payment_successful', $result['redirect']));
        exit;
    }
    if (isset($result['redirect'])) {
        wp_safe_redirect(get_permalink($result['redirect']));
        exit;
    }
}
function fflcommerce_process_ajax_checkout()
{
    include_once FFLCOMMERCE_DIR . '/classes/fflcommerce_checkout.class.php';
    /** @var fflcommerce_checkout $checkout */
    $checkout = fflcommerce_checkout::instance();
    $result = $checkout->process_checkout();
    if ($result === false) {
        fflcommerce::show_messages();
        exit;
    }
    if (isset($result['result']) && $result['result'] == 'redirect') {
        echo json_encode(array('result' => 'success', 'redirect' => get_permalink($result['redirect'])));
        exit;
    }
    echo json_encode(apply_filters('fflcommerce_is_ajax_payment_successful', $result));
    exit;
}