<commit_before>module FormtasticBootstrap
  module Inputs
    module Base
      module Timeish

        def to_html
          control_group_wrapping do
            control_label_html <<
            controls_wrapping do
              hidden_fragments <<
              fragments.map do |fragment|
                fragment_input_html(fragment)
              end.join.html_safe
            end
          end
        end

        def controls_wrapper_html_options
          super.tap do |options|
            options[:class] = (options[:class].split << "controls-row").join(" ")
          end
        end

        def fragment_input_html(fragment)
          opts = input_options.merge(:prefix => fragment_prefix, :field_name => fragment_name(fragment), :default => value, :include_blank => include_blank?)
          template.send(:"select_#{fragment}", value, opts, fragment_input_html_options(fragment))
        end

        def fragment_input_html_options(fragment)
          input_html_options.tap do |options|
            options[:id] = fragment_id(fragment)
            options[:class] = ((options[:class] || "").split << fragment_class(fragment)).join(" ")
            options[:placeholder] = fragment_placeholder(fragment)
          end
        end
<commit_msg>Fixes #59 : every fragment should be symbols<commit_after>module FormtasticBootstrap
  module Inputs
    module Base
      module Timeish

        def to_html
          control_group_wrapping do
            control_label_html <<
            controls_wrapping do
              hidden_fragments <<
              fragments.map do |fragment|
                fragment_input_html(fragment.to_sym)
              end.join.html_safe
            end
          end
        end

        def controls_wrapper_html_options
          super.tap do |options|
            options[:class] = (options[:class].split << "controls-row").join(" ")
          end
        end

        def fragment_input_html(fragment)
          opts = input_options.merge(:prefix => fragment_prefix, :field_name => fragment_name(fragment), :default => value, :include_blank => include_blank?)
          template.send(:"select_#{fragment}", value, opts, fragment_input_html_options(fragment))
        end

        def fragment_input_html_options(fragment)
          input_html_options.tap do |options|
            options[:id] = fragment_id(fragment)
            options[:class] = ((options[:class] || "").split << fragment_class(fragment)).join(" ")
            options[:placeholder] = fragment_placeholder(fragment)
          end
        end

{'fraction_non_alphanumeric': 0.09243369734789392, 'fraction_numerical': 0.00078003120124805, 'mean_word_length': 2.2102628285356696, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4324833', 'n_tokens_mistral': 659, 'n_tokens_neox': 651, 'n_words': 136}