Пример #1
0
    $shipping = "5.00";
    $f3->set('itemcount', $basket->count());
    $f3->set('cartitems', $cart);
    $f3->set('subtotal', sprintf("%01.2f", $subtotal));
    $f3->set('shipping', sprintf("%01.2f", $shipping));
    $f3->set('ordertotal', sprintf("%01.2f", $subtotal + $shipping));
    $f3->set('shippingaddress', $shippingaddress);
    echo \Template::instance()->render('review.html');
});
$f3->route('GET /ecm', function ($f3) {
    $basket = new \Basket();
    $cartitems = $basket->find();
    $paypal = new PayPal();
    $subtotal = $paypal->copyBasket($cartitems);
    $shippingaddress = unserialize($f3->get('SESSION.address'));
    $paypal->setShippingAddress($shippingaddress['name'], $shippingaddress['address1'], $shippingaddress['address2'], $shippingaddress['city'], $shippingaddress['state'], $shippingaddress['postcode'], $shippingaddress['country']);
    $shipping = "5.00";
    $paypal->setShippingAmt($shipping);
    $ordertotal = $subtotal + $shipping;
    $options = array('ADDROVERRIDE' => '1', 'RETURNURL' => 'http://yourdomain.tld/complete', 'BRANDNAME' => 'F3PYPL');
    $result = $paypal->create("Sale", "EUR", $ordertotal, $options);
    // Reroute buyer to PayPal with resulting transaction token
    if ($result['ACK'] != 'Success') {
        // Handle API error code
        die('Error with API call - ' . $result["L_ERRORCODE0"]);
    } else {
        // Redirect Buyer to PayPal
        $f3->reroute($result['redirect'] . '&useraction=commit');
    }
});
$f3->route('GET /complete', function ($f3) {