} if ($updateFail == true) { $body = _('Payment via PayPal was successful, but has not been recorded due to a system error. Please check your PayPal account for details. The following may be useful:') . "\n\nPayment Token: {$paymentToken}\n\nPayer ID: {$paymentPayerID}\n\nApplication Form ID: {$gibbonApplicationFormID}\n\nApplication Fee: {$applicationFee}\n\n" . $_SESSION[$guid]["systemName"] . " " . _('Administrator'); mail($to, $subject, $body, $headers); //Success 3 $URL .= "&addReturn=success3&id=" . $_GET["id"]; header("Location: {$URL}"); exit; } //Success 1 $URL .= "&addReturn=success1&id=" . $_GET["id"]; header("Location: {$URL}"); } else { $updateFail = false; //Save payment details to gibbonPayment $gibbonPaymentID = setPaymentLog($connection2, $guid, "gibbonApplicationForm", $gibbonApplicationFormID, "Online", "Failure", $applicationFee, "Paypal", "Failure", $paymentToken, $paymentPayerID, $paymentTransactionID, $paymentReceiptID); //Link gibbonPayment record to gibbonApplicationForm, and make note that payment made if ($gibbonPaymentID != "") { try { $data = array("paymentMade" => $paymentMade, "gibbonPaymentID" => $gibbonPaymentID, "gibbonApplicationFormID" => $gibbonApplicationFormID); $sql = "UPDATE gibbonApplicationForm SET paymentMade=:paymentMade, gibbonPaymentID=:gibbonPaymentID WHERE gibbonApplicationFormID=:gibbonApplicationFormID"; $result = $connection2->prepare($sql); $result->execute($data); } catch (PDOException $e) { $updateFail = true; } } else { $updateFail = true; } if ($updateFail == true) { $body = _('Payment via PayPal was unsuccessful, and has also not been recorded due to a system error. Please check your PayPal account for details. The following may be useful:') . "\n\nPayment Token: {$paymentToken}\n\nPayer ID: {$paymentPayerID}\n\nApplication Form ID: {$gibbonApplicationFormID}\n\nApplication Fee: {$applicationFee}\n\n" . $_SESSION[$guid]["systemName"] . " " . _('Administrator');
} $mail->CharSet = "UTF-8"; $mail->Encoding = "base64"; $mail->IsHTML(true); $mail->Subject = "Receipt From " . $_SESSION[$guid]["organisationNameShort"] . " via " . $_SESSION[$guid]["systemName"]; $mail->Body = $body; $mail->AltBody = $bodyPlain; $mail->Send(); } //Success 1 $URL .= "&addReturn=success1&gibbonFinanceInvoiceID={$gibbonFinanceInvoiceID}&key={$key}"; header("Location: {$URL}"); } else { $updateFail = false; //Save payment details to gibbonPayment $gibbonPaymentID = setPaymentLog($connection2, $guid, "gibbonFinanceInvoice", $gibbonFinanceInvoiceID, "Online", "Failure", $feeTotal, "Paypal", "Failure", $paymentToken, $paymentPayerID, $paymentTransactionID, $paymentReceiptID); //Link gibbonPayment record to gibbonApplicationForm, and make note that payment made if ($gibbonPaymentID != "") { try { $data = array("gibbonPaymentID" => $gibbonPaymentID, "gibbonFinanceInvoiceID" => $gibbonFinanceInvoiceID); $sql = "UPDATE gibbonFinanceInvoice gibbonPaymentID=:gibbonPaymentID WHERE gibbonFinanceInvoiceID=:gibbonFinanceInvoiceID"; $result = $connection2->prepare($sql); $result->execute($data); } catch (PDOException $e) { $updateFail = true; } } else { $updateFail = true; } if ($updateFail == true) { //Success 2
} } } if ($status == "Paid" or $status == "Paid - Partial") { if ($_POST["status"] == "Paid") { $statusLog = "Complete"; } else { if ($_POST["status"] == "Paid - Partial") { $statusLog = "Partial"; } else { if ($_POST["status"] == "Paid - Complete") { $statusLog = "Final"; } } } $logFail = setPaymentLog($connection2, $guid, "gibbonFinanceInvoice", $gibbonFinanceInvoiceID, $paymentType, $statusLog, $paidAmountLog, NULL, NULL, NULL, NULL, $paymentTransactionID, NULL, $paidDate); if ($logFail == FALSE) { $partialFail = TRUE; } } if ($partialFail == TRUE) { //Fail 4 $URL .= "&updateReturn=fail4"; header("Location: {$URL}"); } else { if ($emailFail == TRUE) { //Success 1 $URL .= "&updateReturn=success1"; header("Location: {$URL}"); } else { //Success 0