module ActiveScaffold::Bridges::Shared::DateBridge::SearchColumnHelpers
Public Instance Methods
active_scaffold_date_bridge_trend_tag(column, options, trend_options)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 46 def active_scaffold_date_bridge_trend_tag(column, options, trend_options) trend_controls = text_field_tag("#{options[:name]}[number]", trend_options[:number_value], :class => 'text-input', :size => 10, :autocomplete => 'off') << ' ' << select_tag("#{options[:name]}[unit]", options_for_select(active_scaffold_search_date_bridge_trend_units(column), trend_options[:unit_value]), :class => 'text-input') content_tag('span', trend_controls.html_safe, :id => "#{options[:id]}_trend", :class => 'search-date-trend', :style => trend_options[:show] ? nil : 'display: none') end
active_scaffold_search_date_bridge(column, options)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 6 def active_scaffold_search_date_bridge(column, options) current_search = {'from' => nil, 'to' => nil, 'opt' => 'BETWEEN', 'number' => 1, 'unit' => 'DAYS', 'range' => nil} current_search.merge!(options[:value]) unless options[:value].nil? tags = [] tags << active_scaffold_search_date_bridge_comparator_tag(column, options, current_search) tags << active_scaffold_search_date_bridge_trend_tag(column, options, current_search) tags << active_scaffold_search_date_bridge_numeric_tag(column, options, current_search) tags << active_scaffold_search_date_bridge_range_tag(column, options, current_search) tags.join(' ').html_safe end
active_scaffold_search_date_bridge_comparator_options(column)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 18 def active_scaffold_search_date_bridge_comparator_options(column) select_options = ActiveScaffold::Finder::DATE_COMPARATORS.collect { |comp| [as_(comp.downcase.to_sym), comp] } select_options + ActiveScaffold::Finder::NUMERIC_COMPARATORS.collect { |comp| [as_(comp.downcase.to_sym), comp] } end
active_scaffold_search_date_bridge_comparator_tag(column, options, current_search)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 23 def active_scaffold_search_date_bridge_comparator_tag(column, options, current_search) select_tag("#{options[:name]}[opt]", options_for_select(active_scaffold_search_date_bridge_comparator_options(column), current_search['opt']), :id => "#{options[:id]}_opt", :class => 'as_search_range_option as_search_date_time_option') end
active_scaffold_search_date_bridge_numeric_tag(column, options, current_search)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 27 def active_scaffold_search_date_bridge_numeric_tag(column, options, current_search) numeric_controls = '' << active_scaffold_search_date_bridge_calendar_control(column, options, current_search, 'from') << content_tag(:span, (' - ' + active_scaffold_search_date_bridge_calendar_control(column, options, current_search, 'to')).html_safe, :id => "#{options[:id]}_between", :class => 'as_search_range_between', :style => current_search['opt'] == 'BETWEEN' ? nil : 'display: none') content_tag('span', numeric_controls.html_safe, :id => "#{options[:id]}_numeric", :class => 'search-date-numeric', :style => ActiveScaffold::Finder::NUMERIC_COMPARATORS.include?(current_search['opt']) ? nil : 'display: none') end
active_scaffold_search_date_bridge_range_tag(column, options, current_search)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 63 def active_scaffold_search_date_bridge_range_tag(column, options, current_search) range_controls = select_tag("#{options[:name]}[range]", options_for_select(ActiveScaffold::Finder::DATE_RANGES.collect { |range| [as_(range.downcase.to_sym), range] }, current_search['range']), :class => 'text-input', :id => nil) content_tag('span', range_controls.html_safe, :id => "#{options[:id]}_range", :class => 'search-date-range', :style => (current_search['opt'] == 'RANGE') ? nil : 'display: none') end
active_scaffold_search_date_bridge_trend_tag(column, options, current_search)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 39 def active_scaffold_search_date_bridge_trend_tag(column, options, current_search) active_scaffold_date_bridge_trend_tag(column, options, :number_value => current_search['number'], :unit_value => current_search['unit'], :show => (current_search['opt'] == 'PAST' || current_search['opt'] == 'FUTURE')) end
active_scaffold_search_date_bridge_trend_units(column)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 57 def active_scaffold_search_date_bridge_trend_units(column) options = ActiveScaffold::Finder::DATE_UNITS.collect { |unit| [as_(unit.downcase.to_sym), unit] } options = ActiveScaffold::Finder::TIME_UNITS.collect { |unit| [as_(unit.downcase.to_sym), unit] } + options if column_datetime?(column) options end
column_datetime?(column)
click to toggle source
# File lib/active_scaffold/bridges/shared/date_bridge.rb, line 72 def column_datetime?(column) (!column.column.nil? && [:datetime, :time].include?(column.column.type)) end