function process_payment($order_number, $order_total, &$d) { global $vendor_name, $VM_LANG, $vmLogger; $auth = $_SESSION['auth']; /*** Get the Configuration File for eway ***/ require_once CLASSPATH . "payment/" . $this->classname . ".cfg.php"; /* eWAY Gateway Location (URI) */ if (EWAY_TEST_REQUEST == "FALSE") { define("GATEWAY_URL", "https://www.eway.com.au/gateway_cvn/xmlpayment.asp"); } else { define("GATEWAY_URL", "https://www.eway.com.au/gateway_cvn/xmltest/testpage.asp"); } // Get user billing information $db = new ps_DB(); $qt = "SELECT * FROM #__users WHERE id='" . $auth["user_id"] . "' AND address_type='BT'"; $db->query($qt); $db->next_record(); // WE need the $order_total in cents! $order_total = $order_total * 100; // We need to show the year with two digits only $year = substr($_SESSION['ccdata']['order_payment_expire_year'], 2, 2); $my_trxn_number = uniqid("eway_"); $payer_name_is = $_SESSION['ccdata']['order_payment_name']; $eway = new EwayPayment(EWAY_CUSTID, GATEWAY_URL); $eway->setCustomerFirstname($db->f("first_name")); $eway->setCustomerLastname($db->f("last_name")); $eway->setCustomerEmail($db->f("email")); $eway->setCustomerAddress($db->f("address_1")); $eway->setCustomerPostcode($db->f("zip")); $eway->setCustomerInvoiceDescription($vendor_name . " Order"); $eway->setCustomerInvoiceRef($order_number); $eway->setCardHoldersName($payer_name_is + ''); $eway->setCardNumber($_SESSION['ccdata']['order_payment_number']); $eway->setCardExpiryMonth($_SESSION['ccdata']['order_payment_expire_month']); $eway->setCardExpiryYear($year + ''); $eway->setCardCVN($_SESSION['ccdata']['credit_card_code']); $eway->setTrxnNumber($my_trxn_number); $eway->setTotalAmount($order_total); if ($eway->doPayment() == EWAY_TRANSACTION_OK) { $d["order_payment_log"] = $VM_LANG->_('PHPSHOP_PAYMENT_TRANSACTION_SUCCESS'); //Catch Transaction ID $d["order_payment_trans_id"] = $eway->getTrxnNumber(); //$d["error"] = ""; return true; } else { $vmLogger->err($VM_LANG->_('PHPSHOP_PAYMENT_ERROR', false) . ": " . $eway->getErrorMessage()); //Catch Transaction ID $d["order_payment_trans_id"] = $eway->getTrxnNumber(); return false; } }