Files
2017-03-02 20:30:40 -06:00

64 lines
2.1 KiB
PHP

<?php
if (!defined('CC_INI_SET')) die("Access Denied");
require_once 'CallerService.php';
session_start();
$nvpStr = "&ACTION[1]=D".
"&TOKEN[".strlen($_SESSION['token'])."]=".$_SESSION['token'].
"&PAYERID[".strlen($_SESSION['payer_id'])."]=".$_SESSION['payer_id'].
"&AMT[".strlen($orderSum['prod_total'])."]=".$orderSum['prod_total'].
"&INVNUM[".strlen($_GET['cart_order_id'])."]=".$_GET['cart_order_id'];
$BUTTONSOURCE = "CubeCart_Cart_PRO2EC";
$nvpStr.="&BUTTONSOURCE[".strlen($BUTTONSOURCE)."]=".$BUTTONSOURCE;
$TRXTYPE = $module['paymentAction'] == "Sale" ? "S" : "A";
$request_id = md5($_SESSION['payer_id'].$orderSum['prod_total'].$_SESSION['token'].date('YmdGis')."1");
$resArray = hash_call("P",$TRXTYPE,$nvpStr,$request_id);
$ack = $resArray["RESULT"] == 0 ? "SUCCESS" : "FAIL";
$transData['customer_id'] = $orderSum["customer_id"];
$transData['gateway'] = "PayPal Website Payments Pro (".$_SESSION['paymentType'].")";
$transData['extra'] = "P";
$transData['trans_id'] = $resArray['PNREF'];
$transData['order_id'] = $_GET['cart_order_id'];
$transData['amount'] = $orderSum['prod_total'];
$transData['status'] = $ack;
include("responseCodes.php");
if(isset($resArray["AVSADDR"])) {
$extraNotes .= "Address: ".basicResponse($resArray["AVSADDR"]).", ";
}
if(isset($resArray["AVSZIP"])) {
$extraNotes .= "Zip/Post Code: ".basicResponse($resArray["AVSZIP"]).", ";
}
$extraNotes = substr($extraNotes0,-2);
if(strlen($extraNotes>5)) {
$extraNotes = substr($extraNotes0,-2).".";
}
$transData['notes'] = "Successful transaction via PayPal Express Checkout. Payer status is '".strtolower($_SESSION['PAYERSTATUS'])."'. ".$extraNotes;
$order->storeTrans($transData);
if($ack=="SUCCESS"){
// Sale = Funds taken immediately otherwise they may be taken later
$orderStatus = ($_SESSION['paymentType'] == "Sale") ? 3 : 2; // 3 is payment complete, 2 is processing
$paymentResult = ($_SESSION['paymentType'] == "Sale") ? 2 : 3; // Just to confuse matter Al you plonker!! 2 = money taken 3 = money not yet taken (Athorized)
$order->orderStatus($orderStatus,$_GET['cart_order_id']);
} else {
$paymentResult = 1;
}
session_unset();
?>