title: error Call to undefined method ControllerPaymentStanbic:: render() in Payment plugin
body: <p>I've set up this module for a payment gateway on opencart but i got this error which i changed <code>$this-&gt;data</code> to <code>$data</code>, I get a blank page. If i change it back to $this->data i get this <a href="http://prntscr.com/832nd2" rel="nofollow">error</a> <a href="http://prntscr.com/832nd2" rel="nofollow">http://prntscr.com/832nd2</a></p>
  
  <p>here is the code</p>
  
  <pre><code>                        &lt;?php 
              class ControllerPaymentCipgSim extends Controller {
                private $error = array(); 
                public function index() { 
                  $this-&gt;load-&gt;language('payment/cipg_sim');
                  $this-&gt;data['heading_title'] = $this-&gt;language-&gt;get('heading_title');
                  $this-&gt;load-&gt;model('setting/setting');
                  if (($this-&gt;request-&gt;server['REQUEST_METHOD'] == 'POST') &amp;&amp; ($this-&gt;validate())) {
                    $this-&gt;load-&gt;model('setting/setting');
                    $this-&gt;model_setting_setting-&gt;editSetting('cipg_sim', $this-&gt;request-&gt;post);
                    $this-&gt;session-&gt;data['success'] = $this-&gt;language-&gt;get('text_success');
                    $this-&gt;redirect(HTTPS_SERVER .'index.php?route=extension/payment&amp;token=' . $this-&gt;session-&gt;data['token']);
                  }
                  $this-&gt;data['heading_title']     = $this-&gt;language-&gt;get('heading_title');
                  $this-&gt;data['text_enabled']     = $this-&gt;language-&gt;get('text_enabled');
                  $this-&gt;data['text_disabled']     = $this-&gt;language-&gt;get('text_disabled');
                  $this-&gt;data['text_all_zones']     = $this-&gt;language-&gt;get('text_all_zones');
                  $this-&gt;data['text_yes']       = $this-&gt;language-&gt;get('text_yes');
                  $this-&gt;data['text_no']         = $this-&gt;language-&gt;get('text_no');
                  $this-&gt;data['text_test']       = $this-&gt;language-&gt;get('text_test');
                  $this-&gt;data['text_live']       = $this-&gt;language-&gt;get('text_live');
                  $this-&gt;data['button_save']       = $this-&gt;language-&gt;get('button_save');
                  $this-&gt;data['button_cancel']     = $this-&gt;language-&gt;get('button_cancel');
                  $this-&gt;data['tab_general']       = $this-&gt;language-&gt;get('tab_general');
                  $this-&gt;data['get_from_aznet']     = $this-&gt;language-&gt;get('text_get_from_aznet');
                  $this-&gt;data['set_at_aznet']     = $this-&gt;language-&gt;get('text_set_at_aznet');
                  $this-&gt;data['optional_aznet']     = $this-&gt;language-&gt;get('text_optional_aznet');
                  $this-&gt;data['text_min_amount']    = $this-&gt;language-&gt;get('text_min_amount');
                  $this-&gt;data['text_order_status']  = $this-&gt;language-&gt;get('text_order_status');
                  $this-&gt;data['text_custom_html']    = $this-&gt;language-&gt;get('text_custom_html');
                  $this-&gt;data['text_custom_html_help']= $this-&gt;language-&gt;get('text_custom_html_help');
                  $this-&gt;data['entry_status']     = $this-&gt;language-&gt;get('entry_status');
                  $this-&gt;data['entry_login_id']     = $this-&gt;language-&gt;get('entry_login_id');
                  $this-&gt;data['entry_transaction_key']= $this-&gt;language-&gt;get('entry_transaction_key');
                  $this-&gt;data['entry_response_key']   = $this-&gt;language-&gt;get('entry_response_key');
                  $this-&gt;data['entry_minimum_amt']   = $this-&gt;language-&gt;get('entry_minimum_amt');
                  $this-&gt;data['entry_server']     = $this-&gt;language-&gt;get('entry_server');
                  $this-&gt;data['entry_test']       = $this-&gt;language-&gt;get('entry_test');
                  $this-&gt;data['entry_geo_zone']     = $this-&gt;language-&gt;get('entry_geo_zone');
                  $this-&gt;data['entry_order_status']   = $this-&gt;language-&gt;get('entry_order_status');
                  $this-&gt;data['entry_sort_order']   = $this-&gt;language-&gt;get('entry_sort_order');
                  $this-&gt;data['entry_custom_header']   = $this-&gt;language-&gt;get('entry_custom_header');
                  $this-&gt;data['entry_custom_footer']   = $this-&gt;language-&gt;get('entry_custom_footer');
                  $this-&gt;load-&gt;model('localisation/order_status');
                  $this-&gt;data['order_statuses']     = $this-&gt;model_localisation_order_status-&gt;getOrderStatuses();
                  $this-&gt;load-&gt;model('localisation/geo_zone');
                  $this-&gt;data['geo_zones']       = $this-&gt;model_localisation_geo_zone-&gt;getGeoZones();
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_login_id'])) {
                    $this-&gt;data['cipg_sim_login_id'] = $this-&gt;request-&gt;post['cipg_sim_login_id'];
                  } else {
                    $this-&gt;data['cipg_sim_login_id'] = $this-&gt;config-&gt;get('cipg_sim_login_id');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_transaction_key'])) {
                    $this-&gt;data['cipg_sim_transaction_key'] = $this-&gt;request-&gt;post['cipg_sim_transaction_key'];
                  } else {
                    $this-&gt;data['cipg_sim_transaction_key'] = $this-&gt;config-&gt;get('cipg_sim_transaction_key');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_response_key'])) {
                    $this-&gt;data['cipg_sim_response_key'] = $this-&gt;request-&gt;post['cipg_sim_response_key'];
                  } else {
                    $this-&gt;data['cipg_sim_response_key'] = $this-&gt;config-&gt;get('cipg_sim_response_key');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_total'])) {
                    $this-&gt;data['cipg_sim_total'] = $this-&gt;request-&gt;post['cipg_sim_total'];
                  } else {
                    $this-&gt;data['cipg_sim_total'] = $this-&gt;config-&gt;get('cipg_sim_total'); 
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_server'])) {
                    $this-&gt;data['cipg_sim_server'] = $this-&gt;request-&gt;post['cipg_sim_server'];
                  } else {
                    $this-&gt;data['cipg_sim_server'] = $this-&gt;config-&gt;get('cipg_sim_server');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_test'])) {
                    $this-&gt;data['cipg_sim_test'] = $this-&gt;request-&gt;post['cipg_sim_test'];
                  } else {
                    $this-&gt;data['cipg_sim_test'] = $this-&gt;config-&gt;get('cipg_sim_test');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_status'])) {
                    $this-&gt;data['cipg_sim_status'] = $this-&gt;request-&gt;post['cipg_sim_status'];
                  } else {
                    $this-&gt;data['cipg_sim_status'] = $this-&gt;config-&gt;get('cipg_sim_status');
                  }
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_geo_zone_id'])) {
                    $this-&gt;data['cipg_sim_geo_zone_id'] = $this-&gt;request-&gt;post['cipg_sim_geo_zone_id'];
                  } else {
                    $this-&gt;data['cipg_sim_geo_zone_id'] = $this-&gt;config-&gt;get('cipg_sim_geo_zone_id'); 
                  } 
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_sort_order'])) {
                    $this-&gt;data['cipg_sim_sort_order'] = $this-&gt;request-&gt;post['cipg_sim_sort_order'];
                  } else {
                    $this-&gt;data['cipg_sim_sort_order'] = $this-&gt;config-&gt;get('cipg_sim_sort_order'); 
                  } 
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_order_status_id'])) {
                    $this-&gt;data['cipg_sim_order_status_id'] = $this-&gt;request-&gt;post['cipg_sim_order_status_id'];
                  } else {
                    $this-&gt;data['cipg_sim_order_status_id'] = $this-&gt;config-&gt;get('cipg_sim_order_status_id'); 
                  } 
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_custom_header'])) {
                    $this-&gt;data['cipg_sim_custom_header'] = $this-&gt;request-&gt;post['cipg_sim_custom_header'];
                  } else {
                    $this-&gt;data['cipg_sim_custom_header'] = $this-&gt;config-&gt;get('cipg_sim_custom_header'); 
                  } 
  
                  if (isset($this-&gt;request-&gt;post['cipg_sim_custom_footer'])) {
                    $this-&gt;data['cipg_sim_custom_footer'] = $this-&gt;request-&gt;post['cipg_sim_custom_footer'];
                  } else {
                    $this-&gt;data['cipg_sim_custom_footer'] = $this-&gt;config-&gt;get('cipg_sim_custom_footer'); 
                  } 
  
                  if (isset($this-&gt;error['warning'])) {
                    $this-&gt;data['error_warning'] = $this-&gt;error['warning'];
                  } else {
                    $this-&gt;data['error_warning'] = '';
                  }
  
                    if (isset($this-&gt;error['login_id'])) {
                    $this-&gt;data['error_login_id'] = $this-&gt;error['login_id'];
                  } else {
                    $this-&gt;data['error_login_id'] = '';
                  }
  
                  if (isset($this-&gt;error['transaction_key'])) {
                    $this-&gt;data['error_transaction_key'] = $this-&gt;error['transaction_key'];
                  } else {
                    $this-&gt;data['error_transaction_key'] = '';
                  }
  
                  if (isset($this-&gt;error['response_key'])) {
                    $this-&gt;data['error_response_key'] = $this-&gt;error['response_key'];
                  } else {
                    $this-&gt;data['error_response_key'] = '';
                  }
  
                    $this-&gt;data['breadcrumbs'] = array();
                     $this-&gt;data['breadcrumbs'][] = array(
                         'text'      =&gt; $this-&gt;language-&gt;get('text_home'),
                    'href'      =&gt; $this-&gt;url-&gt;link('common/home', 'token=' . $this-&gt;session-&gt;data['token'], 'SSL'),
                        'separator' =&gt; false
                     );
                     $this-&gt;data['breadcrumbs'][] = array(
                         'text'      =&gt; $this-&gt;language-&gt;get('text_payment'),
                    'href'      =&gt; $this-&gt;url-&gt;link('extension/payment', 'token=' . $this-&gt;session-&gt;data['token'], 'SSL'),
                        'separator' =&gt; ' :: '
                     );
                     $this-&gt;data['breadcrumbs'][] = array(
                         'text'      =&gt; $this-&gt;language-&gt;get('heading_title'),
                    'href'      =&gt; $this-&gt;url-&gt;link('payment/cipg_sim', 'token=' . $this-&gt;session-&gt;data['token'], 'SSL'),
                        'separator' =&gt; ' :: '
                     );
                  $this-&gt;data['action'] = HTTPS_SERVER .'index.php?route=payment/cipg_sim&amp;token=' . $this-&gt;session-&gt;data['token'];
                  $this-&gt;data['cancel'] = HTTPS_SERVER .'index.php?route=extension/payment&amp;token=' . $this-&gt;session-&gt;data['token'];  
                  $this-&gt;template = 'payment/cipg_sim.tpl';
                  $this-&gt;children = array(
                    'common/header',
                    'common/footer'
                  );
                  $this-&gt;response-&gt;setOutput($this-&gt;render());
                }
  
                private function validate() {
                  /*if (!$this-&gt;user-&gt;hasPermission('modify', 'payment/cipg_sim')){
                    $this-&gt;error['warning'] = $this-&gt;language-&gt;get('error_permission');
                  }
                  if (!$this-&gt;request-&gt;post['cipg_sim_login_id']) {
                    $this-&gt;error['login_id'] = $this-&gt;language-&gt;get('error_login_id');
                  }
                  if (!$this-&gt;request-&gt;post['cipg_sim_transaction_key']) {
                    $this-&gt;error['transaction_key'] = $this-&gt;language-&gt;get('error_transaction_key');
                  }
                  if (!$this-&gt;request-&gt;post['cipg_sim_response_key']) {
                    $this-&gt;error['response_key'] = $this-&gt;language-&gt;get('error_response_key');
                  } elseif(isset($this-&gt;request-&gt;post['cipg_sim_response_key']) &amp;&amp; (strlen(preg_replace( '/\s+/', ' ', $this-&gt;request-&gt;post['cipg_sim_response_key'])) &gt; 20)) {
                    $this-&gt;error['response_key'] = $this-&gt;language-&gt;get('error_response_key');
                  }*/
                  if (!$this-&gt;error) {
                    return TRUE;
                  } else {
                    return FALSE;
                  }  
                }
              }
              ?&gt;
  </code></pre>
  
  <p>Can someone please assist?</p>