Fatal error: Cannot declare class - Joomla 3.7
/administrator/components/com_example
He forgot the components directory
Please Log in or Create an account to join the conversation.
The path would be: /administrator/components/com_example
There would not be any line of code with ExampleHelpersExample
It would be ExampleHelper
Please Log in or Create an account to join the conversation.
This might help if you want to avoid RSI.
sudo find ./ -type f -exec sed -i 's/ExampleHelpersExample:/ExampleHelpersExampleAdmin:/g' {} \;
Please Log in or Create an account to join the conversation.
We do not expect Joomla to reverse their change in 3.7.1 so this should be fixed. One thing to note though is that this only affects components that use our front end views.Do you have idea if this issue will remain or be fixed in upcoming 3.7.1 for example?
This issue is not related to the issue with Component Creator.Any other problems affecting component creator like these mentioned here: www.akeebabackup.com/home/news/1676-joom...and-cli-scripts.html
Joomla 3.7 introduced a new check that prevents two classes to have the same name (even though the documentation still says the two should be named the same way)Can you please tell us which change in Joomla 3.7 caused this and any other compatibility break?
You should do that yes, but it is as you say because you have an old version of a component. We now use the JLoader library to load helpers and no further editing is needed (if you had built your component the last few months).And should you not rename that file in the view.html.php files
Yes. Recursive. That folder and sub folders.So, I just want to confirm the search is not recursive right ?
Søren Beck Jensen
Founder, Component-Creator.com
Please Log in or Create an account to join the conversation.
These are the files that were changed:
helpers/beers3admin.php:class Beers3HelpersBeers3admin
helpers/beers3admin.php:class Beers3Helper extends Beers3HelpersBeers3admin
views/beers/view.html.php: Beers3HelpersBeers3admin::addSubmenu('beers');
views/beers/view.html.php: $canDo = Beers3HelpersBeers3admin::getActions();
views/beer/view.html.php: $canDo = Beers3HelpersBeers3admin::getActions();
Any help gratefully received.
Please Log in or Create an account to join the conversation.
I couldn't get the back end to work either as Joomla couldn't find the new help file Søren told us to create.
So I added it using an include in the top level file for the components admin.
Edit: administrator/components/com_beers3/beers3.php
and add this line after the defined('_JEXEC') or die;
require_once JPATH_COMPONENT . '/helpers/beers3admin.php';
That worked for me on both components.
Please Log in or Create an account to join the conversation.