class CckForms::ParameterTypeClass::Date

Represents a single date.

Public Class Methods

build_date_form(form_builder, options, type = '') click to toggle source

Date SELECT as a set of 3 SELECTS: year, month, date

# File lib/cck_forms/parameter_type_class/date.rb, line 14
def self.build_date_form(form_builder, options, type = '')
  val =  options[:value].is_a?(Hash) ? options[:value][type] : options[:value]
  val = CckForms::ParameterTypeClass::Time::date_object_from_what_stored_in_database(val)
  form_element_options, form_element_html = CckForms::ParameterTypeClass::Time::default_options_for_date_time_selectors(val, options)
  form_element_html.merge!({required: options[:required]})
  ('<div class="form-inline">%s</div>' % form_builder.fields_for(:value) { |datetime_builder| datetime_builder.date_select type, form_element_options, form_element_html}).html_safe
end

Public Instance Methods

build_form(form_builder, options) click to toggle source

Date SELECT

# File lib/cck_forms/parameter_type_class/date.rb, line 8
def build_form(form_builder, options)
  set_value_in_hash options
  self.class.build_date_form(form_builder, options)
end
to_s(_options = nil) click to toggle source

“12.12.2012”

# File lib/cck_forms/parameter_type_class/date.rb, line 23
def to_s(_options = nil)
  if value.is_a? Time
    the_value = {
        '(1i)' => value.year,
        '(2i)' => value.month,
        '(3i)' => value.day,
    }
  end

  the_value ||= value

  "#{the_value.try(:[], '(3i)')}.#{the_value.try(:[], '(2i)')}.#{the_value.try(:[], '(1i)')}"
end