Module: Decidim::Plans::RemainingCharactersHelper

Defined in:
app/helpers/decidim/plans/remaining_characters_helper.rb

Instance Method Summary collapse

Instance Method Details

#remaining_characters(attribute, num_characters) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'app/helpers/decidim/plans/remaining_characters_helper.rb', line 6

def remaining_characters(attribute, num_characters)
  return unless block_given?

  field_opts = {}
  if num_characters.positive?
    remaining_characters_id = "#{attribute}_remaining_characters"
    field_opts = {
      maxlength: num_characters,
      data: {
        remaining_characters: "##{remaining_characters_id}"
      }
    }
  end

  field = capture do
    yield field_opts
  end
  chars_elem = render(
    "decidim/plans/shared/remaining_characters_container",
    remaining_characters_id: remaining_characters_id
  )

  field + chars_elem
end