Skip to content
Snippets Groups Projects
Commit 0ae017d9 authored by Gyan Gupta's avatar Gyan Gupta Committed by Anusha Ranganathan
Browse files

Fix filtered download issue

parent f5412f2b
No related branches found
No related tags found
1 merge request!351Fix filtered download issue
module ComplexFilterHelper
def fetch_crc_filter_params(params)
facet_filters = params[:f].present? ? params[:f].slice(*::CrcDataset::CRC_FILTER_FACET_FIELDS).permit!.to_h : {}
range_filters = (params[:range].present? && params[:range][:year_recorded_sim].present?) ? params[:range].slice(:year_recorded_sim).permit!.to_h : {}
search_params = facet_filters.merge(range_filters)
year_range_filters = (params[:range].present? && params[:range][:year_recorded_sim].present?) ? params[:range].slice(:year_recorded_sim).permit!.to_h : {}
age_range_filters = (params[:range].present? && params[:range][:complex_subject_age_itsim].present?) ? params[:range].slice(:complex_subject_age_itsim).permit!.to_h : {}
search_params = facet_filters.merge(year_range_filters).merge(age_range_filters)
end
def subject_field_mappings
......@@ -46,7 +47,7 @@ module ComplexFilterHelper
end
end
def filtered_subjects(subject_query, session_query, modality_query)
def filtered_subjects(subject_query = nil, session_query = nil , modality_query = nil)
complex_subjects = ComplexSubject.includes(complex_sessions: :complex_modalities)
if modality_query.present?
......@@ -110,6 +111,13 @@ module ComplexFilterHelper
end_date = Date.parse("#{year_range['end']}-12-31")
query["session_date_recorded"] = begin_date..end_date
end
elsif key == "complex_subject_age_itsim"
age_range = search_params[key]
if age_range.is_a?(Hash) && age_range.key?("begin") && age_range.key?("end")
query["subject_age"] = age_range['begin']..age_range['end']
else
query[value] = search_params[key]
end
else
query[value] = search_params[key]
end
......@@ -126,7 +134,8 @@ module ComplexFilterHelper
facet_filters = search_params[:f] || {}
range_filters = (search_params[:range].present? && search_params[:range][:year_recorded_sim].present?) ? search_params[:range].slice(:year_recorded_sim) : {}
search_params = facet_filters.merge(range_filters)
age_range_filters = (params[:range].present? && params[:range][:complex_subject_age_itsim].present?) ? params[:range].slice(:complex_subject_age_itsim).permit!.to_h : {}
search_params = facet_filters.merge(range_filters).merge(age_range_filters)
return has_any_search_params?(field_mappings, search_params)
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment