christian_calendar 0.1.2 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 28f3375c2c35c248352e57bdb5267574e759c52b
4
- data.tar.gz: c7168679e636910e7ec4da85bae9bfce4e845013
2
+ SHA256:
3
+ metadata.gz: 21ac6511b4b24a4d5506b92515fb86901c22087dcd9d318c456c980d55a4f216
4
+ data.tar.gz: 5c05e772e808c08748364eb967084b0880f7a178cdbd6b7ba84f20fdaaaed696
5
5
  SHA512:
6
- metadata.gz: 4b97ad500acc67b2a825b35f8fe5505d70d22de8c9655cebda06bcc3dee70b96595871c4cb299af318490f8a9fa17481933f011036673c0371aa6d794438581f
7
- data.tar.gz: 59be4372fb6abea000add2b3e53136953be7050eac5808c9a9176d70b7dd059432081a99b1eeddaf574e52f632cfd8ea07d383c87c625a16423bf0db4e4a21a9
6
+ metadata.gz: 30fba1b32c09d8713f132d8933e8073c89da8a382e95582951bb477863ebc0b3a6b6d4f192c7addf9a9f96c51b1fe1546d42292ac9f826f032b440bbfb617387
7
+ data.tar.gz: 33eaeb8985ea6545482cb0db57e96d7d6107179239b678d9d7298746571558cb1396461e3a4fb831948d1568688beae264e009e2645a3a4f751939e0bb933016
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -1,15 +1,12 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- #file: christian_calendar.rb
3
+ # file: christian_calendar.rb
4
4
 
5
5
  require 'easter'
6
6
  require 'chronic'
7
7
 
8
- MINUTE = 60
9
- HOUR = MINUTE * 60
10
- DAY = HOUR * 24
11
- WEEK = DAY * 7
12
- MONTH = DAY * 30
8
+
9
+ WEEK = 7
13
10
 
14
11
  class ChristianCalendar
15
12
 
@@ -18,11 +15,11 @@ class ChristianCalendar
18
15
  end
19
16
 
20
17
  def epiphany()
21
- christmas(@year - 1) + DAY * 12
18
+ christmas(@year - 1) + 12
22
19
  end
23
20
 
24
21
  def st_davids_day(year=@year)
25
- Time.local(year, 3, 1)
22
+ Date.new(year, 3, 1)
26
23
  end
27
24
 
28
25
  alias saint_davids_day st_davids_day
@@ -32,11 +29,11 @@ class ChristianCalendar
32
29
  end
33
30
 
34
31
  def mothering_sunday()
35
- Chronic.parse('sunday', now: ash_wednesday) + WEEK * 3
32
+ Chronic.parse('sunday', now: ash_wednesday).to_date + WEEK * 3
36
33
  end
37
34
 
38
35
  def st_patricks_day(year=@year)
39
- Time.local(year, 3, 17)
36
+ Date.new(year, 3, 17)
40
37
  end
41
38
 
42
39
  alias saint_patricks_day st_patricks_day
@@ -57,11 +54,21 @@ class ChristianCalendar
57
54
 
58
55
  def whit_sunday()
59
56
  Chronic.parse('sunday', \
60
- now: Chronic.parse('15 May', now: Time.local(@year,1,1)))
57
+ now: Chronic.parse('15 May', now: Time.local(@year,1,1))).to_date
58
+ end
59
+
60
+ def to_s()
61
+
62
+ a = to_h.sort_by{|k, v| v.to_datetime}.map do |k,v|
63
+ label = k.to_s.sub(/s(?=_)/,"'s").gsub('_', ' ').split.map(&:capitalize).join(' ')
64
+ "%+16s: %s" % [label,v.strftime("%d-%b-%Y")]
65
+ end
66
+
67
+ a.join("\n")
61
68
  end
62
69
 
63
70
  def trinity_sunday()
64
- Chronic.parse('sunday', now: pentecost)
71
+ Chronic.parse('sunday', now: pentecost).to_date
65
72
  end
66
73
 
67
74
  def ascension_day()
@@ -75,22 +82,27 @@ class ChristianCalendar
75
82
  alias pentecost_sunday pentecost
76
83
 
77
84
  def st_andrews_day(year=@year)
78
- Time.local(year, 11, 30)
85
+ Date.new(year, 11, 30)
79
86
  end
80
87
 
81
88
  alias saint_andrews_day st_andrews_day
82
89
 
