Module: ActionView::Helpers::FormOptionsHelper
- Included in:
- CurrencySelectTag
- Defined in:
- lib/form_options_helper.rb
Overview
Module for the form options.
Instance Method Summary collapse
-
#currency_options_for_select(selected = nil, priority_currencies = nil) ⇒ Object
Returns a string of option tags for all available currencies.
-
#currency_select(object, method, priority_currencies = nil, options = {}, html_options = {}) ⇒ Object
Return select and option tags for the given object and method, using currency_options_for_select to generate the list of option tags.
Instance Method Details
#currency_options_for_select(selected = nil, priority_currencies = nil) ⇒ Object
Returns a string of option tags for all available currencies. Supply a currency ISO code as selected
to have it marked as the selected option tag. You can also supply an array of currencies as priority_currencies
, so that they will be listed above the rest of the list.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/form_options_helper.rb', line 27 def (selected = nil, priority_currencies = nil) = ''.html_safe if priority_currencies += ( ::CurrencySelect.priority_currencies_array(priority_currencies), selected ) label = '-------------'.html_safe option = content_tag(:option, label, value: '', disabled: 'disabled') += option # prevents selected from being included twice in the HTML which causes # some browsers to select the second selected option (not priority) # which makes it harder to select an alternative priority country selected = nil if priority_currencies.include?(selected) end # All the countries included in the country_options output. + ( ::CurrencySelect.currencies_array, selected ) end |
#currency_select(object, method, priority_currencies = nil, options = {}, html_options = {}) ⇒ Object
Return select and option tags for the given object and method, using currency_options_for_select to generate the list of option tags.
14 15 16 17 18 19 20 |
# File 'lib/form_options_helper.rb', line 14 def currency_select( object, method, priority_currencies = nil, = {}, = {} ) tag = CurrencySelectTag.new(object, method, self, ) tag.to_currency_select_tag(priority_currencies, , ) end |