public/plugin/buycourses/src/expresscheckout.php
<?php
/* For license terms, see /license.txt */
/**
* PayPal Express Checkout Module.
*/
/**
* Init.
*/
require_once 'paypalfunctions.php';
/**
* The paymentAmount is the total value of
* the shopping cart, that was set
* earlier in a session variable
* by the shopping cart page.
*/
$paymentAmount = $_SESSION["Payment_Amount"];
/**
* The currencyCodeType and paymentType
* are set to the selections made on the Integration Assistant.
*/
$paymentType = "Sale";
/**
* Calls the SetExpressCheckout API call
* The CallShortcutExpressCheckout function is defined in the file PayPalFunctions.php,
* it is included at the top of this file.
*/
$resArray = CallShortcutExpressCheckout($paymentAmount, $currencyCodeType, $paymentType, $returnURL, $cancelURL);
$ack = strtoupper($resArray["ACK"]);
if ("SUCCESS" == $ack || "SUCCESSWITHWARNING" == $ack) {
RedirectToPayPal($resArray["TOKEN"]);
} else {
//Display a user friendly Error on the page using any of the following error information returned by PayPal
$ErrorCode = urldecode($resArray["L_ERRORCODE0"]);
$ErrorShortMsg = urldecode($resArray["L_SHORTMESSAGE0"]);
$ErrorLongMsg = urldecode($resArray["L_LONGMESSAGE0"]);
$ErrorSeverityCode = urldecode($resArray["L_SEVERITYCODE0"]);
echo "SetExpressCheckout API call failed. ";
echo "Detailed Error Message: ".$ErrorLongMsg;
echo "Short Error Message: ".$ErrorShortMsg;
echo "Error Code: ".$ErrorCode;
echo "Error Severity Code: ".$ErrorSeverityCode;
}