Class: BlacklightRangeLimit::RangeFormComponent
- Inherits:
-
ViewComponent::Base
- Object
- ViewComponent::Base
- BlacklightRangeLimit::RangeFormComponent
- Defined in:
- app/components/blacklight_range_limit/range_form_component.rb
Instance Method Summary collapse
- #begin_label ⇒ Object
- #end_label ⇒ Object
-
#initialize(facet_field:, classes: BlacklightRangeLimit.classes) ⇒ RangeFormComponent
constructor
A new instance of RangeFormComponent.
- #maxlength ⇒ Object
-
#render_range_input(type, input_label = nil, maxlength_override = nil) ⇒ Object
type is ‘begin’ or ‘end’.
Constructor Details
#initialize(facet_field:, classes: BlacklightRangeLimit.classes) ⇒ RangeFormComponent
Returns a new instance of RangeFormComponent.
7 8 9 10 |
# File 'app/components/blacklight_range_limit/range_form_component.rb', line 7 def initialize(facet_field:, classes: BlacklightRangeLimit.classes) @facet_field = facet_field @classes = classes end |
Instance Method Details
#begin_label ⇒ Object
12 13 14 |
# File 'app/components/blacklight_range_limit/range_form_component.rb', line 12 def begin_label range_config[:input_label_range_begin] || t("blacklight.range_limit.range_begin", field_label: @facet_field.label) end |
#end_label ⇒ Object
16 17 18 |
# File 'app/components/blacklight_range_limit/range_form_component.rb', line 16 def end_label range_config[:input_label_range_end] || t("blacklight.range_limit.range_end", field_label: @facet_field.label) end |
#maxlength ⇒ Object
20 21 22 |
# File 'app/components/blacklight_range_limit/range_form_component.rb', line 20 def maxlength range_config[:maxlength] end |
#render_range_input(type, input_label = nil, maxlength_override = nil) ⇒ Object
type is ‘begin’ or ‘end’
25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'app/components/blacklight_range_limit/range_form_component.rb', line 25 def render_range_input(type, input_label = nil, maxlength_override = nil) type = type.to_s default = if @facet_field.selected_range.is_a?(Range) case type when 'begin' then @facet_field.selected_range.first when 'end' then @facet_field.selected_range.last end end html = number_field_tag("range[#{@facet_field.key}][#{type}]", default, maxlength: maxlength_override || maxlength, class: "form-control text-center range_#{type}") html += label_tag("range[#{@facet_field.key}][#{type}]", input_label, class: 'sr-only visually-hidden') if input_label.present? html end |