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
data/lib/holidays/be.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/be.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/be'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module BE # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:be]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.holidays_by_month
|
20
|
+
{
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Easter", :regions => [:be]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:be]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Ascension", :regions => [:be]},
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pentecost", :regions => [:be]},
|
25
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pentecost Monday", :regions => [:be]}],
|
26
|
+
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:be]}],
|
27
|
+
5 => [{:mday => 1, :name => "Labour Day", :regions => [:be]}],
|
28
|
+
7 => [{:mday => 21, :name => "National holiday", :regions => [:be]}],
|
29
|
+
8 => [{:mday => 15, :name => "Assumption of Mary", :regions => [:be]}],
|
30
|
+
11 => [{:mday => 1, :name => "All Saints", :regions => [:be]},
|
31
|
+
{:mday => 11, :name => "Armistice Day", :regions => [:be]}],
|
32
|
+
12 => [{:mday => 25, :name => "Christmas", :regions => [:be]}]
|
33
|
+
}
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
Holidays.merge_defs(Holidays::BE.defined_regions, Holidays::BE.holidays_by_month)
|
data/lib/holidays/br.rb
CHANGED
@@ -21,7 +21,7 @@ module Holidays
|
|
21
21
|
0 => [{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :type => :informal, :name => "Carnaval", :regions => [:br]},
|
22
22
|
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Sexta-feira Santa", :regions => [:br]},
|
23
23
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Páscoa", :regions => [:br]},
|
24
|
-
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Corpus
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Corpus Christi", :regions => [:br]}],
|
25
25
|
1 => [{:mday => 1, :name => "Dia da Confraternização Universal", :regions => [:br]}],
|
26
26
|
4 => [{:mday => 21, :name => "Dia de Tiradentes", :regions => [:br]}],
|
27
27
|
5 => [{:mday => 1, :name => "Dia do Trabalho", :regions => [:br]}],
|
data/lib/holidays/ca.rb
CHANGED
@@ -13,27 +13,31 @@ module Holidays
|
|
13
13
|
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module CA # :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, :us]
|
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
24
|
1 => [{:mday => 1, :name => "New Year's Day", :regions => [:ca]},
|
24
25
|
{:mday => 2, :name => "New Year's", :regions => [:ca_qc]}],
|
25
26
|
2 => [{:wday => 1, :week => 3, :name => "Family Day", :regions => [:ca_ab, :ca_on, :ca_sk]},
|
26
27
|
{:wday => 1, :week => 3, :name => "Louis Riel Day", :regions => [:ca_mb]},
|
28
|
+
{:wday => 1, :week => 2, :name => "BC Family Day", :regions => [:ca_bc]},
|
27
29
|
{:mday => 2, :type => :informal, :name => "Groundhog Day", :regions => [:us, :ca]},
|
28
30
|
{:mday => 14, :type => :informal, :name => "Valentine's Day", :regions => [:us, :ca]}],
|
29
31
|
3 => [{:mday => 23, :name => "St. George's Day", :regions => [:ca_nf]},
|
30
32
|
{:mday => 17, :type => :informal, :name => "St. Patrick's Day", :regions => [:us, :ca]}],
|
31
33
|
5 => [{:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "Victoria Day", :regions => [:ca]},
|
32
34
|
{:function => lambda { |year| Holidays.ca_victoria_day(year) }, :function_id => "ca_victoria_day(year)", :name => "National Patriotes Day", :regions => [:ca_qc]},
|
33
|
-
{:wday => 0, :week =>
|
35
|
+
{:wday => 0, :week => 2, :type => :informal, :name => "Mother's Day", :regions => [:us, :ca]},
|
36
|
+
{:wday => 6, :week => 3, :type => :informal, :name => "Armed Forces Day", :regions => [:us]}],
|
34
37
|
6 => [{:mday => 24, :name => "Discovery Day", :regions => [:ca_nf]},
|
35
38
|
{:mday => 24, :name => "Fête Nationale", :regions => [:ca_qc]},
|
36
|
-
{:mday => 21, :name => "National Aboriginal Day", :regions => [:ca_nt]}
|
39
|
+
{:mday => 21, :name => "National Aboriginal Day", :regions => [:ca_nt]},
|
40
|
+
{:wday => 0, :week => 3, :type => :informal, :name => "Father's Day", :regions => [:us, :ca]}],
|
37
41
|
7 => [{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_sunday(date) }, :observed_id => "to_monday_if_sunday", :name => "Canada Day", :regions => [:ca]},
|
38
42
|
{:mday => 12, :name => "Orangemen's Day", :regions => [:ca_nf]},
|
39
43
|
{:mday => 9, :name => "Nunavut Day", :regions => [:ca_nu]}],
|
data/lib/holidays/ch.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module Holidays
|
3
|
+
# This file is generated by the Ruby Holidays gem.
|
4
|
+
#
|
5
|
+
# Definitions loaded: data/ch.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/ch'
|
12
|
+
#
|
13
|
+
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
|
+
module CH # :nodoc:
|
15
|
+
def self.defined_regions
|
16
|
+
[:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_ne, :ch_ge, :ch_ju, :ch_vs, :ch]
|
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 => "Karfreitag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_ne, :ch_ge, :ch_ju]},
|
22
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Ostermontag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_vs, :ch_ge, :ch_ju]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Auffahrt", :regions => [:ch]},
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pfingstmontag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_vs, :ch_ge, :ch_ju]},
|
25
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Fronleichnam", :regions => [:ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_ag, :ch_ti, :ch_vs, :ch_ne, :ch_ju]},
|
26
|
+
{:function => lambda { |year| Holidays.ch_vd_lundi_du_jeune_federal(year) }, :function_id => "ch_vd_lundi_du_jeune_federal(year)", :name => "Lundi du Jeûne fédéral", :regions => [:ch_vd]},
|
27
|
+
{:function => lambda { |year| Holidays.ch_ge_jeune_genevois(year) }, :function_id => "ch_ge_jeune_genevois(year)", :name => "Jeûne genevois", :regions => [:ch_ge]}],
|
28
|
+
1 => [{:mday => 1, :name => "Neujahrstag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_vd, :ch_vs, :ch_ne, :ch_ge, :ch_ju, :ch_ti]},
|
29
|
+
{:mday => 2, :name => "Berchtoldstag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_sh, :ch_sg, :ch_ag, :ch_tg, :ch_vd, :ch_vs, :ch_ne, :ch_ju]},
|
30
|
+
{:mday => 6, :name => "Dreikönigstag", :regions => [:ch_ur, :ch_sz, :ch_ti]}],
|
31
|
+
3 => [{:mday => 1, :name => "Instauration de la République", :regions => [:ch_ne]},
|
32
|
+
{:mday => 19, :name => "Josephstag", :regions => [:ch_ur, :ch_sz, :ch_nw, :ch_ti, :ch_vs]}],
|
33
|
+
4 => [{:function => lambda { |year| Holidays.ch_gl_naefelser_fahrt(year) }, :function_id => "ch_gl_naefelser_fahrt(year)", :name => "Näfelser Fahrt", :regions => [:ch_gl]}],
|
34
|
+
5 => [{:mday => 1, :name => "Tag der Arbeit", :regions => [:ch_zh, :ch_bs, :ch_bl, :ch_sh, :ch_ag, :ch_tg, :ch_ti, :ch_ne, :ch_ju]}],
|
35
|
+
6 => [{:mday => 23, :name => "Commémoration du plébiscite jurassien", :regions => [:ch_ju]},
|
36
|
+
{:mday => 29, :name => "San Pietro e Paolo", :regions => [:ch_ti]}],
|
37
|
+
8 => [{:mday => 1, :name => "Bundesfeiertag", :regions => [:ch]},
|
38
|
+
{:mday => 15, :name => "Mariä Himmelfahrt", :regions => [:ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_ag, :ch_ti, :ch_vs, :ch_ju]}],
|
39
|
+
9 => [{:mday => 22, :name => "Mauritiustag", :regions => [:ch_ai]},
|
40
|
+
{:mday => 25, :name => "Bruderklausenfest", :regions => [:ch_ow]}],
|
41
|
+
11 => [{:mday => 1, :name => "Allerheiligen", :regions => [:ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_sg, :ch_ag, :ch_ti, :ch_vs, :ch_ju]}],
|
42
|
+
12 => [{:mday => 8, :name => "Maria Empfängnis", :regions => [:ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_ai, :ch_ag, :ch_ti, :ch_vs]},
|
43
|
+
{:mday => 25, :name => "Weihnachten", :regions => [:ch]},
|
44
|
+
{:mday => 26, :name => "Stefanstag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vs, :ch_ne]},
|
45
|
+
{:mday => 31, :name => "Restauration de la République", :regions => [:ch_ge]}]
|
46
|
+
}
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
# Monday after the third Sunday of September
|
51
|
+
def self.ch_vd_lundi_du_jeune_federal(year)
|
52
|
+
date = Date.civil(year,9,1)
|
53
|
+
# Find the first Sunday of September
|
54
|
+
until date.wday.eql? 0 do
|
55
|
+
date += 1
|
56
|
+
end
|
57
|
+
# There are 15 days between the first Sunday
|
58
|
+
# and the Monday after the third Sunday
|
59
|
+
date + 15
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
# Thursday after the first Sunday of September
|
64
|
+
def self.ch_ge_jeune_genevois(year)
|
65
|
+
date = Date.civil(year,9,1)
|
66
|
+
# Find the first Sunday of September
|
67
|
+
until date.wday.eql? 0 do
|
68
|
+
date += 1
|
69
|
+
end
|
70
|
+
# Thursday is four days after Sunday
|
71
|
+
date + 4
|
72
|
+
end
|
73
|
+
|
74
|
+
|
75
|
+
# First Thursday of April. If the first Thursday of April is in the week before easter, then a week later.
|
76
|
+
def self.ch_gl_naefelser_fahrt(year)
|
77
|
+
date = Date.civil(year,4,1)
|
78
|
+
# Find the first Thursday of April
|
79
|
+
until date.wday.eql? 4 do
|
80
|
+
date += 1
|
81
|
+
end
|
82
|
+
if date.eql?(easter(year)-3)
|
83
|
+
date += 7
|
84
|
+
end
|
85
|
+
date
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
end
|
91
|
+
|
92
|
+
Holidays.merge_defs(Holidays::CH.defined_regions, Holidays::CH.holidays_by_month)
|
data/lib/holidays/europe.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
module Holidays
|
3
3
|
# This file is generated by the Ruby Holidays gem.
|
4
4
|
#
|
5
|
-
# Definitions loaded: data/at.yaml, data/cz.yaml, data/dk.yaml, data/de.yaml, data/el.yaml, data/es.yaml, data/fr.yaml, data/gb.yaml, data/ie.yaml, data/is.yaml, data/it.yaml, data/li.yaml, data/nl.yaml, data/no.yaml, data/pl.yaml, data/pt.yaml
|
5
|
+
# Definitions loaded: data/at.yaml, data/be.yaml, data/ch.yaml, data/cz.yaml, data/dk.yaml, data/de.yaml, data/el.yaml, data/es.yaml, data/fr.yaml, data/gb.yaml, data/hr.yaml, data/hu.yaml, data/ie.yaml, data/is.yaml, data/it.yaml, data/li.yaml, data/nl.yaml, data/no.yaml, data/pl.yaml, data/pt.yaml, data/ro.yaml, data/sk.yaml
|
6
6
|
#
|
7
7
|
# To use the definitions in this file, load it right after you load the
|
8
8
|
# Holiday gem:
|
@@ -13,15 +13,24 @@ module Holidays
|
|
13
13
|
# All the definitions are available at https://github.com/alexdunae/holidays
|
14
14
|
module Europe # :nodoc:
|
15
15
|
def self.defined_regions
|
16
|
-
[:at, :de, :li, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :cz, :dk, :no, :
|
16
|
+
[:at, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_vs, :ch_ge, :ch_ju, :de, :li, :ch_ne, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :de_st, :be, :gb_eng, :gb_wls, :gb_eaw, :gb_nir, :ie, :fr, :ch, :cz, :dk, :no, :de_bb, :de_mv, :de_sn, :de_th, :el, :es_pv, :es_ct, :es_na, :es_v, :es_vc, :es, :es_an, :es_ib, :es_cm, :es_mu, :es_m, :es_ar, :es_cl, :es_cn, :es_lo, :es_ga, :es_ce, :es_o, :es_ex, :gb, :gb_sct, :gb_con, :je, :gb_jsy, :gg, :gb_gsy, :im, :gb_iom, :hr, :hu, :is, :it, :nl, :pl, :pt, :ro, :sk]
|
17
17
|
end
|
18
18
|
|
19
19
|
def self.holidays_by_month
|
20
20
|
{
|
21
|
-
0 => [{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Ostermontag", :regions => [:at, :de, :li]},
|
21
|
+
0 => [{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Ostermontag", :regions => [:at, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_vs, :ch_ge, :ch_ju, :de, :li]},
|
22
22
|
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Christi Himmelfahrt", :regions => [:at, :de]},
|
23
|
-
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pfingstmontag", :regions => [:at, :de, :li]},
|
24
|
-
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Fronleichnam", :regions => [:at, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :li]},
|
23
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pfingstmontag", :regions => [:at, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_vs, :ch_ge, :ch_ju, :de, :li]},
|
24
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Fronleichnam", :regions => [:at, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_ag, :ch_ti, :ch_vs, :ch_ne, :ch_ju, :de_bw, :de_by, :de_he, :de_nw, :de_rp, :de_sl, :li]},
|
25
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Easter", :regions => [:be]},
|
26
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Easter Monday", :regions => [:be, :gb_eng, :gb_wls, :gb_eaw, :gb_nir, :ie]},
|
27
|
+
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Ascension", :regions => [:be, :fr]},
|
28
|
+
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pentecost", :regions => [:be]},
|
29
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pentecost Monday", :regions => [:be]},
|
30
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Karfreitag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vd, :ch_ne, :ch_ge, :ch_ju, :de, :li]},
|
31
|
+
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Auffahrt", :regions => [:ch, :li]},
|
32
|
+
{:function => lambda { |year| Holidays.ch_vd_lundi_du_jeune_federal(year) }, :function_id => "ch_vd_lundi_du_jeune_federal(year)", :name => "Lundi du Jeûne fédéral", :regions => [:ch_vd]},
|
33
|
+
{:function => lambda { |year| Holidays.ch_ge_jeune_genevois(year) }, :function_id => "ch_ge_jeune_genevois(year)", :name => "Jeûne genevois", :regions => [:ch_ge]},
|
25
34
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Velikonoční pondělí", :regions => [:cz]},
|
26
35
|
{:function => lambda { |year| Holidays.easter(year)-49 }, :function_id => "easter(year)-49", :type => :informal, :name => "Fastelavn", :regions => [:dk, :no]},
|
27
36
|
{:function => lambda { |year| Holidays.easter(year)-7 }, :function_id => "easter(year)-7", :name => "Palmesøndag", :regions => [:dk, :no]},
|
@@ -33,7 +42,6 @@ module Holidays
|
|
33
42
|
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Kristi Himmelfartsdag", :regions => [:dk, :no]},
|
34
43
|
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pinsedag", :regions => [:dk]},
|
35
44
|
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "2. Pinsedag", :regions => [:dk]},
|
36
|
-
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Karfreitag", :regions => [:de, :li]},
|
37
45
|
{:function => lambda { |year| Holidays.orthodox_easter(year)-2 }, :function_id => "orthodox_easter(year)-2", :name => "Μεγάλη Παρασκευή", :regions => [:el]},
|
38
46
|
{:function => lambda { |year| Holidays.orthodox_easter(year)-1 }, :function_id => "orthodox_easter(year)-1", :name => "Μεγάλο Σάββατο", :regions => [:el]},
|
39
47
|
{:function => lambda { |year| Holidays.orthodox_easter(year) }, :function_id => "orthodox_easter(year)", :name => "Κυριακή του Πάσχα", :regions => [:el]},
|
@@ -45,12 +53,15 @@ module Holidays
|
|
45
53
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Lunes de Pascua", :regions => [:es_pv, :es_ct, :es_na, :es_v, :es_vc]},
|
46
54
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Pâques", :regions => [:fr]},
|
47
55
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Lundi de Pâques", :regions => [:fr]},
|
48
|
-
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Ascension", :regions => [:fr]},
|
49
56
|
{:function => lambda { |year| Holidays.easter(year)+49 }, :function_id => "easter(year)+49", :name => "Pentecôte", :regions => [:fr]},
|
50
57
|
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Lundi de Pentecôte", :regions => [:fr]},
|
51
58
|
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Good Friday", :regions => [:gb]},
|
52
59
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Easter Sunday", :regions => [:gb]},
|
53
|
-
{:function => lambda { |year| Holidays.easter(year)
|
60
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Uskrs", :regions => [:hr]},
|
61
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Uskrsni ponedjeljak", :regions => [:hr]},
|
62
|
+
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Tijelovo", :regions => [:hr]},
|
63
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Húsvét hétfő", :regions => [:hu]},
|
64
|
+
{:function => lambda { |year| Holidays.easter(year)+50 }, :function_id => "easter(year)+50", :name => "Pünkösd hétfő", :regions => [:hu]},
|
54
65
|
{:function => lambda { |year| Holidays.easter(year)-48 }, :function_id => "easter(year)-48", :name => "Bolludagur", :regions => [:is]},
|
55
66
|
{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :name => "Sprengidagur", :regions => [:is]},
|
56
67
|
{:function => lambda { |year| Holidays.easter(year)-46 }, :function_id => "easter(year)-46", :name => "Öskudagur", :regions => [:is]},
|
@@ -66,7 +77,6 @@ module Holidays
|
|
66
77
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Lunedì dell'Angelo", :regions => [:it]},
|
67
78
|
{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :name => "Fasnachtsdienstag", :regions => [:li]},
|
68
79
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :type => :informal, :name => "Ostern", :regions => [:li]},
|
69
|
-
{:function => lambda { |year| Holidays.easter(year)+39 }, :function_id => "easter(year)+39", :name => "Auffahrt", :regions => [:li]},
|
70
80
|
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Goede Vrijdag", :regions => [:nl]},
|
71
81
|
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Pasen", :regions => [:nl]},
|
72
82
|
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Pasen", :regions => [:nl]},
|
@@ -90,19 +100,30 @@ module Holidays
|
|
90
100
|
{:function => lambda { |year| Holidays.easter(year)+60 }, :function_id => "easter(year)+60", :name => "Uroczystość Najświętszego Ciała i Krwi Pańskiej (Boże Ciało)", :regions => [:pl]},
|
91
101
|
{:function => lambda { |year| Holidays.easter(year)-47 }, :function_id => "easter(year)-47", :type => :informal, :name => "Carnaval", :regions => [:pt]},
|
92
102
|
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Sexta-feira Santa", :regions => [:pt]},
|
93
|
-
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Páscoa", :regions => [:pt]}
|
94
|
-
|
95
|
-
{:
|
103
|
+
{:function => lambda { |year| Holidays.easter(year) }, :function_id => "easter(year)", :name => "Páscoa", :regions => [:pt]},
|
104
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year) }, :function_id => "orthodox_easter(year)", :name => "Paștele", :regions => [:ro]},
|
105
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year)+1 }, :function_id => "orthodox_easter(year)+1", :name => "Paștele", :regions => [:ro]},
|
106
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year) + 49 }, :function_id => "orthodox_easter(year) + 49", :name => "Rusaliile", :regions => [:ro]},
|
107
|
+
{:function => lambda { |year| Holidays.orthodox_easter(year) + 50 }, :function_id => "orthodox_easter(year) + 50", :name => "Rusaliile", :regions => [:ro]},
|
108
|
+
{:function => lambda { |year| Holidays.easter(year)+1 }, :function_id => "easter(year)+1", :name => "Veľkonočný pondelok", :regions => [:sk]},
|
109
|
+
{:function => lambda { |year| Holidays.easter(year)-2 }, :function_id => "easter(year)-2", :name => "Veľký piatok", :regions => [:sk]}],
|
110
|
+
1 => [{:mday => 1, :name => "Neujahrstag", :regions => [:at, :ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_vd, :ch_vs, :ch_ne, :ch_ge, :ch_ju, :ch_ti, :de, :li]},
|
111
|
+
{:mday => 6, :name => "Heilige Drei Könige", :regions => [:at, :de_bw, :de_by, :de_st, :li, :li]},
|
112
|
+
{:mday => 1, :name => "New Year's Day", :regions => [:be]},
|
113
|
+
{:mday => 2, :name => "Berchtoldstag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_sh, :ch_sg, :ch_ag, :ch_tg, :ch_vd, :ch_vs, :ch_ne, :ch_ju]},
|
114
|
+
{:mday => 6, :name => "Dreikönigstag", :regions => [:ch_ur, :ch_sz, :ch_ti]},
|
96
115
|
{:mday => 1, :name => "Den obnovy samostatného českého státu", :regions => [:cz]},
|
97
116
|
{:mday => 1, :name => "Nytårsdag", :regions => [:dk]},
|
98
|
-
{:mday => 6, :name => "Heilige Drei Könige", :regions => [:de_bw, :de_by, :de_st, :li, :li]},
|
99
117
|
{:mday => 1, :name => "Πρωτοχρονιά", :regions => [:el]},
|
100
118
|
{:mday => 6, :name => "Θεοφάνεια", :regions => [:el]},
|
101
119
|
{:mday => 1, :name => "Año Nuevo", :regions => [:es]},
|
102
120
|
{:mday => 6, :name => "Día de Reyes", :regions => [:es]},
|
103
121
|
{:mday => 1, :name => "Jour de l'an", :regions => [:fr]},
|
104
|
-
{:mday => 1, :name => "New Year's Day", :regions => [:gb, :ie]},
|
122
|
+
{:mday => 1, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "New Year's Day", :regions => [:gb, :ie]},
|
105
123
|
{:mday => 2, :name => "New Year's", :regions => [:gb_sct]},
|
124
|
+
{:mday => 1, :name => "Nova godina", :regions => [:hr]},
|
125
|
+
{:mday => 6, :name => "Sveta tri kralja", :regions => [:hr]},
|
126
|
+
{:mday => 1, :name => "Újév", :regions => [:hu]},
|
106
127
|
{:mday => 1, :name => "Nýársdagur", :regions => [:is]},
|
107
128
|
{:mday => 6, :name => "Þrettándinn", :regions => [:is]},
|
108
129
|
{:mday => 19, :type => :informal, :name => "Bóndadagur", :regions => [:is]},
|
@@ -115,13 +136,17 @@ module Holidays
|
|
115
136
|
{:function => lambda { |year| Holidays.pl_trzech_kroli_informal(year) }, :function_id => "pl_trzech_kroli_informal(year)", :type => :informal, :name => "Objawienie Pańskie (święto Trzech Króli)", :regions => [:pl]},
|
116
137
|
{:mday => 21, :type => :informal, :name => "Dzień Babci", :regions => [:pl]},
|
117
138
|
{:mday => 22, :type => :informal, :name => "Dzień Dziadka", :regions => [:pl]},
|
118
|
-
{:mday => 1, :name => "Ano Novo", :regions => [:pt]}
|
139
|
+
{:mday => 1, :name => "Ano Novo", :regions => [:pt]},
|
140
|
+
{:mday => 1, :name => "Anul nou", :regions => [:ro]},
|
141
|
+
{:mday => 2, :name => "Anul nou", :regions => [:ro]},
|
142
|
+
{:mday => 1, :name => "Nový rok", :regions => [:sk]}],
|
119
143
|
5 => [{:mday => 1, :name => "Staatsfeiertag", :regions => [:at]},
|
144
|
+
{:mday => 1, :name => "Labour Day", :regions => [:be]},
|
145
|
+
{:mday => 1, :name => "Tag der Arbeit", :regions => [:ch_zh, :ch_bs, :ch_bl, :ch_sh, :ch_ag, :ch_tg, :ch_ti, :ch_ne, :ch_ju, :de, :li]},
|
120
146
|
{:mday => 1, :name => "Svátek práce", :regions => [:cz]},
|
121
147
|
{:mday => 8, :name => "Den vítězství", :regions => [:cz]},
|
122
148
|
{:mday => 1, :name => "Arbejdernes kampdag", :regions => [:dk]},
|
123
149
|
{:mday => 5, :type => :informal, :name => "Danmarks befrielse", :regions => [:dk]},
|
124
|
-
{:mday => 1, :name => "Tag der Arbeit", :regions => [:de, :li]},
|
125
150
|
{:mday => 1, :name => "Πρωτομαγιά", :regions => [:el]},
|
126
151
|
{:mday => 1, :name => "Día del Trabajador", :regions => [:es]},
|
127
152
|
{:mday => 2, :name => "Fiesta de la Comunidad", :regions => [:es_m]},
|
@@ -132,6 +157,8 @@ module Holidays
|
|
132
157
|
{:wday => 1, :week => 1, :name => "May Day", :regions => [:gb, :ie]},
|
133
158
|
{:mday => 9, :name => "Liberation Day", :regions => [:je, :gb_jsy, :gg, :gb_gsy]},
|
134
159
|
{:wday => 1, :week => -1, :name => "Bank Holiday", :regions => [:gb]},
|
160
|
+
{:mday => 1, :name => "Međunarodni praznik rada", :regions => [:hr]},
|
161
|
+
{:mday => 1, :name => "A munka ünnepe", :regions => [:hu]},
|
135
162
|
{:mday => 1, :name => "Verkalýðsdagurinn", :regions => [:is]},
|
136
163
|
{:mday => 13, :name => "Mæðradagurinn", :regions => [:is]},
|
137
164
|
{:mday => 1, :name => "Festa dei Lavoratori", :regions => [:it]},
|
@@ -142,19 +169,30 @@ module Holidays
|
|
142
169
|
{:mday => 1, :name => "Święto Państwowe (Święto Pracy)", :regions => [:pl]},
|
143
170
|
{:mday => 2, :type => :informal, :name => "Dzień Flagi Rzeczpospolitej Polskiej", :regions => [:pl]},
|
144
171
|
{:mday => 3, :name => "Święto Narodowe Trzeciego Maja", :regions => [:pl]},
|
145
|
-
{:mday => 1, :name => "Dia do Trabalhador", :regions => [:pt]}
|
146
|
-
|
147
|
-
{:mday =>
|
172
|
+
{:mday => 1, :name => "Dia do Trabalhador", :regions => [:pt]},
|
173
|
+
{:mday => 1, :name => "Ziua muncii", :regions => [:ro]},
|
174
|
+
{:mday => 1, :name => "Sviatok práce", :regions => [:sk]},
|
175
|
+
{:mday => 8, :name => "Deň víťazstva", :regions => [:sk]}],
|
176
|
+
8 => [{:mday => 15, :name => "Mariä Himmelfahrt", :regions => [:at, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_ag, :ch_ti, :ch_vs, :ch_ju, :de_by, :de_sl]},
|
177
|
+
{:mday => 15, :name => "Assumption of Mary", :regions => [:be]},
|
178
|
+
{:mday => 1, :name => "Bundesfeiertag", :regions => [:ch]},
|
148
179
|
{:mday => 15, :name => "Κοίμηση της Θεοτόκου", :regions => [:el]},
|
149
180
|
{:mday => 15, :name => "Asunción", :regions => [:es]},
|
150
181
|
{:mday => 15, :name => "Assomption", :regions => [:fr]},
|
151
|
-
{:wday => 1, :week => 1, :name => "Bank Holiday", :regions => [:gb_sct
|
182
|
+
{:wday => 1, :week => 1, :name => "Bank Holiday", :regions => [:gb_sct]},
|
152
183
|
{:wday => 1, :week => -1, :name => "Bank Holiday", :regions => [:gb_eng, :gb_wls, :gb_eaw, :gb_nir]},
|
184
|
+
{:mday => 5, :name => "Dan pobjede i domovinske zahvalnosti i dan hrvatskih branitelja", :regions => [:hr]},
|
185
|
+
{:mday => 15, :name => "Velika Gospa", :regions => [:hr]},
|
186
|
+
{:mday => 20, :name => "Az államalapítás ünnepe", :regions => [:hu]},
|
187
|
+
{:wday => 1, :week => 1, :name => "August Bank Holiday", :regions => [:ie]},
|
153
188
|
{:wday => 1, :week => 1, :name => "Frídagur verslunarmanna", :regions => [:is]},
|
154
189
|
{:mday => 15, :name => "Assunzione", :regions => [:it]},
|
155
190
|
{:mday => 15, :name => "Staatsfeiertag", :regions => [:li]},
|
156
191
|
{:mday => 15, :name => "Wniebowzięcie Najświętszej Maryi Panny", :regions => [:pl]},
|
157
|
-
{:mday => 15, :name => "Święto Wojska Polskiego", :regions => [:pl]}
|
192
|
+
{:mday => 15, :name => "Święto Wojska Polskiego", :regions => [:pl]},
|
193
|
+
{:mday => 15, :name => "Assunção de Nossa Senhora", :regions => [:pt]},
|
194
|
+
{:mday => 15, :name => "Adormirea Maicii Domnului", :regions => [:ro]},
|
195
|
+
{:mday => 29, :name => "Výročie Slovenského národného povstania", :regions => [:sk]}],
|
158
196
|
10 => [{:mday => 26, :name => "Nationalfeiertag", :regions => [:at]},
|
159
197
|
{:mday => 28, :name => "Den vzniku samostatného československého státu", :regions => [:cz]},
|
160
198
|
{:mday => 3, :name => "Tag der Deutschen Einheit", :regions => [:de]},
|
@@ -162,9 +200,13 @@ module Holidays
|
|
162
200
|
{:mday => 28, :name => "Επέτειος του Όχι", :regions => [:el]},
|
163
201
|
{:mday => 9, :name => "Día de Valencia", :regions => [:es_vc, :es_v]},
|
164
202
|
{:mday => 12, :name => "Día de la Hispanidad", :regions => [:es]},
|
165
|
-
{:
|
203
|
+
{:mday => 8, :name => "Dan neovisnosti", :regions => [:hr]},
|
204
|
+
{:mday => 23, :name => "1956-os forradalom és szabadságharc ünnepe", :regions => [:hu]},
|
205
|
+
{:wday => 1, :week => -1, :name => "October Bank Holiday", :regions => [:ie]},
|
166
206
|
{:mday => 14, :type => :informal, :name => "Dzień Nauczyciela (Dzień Edukacji Narodowej)", :regions => [:pl]}],
|
167
|
-
11 => [{:mday => 1, :name => "Allerheiligen", :regions => [:at, :de_bw, :de_by, :de_nw, :de_rp, :de_sl, :li]},
|
207
|
+
11 => [{:mday => 1, :name => "Allerheiligen", :regions => [:at, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_ai, :ch_sg, :ch_ag, :ch_ti, :ch_vs, :ch_ju, :de_bw, :de_by, :de_nw, :de_rp, :de_sl, :li]},
|
208
|
+
{:mday => 1, :name => "All Saints", :regions => [:be]},
|
209
|
+
{:mday => 11, :name => "Armistice Day", :regions => [:be]},
|
168
210
|
{:mday => 17, :name => "Den boje za svobodu a demokracii", :regions => [:cz]},
|
169
211
|
{:mday => 10, :type => :informal, :name => "Mortensaften", :regions => [:dk]},
|
170
212
|
{:function => lambda { |year| Holidays.de_buss_und_bettag(year) }, :function_id => "de_buss_und_bettag(year)", :name => "Buß- und Bettag", :regions => [:de_sn]},
|
@@ -172,16 +214,25 @@ module Holidays
|
|
172
214
|
{:mday => 1, :name => "Toussaint", :regions => [:fr]},
|
173
215
|
{:mday => 11, :name => "Armistice 1918", :regions => [:fr]},
|
174
216
|
{:mday => 5, :type => :informal, :name => "Guy Fawkes Day", :regions => [:gb]},
|
217
|
+
{:mday => 1, :name => "Dan svih svetih", :regions => [:hr]},
|
218
|
+
{:mday => 1, :name => "Mindenszentek", :regions => [:hu]},
|
175
219
|
{:mday => 16, :name => "Dagur íslenskrar tungu", :regions => [:is]},
|
176
220
|
{:mday => 1, :name => "Ognissanti", :regions => [:it]},
|
177
221
|
{:mday => 1, :name => "Wszystkich Świętych", :regions => [:pl]},
|
178
222
|
{:mday => 2, :type => :informal, :name => "Dzień Zaduszny", :regions => [:pl]},
|
179
223
|
{:mday => 11, :name => "Narodowe Święto Niepodległości", :regions => [:pl]},
|
180
224
|
{:mday => 29, :type => :informal, :name => "Andrzejki", :regions => [:pl]},
|
181
|
-
{:mday =>
|
182
|
-
|
225
|
+
{:mday => 30, :name => "Sfântul Apostol Andrei", :regions => [:ro]},
|
226
|
+
{:mday => 1, :name => "Sviatok všetkých svätých", :regions => [:sk]},
|
227
|
+
{:mday => 17, :name => "Deň boja za slobodu a demokraciu", :regions => [:sk]}],
|
228
|
+
12 => [{:mday => 8, :name => "Mariä Empfägnis", :regions => [:at]},
|
183
229
|
{:mday => 25, :name => "1. Weihnachtstag", :regions => [:at, :de]},
|
184
230
|
{:mday => 26, :name => "2. Weihnachtstag", :regions => [:at, :de]},
|
231
|
+
{:mday => 25, :name => "Christmas", :regions => [:be]},
|
232
|
+
{:mday => 8, :name => "Maria Empfängnis", :regions => [:ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_zg, :ch_fr, :ch_ai, :ch_ag, :ch_ti, :ch_vs, :li]},
|
233
|
+
{:mday => 25, :name => "Weihnachten", :regions => [:ch, :li]},
|
234
|
+
{:mday => 26, :name => "Stefanstag", :regions => [:ch_zh, :ch_be, :ch_lu, :ch_ur, :ch_sz, :ch_ow, :ch_nw, :ch_gl, :ch_zg, :ch_fr, :ch_so, :ch_bs, :ch_bl, :ch_sh, :ch_ar, :ch_ai, :ch_sg, :ch_gr, :ch_ag, :ch_tg, :ch_ti, :ch_vs, :ch_ne, :li]},
|
235
|
+
{:mday => 31, :name => "Restauration de la République", :regions => [:ch_ge]},
|
185
236
|
{:mday => 24, :name => "Štědrý den", :regions => [:cz]},
|
186
237
|
{:mday => 25, :name => "1. svátek vánoční", :regions => [:cz]},
|
187
238
|
{:mday => 26, :name => "2. svátek vánoční", :regions => [:cz]},
|
@@ -195,11 +246,14 @@ module Holidays
|
|
195
246
|
{:mday => 8, :name => "Inmaculada Concepción", :regions => [:es]},
|
196
247
|
{:mday => 25, :name => "Navidad del Señor", :regions => [:es]},
|
197
248
|
{:mday => 26, :name => "San Esteban", :regions => [:es_ib, :es_ct]},
|
198
|
-
{:mday => 25, :name => "
|
199
|
-
{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:gb]},
|
249
|
+
{:mday => 25, :name => "Noël", :regions => [:fr]},
|
250
|
+
{:mday => 25, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "Christmas Day", :regions => [:gb, :ie]},
|
200
251
|
{:mday => 26, :observed => lambda { |date| Holidays.to_weekday_if_boxing_weekend(date) }, :observed_id => "to_weekday_if_boxing_weekend", :name => "Boxing Day", :regions => [:gb]},
|
201
|
-
{:mday => 25, :name => "
|
202
|
-
{:mday => 26, :name => "
|
252
|
+
{:mday => 25, :name => "Božić", :regions => [:hr]},
|
253
|
+
{:mday => 26, :name => "Sveti Stjepan", :regions => [:hr]},
|
254
|
+
{:mday => 25, :name => "Karácsony", :regions => [:hu]},
|
255
|
+
{:mday => 26, :name => "Karácsony", :regions => [:hu]},
|
256
|
+
{:mday => 26, :observed => lambda { |date| Holidays.ie_st_stephens_day(date) }, :observed_id => "ie_st_stephens_day", :name => "St. Stephen's Day", :regions => [:ie]},
|
203
257
|
{:mday => 24, :name => "Jól", :regions => [:is]},
|
204
258
|
{:mday => 25, :name => "Jól", :regions => [:is]},
|
205
259
|
{:mday => 26, :name => "Jól", :regions => [:is]},
|
@@ -207,10 +261,7 @@ module Holidays
|
|
207
261
|
{:mday => 8, :name => "Immacolata Concezione", :regions => [:it]},
|
208
262
|
{:mday => 25, :name => "Natale", :regions => [:it]},
|
209
263
|
{:mday => 26, :name => "Santo Stefano", :regions => [:it]},
|
210
|
-
{:mday => 8, :name => "Maria Empfängnis", :regions => [:li]},
|
211
264
|
{:mday => 24, :name => "Heilig Abend", :regions => [:li]},
|
212
|
-
{:mday => 25, :name => "Weihnachten", :regions => [:li]},
|
213
|
-
{:mday => 26, :name => "Stefanstag", :regions => [:li]},
|
214
265
|
{:mday => 31, :name => "Silvester", :regions => [:li]},
|
215
266
|
{:mday => 5, :type => :informal, :name => "Sinterklaas", :regions => [:nl]},
|
216
267
|
{:mday => 25, :name => "Kerstmis", :regions => [:nl]},
|
@@ -224,21 +275,35 @@ module Holidays
|
|
224
275
|
{:mday => 26, :name => "drugi dzień Bożego Narodzenia", :regions => [:pl]},
|
225
276
|
{:mday => 31, :type => :informal, :name => "Sylwester", :regions => [:pl]},
|
226
277
|
{:mday => 8, :name => "Imaculada Conceição", :regions => [:pt]},
|
227
|
-
{:mday => 25, :name => "Natal", :regions => [:pt]}
|
228
|
-
|
278
|
+
{:mday => 25, :name => "Natal", :regions => [:pt]},
|
279
|
+
{:mday => 1, :name => "Ziua Națională", :regions => [:ro]},
|
280
|
+
{:mday => 25, :name => "Sărbătoarea Nașterii Domnului", :regions => [:ro]},
|
281
|
+
{:mday => 26, :name => "Sărbătoarea Nașterii Domnului", :regions => [:ro]},
|
282
|
+
{:mday => 24, :name => "Štedrý deň", :regions => [:sk]},
|
283
|
+
{:mday => 25, :name => "1. sviatok vianočný", :regions => [:sk]},
|
284
|
+
{:mday => 26, :name => "2. sviatek vianočný", :regions => [:sk]}],
|
285
|
+
7 => [{:mday => 21, :name => "National holiday", :regions => [:be]},
|
286
|
+
{:mday => 5, :name => "Den slovanských věrozvěstů Cyrila a Metoděje", :regions => [:cz]},
|
229
287
|
{:mday => 6, :name => "Den upálení mistra Jana Husa", :regions => [:cz]},
|
230
288
|
{:mday => 23, :name => "Santiago Apostol", :regions => [:es_ga]},
|
231
289
|
{:mday => 14, :name => "Fête nationale", :regions => [:fr]},
|
232
290
|
{:mday => 5, :name => "Tynwald Day", :regions => [:im, :gb_iom]},
|
233
|
-
{:mday => 12, :name => "Battle of the Boyne", :regions => [:gb_nir]}
|
234
|
-
|
235
|
-
|
236
|
-
{:mday =>
|
237
|
-
{:mday =>
|
238
|
-
{:mday =>
|
239
|
-
{:mday =>
|
240
|
-
{:mday =>
|
241
|
-
|
291
|
+
{:mday => 12, :name => "Battle of the Boyne", :regions => [:gb_nir]},
|
292
|
+
{:mday => 5, :name => "Sviatok svätého Cyrila a svätého Metoda", :regions => [:sk]}],
|
293
|
+
3 => [{:mday => 1, :name => "Instauration de la République", :regions => [:ch_ne]},
|
294
|
+
{:mday => 19, :name => "Josephstag", :regions => [:ch_ur, :ch_sz, :ch_nw, :ch_ti, :ch_vs]},
|
295
|
+
{:mday => 25, :name => "Επέτειος της Επανάστασης του 1821", :regions => [:el]},
|
296
|
+
{:mday => 1, :name => "Día de las Islas Baleares", :regions => [:es_ib]},
|
297
|
+
{:mday => 19, :name => "San José", :regions => [:es_v, :es_vc, :es_cm, :es_mu, :es_m]},
|
298
|
+
{:mday => 5, :name => "St. Piran's Day", :regions => [:gb_con]},
|
299
|
+
{:mday => 17, :name => "St. Patrick's Day", :regions => [:gb_nir]},
|
300
|
+
{:mday => 15, :name => "1848/49-es forradalom és szabadságharc ünnepe", :regions => [:hu]},
|
301
|
+
{:mday => 17, :observed => lambda { |date| Holidays.to_monday_if_weekend(date) }, :observed_id => "to_monday_if_weekend", :name => "St. Patrick's Day", :regions => [:ie]},
|
302
|
+
{:mday => 19, :name => "St. Josef", :regions => [:li]},
|
303
|
+
{:mday => 8, :type => :informal, :name => "Dzień Kobiet", :regions => [:pl]},
|
304
|
+
{:mday => 10, :type => :informal, :name => "Dzień Mężczyzn", :regions => [:pl]}],
|
305
|
+
4 => [{:function => lambda { |year| Holidays.ch_gl_naefelser_fahrt(year) }, :function_id => "ch_gl_naefelser_fahrt(year)", :name => "Näfelser Fahrt", :regions => [:ch_gl]},
|
306
|
+
{:mday => 1, :type => :informal, :name => "1. april", :regions => [:dk]},
|
242
307
|
{:mday => 9, :type => :informal, :name => "Danmarks besættelse", :regions => [:dk]},
|
243
308
|
{:mday => 16, :type => :informal, :name => "Dronningens fødselsdag", :regions => [:dk]},
|
244
309
|
{:mday => 23, :name => "San Jorge", :regions => [:es_ar, :es_cl]},
|
@@ -249,25 +314,32 @@ module Holidays
|
|
249
314
|
{:mday => 1, :type => :informal, :name => "Prima Aprilis", :regions => [:pl]},
|
250
315
|
{:mday => 22, :type => :informal, :name => "Międzynarodowy Dzień Ziemi", :regions => [:pl]},
|
251
316
|
{:mday => 25, :name => "Dia da Liberdade", :regions => [:pt]}],
|
252
|
-
6 => [{:mday =>
|
317
|
+
6 => [{:mday => 23, :name => "Commémoration du plébiscite jurassien", :regions => [:ch_ju]},
|
318
|
+
{:mday => 29, :name => "San Pietro e Paolo", :regions => [:ch_ti]},
|
319
|
+
{:mday => 5, :name => "Grundlovsdag", :regions => [:dk]},
|
253
320
|
{:mday => 15, :type => :informal, :name => "Valdemarsdag og Genforeningsdag", :regions => [:dk]},
|
254
321
|
{:mday => 23, :type => :informal, :name => "Sankt Hans aften", :regions => [:dk]},
|
255
322
|
{:mday => 9, :name => "Día de la Región de Murcia", :regions => [:es_mu]},
|
256
323
|
{:mday => 9, :name => "Día de La Rioja", :regions => [:es_lo]},
|
257
|
-
{:
|
324
|
+
{:mday => 22, :name => "Dan antifašističke borbe", :regions => [:hr]},
|
325
|
+
{:mday => 25, :name => "Dan državnosti", :regions => [:hr]},
|
326
|
+
{:wday => 1, :week => 1, :name => "June Bank Holiday", :regions => [:ie]},
|
258
327
|
{:mday => 3, :type => :informal, :name => "Sjómannadagurinn", :regions => [:is]},
|
259
328
|
{:mday => 17, :name => "Lýðveldisdagurinn", :regions => [:is]},
|
260
329
|
{:mday => 2, :name => "Festa della Repubblica", :regions => [:it]},
|
261
330
|
{:mday => 23, :type => :informal, :name => "Dzień Ojca", :regions => [:pl]},
|
262
331
|
{:mday => 10, :name => "Dia de Portugal", :regions => [:pt]}],
|
263
|
-
|
264
|
-
{:mday =>
|
265
|
-
{:mday =>
|
266
|
-
{:mday =>
|
267
|
-
{:mday =>
|
268
|
-
{:mday =>
|
269
|
-
{:mday =>
|
270
|
-
{:mday =>
|
332
|
+
9 => [{:mday => 22, :name => "Mauritiustag", :regions => [:ch_ai]},
|
333
|
+
{:mday => 25, :name => "Bruderklausenfest", :regions => [:ch_ow]},
|
334
|
+
{:mday => 28, :name => "Den české státnosti", :regions => [:cz]},
|
335
|
+
{:mday => 2, :name => "Día de Ceuta", :regions => [:es_ce]},
|
336
|
+
{:mday => 8, :name => "Día de Asturias", :regions => [:es_o]},
|
337
|
+
{:mday => 8, :name => "Día de Extremadura", :regions => [:es_ex]},
|
338
|
+
{:mday => 11, :name => "Fiesta Nacional de Cataluña", :regions => [:es_ct]},
|
339
|
+
{:mday => 8, :name => "Maria Geburt", :regions => [:li]},
|
340
|
+
{:mday => 30, :type => :informal, :name => "Dzień Chłopaka", :regions => [:pl]},
|
341
|
+
{:mday => 1, :name => "Deň Ústavy Slovenskej republiky", :regions => [:sk]},
|
342
|
+
{:mday => 15, :name => "Sedembolestná Panna Mária", :regions => [:sk]}],
|
271
343
|
2 => [{:mday => 28, :name => "Día de Andalucía", :regions => [:es_an]},
|
272
344
|
{:mday => 18, :type => :informal, :name => "Konudagur", :regions => [:is]},
|
273
345
|
{:mday => 2, :name => "Maria Lichtmess", :regions => [:li]},
|
@@ -277,6 +349,45 @@ module Holidays
|
|
277
349
|
end
|
278
350
|
end
|
279
351
|
|
352
|
+
# Monday after the third Sunday of September
|
353
|
+
def self.ch_vd_lundi_du_jeune_federal(year)
|
354
|
+
date = Date.civil(year,9,1)
|
355
|
+
# Find the first Sunday of September
|
356
|
+
until date.wday.eql? 0 do
|
357
|
+
date += 1
|
358
|
+
end
|
359
|
+
# There are 15 days between the first Sunday
|
360
|
+
# and the Monday after the third Sunday
|
361
|
+
date + 15
|
362
|
+
end
|
363
|
+
|
364
|
+
|
365
|
+
# Thursday after the first Sunday of September
|
366
|
+
def self.ch_ge_jeune_genevois(year)
|
367
|
+
date = Date.civil(year,9,1)
|
368
|
+
# Find the first Sunday of September
|
369
|
+
until date.wday.eql? 0 do
|
370
|
+
date += 1
|
371
|
+
end
|
372
|
+
# Thursday is four days after Sunday
|
373
|
+
date + 4
|
374
|
+
end
|
375
|
+
|
376
|
+
|
377
|
+
# First Thursday of April. If the first Thursday of April is in the week before easter, then a week later.
|
378
|
+
def self.ch_gl_naefelser_fahrt(year)
|
379
|
+
date = Date.civil(year,4,1)
|
380
|
+
# Find the first Thursday of April
|
381
|
+
until date.wday.eql? 4 do
|
382
|
+
date += 1
|
383
|
+
end
|
384
|
+
if date.eql?(easter(year)-3)
|
385
|
+
date += 7
|
386
|
+
end
|
387
|
+
date
|
388
|
+
end
|
389
|
+
|
390
|
+
|
280
391
|
# Germany: Wednesday before November 23
|
281
392
|
def self.de_buss_und_bettag(year)
|
282
393
|
date = Date.civil(year,11,23)
|
@@ -289,6 +400,15 @@ def self.de_buss_und_bettag(year)
|
|
289
400
|
end
|
290
401
|
|
291
402
|
|
403
|
+
# Ireland - Stephens Day is always the day after christmas day
|
404
|
+
def self.ie_st_stephens_day(date)
|
405
|
+
date += 2 if date.wday == 6
|
406
|
+
date += 2 if date.wday == 0
|
407
|
+
date += 1 if date.wday == 1
|
408
|
+
date
|
409
|
+
end
|
410
|
+
|
411
|
+
|
292
412
|
# Iceland: first day of summer (Thursday after 18 April)
|
293
413
|
def self.is_sumardagurinn_fyrsti(year)
|
294
414
|
date = Date.civil(year,4,18)
|