83
90
  def advent_sunday()
84
- Chronic.parse('sunday', now: christmas) - WEEK * 4
91
+ Chronic.parse('sunday', now: christmas).to_date - WEEK * 4
85
92
  end
86
93
 
87
94
  def christmas(year=@year)
88
- Time.local(year, 12, 25)
95
+ Date.new(year, 12, 25)
96
+ end
97
+
98
+ def query(s)
99
+ key = s.downcase.gsub(/\W+/,'_').to_sym
100
+ self.to_h[key]
89
101
  end
90
102
 
91
103
  def to_h
92
104
  a = %i(epiphany st_davids_day ash_wednesday mothering_sunday)\
93
- + %i(st_patricks_day palm_sunday good_friday easter_sunday)\
105
+ + %i(st_patricks_day palm_sunday good_friday easter easter_sunday)\
94
106
  + %i(whit_sunday trinity_sunday ascension_day pentecost st_andrews_day)\
95
107
  + %i(advent_sunday christmas)
96
108
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: christian_calendar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,62 +10,78 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
- YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTE0MDEwNDE3NDAxMVoXDTE1MDEwNDE3NDAxMVowSDESMBAG
16
- A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
- EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAMTj2pwMHnQglKT0hs1obl7At3Cv4L3bT9fjeTtvRDh0dTiF/xGOa0YpkyHa
19
- jDiAUUd60EqCraADPGFg6zvAyOP9wSfqqyi8b5eA5pnsI36mjavBua5vnZJrQEbj
20
- PbQ+7MJQW8s7RVFaW6LrmQr19/Qxh8xaC+tCx+IyGnSbr1a4Vaiu0k8QIveqmIn4
21
- 5UfcIonMnsnuEkATDaTzGjusp8Z3SdKfZyxWmcu458rLUSImvpdBxaGEcHAPhqwx
22
- qGASEkhm4fUbT/Jq5wYg6mr+PhhJGs3ZKh6gRPKdRoY39x7Q+TiLuIx2ZaasSO/q
23
- vP3P/eF1TlxW+F6pVGodSzkooC8CAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
- DwQEAwIEsDAdBgNVHQ4EFgQUkfyPIFGuQVuol/V91Y0hrlgfKDMwJgYDVR0RBB8w
25
- HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAeBV17Heh
27
- +gqxmLPSCkLI1iFWgnTJFF7WNWXHapMCXLv3Pxp6ilnWtCt5CK9WG1Fw9Z9jnzk3
28
- o56kEOSvc8YhyuaOn3R5Z6EGUX87y3Au4uXDxgV5ueTTL2m4ZKSNO3HHyWGzgEL8
29
- H3XkvaqTRbv4E7Ey05ebtCRRIkxgTKjhIoADFFGWo6IJQJE0Zp6bF354H7OnaDYe
30
- uznEPJkCsHjLSvWGNu2BPmkLVIeZriOFu/0tO2t/5JqILkDQOJ6UKM/veoedmUcY
31
- Rg4TfVzu/dStww5/lTnRzbsQJEURD5t5AMAxy/nXLLoL27RprDvmLOOjCiId3beP
32
- LqhBxSNMslv8uA==
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjEwMjIzMTIwMzMwWhcN
15
+ MjIwMjIzMTIwMzMwWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC5f3L6
17
+ IXX5FxcA2FwlYIKvhLLzeRdl4vrp8YYYyw/0IQ0B2s0ULUrLYMT5xwm+RDh+mURj
18
+ vLj3Va4LvldDS5tGniVgurQKJ0M6/JR6GMY2Hu5FW3l7VRTlwoN5u+veZEny8YvC
19
+ NPu4HGEsAHXQB2EhytNyyZIRDw3KPypyMk0LqQFymLLe4MpPfFxX67vxZupgl8cL
20
+ i5cqqyuhkus0fJer6r8rFOY1oFAbpedJkKaAfUMYhuSVMddyybf/D8wgOmZ97bBk
21
+ Yt5mqknhnkcXDUduBEOww2gNlDTeLnARvJ70JQV+lvXKPGf+P6aJHNWRbaws6PsY
22
+ FtIu7wDQL67Ih8vCnM2TbkccA0sVrrocpHWcVotbDYFv/KJjLlhNxojaCqhtmK7H
23
+ ikffW7l6t+W33LBL3X6oqbW04gSt/FvEIxFWdFr5SvNydpD4kdOD1bpBb5yqoWsI
24
+ 46UCyuVpf4nwMb8O7eBNzjTfUmAI9wC3MBY1Y/sHk9YrSdE1pdZLBTnOofMCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUSeWMRAlV
26
+ wa4yBvp/XQ15Kxm3eMowJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEAJmL2yPpIYoJCH5B7iWNfV0GEADNWV9Ix5B4dFHrZ
29
+ iO0mwdicBSbbyBG/XRn+ESrXbTT7b5k6FT4S6MFKru+jJq1s8TQoHLXCCYCMulBk
30
+ Rr4FeVTVkMYhzUyFBlkVsfP9gsBPh6MGnQzelM6xNVA3zdqGxNsHorFPULmkV8ZL
31
+ ifukkKMdo9xNMu5D59X2DdFC9tLJt7gxdyyeSXivqm/tZbUQpnkNz/GafAJ50QZH
32
+ KlWYBmPv7SR005r90DZSvcmVWRMvh6ayB7LRwv6MB4vVXwPgMgPbzkYkMDwAujDC
33
+ rBYI7T++nB7NmaknSzZFSM9J8bkG/YZIeeVgvdvbx8O1fJxNol8T8viHr7TDumw5
34
+ yxomegosdRYm0IphoXe68u7ULYL+Pm96URNCgPJ8MBI61EEV3sfeGgOm9rp/wpB5
35
+ EDu38TLU1QmXqx2josvEv8qQeGqufRaJ5jCTc7W/8j7wxMhrpLBospO9XDN+raIX
36
+ XrzS00Ke3QGI3gJzx6QPu4Uz
33
37
  -----END CERTIFICATE-----
