holidays 1.0.5 → 1.0.6
Sign up to get free protection for your applications and to get access to all the features.
- 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)
|