PKP Bugzilla – Bug 2961
Last modified: 2007-10-16 11:39:41 PDT
Overhaul metadata storage for better localization support; remove the 3-locale restriction and add support for multilingual journal, author, and article metadata.
Created attachment 259 [details]
Patch against pre-2.2 CVS
First cut at internationalization changes. (Gzipped patch.)
Committed first cut at localization overhaul.
Steps to update a pre-localized CVS install:
- BACK UP YOUR DATABASE. You are warned!
- Use tools/dbXMLtoSQL.php to apply the schema dbscripts/xml/ojs_schema_stage1.xml
- Run classes/Upgrade.inc.php::setJournalPrimaryLocales
- Use tools/dbXMLtoSQL.php to apply the data upgrade/2.2.0_localize.xml
- Use Use tools/dbXMLtoSQL.php to apply the schema dbscripts/xml/ojs_schema.xml
- Run classes/Upgrade.inc.php::localizeJournalSettings
- Run classes/Upgrade.inc.php::migratePublisher
- Run classes/Upgrade.inc.php::installBlockPlugins (if blocks have not yet been installed, i.e. if your sidebar disappears)
- Run classes/Upgrade.inc.php::setGalleyLocales
- Run classes/Upgrade.inc.php::clearDataCache
Leaving open as tracking issue.
Plugins need lots of work and testing.
Created attachment 265 [details]
Patch against pre-2.2 CVS
Fixed a few introduced bugs
Closing -- although some bugs will certainly remain.
Found another one:
Fatal error: Call to undefined method IssueDAO::updateLocaleData() in ojs2/classes/issue/IssueDAO.inc.php on line 256
Found some additional problems with OJS1 import:
Fatal error: Call to undefined method Journal::setTitle() in /Users/webdev/Sites/ojs2/classes/site/ImportOJS1.inc.php on line 231
Also, many warnings of the following variety:
Warning: Missing argument 2 for Issue::setTitle(), called in classes/site/ImportOJS1.inc.php on line 801
Warning: Missing argument 2 for Issue::setDescription(), called in classes/site/ImportOJS1.inc.php on line 822
Fixed issues mentioned in comment #8.
Alec, the latest update seems to break the import altogether:
DB Error: Column 'journal_id' cannot be null
File: ojs2/classes/journal/JournalSettingsDAO.inc.php line 138
Function: DAO->update("INSERT INTO journal_settings (journal_id, setting_name, set...", Array(5))
File: ojs2/classes/journal/Journal.inc.php line 271
Function: JournalSettingsDAO->updateSetting(Null, "title", Array(1), "string", True)
File: ojs2/classes/site/ImportOJS1.inc.php line 231
Function: Journal->updateSetting("title", Array(1), "string", True)
Also, there are still many warnings that remain of the following form (haven't listed them all):
Warning: Missing argument 2 for Issue::setShowCoverPage(), called in ojs2/classes/site/ImportOJS1.inc.php on line 822
Warning: Missing argument 2 for Article::setCoverageGeo(), called in ojs2/classes/site/ImportOJS1.inc.php on line 984
Fixed -- though there may be more of the same; this generally needs testing.
*** Bug 3071 has been marked as a duplicate of this bug. ***
*** Bug 3074 has been marked as a duplicate of this bug. ***