Momenteel ben ik bezig om een betaalsysteem van 1.5 over te zetten naar 2.0.1.1. Helaas heb ik begin dit jaar een hersenbloeding gehad dus het denken wil niet echt vlotten. In onderstaand script zit ergens een foutje, maar ik kom er momenteel niet achter waar en wat. Wie kan me helpen??? Uiteraard heb ik het volledige script bijgsloten als .zip.
Helaas krijg ik geen feedback van mijn Paymment provider omdat die zelf een jaartje of 5 achterloopt. De vorige versie heb ik zelf geschreven.
Code: Select all
<?php
class ControllerPaymentPaysbuy extends Controller {
private $error = array();
public function index() {
$this->load->language('payment/paysbuy');
$this->document->setTitle($this->language->get('heading_title'));
$this->load->model('setting/setting');
if (($this->request->server['REQUEST_METHOD'] == 'POST') && ($this->validate())) {
$this->load->model('setting/setting');
$this->model_setting_setting->editSetting('paysbuy', $this->request->post);
$this->session->data['success'] = $this->language->get('text_success');
$this->redirect(HTTPS_SERVER . 'index.php?token=' . $this->session->data['token'] . '&route=extension/payment');
}
$data['heading_title'] = $this->language->get('heading_title');
$data['text_enabled'] = $this->language->get('text_enabled');
$data['text_disabled'] = $this->language->get('text_disabled');
$data['text_all_zones'] = $this->language->get('text_all_zones');
$data['text_yes'] = $this->language->get('text_yes');
$data['text_no'] = $this->language->get('text_no');
$data['text_authorization'] = $this->language->get('text_authorization');
$data['text_sale'] = $this->language->get('text_sale');
$data['text_updatestatus_callback'] = $this->language->get('text_updatestatus_callback');
$data['text_updatestatus_callbackground_process'] = $this->language->get('text_updatestatus_callbackground_process');
$data['entry_email'] = $this->language->get('entry_email');
$data['entry_transaction'] = $this->language->get('entry_transaction');
$data['entry_updatestatus'] = $this->language->get('entry_updatestatus');
$data['entry_order_status'] = $this->language->get('entry_order_status');
$data['entry_order_status_cs'] = $this->language->get('entry_order_status_cs');
$data['entry_order_status_failed'] = $this->language->get('entry_order_status_failed');
$data['entry_status'] = $this->language->get('entry_status');
$data['entry_sort_order'] = $this->language->get('entry_sort_order');
$data['entry_author'] = $this->language->get('entry_author');
$data['button_save'] = $this->language->get('button_save');
$data['button_cancel'] = $this->language->get('button_cancel');
$data['tab_general'] = $this->language->get('tab_general');
if (isset($this->error['warning'])) {
$data['error_warning'] = $this->error['warning'];
} else {
$data['error_warning'] = '';
}
if (isset($this->error['email'])) {
$data['error_email'] = $this->error['email'];
} else {
$data['error_email'] = '';
}
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/home', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => false
);
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_payment'),
'href' => $this->url->link('extension/payment', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => ' :: '
);
$data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('payment/paysbuy', 'token=' . $this->session->data['token'], 'SSL'),
'separator' => ' :: '
);
$data['action'] = $this->url->link('payment/paysbuy', 'token=' . $this->session->data['token'], 'SSL');
$data['cancel'] = $this->url->link('extension/payment', 'token=' . $this->session->data['token'], 'SSL');
if (isset($this->request->post['paysbuy_email'])) {
$data['paysbuy_email'] = $this->request->post['paysbuy_email'];
} else {
$data['paysbuy_email'] = $this->config->get('paysbuy_email');
}
if (isset($this->request->post['paysbuy_transaction'])) {
$data['paysbuy_transaction'] = $this->request->post['paysbuy_transaction'];
} else {
$data['paysbuy_transaction'] = $this->config->get('paysbuy_transaction');
}
if (isset($this->request->post['paysbuy_order_status_id'])) {
$data['paysbuy_order_status_id'] = $this->request->post['paysbuy_order_status_id'];
} else {
$data['paysbuy_order_status_id'] = $this->config->get('paysbuy_order_status_id');
}
if (isset($this->request->post['paysbuy_order_status_id_cs'])) {
$data['paysbuy_order_status_id_cs'] = $this->request->post['paysbuy_order_status_id_cs'];
} else {
$data['paysbuy_order_status_id_cs'] = $this->config->get('paysbuy_order_status_id_cs');
}
$this->load->model('localisation/order_status');
$data['order_statuses'] = $this->model_localisation_order_status->getOrderStatuses();
if (isset($this->request->post['paysbuy_status'])) {
$data['paysbuy_status'] = $this->request->post['paysbuy_status'];
} else {
$data['paysbuy_status'] = $this->config->get('paysbuy_status');
}
if (isset($this->request->post['paysbuy_sort_order'])) {
$data['paysbuy_sort_order'] = $this->request->post['paysbuy_sort_order'];
} else {
$data['paysbuy_sort_order'] = $this->config->get('paysbuy_sort_order');
}
$this->template = 'payment/paysbuy.tpl';
$this->children = array(
'common/header',
'common/footer'
);
$this->response->setOutput($this->render());
}
private function validate() {
if (!$this->user->hasPermission('modify', 'payment/paysbuy')) {
$this->error['warning'] = $this->language->get('error_permission');
}
if (!$this->request->post['paysbuy_email']) {
$this->error['email'] = $this->language->get('error_email');
}
if (!$this->error) {
return TRUE;
} else {
return FALSE;
}
}
}
?>