diff --git a/app/models/concerns/csv_exportable.rb b/app/models/concerns/csv_exportable.rb index 3b03f59..4936842 100644 --- a/app/models/concerns/csv_exportable.rb +++ b/app/models/concerns/csv_exportable.rb @@ -3,7 +3,7 @@ module CsvExportable extend ActiveSupport::Concern - COMMON_HEADERS = %i[approved? notes tags signed_at].freeze + COMMON_HEADERS = %i[notes tags signed_at].freeze COMMON_VALUES = %w[clean_notes clean_tags signed_on].freeze included do @@ -29,11 +29,12 @@ module CsvExportable private - def contact_info + def contact_info(name: nil, address: nil, phone: nil, email: nil) contact_info = '' - contact_info += "#{person_address}; " if person_address.present? - contact_info += "P: #{person_phone}; " if person_phone.present? - contact_info += "E: #{person_email}" if person_email.present? + contact_info += "#{name}; " if name.present? + contact_info += "#{address}; " if address.present? + contact_info += "P: #{phone}; " if phone.present? + contact_info += "E: #{email}" if email.present? contact_info.delete_suffix '; ' end diff --git a/app/models/location_release.rb b/app/models/location_release.rb index 266ea07..3340fd5 100644 --- a/app/models/location_release.rb +++ b/app/models/location_release.rb @@ -16,7 +16,7 @@ class LocationRelease < ApplicationRecord class << self def custom_csv_exportable_headers - %i[name address] + %i[approved? location_info owner_info amendment_signed_column] end end @@ -67,6 +67,22 @@ class LocationRelease < ApplicationRecord true end + def location_info + contact_info(name: name, address: address) + end + + def owner_info + contact_info(name: person_name, address: person_address, phone: person_phone, email: person_email) + end + + def amendment_signed_column + if amendment_signable? + amendment_signed? + else + I18n.t('location_releases.csv.no_amendment_clause') + end + end + private def end_date_after_start_date diff --git a/config/locales/en.yml b/config/locales/en.yml index 88ac5c4..b8724cb 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -850,7 +850,9 @@ en: empty: Location Releases will appear here table_headers: amendment_signed: Amendment + amendment_signed_column: Amendment approved: Approved + approved?: Approved location_info: Location Info notes: Notes owner_info: Owner Info @@ -870,6 +872,8 @@ en: heading: Import Location Release update: notice: The location release has been updated + csv: + no_amendment_clause: No amendment clause material_releases: create: notice: The material release has been created diff --git a/config/locales/es.yml b/config/locales/es.yml index b17bf1e..5f71cfc 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -410,15 +410,20 @@ es: table_headers: address: Address (ES) amendment_signed: Amendment (ES) + amendment_signed_column: Amendment signed (ES) notes: Notes (ES) signed_at: Date Signed (ES) tags: Tags (ES) + approved: Approved (ES) + approved?: Approved (ES) location_release: actions: sign_amendment: Sign Amendment (ES) messages: amendment_not_signed_tooltip: Amendment not yet signed (ES) amendment_signed_tooltip: Amendment Signed (ES) + csv: + no_amendment_clause: No amendment clause (ES) material_releases: create: notice: The acquired media release has been created (ES)