File: timeliness.rb

package info (click to toggle)
ruby-timeliness 0.3.8-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 204 kB
  • ctags: 69
  • sloc: ruby: 1,448; makefile: 3
file content (44 lines) | stat: -rw-r--r-- 1,083 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
require 'date'
require 'forwardable'

require 'timeliness/helpers'
require 'timeliness/definitions'
require 'timeliness/format'
require 'timeliness/format_set'
require 'timeliness/parser'
require 'timeliness/version'

module Timeliness
  class << self
    extend Forwardable
    def_delegators Parser, :parse, :_parse
    def_delegators Definitions, :add_formats, :remove_formats, :use_us_formats, :use_euro_formats
    attr_accessor :default_timezone, :date_for_time_type, :ambiguous_year_threshold
  end

  # Default timezone. Options:
  #   - :local (default)
  #   - :utc
  #   
  #   If ActiveSupport loaded, also
  #   - :current
  #   - 'Zone name'
  #
  self.default_timezone = :local

  # Set the default date part for a time type values.
  #
  self.date_for_time_type = lambda { Time.now }

  # Set the threshold value for a two digit year to be considered last century
  #
  # Default: 30
  #
  #   Example:
  #     year = '29' is considered 2029
  #     year = '30' is considered 1930
  #
  self.ambiguous_year_threshold = 30
end

Timeliness::Definitions.compile_formats