AAAAindex.html 0000666 00000000040 15137301330 0006533 0 ustar 00
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | ' . JText::_ ('COM_VIRTUEMART_ORDER_PRINT_PAYMENT_LBL') . ' | ' . "\n";
$_html .= '
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | ' . JText::_ ('VMPAYMENT_HEIDELPAY_PAYMENT_RESULT') . ' | ' . "\n";
if ($paymentData->processing_result == "ACK" AND $paymentData->payment_code == 80) {
$_html .= 'WAITING | ';
} elseif ($paymentData->processing_result == "ACK") {
$_html .= 'ACK | ';
}
if ($paymentData->processing_result == "NOK") {
$_html .= 'NOK | ';
}
$_html .= '
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | ' . JText::_ ('VMPAYMENT_HEIDELPAY_PAYMENT_METHOD') . ' | ' . "\n";
$_html .= ' ' . $paymentData->payment_methode . '.' . $paymentData->payment_type . ' (' . $paymentData->payment_name . ') | ' . "\n";
$_html .= '
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | UniqeID | ' . "\n";
$_html .= ' ' . $paymentData->unique_id . ' | ' . "\n";
$_html .= '
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | Short-ID | ' . "\n";
$_html .= ' ' . $paymentData->short_id . ' | ' . "\n";
$_html .= '
' . "\n";
$_html .= ' ' . "\n";
$_html .= ' | ' . JText::_ ('VMPAYMENT_HEIDELPAY_COMMENT') . ' | ' . "\n";
$_html .= ' ' . $paymentData->comment . ' | ' . "\n";
$_html .= '
' . "\n";
$_html .= '
' . "\n";
return $_html;
}
function plgVmOnConfirmedOrderStorePaymentData ($virtuemart_order_id, $orderData, $priceData) {
if (!$this->selectedThisPayment ($this->_pelement, $orderData->virtuemart_paymentmethod_id)) {
return NULL; // Another method was selected, do nothing
}
return FALSE;
}
function plgVmConfirmedOrder ($cart, $order) {
if (!($method = $this->getVmPluginMethod ($order['details']['BT']->virtuemart_paymentmethod_id))) {
return NULL; // Another method was selected, do nothing
}
if (!$this->selectedThisElement ($method->payment_element)) {
return FALSE;
}
$session = JFactory::getSession ();
$return_context = $session->getId ();
$this->_debug = $method->HEIDELPAY_DEBUG;
if (!class_exists ('VirtueMartModelOrders')) {
require(JPATH_VM_ADMINISTRATOR . DS . 'models' . DS . 'orders.php');
}
if (!class_exists ('VirtueMartModelCurrency')) {
require(JPATH_VM_ADMINISTRATOR . DS . 'models' . DS . 'currency.php');
}
$address = ((isset($order['details']['ST'])) ? $order['details']['ST'] : $order['details']['BT']);
if (!class_exists ('TableVendors')) {
require(JPATH_VM_ADMINISTRATOR . DS . 'table' . DS . 'vendors.php');
}
$vendorModel = VmModel::getModel ('Vendor');
$vendorModel->setId (1);
$vendor = $vendorModel->getVendor ();
$vendorModel->addImages ($vendor, 1);
$this->getPaymentCurrency ($method);
$currency_code_3 = shopFunctions::getCurrencyByID ($method->payment_currency, 'currency_code_3');
$paymentCurrency = CurrencyDisplay::getInstance ($method->payment_currency);
$totalInPaymentCurrency = round ($paymentCurrency->convertCurrencyTo ($method->payment_currency, $order['details']['BT']->order_total, FALSE), 2);
$cd = CurrencyDisplay::getInstance ($cart->pricesCurrency);
// prepare the post var values:
$languageTag = $this->getLang ();
$params = array();
$params['PRESENTATION.AMOUNT'] = $totalInPaymentCurrency;
$params['PRESENTATION.CURRENCY'] = $currency_code_3;
$params['FRONTEND.LANGUAGE'] = $languageTag;
$params['CRITERION.LANG'] = $params['FRONTEND.LANGUAGE'];
$params['IDENTIFICATION.TRANSACTIONID'] = $order['details']['BT']->order_number;
/*
* Set payment methode to PA for online transfer, invoice and prepayment
*/
$PaymentTypePA = array('OT', 'PP', 'IV');
if (in_array (substr ($method->HEIDELPAY_PAYMENT_TYPE, 0, 2), $PaymentTypePA)) {
$method->HEIDELPAY_PAYMENT_METHOD = "PA";
} else {
$method->HEIDELPAY_PAYMENT_METHOD = $method->HEIDELPAY_PAYMENT_METHOD;
}
$params['PAYMENT.CODE'] = substr ($method->HEIDELPAY_PAYMENT_TYPE, 0, 2) . "." . $method->HEIDELPAY_PAYMENT_METHOD;
$params['TRANSACTION.CHANNEL'] = $method->HEIDELPAY_CHANNEL_ID;
/*
* Special case for paypal without hco iframe
*/
if ($method->HEIDELPAY_PAYMENT_TYPE == "VAPAYPAL") {
$params['PAYMENT.CODE'] = "VA.DB";
$params['ACCOUNT.BRAND'] = "PAYPAL";
$params['FRONTEND.PM.DEFAULT_DISABLE_ALL'] = "true";
$params['FRONTEND.PM.0.ENABLED'] = "true";
$params['FRONTEND.PM.0.METHOD'] = "VA";
$params['FRONTEND.PM.0.SUBTYPES'] = "PAYPAL";
}
/*
* Special case for MangirKart without hco iframe
*/
if ($method->HEIDELPAY_PAYMENT_TYPE == "PCMANGIR") {
$params['PAYMENT.CODE'] = "PC.PA";
$params['ACCOUNT.BRAND'] = "MANGIRKART";
}
/*
* Special case for BarPay without hco iframe
*/
if ($method->HEIDELPAY_PAYMENT_TYPE == "PPBARPAY") {
$params['PAYMENT.CODE'] = "PP.PA";
$params['ACCOUNT.BRAND'] = "BARPAY";
}
/*
* User account information
*/
$params['ACCOUNT.HOLDER'] = $address->first_name . " " . $address->last_name;
$params['NAME.GIVEN'] = $address->first_name;
$params['NAME.FAMILY'] = $address->last_name;
if(!empty($address->company)) $params['NAME.COMPANY'] = $address->company ;
$params['ADDRESS.STREET'] = $address->address_1;
isset($address->address_2) ? $params['ADDRESS.STREET'] .= " " . $address->address_2 : '';
$params['ADDRESS.ZIP'] = $address->zip;
$params['ADDRESS.CITY'] = $address->city;
$params['ADDRESS.COUNTRY'] = ShopFunctions::getCountryByID ($address->virtuemart_country_id, 'country_2_code');
$params['CONTACT.EMAIL'] = $order['details']['BT']->email;
$params['CONTACT.IP'] = $_SERVER['REMOTE_ADDR'];
/*
* Add debug informations for merchiant support
*/
$params['SHOP.TYPE'] = 'VirtueMart2.0.26d';
$params['SHOPMODUL.VERSION'] = $this->version;
$params['CRITERION.PAYMENT_NAME'] = JText::_ ('VMPAYMENT_HEIDELPAY_' . $method->HEIDELPAY_PAYMENT_TYPE);
$params['CRITERION.PAYMENT_NAME'] = strip_tags($params['CRITERION.PAYMENT_NAME']);
/*
* Create hash to secure the response
*/
$params['CRITERION.SECRET'] = $this->createSecretHash ($order['details']['BT']->order_number, $method->HEIDELPAY_SECRET);
/*
* Set transaction mode
*/
if ($method->HEIDELPAY_TRANSACTION_MODE == 2) {
$params['TRANSACTION.MODE'] = "LIVE";
} elseif ($method->HEIDELPAY_TRANSACTION_MODE == 0) {
$params['TRANSACTION.MODE'] = "INTEGRATOR_TEST";
} else {
$params['TRANSACTION.MODE'] = "CONNECTOR_TEST";
}
/*
* Default configuration for hco
*/
$params['FRONTEND.MODE'] = "DEFAULT";
$params['FRONTEND.ENABLED'] = "true";
$params['FRONTEND.POPUP'] = "false";
$params['FRONTEND.REDIRECT_TIME'] = "0";
$params['REQUEST.VERSION'] = "1.0";
$params['FRONTEND.NEXTTARGET'] = "top.location.href";
/*
* Add response and css path
*/
$params['FRONTEND.RESPONSE_URL'] = JROUTE::_ (JURI::root(), $xhtml=true, $ssl=0) . 'plugins/vmpayment/heidelpay/heidelpay/heidelpay_response.php?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&on=' . urlencode($order['details']['BT']->order_number) . '&pm=' . $order['details']['BT']->virtuemart_paymentmethod_id;
$cssFile = "heidelpay_default.css";
if (!empty($method->HEIDELPAY_STYLE)) {
$cssFile = $method->HEIDELPAY_STYLE ;
}
$params['FRONTEND.CSS_PATH'] = JROUTE::_ (JURI::root(), $xhtml=true, $ssl=0) . 'plugins/vmpayment/heidelpay/heidelpay/' . $cssFile;
$requestUrl = $method->HEIDELPAY_PAYMENT_URL;
$params['SECURITY.SENDER'] = $method->HEIDELPAY_SECURITY_SENDER;
$params['USER.LOGIN'] = $method->HEIDELPAY_USER_LOGIN;
$params['USER.PWD'] = $method->HEIDELPAY_USER_PW;
if(substr ($method->HEIDELPAY_PAYMENT_TYPE, 0, 2) == 'DD') {
$sepaform = array();
$sepaform = $this->switchDirectDebitFrom($method->HEIDELPAY_SEPA_FORM);
$params = array_merge($sepaform , $params);
}
/*
* send request to payment server
*/
$response = $this->doRequest ($requestUrl, $params, $method->HEIDELPAY_DEBUG);
if ($params['TRANSACTION.MODE'] != "LIVE") {
vmInfo('VMPAYMENT_HEIDELPAY_PAYMENT_TESTMODE');
}
/*
* On success show iframe or show error information for your customer
*/
$returnValue = 0;
if ($response['PROCESSING_RESULT'] == "ACK" || $response['POST_VALIDATION'] == "ACK") {
$returnValue = 2;
$html = $this->renderByLayout ('displaypayment', array(
'response' => $response['FRONTEND_REDIRECT_URL']
));
} else {
$html = JText::_ ('VMPAYMENT_HEIDELPAY_TECHNICAL_ERROR') .
"