i am new in opencart, and i got trouble on installation a extension "Opencart Odoo Connector" on Opencart. For some reason, all extension i have to install it manully.
The installation process is: Uploade all files from extension to the right directory, that i will copy the install.xml codes into
/system/storage/modification/admin/controller/common/column_left.php
codes like:
Code: Select all
$aaa = array();
if ($this->user->hasPermission('access', 'catalog/aaa')) {
$aaa[] = array(
'name' => $this->language->get('text_aaa'),
'href' => $this->url->link('catalog/aaa', 'token=' . $this->session->data['token'], true),
'children' => array()
);
}
after i installed, i go to admin dashboard >> go to extension >> Modification and Click on the "Refresh" button for refresh cache and update the module list.
then show the error:
Undefined property: Proxy::getTotalOrders in /system/storage/modification/system/engine/action.php on line 51
Frondend is working fine. Backend can login but only show the error text message.
i have to use backup for recover.
i ask their support tema and they told me it was found that issue is coming from third party module named "Waybillui". It replaced the core Opencart file and it result show an error.
here is information i found on opencart:
i found the file named"waybillui" on directory:
admin/view/template/sale/waybillui.tpl
and found codes on
>Directory:
\system\storage\modification\admin\controller\sale\order.php
>Code in directory:
Code: Select all
public function waybillui(){
$this->load->language('sale/order');
$title = 'Waybill Input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['postto'] = array();
$data['postto']['href'] = $this->url->link('sale/order/waybillinput', 'token=' . $this->session->data['token'], true);
$data['orders'] = array();
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/waybillui', $data));
}
public function waybillinput(){
if (isset($this->request->post['txt'])) {
$_txt = $this->request->post['txt'];
}else{
$_txt = false;
}
$data['token'] = $this->session->data['token'];
$this->load->language('sale/order');
$title = 'Waybill Input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['orders'] = array();
if($_txt){
$this->load->model('sale/wb');
$data['orders'] = $this->model_sale_wb->txtinput($_txt);
}
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/waybillinput', $data));
}
public function hktvorderui(){
$this->load->language('sale/order');
$title = 'HKTVshops Orders input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['postto'] = array();
$data['postto']['href'] = $this->url->link('sale/order/hktvorderinput', 'token=' . $this->session->data['token'], true);
$data['orders'] = array();
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/hktvorderinput', $data));
}
>directory:
\system\storage\modification\admin\controller\common\column_left.php
>code in directory:
Code: Select all
$sale[] = array(
'name' => 'Waybill Input',
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'], true),
'children' => array()
);
>directory:
\admin\controller\common\column_left.php
Code in directory:
Code: Select all
$sale[] = array(
'name' => 'Waybill Input',
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'], true),
'children' => array()
);
>directory:
\admin\controller\sale\order.php
>Code in directory:
Code: Select all
public function waybillui(){
$this->load->language('sale/order');
$title = 'Waybill Input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['postto'] = array();
$data['postto']['href'] = $this->url->link('sale/order/waybillinput', 'token=' . $this->session->data['token'], true);
$data['orders'] = array();
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/waybillui', $data));
}
public function waybillinput(){
if (isset($this->request->post['txt'])) {
$_txt = $this->request->post['txt'];
}else{
$_txt = false;
}
$data['token'] = $this->session->data['token'];
$this->load->language('sale/order');
$title = 'Waybill Input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['orders'] = array();
if($_txt){
$this->load->model('sale/wb');
$data['orders'] = $this->model_sale_wb->txtinput($_txt);
}
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/waybillinput', $data));
}
public function hktvorderui(){
$this->load->language('sale/order');
$title = 'HKTVshops Orders input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['postto'] = array();
$data['postto']['href'] = $this->url->link('sale/order/hktvorderinput', 'token=' . $this->session->data['token'], true);
$data['orders'] = array();
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/hktvorderinput', $data));
}
public function hktvorderinput(){
if (isset($this->request->post['txt'])) {
$_txt = $this->request->post['txt'];
}else{
$_txt = false;
}
$data['token'] = $this->session->data['token'];
$this->load->language('sale/order');
$title = 'Waybill Input';
$this->document->setTitle($title);
$url = '';
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
);
$data['breadcrumbs'][] = array(
'text' => $title,
'href' => $this->url->link('sale/order/waybillui', 'token=' . $this->session->data['token'] . $url, true)
);
$data['orders'] = array();
if($_txt){
$this->load->model('sale/wb');
$data['orders'] = $this->model_sale_wb->txtinput($_txt);
}
$data['heading_title'] = $title;
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->load->model('user/user');
$data['user_gid'] = $this->model_user_user->getUser($this->user->getId());
$this->response->setOutput($this->load->view('sale/waybillinput', $data));
}
Did anyone can give me some suggestion?
thank you so much