34
- date: 2014-01-04 00:00:00.000000000 Z
38
+ date: 2021-02-23 00:00:00.000000000 Z
35
39
  dependencies:
36
40
  - !ruby/object:Gem::Dependency
37
41
  name: easter
38
42
  requirement: !ruby/object:Gem::Requirement
39
43
  requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.1'
40
47
  - - ">="
41
48
  - !ruby/object:Gem::Version
42
- version: '0'
49
+ version: 0.1.2
43
50
  type: :runtime
44
51
  prerelease: false
45
52
  version_requirements: !ruby/object:Gem::Requirement
46
53
  requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '0.1'
47
57
  - - ">="
48
58
  - !ruby/object:Gem::Version
49
- version: '0'
59
+ version: 0.1.2
50
60
  - !ruby/object:Gem::Dependency
51
61
  name: chronic
52
62
  requirement: !ruby/object:Gem::Requirement
53
63
  requirements:
64
+ - - "~>"
65
+ - !ruby/object:Gem::Version
66
+ version: '0.10'
54
67
  - - ">="
55
68
  - !ruby/object:Gem::Version
56
- version: '0'
69
+ version: 0.10.2
57
70
  type: :runtime
58
71
  prerelease: false
59
72
  version_requirements: !ruby/object:Gem::Requirement
60
73
  requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '0.10'
61
77
  - - ">="
62
78
  - !ruby/object:Gem::Version
63
- version: '0'
79
+ version: 0.10.2
64
80
  description: Returns the dates for Epiphany, St David's Day, Ash Wednesday, Mothering
65
81
  Sunday, St Patrick's Day, Palm Sunday, Good Friday, Easter Sunday, Whit Sunday,
66
82
  Trinity Sunday, Ascension Day, Pentecost Sunday, St Andrews Day, Advent Sunday,
67
83
  and Christmas day
68
- email: james@r0bertson.co.uk
84
+ email: james@jamesrobertson.eu
69
85
  executables: []
70
86
  extensions: []
71
87
  extra_rdoc_files: []
@@ -83,7 +99,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
83
99
  requirements:
84
100
  - - ">="
85
101
  - !ruby/object:Gem::Version
86
- version: '0'
102
+ version: 2.1.2
87
103
  required_rubygems_version: !ruby/object:Gem::Requirement
88
104
  requirements:
89
105
  - - ">="
@@ -91,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
107
  version: '0'
92
108
  requirements: []
93
109
  rubyforge_project:
94
- rubygems_version: 2.1.11
110
+ rubygems_version: 2.7.10
95
111
  signing_key:
96
112
  specification_version: 4
97
113
  summary: Returns the date for Easter, Ash Wednesday, Good Friday, Trinity Sunday,
metadata.gz.sig CHANGED
Binary file