UNC-Libraries/hy-c

View on GitHub
app/overrides/models/concerns/bulkrax/file_factory_override.rb

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
# frozen_string_literal: true

# [hyc-override] Overriding set_removed_files to not hardcode updates as PNG files and set file set
# to private if the file set is being replaced.
Bulkrax::FileFactory.module_eval do
  def set_removed_filesets
    local_file_sets.each do |fileset|
      fileset.files.first.create_version
      opts = {}
      opts[:path] = fileset.files.first.id.split('/', 2).last
      opts[:original_name] = fileset.files.first.original_name
      opts[:mime_type] = fileset.files.first.mime_type

      fileset.add_file(File.open(Bulkrax.removed_image_path), opts)
      fileset.visibility = Hydra::AccessControls::AccessRight::VISIBILITY_TEXT_VALUE_PRIVATE unless @update_files
      fileset.save
      ::CreateDerivativesJob.set(wait: 1.minute).perform_later(fileset, fileset.files.first.id)
    end
  end
end