Address legacy code and create schema migration for data still associating Rights statements with digital objects
|Google Code Legacy ID:||Tested version:||2.6|
Perusing the demo site, we recently discovered data included that was created using deprecated functionality - rights statements, visible to public users, that are directly associated with digital objects (rather than the information object to which they are attached), and appear under the information area heading of "Digital object(Master) rights area". See the attached image "do-master-rights-area.png" for an example.
In AtoM 2.1 and earlier, a Rights statement could be associated directly with a digital object, via the DO edit page. See the AtoM 2.1 documentation for example:
Issue #4311 suggests this functionality was first added in ICA-AtoM 1.3.x, as the ticket references issues with the Trillium theme, added in v1.3.0 and removed in 2.0.0.
In version 2.2, Rights were overhauled to become actionable on digital objects - see for example:
However, it appears that a) legacy code for rendering this data still exists in AtoM, and b) no migration script was included to move legacy user data to display properly in the overhauled module. In 2.5, further changes to the digital object code were introduced to support adding DOs to authority records (see issue #12650) and it may have been these changes which lead to the current errors encountered when attempting to edit or delete this legacy data via the user interface.
If a user attempts to edit Rights statement associated with a digital object in 2.5 or later, AtoM returns a 500 error:
2020/07/20 20:56:55 [error] 2064#2064: *106 FastCGI sent in stderr: "PHP message: Unknown record property "informationObject" on "QubitDigitalObject"" while reading response header from upstream, client: 10.10.10.1, server: _, request: "GET /vrk95/edit HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.atom.sock:", host: "10.10.10.10", referrer: "http://10.10.10.10/26-sudbury-public-library-photo-copyright-rideau-air-photos-ltd-seeleys-bay-ont-can"
- Legacy user rights statements are moved to the associated information object
- A user can edit or delete legacy rights following an upgrade to 2.5 or later
- Legacy code is removed from AtoM