I have an archived issue that the author didn’t authenticate their ORCID so this causes the whole issue to come back with a 500 error internal server. The remove token checkbox is grayed out for me. When I take off the plugin the issue shows up but this journal uses the ORCID ID plugin.
Is there another way to turn off the authentication requirement for this one author so the issue shows up?
Steps I took leading up to the issue
For example:
Went to issue, got the error below
Then went into article by going into back issues and using edit feature
Found author/translator, then tried to select remove token
When didn’t work, I deleted author and added again
Didn’t work so I took off the ORCID plugin to add the article back to the issue issue worked after removing plugin
However this journal uses plugin so put back on and the issue once again gave the issue pictured below.
[17-Sep-2025 09:21:36 America/New_York] PHP Fatal error: Uncaught Error: Call to a member function getId() on null in /var/www/ojs-3.3.0-19/lib/pkp/classes/publication/PKPPublication.inc.php:149
Stack trace: #0 /var/www/ojs-3.3.0-19/lib/pkp/classes/submission/PKPSubmission.inc.php(423): PKPPublication->getAuthorString()
It looks like you have some bad data in your database. Try the following SQL query:
SELECT COUNT(*) FROM authors a
LEFT JOIN user_groups ug ON (a.user_group_id = ug.user_group_id)
WHERE a.user_group_id IS NOT NULL AND ug.user_group_id IS NULL;
If you get any results, it indicates that an author is attached to a nonexistent user group. This might happen if someone deleted a user group (“roles” in the user interface) that was in active use.
See Settings > Users & Roles > Roles for a list of roles. You may have to re-create one that was deleted, then update any entries in authors to refer to it instead of the missing one using a tool like phpMyAdmin.
(Make sure to take a good backup before working with the database directly.)
This kind of database discrepancy will go away after you upgrade to 3.4 and especially 3.5.
Regards,
Alec Smecher
Public Knowledge Project Team
The default list that is created when you create a new journal is here (if you don’t mind squinting around the way it’s written).
If I had to guess, I would suspect it’s the Translator role – unless you created your own and then deleted it later. If you don’t see a Translator role in your Roles list, then I’d suggest creating one. This will create an entry in the user_groups table. Then update those 14 author entries to refer to the newly created entry using its user_group_id. (You’ll have to do this second step in phpMyAdmin or another database client; make sure to take a backup before working with the database directly.)
Regards,
Alec Smecher
Public Knowledge Project Team