oz_holidays 1.0
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/CHANGELOG +1 -0
- data/Manifest +11 -0
- data/README +33 -0
- data/Rakefile +7 -0
- data/gen/output.rb +92 -0
- data/gen/parse.rb +44 -0
- data/gen/scrape.txt +102 -0
- data/gen/to_json.rb +6 -0
- data/javascript/oz_holidays.js +18 -0
- data/lib/oz_holidays.rb +113 -0
- data/oz_holidays.gemspec +30 -0
- data/test/test_all.rb +21 -0
- metadata +74 -0
data/CHANGELOG
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
v1.0. National & State Holidays for 2011 and 2012
|
data/Manifest
ADDED
data/README
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
|
2
|
+
oz_holidays - Ruby
|
3
|
+
------------------
|
4
|
+
|
5
|
+
gem install oz_holidays
|
6
|
+
|
7
|
+
require 'oz_holidays'
|
8
|
+
|
9
|
+
> OzHolidays.national.keys.sort
|
10
|
+
|
11
|
+
=> ["2011-01-03", "2011-01-26", "2011-04-22", "2011-12-26", "2011-12-27",
|
12
|
+
"2012-01-02", "2012-01-26", "2012-04-06", "2012-04-09", "2012-04-25",
|
13
|
+
"2012-12-25", "2012-12-26"]
|
14
|
+
|
15
|
+
> OzHolidays['NSW']['2012-04-25']
|
16
|
+
|
17
|
+
=> "ANZAC Day"
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
Javascript / JSON
|
23
|
+
-----------------
|
24
|
+
|
25
|
+
See javascript/ directory or run OzHolidays.to_json
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
Contact the author
|
30
|
+
------------------
|
31
|
+
|
32
|
+
Andrew Snow <andrew@modulus.org>
|
33
|
+
Andys^ on irc.freenode.net
|
data/Rakefile
ADDED
data/gen/output.rb
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
{
|
2
|
+
'QLD' => {
|
3
|
+
'2011-04-25' => 'ANZAC Day',
|
4
|
+
'2011-04-26' => 'Easter Monday',
|
5
|
+
'2011-05-02' => 'Labour Day',
|
6
|
+
'2011-06-13' => 'Queens Birthday',
|
7
|
+
'2011-08-17' => 'Royal Qland Show metro',
|
8
|
+
'2012-05-07' => 'Labour Day',
|
9
|
+
'2012-06-11' => 'Queens Birthday',
|
10
|
+
'2012-08-15' => 'Royal Qland Show metro'
|
11
|
+
},
|
12
|
+
'SA' => {
|
13
|
+
'2011-03-14' => 'Adelaide Cup',
|
14
|
+
'2011-04-25' => 'Easter Monday',
|
15
|
+
'2011-04-26' => 'ANZAC Day',
|
16
|
+
'2011-06-13' => 'Queens Birthday',
|
17
|
+
'2011-10-03' => 'Labour Day',
|
18
|
+
'2012-03-12' => 'Adelaide Cup',
|
19
|
+
'2012-06-11' => 'Queens Birthday',
|
20
|
+
'2012-10-01' => 'Labour Day'
|
21
|
+
},
|
22
|
+
'NSW' => {
|
23
|
+
'2011-04-25' => 'ANZAC Day',
|
24
|
+
'2011-04-26' => 'Easter Monday',
|
25
|
+
'2011-06-13' => 'Queens Birthday',
|
26
|
+
'2011-10-03' => 'Labour Day',
|
27
|
+
'2012-06-11' => 'Queens Birthday',
|
28
|
+
'2012-10-01' => 'Labour Day'
|
29
|
+
},
|
30
|
+
'WA' => {
|
31
|
+
'2011-03-07' => 'Labour Day',
|
32
|
+
'2011-04-25' => 'Easter Monday',
|
33
|
+
'2011-04-26' => 'ANZAC Day',
|
34
|
+
'2011-06-06' => 'Foundation Day',
|
35
|
+
'2011-10-03' => 'Queens Birthday',
|
36
|
+
'2012-03-05' => 'Labour Day',
|
37
|
+
'2012-06-04' => 'Foundation Day',
|
38
|
+
'2012-10-01' => 'Queens Birthday'
|
39
|
+
},
|
40
|
+
'VIC' => {
|
41
|
+
'2011-03-14' => 'Labour Day',
|
42
|
+
'2011-04-25' => 'Easter Monday',
|
43
|
+
'2011-04-26' => 'ANZAC Day',
|
44
|
+
'2011-06-13' => 'Queens Birthday',
|
45
|
+
'2011-11-01' => 'Melbourne Cup Day',
|
46
|
+
'2012-03-12' => 'Labour Day',
|
47
|
+
'2012-06-11' => 'Queens Birthday',
|
48
|
+
'2012-11-06' => 'Melbourne Cup Day'
|
49
|
+
},
|
50
|
+
'TAS' => {
|
51
|
+
'2011-02-14' => 'Royal Hobart Regatta',
|
52
|
+
'2011-03-14' => 'Eight Hours Day',
|
53
|
+
'2011-04-25' => 'ANZAC Day',
|
54
|
+
'2011-06-13' => 'Queens Birthday',
|
55
|
+
'2012-02-13' => 'Royal Hobart Regatta',
|
56
|
+
'2012-03-12' => 'Eight Hours Day',
|
57
|
+
'2012-06-11' => 'Queens Birthday'
|
58
|
+
},
|
59
|
+
'NT' => {
|
60
|
+
'2011-04-25' => 'ANZAC Day',
|
61
|
+
'2011-05-02' => 'May Day',
|
62
|
+
'2011-06-13' => 'Queens Birthday',
|
63
|
+
'2011-08-01' => 'Picnic Day',
|
64
|
+
'2012-05-07' => 'May Day',
|
65
|
+
'2012-06-11' => 'Queens Birthday',
|
66
|
+
'2012-08-06' => 'Picnic Day'
|
67
|
+
},
|
68
|
+
'ACT' => {
|
69
|
+
'2011-03-14' => 'Canberra Day',
|
70
|
+
'2011-04-25' => 'Easter Monday',
|
71
|
+
'2011-04-26' => 'ANZAC Day',
|
72
|
+
'2011-06-13' => 'Queens Birthday',
|
73
|
+
'2011-10-03' => 'Labour Day',
|
74
|
+
'2012-03-12' => 'Canberra Day',
|
75
|
+
'2012-06-11' => 'Queens Birthday',
|
76
|
+
'2012-10-01' => 'Labour Day'
|
77
|
+
},
|
78
|
+
'National' => {
|
79
|
+
'2011-01-03' => 'New Years Day',
|
80
|
+
'2011-01-26' => 'Australia Day',
|
81
|
+
'2011-04-22' => 'Good Friday',
|
82
|
+
'2011-12-26' => 'Christmas Day',
|
83
|
+
'2011-12-27' => 'Boxing Day',
|
84
|
+
'2012-01-02' => 'New Years Day',
|
85
|
+
'2012-01-26' => 'Australia Day',
|
86
|
+
'2012-04-06' => 'Good Friday',
|
87
|
+
'2012-04-09' => 'Easter Monday',
|
88
|
+
'2012-04-25' => 'ANZAC Day',
|
89
|
+
'2012-12-25' => 'Christmas Day',
|
90
|
+
'2012-12-26' => 'Boxing Day'
|
91
|
+
}
|
92
|
+
}
|
data/gen/parse.rb
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
|
2
|
+
require 'date'
|
3
|
+
|
4
|
+
state = nil
|
5
|
+
holidays11 = Hash.new {|h,k| h[k] = {} }
|
6
|
+
holidays12 = Hash.new {|h,k| h[k] = {} }
|
7
|
+
|
8
|
+
STDIN.each_line do |line|
|
9
|
+
if line =~ /^\*(.+)$/
|
10
|
+
state = $1.strip
|
11
|
+
elsif line =~ /^\w+/
|
12
|
+
dayname, day11, day12 = line.split(/\t/)
|
13
|
+
dayname.strip!
|
14
|
+
dayname.gsub! /[^a-zA-Z ]/, ''
|
15
|
+
|
16
|
+
holidays11[state][Date.parse(day11 + ' 2011').to_s] = dayname
|
17
|
+
holidays12[state][Date.parse(day12 + ' 2012').to_s] = dayname
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
[holidays11, holidays12].each do |year|
|
22
|
+
states = year.keys
|
23
|
+
states.each do |state|
|
24
|
+
year[state].each do |date, dayname,|
|
25
|
+
if states.all? {|other_state| year[other_state].keys.any? {|other_date| other_date == date && year[other_state][other_date].upcase == dayname.upcase }}
|
26
|
+
states.each {|s| year[s].delete(date) }
|
27
|
+
year['National'][date] = dayname
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
holidays = holidays11
|
34
|
+
holidays12.each do |state, dates|
|
35
|
+
holidays[state].merge!(dates)
|
36
|
+
end
|
37
|
+
|
38
|
+
puts "{"
|
39
|
+
puts(holidays.map do |state, dates|
|
40
|
+
" '#{state}' => {\n" +
|
41
|
+
dates.sort.map {|date, dayname| " '#{date}' => '#{dayname}'" }.join(",\n") +
|
42
|
+
"\n }"
|
43
|
+
end.join(",\n"))
|
44
|
+
puts "}"
|
data/gen/scrape.txt
ADDED
@@ -0,0 +1,102 @@
|
|
1
|
+
*QLD
|
2
|
+
|
3
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
4
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
5
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
6
|
+
Easter Monday Tues 26 Apr Mon 9 Apr
|
7
|
+
ANZAC Day Mon 25 Apr Wed 25 Apr
|
8
|
+
Labour Day Mon 2 May Mon 7 May
|
9
|
+
Queen's Birthday Mond 13 June Mon 11 June
|
10
|
+
Royal Q'land Show (metro) Wed 17 Aug Wed 15 Aug
|
11
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
12
|
+
Boxing Day Tues 27 Dec Wed 26 Dec
|
13
|
+
|
14
|
+
*SA
|
15
|
+
|
16
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
17
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
18
|
+
Adelaide Cup Mon 14 Mar Mon Mar 12
|
19
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
20
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
21
|
+
ANZAC Day Tues 26 Apr Wed 25 Apr
|
22
|
+
Queen's Birthday Mon 13 Jun Mon 11 June
|
23
|
+
Labour Day Mon 3 Oct Mon 1 Oct
|
24
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
25
|
+
Boxing Day Tue 27 Dec Wed 26 Dec
|
26
|
+
|
27
|
+
*NSW
|
28
|
+
|
29
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
30
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
31
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
32
|
+
Easter Monday Tues 26 Apr Mon 9 Apr
|
33
|
+
ANZAC Day Mon 25 Apr Wed 25 Apr
|
34
|
+
Queen's Birthday Mon 13 June Mon 11 June
|
35
|
+
Labour Day Mon 3 Oct Mon 1 Oct
|
36
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
37
|
+
Boxing Day Tue 27 Dec Wed 26 Dec
|
38
|
+
|
39
|
+
*WA
|
40
|
+
|
41
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
42
|
+
Australia Day Wed 26 Jan Tues 26 Jan
|
43
|
+
Labour Day Mon 7 Mar Mon 5 Mar
|
44
|
+
Good Friday Fri 22 April Fri 6 Apr
|
45
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
46
|
+
ANZAC Day Tues 26 Apr Wed 25 Apr
|
47
|
+
Foundation Day Mon 6 Jun Mon 4 June
|
48
|
+
Queen's Birthday Mon 3 Oct Mon 1 Oct
|
49
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
50
|
+
Boxing Day Tue 27 Dec Wed 26 Dec
|
51
|
+
|
52
|
+
*VIC
|
53
|
+
|
54
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
55
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
56
|
+
Labour Day Mon 14 Mar Mon 12 Mar
|
57
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
58
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
59
|
+
ANZAC Day Tues 26 Apr Wed 25 Apr
|
60
|
+
Queen's Birthday Mon 13 Jun Mon 11 June
|
61
|
+
Melbourne Cup Day Tues 1 Nov Tues 6 Nov
|
62
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
63
|
+
Boxing Day Tues 27 Dec Wed 26 Dec
|
64
|
+
|
65
|
+
*TAS
|
66
|
+
|
67
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
68
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
69
|
+
Royal Hobart Regatta Mon 14 Feb Mon 13 Feb
|
70
|
+
Eight Hours Day Mon 14 Mar Mon 12 Mar
|
71
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
72
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
73
|
+
ANZAC Day Mon 25 Apr Wed 25 Apr
|
74
|
+
Queen's Birthday Mon 13 June Mon 11 June
|
75
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
76
|
+
Boxing Day Tues 27 Dec Wed 26 Dec
|
77
|
+
|
78
|
+
*NT
|
79
|
+
|
80
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
81
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
82
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
83
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
84
|
+
ANZAC Day Mon 25 Apr Wed 25 Apr
|
85
|
+
May Day Mon 2 May Mon 7 May
|
86
|
+
Queen's Birthday Mon 13 Jun Mon 11 June
|
87
|
+
Picnic Day Mon 1 Aug Mon 6 Aug
|
88
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
89
|
+
Boxing Day Tue 27 Dec Wed 26 Dec
|
90
|
+
|
91
|
+
*ACT
|
92
|
+
|
93
|
+
New Year's Day Mon 3 Jan Mon 2 Jan
|
94
|
+
Australia Day Wed 26 Jan Thur 26 Jan
|
95
|
+
Canberra Day Mon 14 Mar Mon 12 Mar
|
96
|
+
Good Friday Fri 22 Apr Fri 6 Apr
|
97
|
+
Easter Monday Mon 25 Apr Mon 9 Apr
|
98
|
+
ANZAC Day Tues 26 Apr Wed 25 Apr
|
99
|
+
Queen's Birthday Mon 13 Jun Mon 11 June
|
100
|
+
Labour Day Mon 3 Oct Mon 1 Oct
|
101
|
+
Christmas Day Mon 26 Dec Tues 25 Dec
|
102
|
+
Boxing Day Tues 27 Dec Wed 26 Dec
|
data/gen/to_json.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
var oz_holidays = {"QLD":{
|
2
|
+
"2011-04-25":"ANZAC Day","2011-04-26":"Easter Monday","2011-05-02":"Labour Day","2011-06-13":"Queens Birthday","2011-08-17":"Royal Qland Show metro","2012-05-07":"Labour Day","2012-06-11":"Queens Birthday","2012-08-15":"Royal Qland Show metro"},
|
3
|
+
"SA":{
|
4
|
+
"2011-03-14":"Adelaide Cup","2011-04-25":"Easter Monday","2011-04-26":"ANZAC Day","2011-06-13":"Queens Birthday","2011-10-03":"Labour Day","2012-03-12":"Adelaide Cup","2012-06-11":"Queens Birthday","2012-10-01":"Labour Day"},
|
5
|
+
"NSW":{
|
6
|
+
"2011-04-25":"ANZAC Day","2011-04-26":"Easter Monday","2011-06-13":"Queens Birthday","2011-10-03":"Labour Day","2012-06-11":"Queens Birthday","2012-10-01":"Labour Day"},
|
7
|
+
"WA":{
|
8
|
+
"2011-03-07":"Labour Day","2011-04-25":"Easter Monday","2011-04-26":"ANZAC Day","2011-06-06":"Foundation Day","2011-10-03":"Queens Birthday","2012-03-05":"Labour Day","2012-06-04":"Foundation Day","2012-10-01":"Queens Birthday"},
|
9
|
+
"VIC":{
|
10
|
+
"2011-03-14":"Labour Day","2011-04-25":"Easter Monday","2011-04-26":"ANZAC Day","2011-06-13":"Queens Birthday","2011-11-01":"Melbourne Cup Day","2012-03-12":"Labour Day","2012-06-11":"Queens Birthday","2012-11-06":"Melbourne Cup Day"},
|
11
|
+
"TAS":{
|
12
|
+
"2011-02-14":"Royal Hobart Regatta","2011-03-14":"Eight Hours Day","2011-04-25":"ANZAC Day","2011-06-13":"Queens Birthday","2012-02-13":"Royal Hobart Regatta","2012-03-12":"Eight Hours Day","2012-06-11":"Queens Birthday"},
|
13
|
+
"NT":{
|
14
|
+
"2011-04-25":"ANZAC Day","2011-05-02":"May Day","2011-06-13":"Queens Birthday","2011-08-01":"Picnic Day","2012-05-07":"May Day","2012-06-11":"Queens Birthday","2012-08-06":"Picnic Day"},
|
15
|
+
"ACT":{
|
16
|
+
"2011-03-14":"Canberra Day","2011-04-25":"Easter Monday","2011-04-26":"ANZAC Day","2011-06-13":"Queens Birthday","2011-10-03":"Labour Day","2012-03-12":"Canberra Day","2012-06-11":"Queens Birthday","2012-10-01":"Labour Day"},
|
17
|
+
"National":{
|
18
|
+
"2011-01-03":"New Years Day","2011-01-26":"Australia Day","2011-04-22":"Good Friday","2011-12-26":"Christmas Day","2011-12-27":"Boxing Day","2012-01-02":"New Years Day","2012-01-26":"Australia Day","2012-04-06":"Good Friday","2012-04-09":"Easter Monday","2012-04-25":"ANZAC Day","2012-12-25":"Christmas Day","2012-12-26":"Boxing Day"}};
|
data/lib/oz_holidays.rb
ADDED
@@ -0,0 +1,113 @@
|
|
1
|
+
|
2
|
+
require 'json' rescue nil
|
3
|
+
|
4
|
+
class OzHolidays
|
5
|
+
def self.national
|
6
|
+
by_state['National']
|
7
|
+
end
|
8
|
+
def self.for_state(state)
|
9
|
+
national.merge(by_state[state])
|
10
|
+
end
|
11
|
+
def self.[](state)
|
12
|
+
for_state(state)
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.to_json
|
16
|
+
by_state.to_json
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.by_state
|
20
|
+
{
|
21
|
+
'QLD' => {
|
22
|
+
'2011-04-25' => 'ANZAC Day',
|
23
|
+
'2011-04-26' => 'Easter Monday',
|
24
|
+
'2011-05-02' => 'Labour Day',
|
25
|
+
'2011-06-13' => 'Queens Birthday',
|
26
|
+
'2011-08-17' => 'Royal Qland Show metro',
|
27
|
+
'2012-05-07' => 'Labour Day',
|
28
|
+
'2012-06-11' => 'Queens Birthday',
|
29
|
+
'2012-08-15' => 'Royal Qland Show metro'
|
30
|
+
},
|
31
|
+
'SA' => {
|
32
|
+
'2011-03-14' => 'Adelaide Cup',
|
33
|
+
'2011-04-25' => 'Easter Monday',
|
34
|
+
'2011-04-26' => 'ANZAC Day',
|
35
|
+
'2011-06-13' => 'Queens Birthday',
|
36
|
+
'2011-10-03' => 'Labour Day',
|
37
|
+
'2012-03-12' => 'Adelaide Cup',
|
38
|
+
'2012-06-11' => 'Queens Birthday',
|
39
|
+
'2012-10-01' => 'Labour Day'
|
40
|
+
},
|
41
|
+
'NSW' => {
|
42
|
+
'2011-04-25' => 'ANZAC Day',
|
43
|
+
'2011-04-26' => 'Easter Monday',
|
44
|
+
'2011-06-13' => 'Queens Birthday',
|
45
|
+
'2011-10-03' => 'Labour Day',
|
46
|
+
'2012-06-11' => 'Queens Birthday',
|
47
|
+
'2012-10-01' => 'Labour Day'
|
48
|
+
},
|
49
|
+
'WA' => {
|
50
|
+
'2011-03-07' => 'Labour Day',
|
51
|
+
'2011-04-25' => 'Easter Monday',
|
52
|
+
'2011-04-26' => 'ANZAC Day',
|
53
|
+
'2011-06-06' => 'Foundation Day',
|
54
|
+
'2011-10-03' => 'Queens Birthday',
|
55
|
+
'2012-03-05' => 'Labour Day',
|
56
|
+
'2012-06-04' => 'Foundation Day',
|
57
|
+
'2012-10-01' => 'Queens Birthday'
|
58
|
+
},
|
59
|
+
'VIC' => {
|
60
|
+
'2011-03-14' => 'Labour Day',
|
61
|
+
'2011-04-25' => 'Easter Monday',
|
62
|
+
'2011-04-26' => 'ANZAC Day',
|
63
|
+
'2011-06-13' => 'Queens Birthday',
|
64
|
+
'2011-11-01' => 'Melbourne Cup Day',
|
65
|
+
'2012-03-12' => 'Labour Day',
|
66
|
+
'2012-06-11' => 'Queens Birthday',
|
67
|
+
'2012-11-06' => 'Melbourne Cup Day'
|
68
|
+
},
|
69
|
+
'TAS' => {
|
70
|
+
'2011-02-14' => 'Royal Hobart Regatta',
|
71
|
+
'2011-03-14' => 'Eight Hours Day',
|
72
|
+
'2011-04-25' => 'ANZAC Day',
|
73
|
+
'2011-06-13' => 'Queens Birthday',
|
74
|
+
'2012-02-13' => 'Royal Hobart Regatta',
|
75
|
+
'2012-03-12' => 'Eight Hours Day',
|
76
|
+
'2012-06-11' => 'Queens Birthday'
|
77
|
+
},
|
78
|
+
'NT' => {
|
79
|
+
'2011-04-25' => 'ANZAC Day',
|
80
|
+
'2011-05-02' => 'May Day',
|
81
|
+
'2011-06-13' => 'Queens Birthday',
|
82
|
+
'2011-08-01' => 'Picnic Day',
|
83
|
+
'2012-05-07' => 'May Day',
|
84
|
+
'2012-06-11' => 'Queens Birthday',
|
85
|
+
'2012-08-06' => 'Picnic Day'
|
86
|
+
},
|
87
|
+
'ACT' => {
|
88
|
+
'2011-03-14' => 'Canberra Day',
|
89
|
+
'2011-04-25' => 'Easter Monday',
|
90
|
+
'2011-04-26' => 'ANZAC Day',
|
91
|
+
'2011-06-13' => 'Queens Birthday',
|
92
|
+
'2011-10-03' => 'Labour Day',
|
93
|
+
'2012-03-12' => 'Canberra Day',
|
94
|
+
'2012-06-11' => 'Queens Birthday',
|
95
|
+
'2012-10-01' => 'Labour Day'
|
96
|
+
},
|
97
|
+
'National' => {
|
98
|
+
'2011-01-03' => 'New Years Day',
|
99
|
+
'2011-01-26' => 'Australia Day',
|
100
|
+
'2011-04-22' => 'Good Friday',
|
101
|
+
'2011-12-26' => 'Christmas Day',
|
102
|
+
'2011-12-27' => 'Boxing Day',
|
103
|
+
'2012-01-02' => 'New Years Day',
|
104
|
+
'2012-01-26' => 'Australia Day',
|
105
|
+
'2012-04-06' => 'Good Friday',
|
106
|
+
'2012-04-09' => 'Easter Monday',
|
107
|
+
'2012-04-25' => 'ANZAC Day',
|
108
|
+
'2012-12-25' => 'Christmas Day',
|
109
|
+
'2012-12-26' => 'Boxing Day'
|
110
|
+
}
|
111
|
+
}
|
112
|
+
end
|
113
|
+
end
|
data/oz_holidays.gemspec
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = %q{oz_holidays}
|
5
|
+
s.version = "1.0"
|
6
|
+
|
7
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
|
+
s.authors = ["Andrew Snow"]
|
9
|
+
s.date = %q{2011-04-06}
|
10
|
+
s.description = %q{Australian Public Holiday database in Ruby & Javascript}
|
11
|
+
s.email = %q{andrew@modulus.org}
|
12
|
+
s.extra_rdoc_files = ["CHANGELOG", "README", "lib/oz_holidays.rb"]
|
13
|
+
s.files = ["CHANGELOG", "Manifest", "README", "Rakefile", "gen/output.rb", "gen/parse.rb", "gen/scrape.txt", "gen/to_json.rb", "javascript/oz_holidays.js", "lib/oz_holidays.rb", "test/test_all.rb", "oz_holidays.gemspec"]
|
14
|
+
s.homepage = %q{}
|
15
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Oz_holidays", "--main", "README"]
|
16
|
+
s.require_paths = ["lib"]
|
17
|
+
s.rubyforge_project = %q{oz_holidays}
|
18
|
+
s.rubygems_version = %q{1.6.2}
|
19
|
+
s.summary = %q{Australian Public Holiday database in Ruby & Javascript}
|
20
|
+
s.test_files = ["test/test_all.rb"]
|
21
|
+
|
22
|
+
if s.respond_to? :specification_version then
|
23
|
+
s.specification_version = 3
|
24
|
+
|
25
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
26
|
+
else
|
27
|
+
end
|
28
|
+
else
|
29
|
+
end
|
30
|
+
end
|
data/test/test_all.rb
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require "#{File.dirname(__FILE__)}/../lib/oz_holidays"
|
3
|
+
require 'date'
|
4
|
+
|
5
|
+
|
6
|
+
class TestOzHolidays < Test::Unit::TestCase
|
7
|
+
def test_new_years_day
|
8
|
+
assert_match /New Year/, OzHolidays.national[find_nyd_hol]
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_anzac_day
|
12
|
+
assert_not_nil OzHolidays['NSW']["#{Date.today.year}-04-25"]
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
def find_nyd_hol
|
17
|
+
nyd = Date.parse("#{Date.today.year}-01-01")
|
18
|
+
nyd += 1 while(nyd.wday < 1 || nyd.wday > 5)
|
19
|
+
nyd.to_s
|
20
|
+
end
|
21
|
+
end
|
metadata
ADDED
@@ -0,0 +1,74 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: oz_holidays
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: "1.0"
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Andrew Snow
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
|
13
|
+
date: 2011-04-06 00:00:00 +10:00
|
14
|
+
default_executable:
|
15
|
+
dependencies: []
|
16
|
+
|
17
|
+
description: Australian Public Holiday database in Ruby & Javascript
|
18
|
+
email: andrew@modulus.org
|
19
|
+
executables: []
|
20
|
+
|
21
|
+
extensions: []
|
22
|
+
|
23
|
+
extra_rdoc_files:
|
24
|
+
- CHANGELOG
|
25
|
+
- README
|
26
|
+
- lib/oz_holidays.rb
|
27
|
+
files:
|
28
|
+
- CHANGELOG
|
29
|
+
- Manifest
|
30
|
+
- README
|
31
|
+
- Rakefile
|
32
|
+
- gen/output.rb
|
33
|
+
- gen/parse.rb
|
34
|
+
- gen/scrape.txt
|
35
|
+
- gen/to_json.rb
|
36
|
+
- javascript/oz_holidays.js
|
37
|
+
- lib/oz_holidays.rb
|
38
|
+
- test/test_all.rb
|
39
|
+
- oz_holidays.gemspec
|
40
|
+
has_rdoc: true
|
41
|
+
homepage: ""
|
42
|
+
licenses: []
|
43
|
+
|
44
|
+
post_install_message:
|
45
|
+
rdoc_options:
|
46
|
+
- --line-numbers
|
47
|
+
- --inline-source
|
48
|
+
- --title
|
49
|
+
- Oz_holidays
|
50
|
+
- --main
|
51
|
+
- README
|
52
|
+
require_paths:
|
53
|
+
- lib
|
54
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
55
|
+
none: false
|
56
|
+
requirements:
|
57
|
+
- - ">="
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: "0"
|
60
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: "1.2"
|
66
|
+
requirements: []
|
67
|
+
|
68
|
+
rubyforge_project: oz_holidays
|
69
|
+
rubygems_version: 1.6.2
|
70
|
+
signing_key:
|
71
|
+
specification_version: 3
|
72
|
+
summary: Australian Public Holiday database in Ruby & Javascript
|
73
|
+
test_files:
|
74
|
+
- test/test_all.rb
|