class Smartdown::Api::DateQuestion

Public Instance Methods

end_year() click to toggle source
# File lib/smartdown/api/date_question.rb, line 12
def end_year
  parse_date(to) || default_end_year
end
start_year() click to toggle source
# File lib/smartdown/api/date_question.rb, line 8
def start_year
  parse_date(from) || default_start_year
end

Private Instance Methods

default_end_year() click to toggle source
# File lib/smartdown/api/date_question.rb, line 24
def default_end_year
  Time.now.year + 3
end
default_start_year() click to toggle source
# File lib/smartdown/api/date_question.rb, line 20
def default_start_year
  Time.now.year - 1
end
is_fixed_year?(int) click to toggle source
# File lib/smartdown/api/date_question.rb, line 42
def is_fixed_year?(int)
  int.abs >= 1000
end
parse_date(date_string) click to toggle source
# File lib/smartdown/api/date_question.rb, line 32
def parse_date(date_string)
  return nil unless date_string
  year = date_string.to_i
  if is_fixed_year?(year)
    year
  else
    Time.now.year + year
  end
end
question_element() click to toggle source
# File lib/smartdown/api/date_question.rb, line 28
def question_element
  @question_element ||= elements.find{|element| element.is_a? Smartdown::Model::Element::Question::Date}
end