I just try to do my first OJS installation. Since I want to use an already existing DB, I would like to skip the creation of a new DB. But I’m missing the documented “Create new database” entry which I could uncheck for my issue.
I tried some 3.2 and some 3.3 versions, includeing the latest one (3.3.0-6).
I’m trying to have OJS running in docker for easy upgrades.
Currently, we’re running it without docker (directly on a host). The database is on this host as well. And I want to keep the DB on the host to be able to use our existing workflow with the DB.
Last thing I tried:
-building up our own image based on the official ojs-docker-image (mainly changing some permissions)
-setting the correct DB values in config.inc.php
-setting Installed=On in config.inc.php
-running “php tools/upgrade.php upgrade”
-accessing OJS in webbrowser → gives me some 404s (styleSheet.css, journalThumbnail*.*)
Seems to be still a long way to go, maybe I will check the upgrade.php to understand what it does exactly next…
Meanwhile, I could upgrade to 126.96.36.199. One of the problems also was, that I didn’t setup the DB after a partial upgrade.
After the upgrade, I set “Installed = On” in the config.inc.php.
When I access the page, I still get some 404s:
Where should the styleSheet.css come from? It’s not existing in the github repository and it doesn’t seem to get created during the upgrade-tool.
There seems to be something strange going on with my custom theme. I installed it by copying it to ./plugin/themes/defaultBasel and activated it in website->settings->plugins->theme plugins. What happens is when I try to go to the OJS root page, I get an error in the apache error.log:
PHP Fatal error: Uncaught Exception: DAOResultFactory instances cannot be counted unless supplied in constructor (DAO JournalDAO)!
Stack trace:\n #0 /var/www/html/lib/pkp/classes/db/DAOResultFactory.inc.php(141): DAOResultFactory->getCount()\n #1 /var/www/html/cache/t_compile/65bfc3e024c2e9104f46e23b73376a9455e3df0e^51cfb9321c891ada9323e7942962579e7e4324d1_0.app.frontendpagesindexSite.tp.php(97): DAOResultFactory->getPageCount()\n #2 /var/www/html/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_template_resource_base.php(123): content_60e5d2e914d2e9_87893626(Object(Smarty_Internal_Template))\n #3 /var/www/html/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_template_compiled.php(114): Smarty_Template_Resource_Base->getRenderedTemplateCode(Object(Smarty_Internal_Template))\n #4 /var/www/html/lib/pkp/lib/vendor/smarty/smarty/libs/sysplugins/smarty_internal_template.php(216): Smarty_Template_Compiled->render(Object(Smarty_Internal_Template))\n #5 /var/www/html/ in /var/www/html/lib/pkp/classes/db/DAOResultFactory.inc.php on line 101
Also notable is, that I see “##plugins.themes.defaultBasel.name##” instead of the name (same goes for “##plugins.themes.defaultBasel.description##”).
The theme DOES have the correct files for de_DE and en_US in [theme-directory]/locale/de_DE/locale.xml. Permissions are “rw” for all users. Also, the localization codes (de_DE, en_US) in the source code of the webpage are the same as the codes used in the theme-directory-structure.
The only difference I see is, that the “default” theme uses .po files while my theme uses .xml files.
Is there anything else (aside copying the theme to the directory and activating it in the settings) I have to do to import/activate a theme?
This means that in the indexSite template there is a code that iterates through DAOResultFactory object in a way that is no longer supported. Take a look at this topic: Update themes to be compatible with OJS 3.3.0 · Issue #6400 · pkp/pkp-lib · GitHub about things which need to be updated in theme to be compatible with 3.3. You can find references to OJS issues and from themes with examples of code updates.
I don’t think that XML based localization is still supported in 3.3.