I am using OJS 2.4.4-1. On my development system running windows I have installed a plugin without any problems. Then I have tried on a production system, running Linux, and first got info that the plugin is installed successfully, but now the plugin is not listed in the list of installed plugins. I have checked and the plugin files are correctly in the directory structure.
That’s a 3rd-party plugin written for OJS 2.1 – it’s entirely likely that it’s not compatible with recent releases of OJS 2.x. I’d suggest contacting the author.
Regards,
Alec Smecher
Public Knowledge Project Team
I’m not sure that’s the case. For example, I note that the plugin is missing a version.xml descriptor, which helps OJS to register the plugin within the system. That should be part of any OJS 2.4.x-compatible plugin.
Regards,
Alec Smecher
Public Knowledge Project Team
I have added the file version.xml and that helped to get it properly installed on the test system.
I don’t know, I guess something went wrong during the “registration” of the plugin. Is there a way to start registration again in verbose mode (or with errors on in PHP)?
Another idea I have is to remove the plugin and install it in verbose mode. But I am not sure how to do that?
Do you have any other idea?
To register plugins, you can either upload them to the plugins area of the journal manager’s interface, or run the upgrade script, or manually create an entry in the versions table of the database. The version.xml descriptor for the plugin is required in all 3 cases.
Regards,
Alec Smecher
Public Knowledge Project Team
After getting access to the log it turned out that the problem was with the class Locale that no longer exists. After changing it to AppLocale the plugin works!
But it is interesting that on the test system it worked even before. Hm, maybe becasue it is Windows?
We had to rename the Locale class to AppLocale a few releases ago because PHP added its own conflicting Locale class. If I recall correctly, on systems without a PHP Locale class, there’s a bit of code to treat OJS’s old references to Locale as AppLocale. So I suspect your “broken” environment has the PHP-based Locale class and your other “working” one did not (permitting OJS to use both names).
Regards,
Alec Smecher
Public Knowledge Project Team