@@ -42,28 +42,18 @@ def ordered_filters
4242 def ordered_filter_options
4343 if ordered_filters
4444 @ordered_filter_options ||= ordered_filters . map do |duplet |
45- options = { index : duplet [ 0 ] }
4645 filter_for_field = duplet [ 1 ]
4746 filter_name = filter_for_field . keys . first
4847 filter_hash = filter_for_field . values . first
4948 unless ( field = filterable_fields . find { |f | f . name == filter_name . to_sym } )
5049 raise "#{ filter_name } is not currently filterable; filterable fields are #{ filterable_fields . map ( &:name ) . join ( ', ' ) } "
5150 end
5251
53- case field . type
54- when :enum
55- options [ :select_options ] = options_for_select ( field . with ( object : @abstract_model . model . new ) . enum , filter_hash [ 'v' ] )
56- when :date , :datetime , :time
57- options [ :datetimepicker_options ] = field . datepicker_options
58- end
59- options [ :label ] = field . label
60- options [ :name ] = field . name
61- options [ :type ] = field . type
62- options [ :value ] = filter_hash [ 'v' ]
63- options [ :label ] = field . label
64- options [ :operator ] = filter_hash [ 'o' ] || field . default_filter_operator
65- options [ :required ] = field . required
66- options
52+ field . filter_options . merge (
53+ index : duplet [ 0 ] ,
54+ operator : filter_hash [ 'o' ] || field . default_filter_operator ,
55+ value : filter_hash [ 'v' ] ,
56+ )
6757 end
6858 end
6959 end
0 commit comments