From 6050c78d28cf629021c9703f03201653553d8b33 Mon Sep 17 00:00:00 2001 From: Gyan Gupta <gyan@cottagelabs.com> Date: Mon, 17 Mar 2025 19:06:23 +0530 Subject: [PATCH] fixes for issue 12 and 19 and also fixed importer --- hyrax/app/assets/javascripts/date_picker_options.js | 2 +- .../app/helpers/hyrax/listeners/lifecycle_listener_helper.rb | 4 ++-- hyrax/app/models/concerns/s3_file_handleable.rb | 5 +++-- hyrax/app/models/dataset.rb | 1 + hyrax/config/metadata/crc1280_experiment.yaml | 1 + hyrax/config/metadata/dataset.yaml | 1 + 6 files changed, 9 insertions(+), 5 deletions(-) diff --git a/hyrax/app/assets/javascripts/date_picker_options.js b/hyrax/app/assets/javascripts/date_picker_options.js index c101bba2..13a753bd 100644 --- a/hyrax/app/assets/javascripts/date_picker_options.js +++ b/hyrax/app/assets/javascripts/date_picker_options.js @@ -1,6 +1,6 @@ Blacklight.onLoad(function() { // $.fn.datepicker.defaults.format = "dd/mm/yyyy"; - $("#complex_session_session_date_recorded").datepicker({ + $('[data-provide="datepicker"]').datepicker({ orientation: "bottom left" }); }); diff --git a/hyrax/app/helpers/hyrax/listeners/lifecycle_listener_helper.rb b/hyrax/app/helpers/hyrax/listeners/lifecycle_listener_helper.rb index 0611c960..714cce1a 100644 --- a/hyrax/app/helpers/hyrax/listeners/lifecycle_listener_helper.rb +++ b/hyrax/app/helpers/hyrax/listeners/lifecycle_listener_helper.rb @@ -44,8 +44,8 @@ module Hyrax def after_destroy_callbacks(object) case object.class.name - when 'Crc1280Experiment' - object.complex_subjects.destroy_all + when 'Crc1280Experiment', 'Dataset' + object.clear_s3_and_all_associated_objects when 'FileSet' destroy_set_meta_data(object) end diff --git a/hyrax/app/models/concerns/s3_file_handleable.rb b/hyrax/app/models/concerns/s3_file_handleable.rb index c7cc1580..73c40f99 100644 --- a/hyrax/app/models/concerns/s3_file_handleable.rb +++ b/hyrax/app/models/concerns/s3_file_handleable.rb @@ -18,7 +18,8 @@ module S3FileHandleable if self.class.in?([Dataset, Crc1280Experiment]) bucket_name = s3.sanitise_name(ENV.fetch("S3_FILE_UPLOAD_BUCKET")) user = ::User.find_by_user_key(self.depositor) - s3.delete_bucket(bucket_name) + all_objects, size = s3.list_all_objects(bucket_name, self.id.to_s) + s3.delete_objects(bucket_name, all_objects.map { |obj| obj[:key] }) if all_objects.present? if self.class == Crc1280Experiment self.complex_subjects.destroy_all end @@ -27,7 +28,7 @@ module S3FileHandleable user = ::User.find_by_user_key(self.crc1280_experiment.depositor) objects_prefix = objects_prefix(self, s3_folder_name) all_objects, size = s3.list_all_objects(bucket_name, objects_prefix) - s3.delete_objects(bucket_name, all_objects.map{|obj| obj[:key]}) + s3.delete_objects(bucket_name, all_objects.map{|obj| obj[:key]}) if all_objects.present? end self.file_sets.each do |file_set| diff --git a/hyrax/app/models/dataset.rb b/hyrax/app/models/dataset.rb index c7290ef6..b12f4b88 100644 --- a/hyrax/app/models/dataset.rb +++ b/hyrax/app/models/dataset.rb @@ -13,6 +13,7 @@ class Dataset < Hyrax::Work include CommonWorksQuery include ::Hyrax::TombstoneBehavior include ExternalServices + include S3FileHandleable def default_admin_set AdminSetHelper.find_admin_set_by_property(title: [ENV.fetch('RUB_ADMIN_SET_TITLE', 'RUB publication workflow')]) diff --git a/hyrax/config/metadata/crc1280_experiment.yaml b/hyrax/config/metadata/crc1280_experiment.yaml index 96e37370..15488802 100644 --- a/hyrax/config/metadata/crc1280_experiment.yaml +++ b/hyrax/config/metadata/crc1280_experiment.yaml @@ -49,6 +49,7 @@ attributes: predicate: http://www.example.com/vocabs/rdms/isTombstone format: type: string + multiple: true index_keys: - "format_ssim" predicate: http://www.example.com/vocabs/rdms/format diff --git a/hyrax/config/metadata/dataset.yaml b/hyrax/config/metadata/dataset.yaml index 13cd7a7e..45b71295 100644 --- a/hyrax/config/metadata/dataset.yaml +++ b/hyrax/config/metadata/dataset.yaml @@ -49,6 +49,7 @@ attributes: predicate: http://www.example.com/vocabs/rdms/isTombstone format: type: string + multiple: true index_keys: - "format_ssim" predicate: http://www.example.com/vocabs/rdms/format -- GitLab