Sha256: 345a572071831e045606a38dc9b9625fde477e723ad078922fe19a8049a6b678

Contents?: true

Size: 927 Bytes

Versions: 54

Compression:

Stored size: 927 Bytes

Contents

module Effective
  module FormInputs
    class PriceField < Effective::FormInput

      def build_input(&block)
        @builder.hidden_field(name, value: price, id: tag_id + '_value_as_integer') +
        @template.text_field_tag(name, @template.number_to_currency(currency, unit: ''), options[:input].merge(id: tag_id, name: nil))
      end

      def input_group_options
        { input_group: { class: 'input-group' }, prepend: content_tag(:span, icon('dollar-sign'), class: 'input-group-text') }
      end

      def input_html_options
        { class: 'form-control effective_price', autocomplete: 'off', id: tag_id }
      end

      private

      def price
        return nil unless value
        value.kind_of?(Integer) ? value : ('%.2f' % (value / 100.0))
      end

      def currency
        return nil unless value
        value.kind_of?(Integer) ? ('%.2f' % (value / 100.0)) : value
      end

    end
  end
end

Version data entries

54 entries across 54 versions & 1 rubygems

Version Path
effective_bootstrap-0.9.47 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.46 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.45 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.44 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.43 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.42 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.41 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.40 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.39 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.38 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.37 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.36 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.35 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.34 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.33 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.32 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.31 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.30 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.29 app/models/effective/form_inputs/price_field.rb
effective_bootstrap-0.9.28 app/models/effective/form_inputs/price_field.rb