holidays 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +8 -1
- data/{CHANGELOG → CHANGELOG.rdoc} +29 -3
- data/LICENSE +2 -2
- data/README.rdoc +41 -28
- data/data/ar.yaml +82 -0
- data/data/au.yaml +40 -4
- data/data/be.yaml +65 -0
- data/data/br.yaml +12 -12
- data/data/ca.yaml +30 -17
- data/data/ch.yaml +187 -0
- data/data/federal_reserve.yaml +151 -0
- data/data/fi.yaml +19 -0
- data/data/fr.yaml +5 -5
- data/data/gb.yaml +19 -14
- data/data/hr.yaml +77 -0
- data/data/ie.yaml +36 -8
- data/data/index.yaml +12 -2
- data/data/ma.yaml +52 -0
- data/data/nerc.yaml +51 -0
- data/data/north_america_informal.yaml +13 -1
- data/data/pt.yaml +14 -13
- data/data/ro.yaml +76 -0
- data/data/sk.yaml +74 -0
- data/data/us.yaml +5 -1
- data/data/ve.yaml +70 -0
- data/holidays.gemspec +41 -9
- data/lib/holidays.rb +57 -34
- data/lib/holidays/MANIFEST +35 -24
- data/lib/holidays/ar.rb +42 -0
- data/lib/holidays/at.rb +3 -3
- data/lib/holidays/au.rb +28 -4
- data/lib/holidays/be.rb +40 -0
- data/lib/holidays/br.rb +1 -1
- data/lib/holidays/ca.rb +7 -3
- data/lib/holidays/ch.rb +92 -0
- data/lib/holidays/europe.rb +173 -53
- data/lib/holidays/federal_reserve.rb +50 -0
- data/lib/holidays/fi.rb +14 -1
- data/lib/holidays/fr.rb +1 -1
- data/lib/holidays/gb.rb +1 -1
- data/lib/holidays/hr.rb +42 -0
- data/lib/holidays/hu.rb +38 -0
- data/lib/holidays/ie.rb +16 -7
- data/lib/holidays/ma.rb +37 -0
- data/lib/holidays/mx.rb +3 -1
- data/lib/holidays/nerc.rb +34 -0
- data/lib/holidays/north_america.rb +9 -4
- data/lib/holidays/pt.rb +1 -1
- data/lib/holidays/ro.rb +40 -0
- data/lib/holidays/scandinavia.rb +13 -0
- data/lib/holidays/sk.rb +42 -0
- data/lib/holidays/us.rb +6 -3
- data/lib/holidays/ve.rb +40 -0
- data/rakefile.rb +1 -1
- data/test/defs/test_defs_ar.rb +27 -0
- data/test/defs/test_defs_au.rb +10 -0
- data/test/defs/test_defs_be.rb +25 -0
- data/test/defs/test_defs_br.rb +5 -5
- data/test/defs/test_defs_ca.rb +22 -2
- data/test/defs/test_defs_ch.rb +39 -0
- data/test/defs/test_defs_europe.rb +160 -10
- data/test/defs/test_defs_federal_reserve.rb +84 -0
- data/test/defs/test_defs_fi.rb +5 -0
- data/test/defs/test_defs_fr.rb +1 -1
- data/test/defs/test_defs_gb.rb +7 -2
- data/test/defs/test_defs_hr.rb +31 -0
- data/test/defs/test_defs_hu.rb +29 -0
- data/test/defs/test_defs_ie.rb +18 -3
- data/test/defs/test_defs_ma.rb +22 -0
- data/test/defs/test_defs_mx.rb +13 -0
- data/test/defs/test_defs_nerc.rb +23 -0
- data/test/defs/test_defs_north_america.rb +23 -2
- data/test/defs/test_defs_pt.rb +4 -3
- data/test/defs/test_defs_ro.rb +37 -0
- data/test/defs/test_defs_scandinavia.rb +5 -0
- data/test/defs/test_defs_sk.rb +28 -0
- data/test/defs/test_defs_us.rb +14 -0
- data/test/defs/test_defs_ve.rb +28 -0
- data/test/test_all_regions.rb +10 -0
- metadata +40 -6
@@ -0,0 +1,50 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/federal_reserve.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/federal_reserve'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module Federal_Reserve # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:federal_reserve]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:federal_reserve]}],
|
22
|
+
1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "New Year's Day", :regions => [:federal_reserve]},
|
23
|
+
{:wday => 1, :week => 3, :name => "Birthday of Martin Luther King, Jr", :regions => [:federal_reserve]},
|
24
|
+
{:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:federal_reserve]}],
|
25
|
+
2 => [{:wday => 1, :week => 3, :name => "Washington's Birthday", :regions => [:federal_reserve]}],
|
26
|
+
5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:federal_reserve]}],
|
27
|
+
7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Independence Day", :regions => [:federal_reserve]}],
|
28
|
+
9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:federal_reserve]}],
|
29
|
+
10 => [{:wday => 1, :week => 2, :name => "Columbus Day", :regions => [:federal_reserve]}],
|
30
|
+
11 => [{:mday => 11, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Veterans Day", :regions => [:federal_reserve]},
|
31
|
+
{:wday => 4, :week => 4, :name => "Thanksgiving Day", :regions => [:federal_reserve]}],
|
32
|
+
12 => [{:mday => 24, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Christmas Eve", :regions => [:federal_reserve]},
|
33
|
+
{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Christmas Day", :regions => [:federal_reserve]},
|
34
|
+
{:mday => 31, :name => "New Year's Eve", :regions => [:federal_reserve]}]
|
35
|
+
}
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# January 20, every fourth year, following Presidential election
|
40
|
+
def self.us_inauguration_day(year)
|
41
|
+
year % 4 == 1 ? 20 : nil
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
end
|
49
|
+
|
50
|
+
Holidays.merge_defs(Holidays::Federal_Reserve.defined_regions, Holidays::Federal_Reserve.holidays_by_month)
|
data/lib/holidays/fi.rb
CHANGED
@@ -27,7 +27,8 @@ module Holidays
|
|
27
27
|
1 => [{:mday => 1, :name => "Uudenvuodenpäivä", :regions => [:fi]},
|
28
28
|
{:mday => 6, :name => "Loppiainen", :regions => [:fi]}],
|
29
29
|
5 => [{:mday => 1, :name => "Vappu", :regions => [:fi]}],
|
30
|
-
6 => [{:function => lambda { |year| Holidays.
|
30
|
+
6 => [{:function => lambda { |year| Holidays.fi_juhannusaatto(year) }, :function_id => "fi_juhannusaatto(year)", :name => "Juhannusaatto", :regions => [:fi]},
|
31
|
+
{:function => lambda { |year| Holidays.fi_juhannuspaiva(year) }, :function_id => "fi_juhannuspaiva(year)", :name => "Juhannuspäivä", :regions => [:fi]}],
|
31
32
|
12 => [{:mday => 6, :name => "Itsenäisyyspäivä", :regions => [:fi]},
|
32
33
|
{:mday => 24, :name => "Jouluaatto", :regions => [:fi]},
|
33
34
|
{:mday => 25, :name => "Joulupäivä", :regions => [:fi]},
|
@@ -36,6 +37,18 @@ module Holidays
|
|
36
37
|
end
|
37
38
|
end
|
38
39
|
|
40
|
+
# Finland: Mid-summer eve (Friday between June 19–25)
|
41
|
+
def self.fi_juhannusaatto(year)
|
42
|
+
date = Date.civil(year,6,19)
|
43
|
+
if date.wday > 5 #if 19.6 is saturday
|
44
|
+
date += 6
|
45
|
+
else
|
46
|
+
date += (5 - date.wday)
|
47
|
+
end
|
48
|
+
date
|
49
|
+
end
|
50
|
+
|
51
|
+
|
39
52
|
# Finland: Mid-summer (Saturday between June 20–26)
|
40
53
|
def self.fi_juhannuspaiva(year)
|
41
54
|
date = Date.civil(year,6,20)
|
data/lib/holidays/fr.rb
CHANGED
@@ -30,7 +30,7 @@ module Holidays
|
|
30
30
|
8 => [{:mday => 15, :name => "Assomption", :regions => [:fr]}],
|
31
31
|
11 => [{:mday => 1, :name => "Toussaint", :regions => [:fr]},
|
32
32
|
{:mday => 11, :name => "Armistice 1918", :regions => [:fr]}],
|
33
|
-
12 => [{:mday => 25, :name => "
|
33
|
+
12 => [{:mday => 25, :name => "Noël", :regions => [:fr]}]
|
34
34
|
}
|
35
35
|
end
|
36
36
|
end
|
data/lib/holidays/gb.rb
CHANGED
@@ -21,7 +21,7 @@ module Holidays
|
|
21
21
|
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:gb]},
|
22
22
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Easter Sunday", :regions => [:gb]},
|
23
23
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:gb_eng, :gb_wls, :gb_eaw, :gb_nir]}],
|
24
|
-
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:gb]},
|
24
|
+
1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "New Year's Day", :regions => [:gb]},
|
25
25
|
{:mday => 2, :name => "New Year's", :regions => [:gb_sct]}],
|
26
26
|
3 => [{:mday => 5, :name => "St. Piran's Day", :regions => [:gb_con]},
|
27
27
|
{:mday => 17, :name => "St. Patrick's Day", :regions => [:gb_nir]}],
|
data/lib/holidays/hr.rb
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/hr.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/hr'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module HR # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:hr]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Uskrs", :regions => [:hr]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Uskrsni ponedjeljak", :regions => [:hr]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Tijelovo", :regions => [:hr]}],
|
24
|
+
1 => [{:mday => 1, :name => "Nova godina", :regions => [:hr]},
|
25
|
+
{:mday => 6, :name => "Sveta tri kralja", :regions => [:hr]}],
|
26
|
+
5 => [{:mday => 1, :name => "Međunarodni praznik rada", :regions => [:hr]}],
|
27
|
+
6 => [{:mday => 22, :name => "Dan antifašističke borbe", :regions => [:hr]},
|
28
|
+
{:mday => 25, :name => "Dan državnosti", :regions => [:hr]}],
|
29
|
+
8 => [{:mday => 5, :name => "Dan pobjede i domovinske zahvalnosti i dan hrvatskih branitelja", :regions => [:hr]},
|
30
|
+
{:mday => 15, :name => "Velika Gospa", :regions => [:hr]}],
|
31
|
+
10 => [{:mday => 8, :name => "Dan neovisnosti", :regions => [:hr]}],
|
32
|
+
11 => [{:mday => 1, :name => "Dan svih svetih", :regions => [:hr]}],
|
33
|
+
12 => [{:mday => 25, :name => "Božić", :regions => [:hr]},
|
34
|
+
{:mday => 26, :name => "Sveti Stjepan", :regions => [:hr]}]
|
35
|
+
}
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
Holidays.merge_defs(Holidays::HR.defined_regions, Holidays::HR.holidays_by_month)
|
data/lib/holidays/hu.rb
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/hu.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/hu'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module HU # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:hu]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Húsvét hétfő", :regions => [:hu]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pünkösd hétfő", :regions => [:hu]}],
|
23
|
+
1 => [{:mday => 1, :name => "Újév", :regions => [:hu]}],
|
24
|
+
3 => [{:mday => 15, :name => "1848/49-es forradalom és szabadságharc ünnepe", :regions => [:hu]}],
|
25
|
+
5 => [{:mday => 1, :name => "A munka ünnepe", :regions => [:hu]}],
|
26
|
+
8 => [{:mday => 20, :name => "Az államalapítás ünnepe", :regions => [:hu]}],
|
27
|
+
10 => [{:mday => 23, :name => "1956-os forradalom és szabadságharc ünnepe", :regions => [:hu]}],
|
28
|
+
11 => [{:mday => 1, :name => "Mindenszentek", :regions => [:hu]}],
|
29
|
+
12 => [{:mday => 25, :name => "Karácsony", :regions => [:hu]},
|
30
|
+
{:mday => 26, :name => "Karácsony", :regions => [:hu]}]
|
31
|
+
}
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
Holidays.merge_defs(Holidays::HU.defined_regions, Holidays::HU.holidays_by_month)
|
data/lib/holidays/ie.rb
CHANGED
@@ -19,18 +19,27 @@ module Holidays
|
|
19
19
|
def self.holidays_by_month
|
20
20
|
{
|
21
21
|
0 => [{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:ie]}],
|
22
|
-
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ie]}],
|
23
|
-
3 => [{:mday => 17, :name => "St. Patrick's Day", :regions => [:ie]}],
|
22
|
+
1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "New Year's Day", :regions => [:ie]}],
|
23
|
+
3 => [{:mday => 17, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "St. Patrick's Day", :regions => [:ie]}],
|
24
24
|
5 => [{:wday => 1, :week => 1, :name => "May Day", :regions => [:ie]}],
|
25
|
-
6 => [{:wday => 1, :week => 1, :name => "Bank Holiday", :regions => [:ie]}],
|
26
|
-
8 => [{:wday => 1, :week => 1, :name => "Bank Holiday", :regions => [:ie]}],
|
27
|
-
10 => [{:wday => 1, :week => -1, :name => "Bank Holiday", :regions => [:ie]}],
|
28
|
-
12 => [{:mday => 25, :name => "Christmas Day", :regions => [:ie]},
|
29
|
-
{:mday => 26, :name => "St. Stephen's Day", :regions => [:ie]}]
|
25
|
+
6 => [{:wday => 1, :week => 1, :name => "June Bank Holiday", :regions => [:ie]}],
|
26
|
+
8 => [{:wday => 1, :week => 1, :name => "August Bank Holiday", :regions => [:ie]}],
|
27
|
+
10 => [{:wday => 1, :week => -1, :name => "October Bank Holiday", :regions => [:ie]}],
|
28
|
+
12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:ie]},
|
29
|
+
{:mday => 26, :observed => lambda { |date| Holidays.ie_st_stephens_day(date) }, :observed_id => "ie_st_stephens_day", :name => "St. Stephen's Day", :regions => [:ie]}]
|
30
30
|
}
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
|
+
# Ireland - Stephens Day is always the day after christmas day
|
35
|
+
def self.ie_st_stephens_day(date)
|
36
|
+
date += 2 if date.wday == 6
|
37
|
+
date += 2 if date.wday == 0
|
38
|
+
date += 1 if date.wday == 1
|
39
|
+
date
|
40
|
+
end
|
41
|
+
|
42
|
+
|
34
43
|
|
35
44
|
end
|
36
45
|
|
data/lib/holidays/ma.rb
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/ma.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/ma'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module MA # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:ma]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
1 => [{:mday => 1, :name => "Ras l' âm", :regions => [:ma]},
|
22
|
+
{:mday => 11, :name => "Takdim watikat al-istiqlal", :regions => [:ma]}],
|
23
|
+
5 => [{:mday => 1, :name => "Eid Ash-Shughl", :regions => [:ma]}],
|
24
|
+
7 => [{:mday => 30, :name => "Eid Al-Ârch", :regions => [:ma]}],
|
25
|
+
8 => [{:mday => 14, :name => "Zikra Oued Ed-Dahab", :regions => [:ma]},
|
26
|
+
{:mday => 20, :name => "Thawrat al malik wa shâab", :regions => [:ma]},
|
27
|
+
{:mday => 21, :name => "Eid Al Milad", :regions => [:ma]}],
|
28
|
+
11 => [{:mday => 6, :name => "Eid Al Massira Al Khadra", :regions => [:ma]},
|
29
|
+
{:mday => 18, :name => "Eid Al Istiqulal", :regions => [:ma]}]
|
30
|
+
}
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
Holidays.merge_defs(Holidays::MA.defined_regions, Holidays::MA.holidays_by_month)
|
data/lib/holidays/mx.rb
CHANGED
@@ -33,8 +33,10 @@ module Holidays
|
|
33
33
|
{:mday => 5, :name => "La Batalla de Puebla", :regions => [:mx_pue]},
|
34
34
|
{:mday => 10, :type => :informal, :name => "Día de la Madre", :regions => [:mx]},
|
35
35
|
{:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
|
36
|
+
{:wday => 0, :week => 2, :type => :informal, :name => "Mother's Day", :regions => [:us, :ca]},
|
37
|
+
{:wday => 6, :week => 3, :type => :informal, :name => "Armed Forces Day", :regions => [:us]}],
|
38
|
+
6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]},
|
36
39
|
{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
|
37
|
-
6 => [{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}],
|
38
40
|
9 => [{:mday => 15, :name => "Grito de Dolores", :regions => [:mx]},
|
39
41
|
{:mday => 16, :name => "Día de la Independencia", :regions => [:mx]}],
|
40
42
|
10 => [{:mday => 12, :type => :informal, :name => "Día de la Raza", :regions => [:mx]},
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/nerc.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/nerc'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module NERC # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:nerc]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
1 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "New Year's Day", :regions => [:nerc]}],
|
22
|
+
5 => [{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:nerc]}],
|
23
|
+
7 => [{:mday => 4, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Independence Day", :regions => [:nerc]}],
|
24
|
+
9 => [{:wday => 1, :week => 1, :name => "Labor Day", :regions => [:nerc]}],
|
25
|
+
11 => [{:wday => 4, :week => 4, :name => "Thanksgiving", :regions => [:nerc]}],
|
26
|
+
12 => [{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Christmas Day", :regions => [:nerc]}]
|
27
|
+
}
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
Holidays.merge_defs(Holidays::NERC.defined_regions, Holidays::NERC.holidays_by_month)
|
@@ -13,14 +13,16 @@ module Holidays
|
|
13
13
|
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module North_America # :nodoc:
|
15
15
|
def self.defined_regions
|
16
|
-
[:ca, :ca_qc, :ca_ab, :ca_on, :ca_sk, :ca_mb, :ca_nf, :ca_nt, :ca_nu, :
|
16
|
+
[:ca, :ca_qc, :ca_ab, :ca_on, :ca_sk, :ca_mb, :ca_bc, :ca_nf, :ca_nt, :ca_nu, :ca_ns, :ca_yk, :mx, :mx_pue, :us, :us_dc]
|
17
17
|
end
|
18
18
|
|
19
19
|
def self.holidays_by_month
|
20
20
|
{
|
21
21
|
0 => [{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:ca]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Easter Sunday", :regions => [:ca]},
|
22
23
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :type => :informal, :name => "Easter Monday", :regions => [:ca]},
|
23
|
-
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]}
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :type => :informal, :name => "Good Friday", :regions => [:us]},
|
25
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :type => :informal, :name => "Easter Sunday", :regions => [:us]}],
|
24
26
|
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
|
25
27
|
{:mday => 2, :name => "New Year's", :regions => [:ca_qc]},
|
26
28
|
{:mday => 1, :name => "Año nuevo", :regions => [:mx]},
|
@@ -30,6 +32,7 @@ module Holidays
|
|
30
32
|
{:function => lambda { |year| Holidays.us_inauguration_day(year) }, :function_id => "us_inauguration_day(year)", :name => "Inauguration Day", :regions => [:us_dc]}],
|
31
33
|
2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
|
32
34
|
{:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
|
35
|
+
{:wday => 1, :week => 2, :name => "BC Family Day", :regions => [:ca_bc]},
|
33
36
|
{:wday => 1, :week => 1, :name => "Día de la Constitución", :regions => [:mx]},
|
34
37
|
{:wday => 1, :week => 3, :name => "Presidents' Day", :regions => [:us]},
|
35
38
|
{:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
|
@@ -45,11 +48,13 @@ module Holidays
|
|
45
48
|
{:mday => 10, :type => :informal, :name => "Día de la Madre", :regions => [:mx]},
|
46
49
|
{:mday => 15, :type => :informal, :name => "Día del Maestro", :regions => [:mx]},
|
47
50
|
{:wday => 1, :week => -1, :name => "Memorial Day", :regions => [:us]},
|
48
|
-
{:wday => 0, :week =>
|
51
|
+
{:wday => 0, :week => 2, :type => :informal, :name => "Mother's Day", :regions => [:us, :ca]},
|
52
|
+
{:wday => 6, :week => 3, :type => :informal, :name => "Armed Forces Day", :regions => [:us]}],
|
49
53
|
6 => [{:mday => 24, :name => "Discovery Day", :regions => [:ca_nf]},
|
50
54
|
{:mday => 24, :name => "Fête Nationale", :regions => [:ca_qc]},
|
51
55
|
{:mday => 21, :name => "National Aboriginal Day", :regions => [:ca_nt]},
|
52
|
-
{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]}
|
56
|
+
{:wday => 0, :week => 3, :type => :informal, :name => "Día del Padre", :regions => [:mx]},
|
57
|
+
{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
|
53
58
|
7 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Canada Day", :regions => [:ca]},
|
54
59
|
{:mday => 12, :name => "Orangemen's Day", :regions => [:ca_nf]},
|
55
60
|
{:mday => 9, :name => "Nunavut Day", :regions => [:ca_nu]},
|
data/lib/holidays/pt.rb
CHANGED
@@ -25,7 +25,7 @@ module Holidays
|
|
25
25
|
4 => [{:mday => 25, :name => "Dia da Liberdade", :regions => [:pt]}],
|
26
26
|
5 => [{:mday => 1, :name => "Dia do Trabalhador", :regions => [:pt]}],
|
27
27
|
6 => [{:mday => 10, :name => "Dia de Portugal", :regions => [:pt]}],
|
28
|
-
|
28
|
+
8 => [{:mday => 15, :name => "Assunção de Nossa Senhora", :regions => [:pt]}],
|
29
29
|
12 => [{:mday => 8, :name => "Imaculada Conceição", :regions => [:pt]},
|
30
30
|
{:mday => 25, :name => "Natal", :regions => [:pt]}]
|
31
31
|
}
|
data/lib/holidays/ro.rb
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/ro.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/ro'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module RO # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:ro]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.orthodox_easter(year) }, :function_id => "orthodox_easter(year)", :name => "Paștele", :regions => [:ro]},
|
22
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year)+1 }, :function_id => "orthodox_easter(year)+1", :name => "Paștele", :regions => [:ro]},
|
23
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year) + 49 }, :function_id => "orthodox_easter(year) + 49", :name => "Rusaliile", :regions => [:ro]},
|
24
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year) + 50 }, :function_id => "orthodox_easter(year) + 50", :name => "Rusaliile", :regions => [:ro]}],
|
25
|
+
1 => [{:mday => 1, :name => "Anul nou", :regions => [:ro]},
|
26
|
+
{:mday => 2, :name => "Anul nou", :regions => [:ro]}],
|
27
|
+
5 => [{:mday => 1, :name => "Ziua muncii", :regions => [:ro]}],
|
28
|
+
8 => [{:mday => 15, :name => "Adormirea Maicii Domnului", :regions => [:ro]}],
|
29
|
+
11 => [{:mday => 30, :name => "Sfântul Apostol Andrei", :regions => [:ro]}],
|
30
|
+
12 => [{:mday => 1, :name => "Ziua Națională", :regions => [:ro]},
|
31
|
+
{:mday => 25, :name => "Sărbătoarea Nașterii Domnului", :regions => [:ro]},
|
32
|
+
{:mday => 26, :name => "Sărbătoarea Nașterii Domnului", :regions => [:ro]}]
|
33
|
+
}
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
Holidays.merge_defs(Holidays::RO.defined_regions, Holidays::RO.holidays_by_month)
|
data/lib/holidays/scandinavia.rb
CHANGED
@@ -83,6 +83,7 @@ module Holidays
|
|
83
83
|
{:mday => 17, :name => "Lýðveldisdagurinn", :regions => [:is]},
|
84
84
|
{:mday => 6, :name => "Nationaldagen", :regions => [:se]},
|
85
85
|
{:function => lambda { |year| Holidays.se_midsommardagen(year) }, :function_id => "se_midsommardagen(year)", :name => "Midsommardagen", :regions => [:se]},
|
86
|
+
{:function => lambda { |year| Holidays.fi_juhannusaatto(year) }, :function_id => "fi_juhannusaatto(year)", :name => "Juhannusaatto", :regions => [:fi]},
|
86
87
|
{:function => lambda { |year| Holidays.fi_juhannuspaiva(year) }, :function_id => "fi_juhannuspaiva(year)", :name => "Juhannuspäivä", :regions => [:fi]}],
|
87
88
|
11 => [{:mday => 10, :type => :informal, :name => "Mortensaften", :regions => [:dk]},
|
88
89
|
{:mday => 16, :name => "Dagur íslenskrar tungu", :regions => [:is]}],
|
@@ -136,6 +137,18 @@ def self.se_alla_helgons_dag(year)
|
|
136
137
|
end
|
137
138
|
|
138
139
|
|
140
|
+
# Finland: Mid-summer eve (Friday between June 19–25)
|
141
|
+
def self.fi_juhannusaatto(year)
|
142
|
+
date = Date.civil(year,6,19)
|
143
|
+
if date.wday > 5 #if 19.6 is saturday
|
144
|
+
date += 6
|
145
|
+
else
|
146
|
+
date += (5 - date.wday)
|
147
|
+
end
|
148
|
+
date
|
149
|
+
end
|
150
|
+
|
151
|
+
|
139
152
|
# Finland: Mid-summer (Saturday between June 20–26)
|
140
153
|
def self.fi_juhannuspaiva(year)
|
141
154
|
date = Date.civil(year,6,20)
|
data/lib/holidays/sk.rb
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/sk.yaml
|
6
|
+
#
|
7
|
+
# To use the definitions in this file, load it right after you load the
|
8
|
+
# Holiday gem:
|
9
|
+
#
|
10
|
+
# require 'holidays'
|
11
|
+
# require 'holidays/sk'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module SK # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:sk]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Veľkonočný pondelok", :regions => [:sk]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Veľký piatok", :regions => [:sk]}],
|
23
|
+
1 => [{:mday => 1, :name => "Nový rok", :regions => [:sk]}],
|
24
|
+
5 => [{:mday => 1, :name => "Sviatok práce", :regions => [:sk]},
|
25
|
+
{:mday => 8, :name => "Deň víťazstva", :regions => [:sk]}],
|
26
|
+
7 => [{:mday => 5, :name => "Sviatok svätého Cyrila a svätého Metoda", :regions => [:sk]}],
|
27
|
+
8 => [{:mday => 29, :name => "Výročie Slovenského národného povstania", :regions => [:sk]}],
|
28
|
+
9 => [{:mday => 1, :name => "Deň Ústavy Slovenskej republiky", :regions => [:sk]},
|
29
|
+
{:mday => 15, :name => "Sedembolestná Panna Mária", :regions => [:sk]}],
|
30
|
+
11 => [{:mday => 1, :name => "Sviatok všetkých svätých", :regions => [:sk]},
|
31
|
+
{:mday => 17, :name => "Deň boja za slobodu a demokraciu", :regions => [:sk]}],
|
32
|
+
12 => [{:mday => 24, :name => "Štedrý deň", :regions => [:sk]},
|
33
|
+
{:mday => 25, :name => "1. sviatok vianočný", :regions => [:sk]},
|
34
|
+
{:mday => 26, :name => "2. sviatek vianočný", :regions => [:sk]}]
|
35
|
+
}
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
end
|
41
|
+
|
42
|
+
Holidays.merge_defs(Holidays::SK.defined_regions, Holidays::SK.holidays_by_month)
|