diff --git a/app/models/concerns/csv_exportable.rb b/app/models/concerns/csv_exportable.rb index 99ccdf2..ae8dac4 100644 --- a/app/models/concerns/csv_exportable.rb +++ b/app/models/concerns/csv_exportable.rb @@ -24,7 +24,8 @@ module CsvExportable location_release: LOCATION_HEADERS, material_release: MATERIAL_HEADERS, medical_release: MEDICAL_HEADERS, - misc_release: %i[name contact_info] + COMMON_HEADERS + misc_release: %i[name contact_info] + COMMON_HEADERS, + music_release: %i[name file_infos_count composers_count publishers_count] + COMMON_HEADERS }.freeze VALUES = { @@ -33,7 +34,8 @@ module CsvExportable location_release: LOCATION_VALUES, material_release: MATERIAL_VALUES, medical_release: MEDICAL_VALUES, - misc_release: %w[name contact_info] + COMMON_VALUES + misc_release: %w[name contact_info] + COMMON_VALUES, + music_release: %w[name music_file_count music_composers_count music_publishers_count] + COMMON_VALUES }.freeze included do @@ -60,6 +62,18 @@ module CsvExportable self.file_infos.any? ? self.file_infos.size : I18n.t('acquired_media_releases.acquired_media_release.no_media') end + def music_file_count + file_infos.size + end + + def music_composers_count + composers.size + end + + def music_publishers_count + publishers.size + end + def contact_info contact_info = '' contact_info += "#{person_address}; " if person_address.present? diff --git a/app/models/music_release.rb b/app/models/music_release.rb index 29fd426..a422436 100644 --- a/app/models/music_release.rb +++ b/app/models/music_release.rb @@ -7,6 +7,7 @@ class MusicRelease < ApplicationRecord include Searchable include Taggable include PersonName + include CsvExportable has_many :file_infos, as: :releasable, dependent: :destroy has_many :composers, dependent: :destroy diff --git a/config/locales/en.yml b/config/locales/en.yml index e65c006..948add8 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -856,6 +856,7 @@ en: search: Search empty: Music Releases will appear here table_headers: + name: Name composers_count: No. Composers file_infos_count: No. Files notes: Notes diff --git a/config/locales/es.yml b/config/locales/es.yml index 135d506..d2af559 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -505,3 +505,13 @@ es: notes: Notes (ES) signed_at: Date Signed (ES) tags: Tags (ES) + music_releases: + index: + table_headers: + name: Name (ES) + composers_count: No. Composers (ES) + file_infos_count: No. Files (ES) + notes: Notes (ES) + publishers_count: No. Publishers (ES) + signed_at: Date Signed (ES) + tags: Tags (ES)