oz_holidays 1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|