Opencart "You do not have permission to access this page, please refer to your system administrator"

DannyPak picture DannyPak · Sep 12, 2016 · Viewed 7k times · Source

Every time I installed a new extension, I got this error:

error: You do not have permission to access this page, please refer to your system administrator.

I've already gone to System > User Group, and Add permission to new extension modules (both Access Permission and Modify Permission) but no luck.

I tried to install "2checkout" "Ajax Quick CheckOut" " and get the same error.

Answer

Ashwini Chaudhary picture Ashwini Chaudhary · Oct 12, 2016

Most likely you're trying to install an extension that is not compatible with OpenCart 2.3.0.2. OpenCart 2.3.X introduced some changes related to extension structure, so you will have to make those changes first


Path change:

All of the extension types have now moved under a new directory named extension.

For example if you have a payment extension then its old structure looked like:

admin/controller/payment/xxx.php
admin/model/payment/xxx.php
admin/language/en-gb/payment/xxx.php
admin/view/template/payment/xxx.php

Now you must change it to:

admin/controller/extension/payment/xxx.php
admin/model/extension/payment/xxx.php
admin/language/en-gb/extension/payment/xxx.php
admin/view/template/extension/payment/xxx.php

Module load path and URL changes:

And while loading the module you must include extension in the path. i.e $this->load->model('module/:') now becomes$this->load->model('extension/module/mymod').

This is true for admin URL links as well. $this->url->link('payment/mymod', 'token=' . $this->session->data['token'], 'SSL') now becomes $this->url->link('extension/payment/mymod', 'token=' . $this->session->data['token'], 'SSL').

Class name changes:

Next change is related to class names. A class named ControllerModuleMyMod should be renamed to ControllerExtensionModuleMyMod.

These changes are applicable to both admin and catalog.


Related threads: