class BlacklightAdvancedSearch::QueryParser
Public Instance Methods
add_date_range_to_queries(params)
click to toggle source
format date input for Solr
# File lib/generators/newspaper_works/templates/config/initializers/patch_blacklight_advanced_search.rb, line 24 def add_date_range_to_queries(params) range_start = if params[:date_start].blank? || params[:date_start].match(/[\D]+/) '*' else params[:date_start] + '-01-01T00:00:00.000Z' end range_end = if params[:date_end].blank? || params[:date_end].match(/[\D]+/) '*' else params[:date_end] + '-12-31T23:59:59.999Z' end '(publication_date_dtsi:[' + range_start + ' TO ' + range_end + '])' end
process_query(params, config)
click to toggle source
override to add date range to query
# File lib/generators/newspaper_works/templates/config/initializers/patch_blacklight_advanced_search.rb, line 8 def process_query(params, config) queries = keyword_queries.map do |field, query| ParsingNesting::Tree.parse(query, config.advanced_search[:query_parser]).to_query(local_param_hash(field, config)) end queries.join(" #{keyword_op} ") return queries if params[:date_start].blank? && params[:date_end].blank? if queries.blank? add_date_range_to_queries(params) else [queries, add_date_range_to_queries(params)].join(' AND ') end end