-
Notifications
You must be signed in to change notification settings - Fork 12
Works Within Works
Plum has Works nested within Works (specifically, ScannedResources as members of MultiVolumeWorks). This functionality consists of:
-
"container" routes to address a ScannedResource in the context of a MultiVolumeWork: https://github.com/pulibrary/plum/blob/master/config/routes.rb#L66-L67
-
controller logic to create the membership relationship: https://github.com/pulibrary/plum/blob/master/app/controllers/curation_concerns/scanned_resources_controller.rb#L13-L16
-
indexing ScannedResources's parent works: https://github.com/pulibrary/plum/blob/master/app/models/scanned_resource.rb#L12-L18
-
solr search logic to suppress ScannedResources that are members of a MultiVolumeWork, and retrieve the MultiVolumeWork instead (ditto for FileSets): https://github.com/pulibrary/plum/blob/master/app/models/search_builder/join_children_query.rb
-
views:
- show a button to create a member ScannedResource: https://github.com/pulibrary/plum/blob/master/app/views/curation_concerns/multi_volume_works/show.html.erb#L19
- show member ScannedResources: https://github.com/pulibrary/plum/blob/master/app/views/curation_concerns/multi_volume_works/_members.html.erb
- helper method to generate link to a ScannedResource's parent MultiVolumeWork: https://github.com/pulibrary/plum/blob/master/app/helpers/scanned_resource_helper.rb#L23-L37