Post by Topsecret » Tue Jan 20, 2015 1:49 pm

Beste medegebruikers,

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;
		}	
	}
}
?>

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by Topsecret » Tue Jan 20, 2015 5:23 pm

Ik kom al een beetje in de buurt. Ik heb het volgende vervangen :
$this->template = 'payment/paysbuy.tpl';
$this->children = array(
'common/header',
'common/footer'
);

$this->response->setOutput($this->render());
}


door

$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');

$this->response->setOutput($this->load->view('payment/paysbuy.tpl', $data));
}

Maar nu krijg ik een fout melding bij de checkout: /home/paibkkco/domains/paibkk.com/public_html/v2.demo/catalog/view/theme/default/template/checkout/payment_method.tpl on line 16 (<?php if ($payment_method['terms']) { ?>)

Wie weet de oplossing?

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by pprmkr » Tue Jan 20, 2015 7:22 pm

- Admin gedeelte aangepast
- Catalog controller, model en template aangepast
- Bestand extensie ocmod.zip opdat het installeerbaar is door OC Extensie installer

User avatar
Active Member

Posts

Joined
Sat Jan 08, 2011 11:05 pm
Location - Netherlands

Post by Topsecret » Tue Jan 20, 2015 8:31 pm

Hoi PPRMKR,

Hartelijk dank voor je hulp, echter werkt het nog steeds niet. Ik krijg bij het uitchecken een foutmelding: Een zogenaamde internal server error.

De website is hier te bezichtigen: http://v2.demo.paibkk.com

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by pprmkr » Tue Jan 20, 2015 9:07 pm

- $this->model_checkout_order->update vervangen door $this->model_checkout_order->addOrderHistory
- typo in admin template

User avatar
Active Member

Posts

Joined
Sat Jan 08, 2011 11:05 pm
Location - Netherlands

Post by Topsecret » Tue Jan 20, 2015 9:56 pm

Ga ik morgen bekijken. Voor vandaag geen energie meer.
Ik laat het je weten.

Groetjes Fred

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by i2Paq » Thu Jan 22, 2015 3:16 pm

Gebruik voortaan code-tags svp.

Norman in 't Veldt
Moderator OpenCart Forums

_________________ READ and Search BEFORE POSTING _________________

Our FREE search: Find your answer FAST!.

[How to] BTW + Verzend + betaal setup.


User avatar
Global Moderator

Posts

Joined
Mon Nov 09, 2009 7:00 pm
Location - Winkel - The Netherlands

Post by Topsecret » Thu Jan 22, 2015 4:23 pm

Hoi luitjes,

Ik kom er dus gewoon niet uit. Gaarne hulp.
Ik wil nog eventjes opmerken dat ik herstellende ben van een hersenbloeding, dus niet al te lang achter t scherm kan plaatsnemen en mijn zicht niet al te best is. Ook logisch nadenken is een probleem geworden. Het heeft gewoon zijn tijd nodig om te herstellen. Voorheen zou ik de oplossing zo uit mijn mouw hebben geschud maar dat is nu verleden tijd.

MVG Fred

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by pprmkr » Sat Jan 24, 2015 3:23 pm

checkout/confirm veroorzaakt de fout.

Bekijk het bestand catalog/controller/checkout/confirm.php. Is het niet beschadigd ?
Vergelijk het bestand met die in het OpenCart archief en overschrijf het eventueel.

Of is er een vQmod actief die wijzigingen aanbrengt aan het bestand? Kijk in /vqmod/xml en /vqod/vqcache ...

User avatar
Active Member

Posts

Joined
Sat Jan 08, 2011 11:05 pm
Location - Netherlands

Post by Topsecret » Sat Jan 24, 2015 3:41 pm

Hoi pprmkr

Ik heb een paar VQMODs draaien:
- Paysbuy_Payment_Gateway.xml (zorgt voor de payment icoontjes in de footer) (eigen script)
- kadre_infopages_in_menu_V2.xml (eigen script en gratis te downloaden op Opencart extenties)
- vqmod_opencart.xml


VQMOD Paysbuy Gateway:
<modification>
<id>Paysbuy Payment Gateway </id>
<version>1.0</version>
<vqmver>2.2.1</vqmver>
<author>Fred den Broeder</author>

<decription><![CDATA[
/*
This script will show the payment options from Paysbuy in the footer from the default theme. If using another theme, please adjust the directory name.
*/
]]>
</decription>

<file name="catalog/view/theme/default/template/common/footer.tpl">
<operation>
<search position="before"><![CDATA[
<div id="powered">
]]></search>
<add><![CDATA[
<center><img src="image/paysbuy/payment.png" vspace="10"></center> ]]></add>
</operation>
</file>
</modification>




Ik ga nu eerst aan mijn revalidatie beginnen. Later vanmiddag / avond kijk ik verder....

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am


Post by Topsecret » Tue Jan 27, 2015 5:48 pm

Ik heb vandaag een totaal nieuwe(verse) installatie gedaan. Uiteraard zonder VQMOD. Resultaat: Wederom een Internal Server Error. Er zit dus wel degelijk iets fout in het script. Er is momenteel GEEN VQMOD aanwezig !!!

Zie: http://new.paibkk.com

Kind regards,
Fred

Image


User avatar
Active Member

Posts

Joined
Fri Apr 26, 2013 11:25 am

Who is online

Users browsing this forum: No registered users and 3 guests