Thanks for spotting this, its actually a very old bug; And I'm not sure if its actually a bug (i.e. an oversight on my part when I implemented this) or a conscious decision. The notification_status table was only used for users to opt-in to emails about new issues being published, and this notification is automatically implemented for all users when the new notification structures were put in place (at OJS 2.3.0). However, the new issue notification will only appear in the notification feed (over the web) and not automatically be emailed to the user.
If you want to add all the users in the notification_status table to the notification_settings table and have them automatically receive emails about new issues, you can put your old notification_settings table into your upgraded database and run this bit of SQL to migrate the users over to the new structure:
- Code: Select all
INSERT INTO `notification_settings` (`setting_name`, `setting_value`, `user_id`, `product`, `context`)
SELECT 'email', '268435477', user_id, 'ojs2', journal_id FROM notification_status;
Also, the NotificationStatusDAO class can be completely removed from OJS, its dead code and should have been taken out a while ago.