class PasswordRequired::PasswordRequest::HiddenInputs
Attributes
namespaces[R]
Public Class Methods
new(params, namespaces: [])
click to toggle source
# File lib/password_required/password_request/hidden_inputs.rb, line 8 def initialize(params, namespaces: []) @params = params @namespaces = namespaces end
Public Instance Methods
to_s()
click to toggle source
# File lib/password_required/password_request/hidden_inputs.rb, line 13 def to_s @params.reduce('') do |input_html, key_value_pair| input_html + input_from(*key_value_pair) end end
Private Instance Methods
devise_input(key, value)
click to toggle source
# File lib/password_required/password_request/hidden_inputs.rb, line 29 def devise_input(key, value) key += '[]' if value.is_a? Array Array(value).map { |i| hidden_field_tag key, i }.join('') end
input_from(key, value)
click to toggle source
# File lib/password_required/password_request/hidden_inputs.rb, line 21 def input_from(key, value) if value.is_a? Hash self.class.new(value, namespaces: namespaces | [key]).to_s else devise_input namespaced(key), value end end
namespaced(key)
click to toggle source
# File lib/password_required/password_request/hidden_inputs.rb, line 34 def namespaced(key) first, *rest = *(namespaces | [key]) "#{first}#{rest.reduce('') { |a, e| a + "[#{e}]" }}" end