sportdb 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +8 -0
- data/db/cl/2011_12/cl.rb +86 -0
- data/db/cl/2011_12/el.rb +64 -0
- data/db/cl/2012_13/cl.rb +322 -0
- data/db/cl/teams.rb +66 -0
- data/db/euro/2012.rb +165 -0
- data/db/euro/teams.rb +30 -0
- data/db/world/quali_2012_13.rb +102 -0
- data/lib/sportdb.rb +9 -0
- data/lib/sportdb/cli/opts.rb +11 -0
- data/lib/sportdb/cli/runner.rb +29 -9
- data/lib/sportdb/loader.rb +73 -0
- data/lib/sportdb/version.rb +1 -1
- metadata +11 -3
data/Manifest.txt
CHANGED
@@ -3,9 +3,17 @@ Manifest.txt
|
|
3
3
|
README.markdown
|
4
4
|
Rakefile
|
5
5
|
bin/sportdb
|
6
|
+
db/cl/2011_12/cl.rb
|
7
|
+
db/cl/2011_12/el.rb
|
8
|
+
db/cl/2012_13/cl.rb
|
9
|
+
db/cl/teams.rb
|
10
|
+
db/euro/2012.rb
|
11
|
+
db/euro/teams.rb
|
12
|
+
db/world/quali_2012_13.rb
|
6
13
|
lib/sportdb.rb
|
7
14
|
lib/sportdb/cli/opts.rb
|
8
15
|
lib/sportdb/cli/runner.rb
|
16
|
+
lib/sportdb/loader.rb
|
9
17
|
lib/sportdb/models.rb
|
10
18
|
lib/sportdb/schema.rb
|
11
19
|
lib/sportdb/utils.rb
|
data/db/cl/2011_12/cl.rb
ADDED
@@ -0,0 +1,86 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
4
|
+
|
5
|
+
#################################
|
6
|
+
## Champions League 2011/12
|
7
|
+
|
8
|
+
## note :team3 => false CL has no 3rd place (only final game)
|
9
|
+
cl = Event.create!( :key => 'cl',
|
10
|
+
:title => 'Champions League 2011/12',
|
11
|
+
:start_at => Time.cet( '2011-10-10 17:00' ) )
|
12
|
+
|
13
|
+
inter = Team.find_by_key!( 'inter' )
|
14
|
+
marseille = Team.find_by_key!( 'marseille' )
|
15
|
+
bayern = Team.find_by_key!( 'bayern' )
|
16
|
+
basel = Team.find_by_key!( 'basel' )
|
17
|
+
|
18
|
+
chelsea = Team.find_by_key!( 'chelsea' )
|
19
|
+
napoli = Team.find_by_key!( 'napoli' )
|
20
|
+
madrid = Team.find_by_key!( 'madrid' )
|
21
|
+
moskva = Team.find_by_key!( 'moskva' )
|
22
|
+
|
23
|
+
milan = Team.find_by_key!( 'milan' )
|
24
|
+
benfica = Team.find_by_key!( 'benfica' )
|
25
|
+
barcelona = Team.find_by_key!( 'barcelona' )
|
26
|
+
apoel = Team.find_by_key!( 'apoel' )
|
27
|
+
|
28
|
+
cl.teams << milan
|
29
|
+
cl.teams << benfica
|
30
|
+
cl.teams << barcelona
|
31
|
+
cl.teams << apoel
|
32
|
+
|
33
|
+
cl.teams << chelsea
|
34
|
+
cl.teams << madrid
|
35
|
+
cl.teams << marseille
|
36
|
+
cl.teams << bayern
|
37
|
+
|
38
|
+
|
39
|
+
cl16 = Round.create!( :event => cl, :pos => 1, :title => 'Achtelfinale' )
|
40
|
+
cl16_2 = Round.create!( :event => cl, :pos => 2, :title => 'Achtelfinale Rückspiele' )
|
41
|
+
cl8 = Round.create!( :event => cl, :pos => 3, :title => 'Viertelfinale', :title2 => '27.+28. März 2012' )
|
42
|
+
cl8_2 = Round.create!( :event => cl, :pos => 4, :title => 'Viertelfinale Rückspiele', :title2 => '3.+4. April 2012' )
|
43
|
+
cl4 = Round.create!( :event => cl, :pos => 5, :title => 'Halbfinale', :title2 => '17.+18. April 2012' )
|
44
|
+
cl4_2 = Round.create!( :event => cl, :pos => 6, :title => 'Halbfinale Rückspiele', :title2 => '24.+25. April 2012' )
|
45
|
+
cl1 = Round.create!( :event => cl, :pos => 7, :title => 'Finale', :title2 => '19. Mai 2012' )
|
46
|
+
|
47
|
+
|
48
|
+
games_cl16 = [
|
49
|
+
[[ 1, napoli, [3, 1], chelsea, Time.cet('2012-02-21 20:45') ],
|
50
|
+
[ 3, chelsea, [3, 1, 4, 1], napoli, Time.cet('2012-03-14 20:45') ]],
|
51
|
+
[[ 2, moskva, [1, 1], madrid, Time.cet('2012-02-21 20:45') ],
|
52
|
+
[ 4, madrid, [4, 1], moskva, Time.cet('2012-03-14 20:45') ]],
|
53
|
+
[[ 3, marseille, [1, 0], inter, Time.cet('2012-02-22 20:45') ],
|
54
|
+
[ 1, inter, [2, 1], marseille, Time.cet('2012-03-13 20:45') ]],
|
55
|
+
[[ 4, basel, [1, 0], bayern, Time.cet('2012-02-22 20:45') ],
|
56
|
+
[ 2, bayern, [7, 0], basel, Time.cet('2012-03-13 20:45') ]]
|
57
|
+
]
|
58
|
+
|
59
|
+
games_cl8 = [
|
60
|
+
[[ 1, apoel, [0, 3], madrid, Time.cet('2012-03-27 20:45') ],
|
61
|
+
[ 4, madrid, [5, 2], apoel, Time.cet('2012-04-04 20:45') ]],
|
62
|
+
[[ 2, benfica, [0, 1], chelsea, Time.cet('2012-03-27 20:45') ],
|
63
|
+
[ 3, chelsea, [2, 1], benfica, Time.cet('2012-04-04 20:45') ]],
|
64
|
+
[[ 3, marseille, [0, 2], bayern, Time.cet('2012-03-28 20:45') ],
|
65
|
+
[ 2, bayern, [2, 0], marseille, Time.cet('2012-04-03 20:45') ]],
|
66
|
+
[[ 4, milan, [0, 0], barcelona, Time.cet('2012-03-28 20:45') ],
|
67
|
+
[ 1, barcelona, [3, 1], milan, Time.cet('2012-04-03 20:45') ]]
|
68
|
+
]
|
69
|
+
|
70
|
+
games_cl4 = [
|
71
|
+
[[ 1, bayern, [2, 1], madrid, Time.cet('2012-04-17 20:45') ],
|
72
|
+
[ 2, madrid, [2, 1, 2, 1, 3, 4], bayern, Time.cet('2012-04-25 20:45') ]],
|
73
|
+
[[ 2, chelsea, [1, 0], barcelona, Time.cet('2012-04-18 20:45') ],
|
74
|
+
[ 1, barcelona , [2, 2], chelsea, Time.cet('2012-04-24 20:45') ]]
|
75
|
+
]
|
76
|
+
|
77
|
+
games_cl1 = [
|
78
|
+
[ 1, bayern, [1,1,1,1,3,4], chelsea, Time.cet('2012-05-19 20:45') ]]
|
79
|
+
|
80
|
+
|
81
|
+
Game.create_knockout_pairs_from_ary!( games_cl16, cl16, cl16_2 )
|
82
|
+
Game.create_knockout_pairs_from_ary!( games_cl8, cl8, cl8_2 )
|
83
|
+
Game.create_knockout_pairs_from_ary!( games_cl4, cl4, cl4_2 )
|
84
|
+
Game.create_knockouts_from_ary!( games_cl1, cl1 )
|
85
|
+
|
86
|
+
Prop.create!( :key => 'db.cl.2011/12.version', :value => '1' )
|
data/db/cl/2011_12/el.rb
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
4
|
+
|
5
|
+
#################################
|
6
|
+
## Europa League 2012
|
7
|
+
|
8
|
+
el = Event.create!( :key => 'el',
|
9
|
+
:title => 'Europa League 2011/12',
|
10
|
+
:start_at => Time.cet( '2011-10-10 17:00' ))
|
11
|
+
|
12
|
+
az = Team.find_by_key!( 'az' )
|
13
|
+
valencia = Team.find_by_key!( 'valencia' )
|
14
|
+
schalke = Team.find_by_key!( 'schalke' )
|
15
|
+
athletic = Team.find_by_key!( 'athletic' )
|
16
|
+
sporting = Team.find_by_key!( 'sporting' )
|
17
|
+
metalist = Team.find_by_key!( 'metalist' )
|
18
|
+
atletico = Team.find_by_key!( 'atletico' )
|
19
|
+
hannover = Team.find_by_key!( 'hannover' )
|
20
|
+
|
21
|
+
el.teams << az
|
22
|
+
el.teams << valencia
|
23
|
+
el.teams << schalke
|
24
|
+
el.teams << athletic
|
25
|
+
el.teams << sporting
|
26
|
+
el.teams << metalist
|
27
|
+
el.teams << atletico
|
28
|
+
el.teams << hannover
|
29
|
+
|
30
|
+
el8 = Round.create!( :event => el, :pos => 1, :title => 'Viertelfinale', :title2 => '29. März 2012' )
|
31
|
+
el8_2 = Round.create!( :event => el, :pos => 2, :title => 'Viertelfinale Rückspiele', :title2 => '5. April 2012' )
|
32
|
+
el4 = Round.create!( :event => el, :pos => 3, :title => 'Halbfinale', :title2 => '19. April 2012' )
|
33
|
+
el4_2 = Round.create!( :event => el, :pos => 4, :title => 'Halbfinale Rückspiele', :title2 => '26. April 2012' )
|
34
|
+
el1 = Round.create!( :event => el, :pos => 5, :title => 'Finale', :title2 => '9. Mai 2012' )
|
35
|
+
|
36
|
+
|
37
|
+
games_el8 = [
|
38
|
+
[[ 1, az, [2, 1], valencia, Time.cet('2012-03-29 21:05') ],
|
39
|
+
[ 1, valencia, [4, 0], az, Time.cet('2012-04-05 21:05') ]],
|
40
|
+
[[ 2, schalke, [2, 4], athletic, Time.cet('2012-03-29 21:05') ],
|
41
|
+
[ 2, athletic, [2, 2], schalke, Time.cet('2012-04-05 21:05') ]],
|
42
|
+
[[ 3, sporting, [2, 1], metalist, Time.cet('2012-03-29 21:05') ],
|
43
|
+
[ 3, metalist, [1, 1], sporting, Time.cet('2012-04-05 21:05') ]],
|
44
|
+
[[ 4, atletico, [2, 1], hannover, Time.cet('2012-03-29 21:05') ],
|
45
|
+
[ 4, hannover, [1, 2], atletico, Time.cet('2012-04-05 21:05') ]]
|
46
|
+
]
|
47
|
+
|
48
|
+
games_el4 = [
|
49
|
+
[[ 1, atletico, [4, 2], valencia, Time.cet('2012-04-19 21:05') ],
|
50
|
+
[ 1, valencia, [0, 1], atletico, Time.cet('2012-04-26 21:05') ]],
|
51
|
+
[[ 2, sporting, [2, 1], athletic, Time.cet('2012-04-19 21:05') ],
|
52
|
+
[ 2, athletic, [3, 1], sporting, Time.cet('2012-04-26 21:05') ]]
|
53
|
+
]
|
54
|
+
|
55
|
+
games_el1 = [
|
56
|
+
[ 1, atletico, [3, 0], athletic, Time.cet('2012-05-09 20:45') ]]
|
57
|
+
|
58
|
+
|
59
|
+
Game.create_knockout_pairs_from_ary!( games_el8, el8, el8_2 )
|
60
|
+
Game.create_knockout_pairs_from_ary!( games_el4, el4, el4_2 )
|
61
|
+
Game.create_knockouts_from_ary!( games_el1, el1 )
|
62
|
+
|
63
|
+
|
64
|
+
Prop.create!( :key => 'db.el.2011/12.version', :value => '1' )
|
data/db/cl/2012_13/cl.rb
ADDED
@@ -0,0 +1,322 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
4
|
+
|
5
|
+
#################################
|
6
|
+
## Champions League 2012/13
|
7
|
+
|
8
|
+
cl = Event.create!( :key => 'cl.2012/13',
|
9
|
+
:title => 'Champions League 2012/13',
|
10
|
+
:start_at => Time.cet( '2012-09-18 18:30' ) )
|
11
|
+
|
12
|
+
porto = Team.find_by_key!( 'porto' )
|
13
|
+
kiew = Team.find_by_key!( 'kiew' )
|
14
|
+
paris = Team.find_by_key!( 'paris' )
|
15
|
+
zagreb = Team.find_by_key!( 'zagreb' )
|
16
|
+
|
17
|
+
arsenal = Team.find_by_key!( 'arsenal' )
|
18
|
+
schalke = Team.find_by_key!( 'schalke' )
|
19
|
+
olympiacos = Team.find_by_key!( 'olympiacos' )
|
20
|
+
montpellier = Team.find_by_key!( 'montpellier' )
|
21
|
+
|
22
|
+
milan = Team.find_by_key!( 'milan' )
|
23
|
+
zenit = Team.find_by_key!( 'zenit' )
|
24
|
+
anderlecht = Team.find_by_key!( 'anderlecht' )
|
25
|
+
malaga = Team.find_by_key!( 'malaga' )
|
26
|
+
|
27
|
+
madrid = Team.find_by_key!( 'madrid' )
|
28
|
+
mancity = Team.find_by_key!( 'mancity' )
|
29
|
+
ajax = Team.find_by_key!( 'ajax' )
|
30
|
+
dortmund = Team.find_by_key!( 'dortmund' )
|
31
|
+
|
32
|
+
chelsea = Team.find_by_key!( 'chelsea' )
|
33
|
+
donezk = Team.find_by_key!( 'donezk' )
|
34
|
+
juventus = Team.find_by_key!( 'juventus' )
|
35
|
+
nordsjalland = Team.find_by_key!( 'nordsjalland' )
|
36
|
+
|
37
|
+
bayern = Team.find_by_key!( 'bayern' )
|
38
|
+
valencia = Team.find_by_key!( 'valencia' )
|
39
|
+
lille = Team.find_by_key!( 'lille' )
|
40
|
+
borissow = Team.find_by_key!( 'borissow' )
|
41
|
+
|
42
|
+
barcelona = Team.find_by_key!( 'barcelona' )
|
43
|
+
benfica = Team.find_by_key!( 'benfica' )
|
44
|
+
spartak = Team.find_by_key!( 'spartak' )
|
45
|
+
celtic = Team.find_by_key!( 'celtic' )
|
46
|
+
|
47
|
+
manunited = Team.find_by_key!( 'manunited' )
|
48
|
+
braga = Team.find_by_key!( 'braga' )
|
49
|
+
galatasaray = Team.find_by_key!( 'galatasaray' )
|
50
|
+
cluj = Team.find_by_key!( 'cluj' )
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
cl.teams << porto
|
55
|
+
cl.teams << kiew
|
56
|
+
cl.teams << paris
|
57
|
+
cl.teams << zagreb
|
58
|
+
|
59
|
+
cl.teams << arsenal
|
60
|
+
cl.teams << schalke
|
61
|
+
cl.teams << olympiacos
|
62
|
+
cl.teams << montpellier
|
63
|
+
|
64
|
+
cl.teams << milan
|
65
|
+
cl.teams << zenit
|
66
|
+
cl.teams << anderlecht
|
67
|
+
cl.teams << malaga
|
68
|
+
|
69
|
+
cl.teams << madrid
|
70
|
+
cl.teams << mancity
|
71
|
+
cl.teams << ajax
|
72
|
+
cl.teams << dortmund
|
73
|
+
|
74
|
+
cl.teams << chelsea
|
75
|
+
cl.teams << donezk
|
76
|
+
cl.teams << juventus
|
77
|
+
cl.teams << nordsjalland
|
78
|
+
|
79
|
+
cl.teams << bayern
|
80
|
+
cl.teams << valencia
|
81
|
+
cl.teams << lille
|
82
|
+
cl.teams << borissow
|
83
|
+
|
84
|
+
cl.teams << barcelona
|
85
|
+
cl.teams << benfica
|
86
|
+
cl.teams << spartak
|
87
|
+
cl.teams << celtic
|
88
|
+
|
89
|
+
cl.teams << manunited
|
90
|
+
cl.teams << braga
|
91
|
+
cl.teams << galatasaray
|
92
|
+
cl.teams << cluj
|
93
|
+
|
94
|
+
|
95
|
+
cla = Group.create!( :event => cl, :pos => 1, :title => 'Gruppe A' )
|
96
|
+
clb = Group.create!( :event => cl, :pos => 2, :title => 'Gruppe B' )
|
97
|
+
clc = Group.create!( :event => cl, :pos => 3, :title => 'Gruppe C' )
|
98
|
+
cld = Group.create!( :event => cl, :pos => 4, :title => 'Gruppe D' )
|
99
|
+
cle = Group.create!( :event => cl, :pos => 5, :title => 'Gruppe E' )
|
100
|
+
clf = Group.create!( :event => cl, :pos => 6, :title => 'Gruppe F' )
|
101
|
+
clg = Group.create!( :event => cl, :pos => 7, :title => 'Gruppe G' )
|
102
|
+
clh = Group.create!( :event => cl, :pos => 8, :title => 'Gruppe H' )
|
103
|
+
|
104
|
+
#################################
|
105
|
+
# Gruppe A
|
106
|
+
|
107
|
+
cla.teams << porto
|
108
|
+
cla.teams << kiew
|
109
|
+
cla.teams << paris
|
110
|
+
cla.teams << zagreb
|
111
|
+
|
112
|
+
|
113
|
+
#################################
|
114
|
+
# Gruppe B
|
115
|
+
|
116
|
+
clb.teams << arsenal
|
117
|
+
clb.teams << schalke
|
118
|
+
clb.teams << olympiacos
|
119
|
+
clb.teams << montpellier
|
120
|
+
|
121
|
+
|
122
|
+
#################################
|
123
|
+
# Gruppe C
|
124
|
+
|
125
|
+
clc.teams << milan
|
126
|
+
clc.teams << zenit
|
127
|
+
clc.teams << anderlecht
|
128
|
+
clc.teams << malaga
|
129
|
+
|
130
|
+
#################################
|
131
|
+
# Gruppe D
|
132
|
+
|
133
|
+
cld.teams << madrid
|
134
|
+
cld.teams << mancity
|
135
|
+
cld.teams << ajax
|
136
|
+
cld.teams << dortmund
|
137
|
+
|
138
|
+
|
139
|
+
#################################
|
140
|
+
# Gruppe E
|
141
|
+
|
142
|
+
cle.teams << chelsea
|
143
|
+
cle.teams << donezk
|
144
|
+
cle.teams << juventus
|
145
|
+
cle.teams << nordsjalland
|
146
|
+
|
147
|
+
|
148
|
+
#################################
|
149
|
+
# Gruppe F
|
150
|
+
|
151
|
+
clf.teams << bayern
|
152
|
+
clf.teams << valencia
|
153
|
+
clf.teams << lille
|
154
|
+
clf.teams << borissow
|
155
|
+
|
156
|
+
|
157
|
+
#################################
|
158
|
+
# Gruppe G
|
159
|
+
|
160
|
+
clg.teams << barcelona
|
161
|
+
clg.teams << benfica
|
162
|
+
clg.teams << spartak
|
163
|
+
clg.teams << celtic
|
164
|
+
|
165
|
+
|
166
|
+
#################################
|
167
|
+
# Gruppe H
|
168
|
+
|
169
|
+
clh.teams << manunited
|
170
|
+
clh.teams << braga
|
171
|
+
clh.teams << galatasaray
|
172
|
+
clh.teams << cluj
|
173
|
+
|
174
|
+
|
175
|
+
clr1 = Round.create!( :event => cl, :pos => 1, :title => 'Spieltag 1', :title2 => 'Di./Mi., 18.+19. Sep 2012' )
|
176
|
+
clr2 = Round.create!( :event => cl, :pos => 2, :title => 'Spieltag 2', :title2 => 'Di./Mi., 2.+3. Okt 2012' )
|
177
|
+
clr3 = Round.create!( :event => cl, :pos => 3, :title => 'Spieltag 3', :title2 => 'Di./Mi., 23.+24. Okt 2012' )
|
178
|
+
clr4 = Round.create!( :event => cl, :pos => 4, :title => 'Spieltag 4', :title2 => 'Di./Mi., 6.+7. Nov 2012' )
|
179
|
+
clr5 = Round.create!( :event => cl, :pos => 5, :title => 'Spieltag 5', :title2 => 'Di./Mi., 20.+21. Nov 2012' )
|
180
|
+
clr6 = Round.create!( :event => cl, :pos => 6, :title => 'Spieltag 6', :title2 => 'Di./Mi., 4.+5. Dez 2012' )
|
181
|
+
|
182
|
+
cl16 = Round.create!( :event => cl, :pos => 7, :title => 'Achtelfinale', :title2 => 'Di./Mi., 12.+13./19.+20. Feb 2013' )
|
183
|
+
cl16_2 = Round.create!( :event => cl, :pos => 8, :title => 'Achtelfinale Rückspiele', :title2 => 'Di./Mi., 5.+6./12.+13. Mär 2013' )
|
184
|
+
cl8 = Round.create!( :event => cl, :pos => 9, :title => 'Viertelfinale', :title2 => 'Di./Mi., 2.+3. Apr 2013' )
|
185
|
+
cl8_2 = Round.create!( :event => cl, :pos => 10, :title => 'Viertelfinale Rückspiele', :title2 => 'Di./Mi., 9.+10. Apr 2013' )
|
186
|
+
cl4 = Round.create!( :event => cl, :pos => 11, :title => 'Halbfinale', :title2 => 'Di./Mi., 23.+24. Apr 2013' )
|
187
|
+
cl4_2 = Round.create!( :event => cl, :pos => 12, :title => 'Halbfinale Rückspiele', :title2 => 'Di./Mi., 30. Apr/1. Mai 2013' )
|
188
|
+
cl1 = Round.create!( :event => cl, :pos => 13, :title => 'Finale', :title2 => 'Sa. 25. Mai 2013' )
|
189
|
+
|
190
|
+
|
191
|
+
games_cla = [
|
192
|
+
[[ 1, zagreb, [0,2], porto, Time.cet('2012-09-18 20:45'), clr1 ],
|
193
|
+
[ 2, porto, [], zagreb, Time.cet('2012-11-21 20:45'), clr5 ]],
|
194
|
+
[[ 2, paris, [4,1], kiew, Time.cet('2012-09-18 20:45'), clr1 ],
|
195
|
+
[ 1, kiew, [], paris, Time.cet('2012-11-21 20:45'), clr5 ]],
|
196
|
+
[[ 1, kiew, [2,0], zagreb, Time.cet('2012-10-03 20:45'), clr2 ],
|
197
|
+
[ 2, zagreb, [], kiew, Time.cet('2012-12-04 20:45'), clr6 ]],
|
198
|
+
[[ 2, porto, [1,0], paris, Time.cet('2012-10-03 20:45'), clr2 ],
|
199
|
+
[ 1, paris, [], porto, Time.cet('2012-12-04 20:45'), clr6 ]],
|
200
|
+
[[ 1, porto, [], kiew, Time.cet('2012-10-24 20:45'), clr3 ],
|
201
|
+
[ 1, kiew, [], porto, Time.cet('2012-11-06 20:45'), clr4 ]],
|
202
|
+
[[ 2, zagreb, [], paris, Time.cet('2012-10-24 20:45'), clr3 ],
|
203
|
+
[ 2, paris, [], zagreb, Time.cet('2012-11-06 20:45'), clr4 ]]
|
204
|
+
]
|
205
|
+
|
206
|
+
games_clb = [
|
207
|
+
[[ 3, montpellier, [1,2], arsenal, Time.cet('2012-09-18 20:45'), clr1 ],
|
208
|
+
[ 4, arsenal, [], montpellier, Time.cet('2012-11-21 20:45'), clr5 ]],
|
209
|
+
[[ 4, olympiacos, [1,2], schalke, Time.cet('2012-09-18 20:45'), clr1 ],
|
210
|
+
[ 3, schalke, [], olympiacos, Time.cet('2012-11-21 20:45'), clr5 ]],
|
211
|
+
[[ 3, arsenal, [3,1], olympiacos, Time.cet('2012-10-03 20:45'), clr2 ],
|
212
|
+
[ 3, olympiacos, [], arsenal, Time.cet('2012-12-04 20:45'), clr6 ]],
|
213
|
+
[[ 4, schalke, [2,2], montpellier, Time.cet('2012-10-03 20:45'), clr2 ],
|
214
|
+
[ 4, montpellier, [], schalke, Time.cet('2012-12-04 20:45'), clr6 ]],
|
215
|
+
[[ 3, arsenal, [], schalke, Time.cet('2012-10-24 20:45'), clr3 ],
|
216
|
+
[ 3, schalke, [], arsenal, Time.cet('2012-11-06 20:45'), clr4 ]],
|
217
|
+
[[ 4, montpellier, [], olympiacos, Time.cet('2012-10-24 20:45'), clr3 ],
|
218
|
+
[ 4, olympiacos, [], montpellier, Time.cet('2012-11-06 20:45'), clr4 ]]
|
219
|
+
]
|
220
|
+
|
221
|
+
games_clc = [
|
222
|
+
[[ 5, malaga, [3,0], zenit, Time.cet('2012-09-18 20:45'), clr1 ],
|
223
|
+
[ 5, zenit, [], malaga, Time.cet('2012-11-21 18:00'), clr5 ]],
|
224
|
+
[[ 6, milan, [0,0], anderlecht, Time.cet('2012-09-18 20:45'), clr1 ],
|
225
|
+
[ 6, anderlecht, [], milan, Time.cet('2012-11-21 20:45'), clr5 ]],
|
226
|
+
[[ 5, zenit, [2,3], milan, Time.cet('2012-10-03 18:00'), clr2 ],
|
227
|
+
[ 5, milan, [], zenit, Time.cet('2012-12-04 20:45'), clr6 ]],
|
228
|
+
[[ 6, anderlecht, [0,3], malaga, Time.cet('2012-10-03 20:45'), clr2 ],
|
229
|
+
[ 6, malaga, [], anderlecht, Time.cet('2012-12-04 20:45'), clr6 ]],
|
230
|
+
[[ 5, zenit, [], anderlecht, Time.cet('2012-10-24 18:00'), clr3 ],
|
231
|
+
[ 5, anderlecht, [], zenit, Time.cet('2012-11-06 20:45'), clr4 ]],
|
232
|
+
[[ 6, malaga, [], milan, Time.cet('2012-10-24 20:45'), clr3 ],
|
233
|
+
[ 6, milan, [], malaga, Time.cet('2012-11-06 20:45'), clr4 ]]
|
234
|
+
]
|
235
|
+
|
236
|
+
games_cld = [
|
237
|
+
[[ 7, madrid, [3,2], mancity, Time.cet('2012-09-18 20:45'), clr1 ],
|
238
|
+
[ 7, mancity, [], madrid, Time.cet('2012-11-21 20:45'), clr5 ]],
|
239
|
+
[[ 8, dortmund, [1,0], ajax, Time.cet('2012-09-18 20:45'), clr1 ],
|
240
|
+
[ 8, ajax, [], dortmund, Time.cet('2012-11-21 20:45'), clr5 ]],
|
241
|
+
[[ 7, ajax, [1,4], madrid, Time.cet('2012-10-03 20:45'), clr2 ],
|
242
|
+
[ 8, madrid, [], ajax, Time.cet('2012-12-04 20:45'), clr6 ]],
|
243
|
+
[[ 8, mancity, [1,1], dortmund, Time.cet('2012-10-03 20:45'), clr2 ],
|
244
|
+
[ 7, dortmund, [], mancity, Time.cet('2012-12-04 20:45'), clr6 ]],
|
245
|
+
[[ 7, dortmund, [], madrid, Time.cet('2012-10-24 20:45'), clr3 ],
|
246
|
+
[ 8, madrid, [], dortmund, Time.cet('2012-11-06 20:45'), clr4 ]],
|
247
|
+
[[ 8, ajax, [], mancity, Time.cet('2012-10-24 20:45'), clr3 ],
|
248
|
+
[ 7, mancity, [], ajax, Time.cet('2012-11-06 20:45'), clr4 ]]
|
249
|
+
]
|
250
|
+
|
251
|
+
|
252
|
+
games_cle = [
|
253
|
+
[[ 9, chelsea, [2,2], juventus, Time.cet('2012-09-19 20:45'), clr1 ],
|
254
|
+
[ 9, juventus, [], chelsea, Time.cet('2012-11-20 20:45'), clr5 ]],
|
255
|
+
[[ 10, donezk, [2,0], nordsjalland, Time.cet('2012-09-19 20:45'), clr1 ],
|
256
|
+
[ 10, nordsjalland, [], donezk, Time.cet('2012-11-20 20:45'), clr5 ]],
|
257
|
+
[[ 9, nordsjalland, [0,4], chelsea, Time.cet('2012-10-02 20:45'), clr2 ],
|
258
|
+
[ 9, chelsea, [], nordsjalland, Time.cet('2012-12-05 20:45'), clr6 ]],
|
259
|
+
[[ 10, juventus, [1,1], donezk, Time.cet('2012-10-02 20:45'), clr2 ],
|
260
|
+
[ 10, donezk, [], juventus, Time.cet('2012-12-05 20:45'), clr6 ]],
|
261
|
+
[[ 9, donezk, [], chelsea, Time.cet('2012-10-23 20:45'), clr3 ],
|
262
|
+
[ 9, chelsea, [], donezk, Time.cet('2012-11-07 20:45'), clr4 ]],
|
263
|
+
[[ 10, nordsjalland, [], juventus, Time.cet('2012-10-23 20:45'), clr3 ],
|
264
|
+
[ 10, juventus, [], nordsjalland, Time.cet('2012-11-07 20:45'), clr4 ]]
|
265
|
+
]
|
266
|
+
|
267
|
+
games_clf = [
|
268
|
+
[[ 11, bayern, [2,1], valencia, Time.cet('2012-09-19 20:45'), clr1 ],
|
269
|
+
[ 11, valencia, [], bayern, Time.cet('2012-11-20 20:45'), clr5 ]],
|
270
|
+
[[ 12, lille, [1,3], borissow, Time.cet('2012-09-19 20:45'), clr1 ],
|
271
|
+
[ 12, borissow, [], lille, Time.cet('2012-11-20 20:45'), clr5 ]],
|
272
|
+
[[ 11, borissow, [3,1], bayern, Time.cet('2012-10-02 20:45'), clr2 ],
|
273
|
+
[ 12, bayern, [], borissow, Time.cet('2012-12-05 20:45'), clr6 ]],
|
274
|
+
[[ 12, valencia, [2,0], lille, Time.cet('2012-10-02 20:45'), clr2 ],
|
275
|
+
[ 11, lille, [], valencia, Time.cet('2012-12-05 20:45'), clr6 ]],
|
276
|
+
[[ 11, lille, [], bayern, Time.cet('2012-10-23 20:45'), clr3 ],
|
277
|
+
[ 11, bayern, [], lille, Time.cet('2012-11-07 20:45'), clr4 ]],
|
278
|
+
[[ 12, borissow, [], valencia, Time.cet('2012-10-23 20:45'), clr3 ],
|
279
|
+
[ 12, valencia, [], borissow, Time.cet('2012-11-07 20:45'), clr4 ]]
|
280
|
+
]
|
281
|
+
|
282
|
+
games_clg = [
|
283
|
+
[[ 13, celtic, [0,0], benfica, Time.cet('2012-09-19 20:45'), clr1 ],
|
284
|
+
[ 14, benfica, [], celtic, Time.cet('2012-11-20 20:45'), clr5 ]],
|
285
|
+
[[ 14, barcelona, [3,2], spartak, Time.cet('2012-09-19 20:45'), clr1 ],
|
286
|
+
[ 13, spartak, [], barcelona, Time.cet('2012-11-20 18:00'), clr5 ]],
|
287
|
+
[[ 13, spartak, [2,3], celtic, Time.cet('2012-10-02 18:00'), clr2 ],
|
288
|
+
[ 14, celtic, [], spartak, Time.cet('2012-12-05 20:45'), clr6 ]],
|
289
|
+
[[ 14, benfica, [0,2], barcelona, Time.cet('2012-10-02 20:45'), clr2 ],
|
290
|
+
[ 13, barcelona, [], benfica, Time.cet('2012-12-05 20:45'), clr6 ]],
|
291
|
+
[[ 13, spartak, [], benfica, Time.cet('2012-10-23 18:00'), clr3 ],
|
292
|
+
[ 14, benfica, [], spartak, Time.cet('2012-11-07 20:45'), clr4 ]],
|
293
|
+
[[ 14, barcelona, [], celtic, Time.cet('2012-10-23 20:45'), clr3 ],
|
294
|
+
[ 13, celtic, [], barcelona, Time.cet('2012-11-07 20:45'), clr4 ]]
|
295
|
+
]
|
296
|
+
|
297
|
+
games_clh = [
|
298
|
+
[[ 15, manunited, [1,0], galatasaray, Time.cet('2012-09-19 20:45'), clr1 ],
|
299
|
+
[ 15, galatasaray, [], manunited, Time.cet('2012-11-20 20:45'), clr5 ]],
|
300
|
+
[[ 16, braga, [0,2], cluj, Time.cet('2012-09-19 20:45'), clr1 ],
|
301
|
+
[ 16, cluj, [], braga, Time.cet('2012-11-20 20:45'), clr5 ]],
|
302
|
+
[[ 15, cluj, [1,2], manunited, Time.cet('2012-10-02 20:45'), clr2 ],
|
303
|
+
[ 16, manunited, [], cluj, Time.cet('2012-12-05 20:45'), clr6 ]],
|
304
|
+
[[ 16, galatasaray, [0,2], braga, Time.cet('2012-10-02 20:45'), clr2 ],
|
305
|
+
[ 15, braga, [], galatasaray, Time.cet('2012-12-05 20:45'), clr6 ]],
|
306
|
+
[[ 15, manunited, [], braga, Time.cet('2012-10-23 20:45'), clr3 ],
|
307
|
+
[ 15, braga, [], manunited, Time.cet('2012-11-07 20:45'), clr4 ]],
|
308
|
+
[[ 16, galatasaray, [], cluj, Time.cet('2012-10-23 20:45'), clr3 ],
|
309
|
+
[ 16, cluj, [], galatasaray, Time.cet('2012-11-07 20:45'), clr4 ]]
|
310
|
+
]
|
311
|
+
|
312
|
+
Game.create_pairs_from_ary_for_group!( games_cla, cla )
|
313
|
+
Game.create_pairs_from_ary_for_group!( games_clb, clb )
|
314
|
+
Game.create_pairs_from_ary_for_group!( games_clc, clc )
|
315
|
+
Game.create_pairs_from_ary_for_group!( games_cld, cld )
|
316
|
+
Game.create_pairs_from_ary_for_group!( games_cle, cle )
|
317
|
+
Game.create_pairs_from_ary_for_group!( games_clf, clf )
|
318
|
+
Game.create_pairs_from_ary_for_group!( games_clg, clg )
|
319
|
+
Game.create_pairs_from_ary_for_group!( games_clh, clh )
|
320
|
+
|
321
|
+
|
322
|
+
Prop.create!( :key => 'db.cl.2012/13.version', :value => '1' )
|
data/db/cl/teams.rb
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
teams = [
|
4
|
+
[ 'porto', 'FC Porto' ],
|
5
|
+
[ 'kiew', 'Dynamo Kiew' ],
|
6
|
+
[ 'paris', 'Paris St. Germain' ],
|
7
|
+
[ 'zagreb', 'Dinamo Zagreb' ],
|
8
|
+
|
9
|
+
[ 'arsenal', 'FC Arsenal' ],
|
10
|
+
[ 'schalke', 'FC Schalke 04' ],
|
11
|
+
[ 'olympiacos', 'Olympiakos Piräus' ],
|
12
|
+
[ 'montpellier', 'HSC Montpellier' ],
|
13
|
+
|
14
|
+
[ 'milan', 'AC Mailand' ],
|
15
|
+
[ 'zenit', 'Zenit St. Petersburg' ],
|
16
|
+
[ 'anderlecht', 'RSC Anderlecht' ],
|
17
|
+
[ 'malaga', 'FC Málaga' ],
|
18
|
+
|
19
|
+
[ 'madrid', 'Real Madrid' ],
|
20
|
+
[ 'mancity', 'Manchester City' ],
|
21
|
+
[ 'ajax', 'Ajax Amsterdam' ],
|
22
|
+
[ 'dortmund', 'Borussia Dortmund' ],
|
23
|
+
|
24
|
+
[ 'chelsea', 'FC Chelsea' ],
|
25
|
+
[ 'donezk', 'Schachtjor Donezk' ],
|
26
|
+
[ 'juventus', 'Juventus Turin' ],
|
27
|
+
[ 'nordsjalland', 'FC Nordsjælland' ],
|
28
|
+
|
29
|
+
[ 'bayern', 'Bayern München' ],
|
30
|
+
[ 'valencia', 'FC Valencia' ],
|
31
|
+
[ 'lille', 'OSC Lille' ],
|
32
|
+
[ 'borissow', 'BATE Borissow' ],
|
33
|
+
|
34
|
+
[ 'barcelona', 'FC Barcelona' ],
|
35
|
+
[ 'benfica', 'Benfica Lissabon' ],
|
36
|
+
[ 'spartak', 'Spartak Moskau' ],
|
37
|
+
[ 'celtic', 'Celtic Glasgow' ],
|
38
|
+
|
39
|
+
[ 'manunited', 'Manchester United' ],
|
40
|
+
[ 'braga', 'Sporting Braga' ],
|
41
|
+
[ 'galatasaray', 'Galatasaray' ],
|
42
|
+
[ 'cluj', 'CFR Cluj' ],
|
43
|
+
|
44
|
+
###################
|
45
|
+
# more teams from cl/el 2011-12
|
46
|
+
#
|
47
|
+
[ 'inter', 'FC Internazionale Milano' ],
|
48
|
+
[ 'marseille', 'Olympique Marseille' ],
|
49
|
+
[ 'basel', 'FC Basel 1893' ],
|
50
|
+
[ 'napoli', 'SSC Napoli' ],
|
51
|
+
[ 'moskva', 'PFC CSKA Moskva' ],
|
52
|
+
[ 'apoel', 'APOEL Nikosia' ],
|
53
|
+
|
54
|
+
[ 'az', 'AZ Alkmaar' ],
|
55
|
+
[ 'athletic', 'Athletic Bilbao' ],
|
56
|
+
[ 'sporting', 'Sporting Lisboa' ],
|
57
|
+
[ 'metalist', 'FC Metalist Kharkiv' ],
|
58
|
+
[ 'atletico', 'Atlético Madrid' ],
|
59
|
+
[ 'hannover', 'Hannover 96' ]
|
60
|
+
]
|
61
|
+
|
62
|
+
Team.create_from_ary!( teams )
|
63
|
+
|
64
|
+
|
65
|
+
Prop.create!( :key => 'db.cl.teams.version', :value => '1' )
|
66
|
+
Prop.create!( :key => 'db.el.teams.version', :value => '1' )
|
data/db/euro/2012.rb
ADDED
@@ -0,0 +1,165 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
4
|
+
|
5
|
+
#################################
|
6
|
+
## Euro 2012
|
7
|
+
|
8
|
+
# see http://en.wikipedia.org/wiki/UEFA_Euro_2012
|
9
|
+
# or http://de.wikipedia.org/wiki/Fu%C3%9Fball-Europameisterschaft_2012
|
10
|
+
|
11
|
+
|
12
|
+
euro = Event.create!( :key => 'euro',
|
13
|
+
:title => 'Euro 2012',
|
14
|
+
:start_at => Time.cet( '2012-06-07 17:00' ))
|
15
|
+
|
16
|
+
pol = Team.find_by_key!( 'pol' )
|
17
|
+
gre = Team.find_by_key!( 'gre' )
|
18
|
+
rus = Team.find_by_key!( 'rus' )
|
19
|
+
cze = Team.find_by_key!( 'cze' )
|
20
|
+
|
21
|
+
ned = Team.find_by_key!( 'ned' )
|
22
|
+
den = Team.find_by_key!( 'den' )
|
23
|
+
ger = Team.find_by_key!( 'ger' )
|
24
|
+
por = Team.find_by_key!( 'por' )
|
25
|
+
|
26
|
+
esp = Team.find_by_key!( 'esp' )
|
27
|
+
ita = Team.find_by_key!( 'ita' )
|
28
|
+
irl = Team.find_by_key!( 'irl' )
|
29
|
+
cro = Team.find_by_key!( 'cro' )
|
30
|
+
|
31
|
+
ukr = Team.find_by_key!( 'ukr' )
|
32
|
+
swe = Team.find_by_key!( 'swe' )
|
33
|
+
fra = Team.find_by_key!( 'fra' )
|
34
|
+
eng = Team.find_by_key!( 'eng' )
|
35
|
+
|
36
|
+
|
37
|
+
euro.teams << pol
|
38
|
+
euro.teams << gre
|
39
|
+
euro.teams << rus
|
40
|
+
euro.teams << cze
|
41
|
+
euro.teams << ned
|
42
|
+
euro.teams << den
|
43
|
+
euro.teams << ger
|
44
|
+
euro.teams << por
|
45
|
+
euro.teams << esp
|
46
|
+
euro.teams << ita
|
47
|
+
euro.teams << irl
|
48
|
+
euro.teams << cro
|
49
|
+
euro.teams << ukr
|
50
|
+
euro.teams << swe
|
51
|
+
euro.teams << fra
|
52
|
+
euro.teams << eng
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
euroa = Group.create!( :event => euro, :pos => 1, :title => 'Gruppe A' )
|
57
|
+
eurob = Group.create!( :event => euro, :pos => 2, :title => 'Gruppe B' )
|
58
|
+
euroc = Group.create!( :event => euro, :pos => 3, :title => 'Gruppe C' )
|
59
|
+
eurod = Group.create!( :event => euro, :pos => 4, :title => 'Gruppe D' )
|
60
|
+
|
61
|
+
#################################
|
62
|
+
# Gruppe A
|
63
|
+
|
64
|
+
euroa.teams << pol
|
65
|
+
euroa.teams << gre
|
66
|
+
euroa.teams << rus
|
67
|
+
euroa.teams << cze
|
68
|
+
|
69
|
+
|
70
|
+
#################################
|
71
|
+
# Gruppe B
|
72
|
+
|
73
|
+
eurob.teams << ned
|
74
|
+
eurob.teams << den
|
75
|
+
eurob.teams << ger
|
76
|
+
eurob.teams << por
|
77
|
+
|
78
|
+
|
79
|
+
#################################3
|
80
|
+
# Gruppe C
|
81
|
+
|
82
|
+
euroc.teams << esp
|
83
|
+
euroc.teams << ita
|
84
|
+
euroc.teams << irl
|
85
|
+
euroc.teams << cro
|
86
|
+
|
87
|
+
#################################3
|
88
|
+
# Gruppe D
|
89
|
+
|
90
|
+
eurod.teams << ukr
|
91
|
+
eurod.teams << swe
|
92
|
+
eurod.teams << fra
|
93
|
+
eurod.teams << eng
|
94
|
+
|
95
|
+
|
96
|
+
euro_round1 = Round.create!( :event => euro, :pos => 1, :title => 'Vorrunde 1. Spieltag', :title2 => '8.-11. Juni' )
|
97
|
+
euro_round2 = Round.create!( :event => euro, :pos => 2, :title => 'Vorrunde 2. Spieltag', :title2 => '12.-15. Juni' )
|
98
|
+
euro_round3 = Round.create!( :event => euro, :pos => 3, :title => 'Vorrunde 3. Spieltag', :title2 => '16.-19. Juni' )
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
games_euro_round1 = [
|
103
|
+
[ 1, pol, [1,1], gre, Time.cet('2012-06-08 18:00'), euroa ],
|
104
|
+
[ 2, rus, [4,1], cze, Time.cet('2012-06-08 20:45'), euroa ],
|
105
|
+
[ 3, ned, [0,1], den, Time.cet('2012-06-09 18:00'), eurob ],
|
106
|
+
[ 4, ger, [1,0], por, Time.cet('2012-06-09 20:45'), eurob ],
|
107
|
+
[ 5, esp, [1,1], ita, Time.cet('2012-06-10 18:00'), euroc ],
|
108
|
+
[ 6, irl, [1,3], cro, Time.cet('2012-06-10 20:45'), euroc ],
|
109
|
+
[ 7, fra, [1,1], eng, Time.cet('2012-06-11 18:00'), eurod ],
|
110
|
+
[ 8, ukr, [2,1], swe, Time.cet('2012-06-11 20:45'), eurod ]
|
111
|
+
]
|
112
|
+
|
113
|
+
games_euro_round2 = [
|
114
|
+
[ 9, gre, [1,2], cze, Time.cet('2012-06-12 18:00'), euroa ],
|
115
|
+
[ 10, pol, [1,1], rus, Time.cet('2012-06-12 20:45'), euroa ],
|
116
|
+
[ 11, den, [2,3], por, Time.cet('2012-06-13 18:00'), eurob ],
|
117
|
+
[ 12, ned, [1,2], ger, Time.cet('2012-06-13 20:45'), eurob ],
|
118
|
+
[ 13, ita, [1,1], cro, Time.cet('2012-06-14 18:00'), euroc ],
|
119
|
+
[ 14, esp, [4,0], irl, Time.cet('2012-06-14 20:45'), euroc ],
|
120
|
+
[ 15, swe, [2,3], eng, Time.cet('2012-06-15 20:45'), eurod ],
|
121
|
+
[ 16, ukr, [0,2], fra, Time.cet('2012-06-15 18:00'), eurod ]
|
122
|
+
]
|
123
|
+
|
124
|
+
games_euro_round3 = [
|
125
|
+
[ 17, cze, [1,0], pol, Time.cet('2012-06-16 20:45'), euroa ],
|
126
|
+
[ 18, gre, [1,0], rus, Time.cet('2012-06-16 20:45'), euroa ],
|
127
|
+
[ 19, por, [2,1], ned, Time.cet('2012-06-17 20:45'), eurob ],
|
128
|
+
[ 20, den, [1,2], ger, Time.cet('2012-06-17 20:45'), eurob ],
|
129
|
+
[ 21, cro, [0,1], esp, Time.cet('2012-06-18 20:45'), euroc ],
|
130
|
+
[ 22, ita, [2,0], irl, Time.cet('2012-06-18 20:45'), euroc ],
|
131
|
+
[ 23, eng, [1,0], ukr, Time.cet('2012-06-19 20:45'), eurod ],
|
132
|
+
[ 24, swe, [2,0], fra, Time.cet('2012-06-19 20:45'), eurod ]
|
133
|
+
]
|
134
|
+
|
135
|
+
Game.create_from_ary!( games_euro_round1, euro_round1 )
|
136
|
+
Game.create_from_ary!( games_euro_round2, euro_round2 )
|
137
|
+
Game.create_from_ary!( games_euro_round3, euro_round3 )
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
euro8 = Round.create!( :event => euro, :pos => 4, :title => 'Viertelfinale' )
|
142
|
+
euro4 = Round.create!( :event => euro, :pos => 5, :title => 'Halbfinale' )
|
143
|
+
euro1 = Round.create!( :event => euro, :pos => 6, :title => 'Finale' )
|
144
|
+
|
145
|
+
|
146
|
+
games_euro8 = [
|
147
|
+
[ 25, cze, [0,1], por, Time.cet('2012-06-21 20:45') ],
|
148
|
+
[ 26, ger, [4,2], gre, Time.cet('2012-06-22 20:45') ],
|
149
|
+
[ 27, esp, [2,0], fra, Time.cet('2012-06-23 20:45') ],
|
150
|
+
[ 28, eng, [0,0,0,0,2,4], ita, Time.cet('2012-06-24 20:45') ]]
|
151
|
+
|
152
|
+
games_euro4 = [
|
153
|
+
[ 29, por, [0,0,0,0,2,4], esp, Time.cet('2012-06-27 20:45') ],
|
154
|
+
[ 30, ger, [1,2], ita, Time.cet('2012-06-28 20:45') ]]
|
155
|
+
|
156
|
+
games_euro1 = [
|
157
|
+
[ 31, esp, [4,0], ita, Time.cet('2012-07-01 20:45') ]]
|
158
|
+
|
159
|
+
|
160
|
+
Game.create_knockouts_from_ary!( games_euro8, euro8 )
|
161
|
+
Game.create_knockouts_from_ary!( games_euro4, euro4 )
|
162
|
+
Game.create_knockouts_from_ary!( games_euro1, euro1 )
|
163
|
+
|
164
|
+
|
165
|
+
Prop.create!( :key => 'db.euro.2012.version', :value => '1' )
|
data/db/euro/teams.rb
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
teams = [
|
4
|
+
[ 'pol', 'Polen', 'POL' ],
|
5
|
+
[ 'gre', 'Griechenland', 'GRE' ],
|
6
|
+
[ 'rus', 'Russland', 'RUS' ],
|
7
|
+
[ 'cze', 'Tschechien', 'CZE' ],
|
8
|
+
[ 'ned', 'Niederlande', 'NED' ],
|
9
|
+
[ 'den', 'Dänemark', 'DEN' ],
|
10
|
+
[ 'ger', 'Deutschland', 'GER' ],
|
11
|
+
[ 'por', 'Portugal', 'POR' ],
|
12
|
+
[ 'esp', 'Spanien', 'ESP' ],
|
13
|
+
[ 'ita', 'Italien', 'ITA' ],
|
14
|
+
[ 'irl', 'Irland', 'IRL' ],
|
15
|
+
[ 'cro', 'Kroatien', 'CRO' ],
|
16
|
+
[ 'ukr', 'Ukraine', 'UKR' ],
|
17
|
+
[ 'swe', 'Schweden', 'SWE' ],
|
18
|
+
[ 'fra', 'Frankreich', 'FRA' ],
|
19
|
+
[ 'eng', 'England', 'ENG' ],
|
20
|
+
[ 'fro', 'Färöer', 'FRO' ],
|
21
|
+
[ 'kaz', 'Kasachstan', 'KAZ' ],
|
22
|
+
[ 'aut', 'Österreich', 'AUT' ]
|
23
|
+
]
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
Team.create_from_ary!( teams )
|
28
|
+
|
29
|
+
|
30
|
+
Prop.create!( :key => 'db.euro.teams.version', :value => '1' )
|
@@ -0,0 +1,102 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# note: timezone for games (play_at) is *always* CET (central european time)
|
4
|
+
|
5
|
+
#################################
|
6
|
+
## WM 2014 - Qualification Europe
|
7
|
+
|
8
|
+
|
9
|
+
world = Event.create!( :key => 'wmql',
|
10
|
+
:title => 'World Cup Quali. Europe 2012/13',
|
11
|
+
:start_at => Time.cet( '2012-09-07 00:00' ))
|
12
|
+
|
13
|
+
worldc = Group.create!( :event => world, :pos => 1, :title => 'Gruppe C' )
|
14
|
+
|
15
|
+
|
16
|
+
#################################3
|
17
|
+
# Gruppe C
|
18
|
+
|
19
|
+
# note: for teams see seeds/euro/teams.rb
|
20
|
+
|
21
|
+
ger = Team.find_by_key!( 'ger' )
|
22
|
+
fro = Team.find_by_key!( 'fro' )
|
23
|
+
irl = Team.find_by_key!( 'irl' )
|
24
|
+
kaz = Team.find_by_key!( 'kaz' )
|
25
|
+
aut = Team.find_by_key!( 'aut' )
|
26
|
+
swe = Team.find_by_key!( 'swe' )
|
27
|
+
|
28
|
+
worldc.teams << ger
|
29
|
+
worldc.teams << fro
|
30
|
+
worldc.teams << irl
|
31
|
+
worldc.teams << kaz
|
32
|
+
worldc.teams << aut
|
33
|
+
worldc.teams << swe
|
34
|
+
|
35
|
+
|
36
|
+
world.teams << ger
|
37
|
+
world.teams << fro
|
38
|
+
world.teams << irl
|
39
|
+
world.teams << kaz
|
40
|
+
world.teams << aut
|
41
|
+
world.teams << swe
|
42
|
+
|
43
|
+
|
44
|
+
world1 = Round.create!( :event => world, :pos => 1, :title => 'Quali - 7.+11. Sep 2012' )
|
45
|
+
world2 = Round.create!( :event => world, :pos => 2, :title => 'Quali - 12.+16. Okt 2012' )
|
46
|
+
world3 = Round.create!( :event => world, :pos => 3, :title => 'Quali - 22.+26. Mär 2013' )
|
47
|
+
world4 = Round.create!( :event => world, :pos => 4, :title => 'Quali - 7.+11. Jun 2013' )
|
48
|
+
world5 = Round.create!( :event => world, :pos => 5, :title => 'Quali - 6.+10. Sep 2013' )
|
49
|
+
world6 = Round.create!( :event => world, :pos => 6, :title => 'Quali - 11.+15. Okt 2013' )
|
50
|
+
|
51
|
+
games_world1 = [
|
52
|
+
[ 1, ger, [3,0], fro, Time.cet( '2012-09-07 00:00' ) ],
|
53
|
+
[ 2, kaz, [1,2], irl, Time.cet( '2012-09-07 00:00' ) ],
|
54
|
+
[ 3, aut, [1,2], ger, Time.cet( '2012-09-11 00:00' ) ],
|
55
|
+
[ 4, swe, [2,0], kaz, Time.cet( '2012-09-11 00:00' ) ]]
|
56
|
+
|
57
|
+
games_world2 = [
|
58
|
+
[ 5, irl, [], ger, Time.cet( '2012-10-12 00:00' ) ],
|
59
|
+
[ 6, fro, [], swe, Time.cet( '2012-10-12 00:00' ) ],
|
60
|
+
[ 7, kaz, [], aut, Time.cet( '2012-10-12 00:00' ) ],
|
61
|
+
[ 8, ger, [], swe, Time.cet( '2012-10-16 00:00' ) ],
|
62
|
+
[ 9, fro, [], irl, Time.cet( '2012-10-16 00:00' ) ],
|
63
|
+
[ 10, aut, [], kaz, Time.cet( '2012-10-16 00:00' ) ]]
|
64
|
+
|
65
|
+
games_world3 = [
|
66
|
+
[ 11, kaz, [], ger, Time.cet( '2013-03-22 00:00' ) ],
|
67
|
+
[ 12, aut, [], fro, Time.cet( '2013-03-22 00:00' ) ],
|
68
|
+
[ 13, swe, [], irl, Time.cet( '2013-03-22 00:00' ) ],
|
69
|
+
[ 14, ger, [], kaz, Time.cet( '2013-03-26 00:00' ) ],
|
70
|
+
[ 15, irl, [], aut, Time.cet( '2013-03-26 00:00' ) ]]
|
71
|
+
|
72
|
+
games_world4 = [
|
73
|
+
[ 16, irl, [], fro, Time.cet( '2013-06-07 00:00' ) ],
|
74
|
+
[ 17, aut, [], swe, Time.cet( '2013-06-07 00:00' ) ],
|
75
|
+
[ 18, swe, [], fro, Time.cet( '2013-06-11 00:00' ) ]]
|
76
|
+
|
77
|
+
games_world5 = [
|
78
|
+
[ 19, ger, [], aut, Time.cet( '2013-09-06 00:00' ) ],
|
79
|
+
[ 20, kaz, [], fro, Time.cet( '2013-09-06 00:00' ) ],
|
80
|
+
[ 21, irl, [], swe, Time.cet( '2013-09-06 00:00' ) ],
|
81
|
+
[ 22, fro, [], ger, Time.cet( '2013-09-10 00:00' ) ],
|
82
|
+
[ 23, aut, [], irl, Time.cet( '2013-09-10 00:00' ) ],
|
83
|
+
[ 24, kaz, [], swe, Time.cet( '2013-09-10 00:00' ) ]]
|
84
|
+
|
85
|
+
games_world6 = [
|
86
|
+
[ 25, ger, [], irl, Time.cet( '2013-10-11 00:00' ) ],
|
87
|
+
[ 26, fro, [], kaz, Time.cet( '2013-10-11 00:00' ) ],
|
88
|
+
[ 27, swe, [], aut, Time.cet( '2013-10-11 00:00' ) ],
|
89
|
+
[ 28, swe, [], ger, Time.cet( '2013-10-15 00:00' ) ],
|
90
|
+
[ 29, fro, [], aut, Time.cet( '2013-10-15 00:00' ) ],
|
91
|
+
[ 30, irl, [], kaz, Time.cet( '2013-10-15 00:00' ) ]]
|
92
|
+
|
93
|
+
|
94
|
+
Game.create_from_ary!( games_world1, world1 )
|
95
|
+
Game.create_from_ary!( games_world2, world2 )
|
96
|
+
Game.create_from_ary!( games_world3, world3 )
|
97
|
+
Game.create_from_ary!( games_world4, world4 )
|
98
|
+
Game.create_from_ary!( games_world5, world5 )
|
99
|
+
Game.create_from_ary!( games_world6, world6 )
|
100
|
+
|
101
|
+
|
102
|
+
Prop.create!( :key => 'db.world.quali.2012/13.version', :value => '1' )
|
data/lib/sportdb.rb
CHANGED
@@ -22,6 +22,7 @@ require 'active_record' ## todo: add sqlite3? etc.
|
|
22
22
|
require 'sportdb/schema'
|
23
23
|
require 'sportdb/models'
|
24
24
|
require 'sportdb/utils'
|
25
|
+
require 'sportdb/loader'
|
25
26
|
require 'sportdb/version'
|
26
27
|
require 'sportdb/cli/opts'
|
27
28
|
require 'sportdb/cli/runner'
|
@@ -39,6 +40,14 @@ module SportDB
|
|
39
40
|
def self.main
|
40
41
|
Runner.new.run(ARGV)
|
41
42
|
end
|
43
|
+
|
44
|
+
|
45
|
+
# load built-in (that is, bundled within the gem) named seeds
|
46
|
+
# - pass in an array of seed names e.g. [ 'cl/teams', 'cl/2012_13/cl' ] etc.
|
47
|
+
|
48
|
+
def self.load( args )
|
49
|
+
Loader.new.run( args )
|
50
|
+
end
|
42
51
|
|
43
52
|
end # module SportDB
|
44
53
|
|
data/lib/sportdb/cli/opts.rb
CHANGED
@@ -12,6 +12,17 @@ class Opts
|
|
12
12
|
end
|
13
13
|
|
14
14
|
|
15
|
+
# use loader? (that is, built-in seed data)
|
16
|
+
def load=(boolean)
|
17
|
+
@load = boolean
|
18
|
+
end
|
19
|
+
|
20
|
+
def load?
|
21
|
+
return false if @load.nil? # default create flag is false
|
22
|
+
@load == true
|
23
|
+
end
|
24
|
+
|
25
|
+
|
15
26
|
def output_path=(value)
|
16
27
|
@output_path = value
|
17
28
|
end
|
data/lib/sportdb/cli/runner.rb
CHANGED
@@ -12,6 +12,7 @@ class Runner
|
|
12
12
|
|
13
13
|
attr_reader :logger, :opts
|
14
14
|
|
15
|
+
|
15
16
|
def run( args )
|
16
17
|
opt=OptionParser.new do |cmd|
|
17
18
|
|
@@ -20,6 +21,8 @@ class Runner
|
|
20
21
|
## todo: change to different flag?? use -c/--config ???
|
21
22
|
cmd.on( '-c', '--create', 'Create DB Schema' ) { opts.create = true }
|
22
23
|
|
24
|
+
cmd.on( '--load', 'Use Loader for Builtin Sports Data' ) { opts.load = true }
|
25
|
+
|
23
26
|
cmd.on( '-o', '--output PATH', "Output Path (default is #{opts.output_path})" ) { |path| opts.output_path = path }
|
24
27
|
|
25
28
|
### todo: in future allow multiple search path??
|
@@ -80,8 +83,30 @@ EOS
|
|
80
83
|
CreateDB.up
|
81
84
|
end
|
82
85
|
|
86
|
+
loader = nil
|
87
|
+
if opts.load?
|
88
|
+
loader = Loader.new
|
89
|
+
end
|
90
|
+
|
83
91
|
args.each do |arg|
|
84
92
|
name = arg # File.basename( arg, '.*' )
|
93
|
+
|
94
|
+
if opts.load?
|
95
|
+
loader.load_fixtures( name ) # load from gem (built-in)
|
96
|
+
else
|
97
|
+
load_fixtures( name ) # load from file system
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
dump_stats
|
102
|
+
dump_props
|
103
|
+
|
104
|
+
puts 'Done.'
|
105
|
+
|
106
|
+
end # method run
|
107
|
+
|
108
|
+
|
109
|
+
def load_fixtures( name )
|
85
110
|
path = "#{opts.data_path}/#{name}.rb"
|
86
111
|
|
87
112
|
puts "*** loading data '#{name}' (#{path})..."
|
@@ -100,16 +125,11 @@ EOS
|
|
100
125
|
# require "#{Dir.pwd}/db/#{seed}.rb"
|
101
126
|
|
102
127
|
# Prop.create!( :key => "db.#{name}.version", :value => SportDB::VERSION )
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
dump_stats
|
107
|
-
dump_props
|
108
|
-
|
109
|
-
puts 'Done.'
|
110
|
-
|
111
|
-
end # method run
|
128
|
+
end
|
129
|
+
|
130
|
+
|
112
131
|
|
132
|
+
##### fix/todo: reuse between runner/loader - include w/ helper module?
|
113
133
|
def dump_stats
|
114
134
|
# todo: use %5d or similar to format string
|
115
135
|
puts "Stats:"
|
@@ -0,0 +1,73 @@
|
|
1
|
+
|
2
|
+
module SportDB
|
3
|
+
|
4
|
+
class Loader
|
5
|
+
|
6
|
+
def initialize
|
7
|
+
@logger = Logger.new(STDOUT)
|
8
|
+
@logger.level = Logger::INFO
|
9
|
+
|
10
|
+
end
|
11
|
+
|
12
|
+
attr_reader :logger
|
13
|
+
|
14
|
+
|
15
|
+
def run( args )
|
16
|
+
|
17
|
+
puts SportDB.banner
|
18
|
+
|
19
|
+
puts "working directory: #{Dir.pwd}"
|
20
|
+
|
21
|
+
## assume active activerecord connection
|
22
|
+
##
|
23
|
+
|
24
|
+
args.each do |arg|
|
25
|
+
name = arg # File.basename( arg, '.*' )
|
26
|
+
load_fixtures( name )
|
27
|
+
end
|
28
|
+
|
29
|
+
dump_stats
|
30
|
+
dump_props
|
31
|
+
|
32
|
+
puts 'Done.'
|
33
|
+
|
34
|
+
end # method run
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
def load_fixtures( name )
|
39
|
+
|
40
|
+
path = "#{SportDB.root}/db/#{name}.rb"
|
41
|
+
|
42
|
+
puts "*** loading data '#{name}' (#{path})..."
|
43
|
+
|
44
|
+
text = File.read( path )
|
45
|
+
|
46
|
+
SportDB.module_eval( text )
|
47
|
+
|
48
|
+
# NB: same as
|
49
|
+
#
|
50
|
+
# module SportDB
|
51
|
+
# <code here>
|
52
|
+
# end
|
53
|
+
end
|
54
|
+
|
55
|
+
##### fix/todo: reuse between runner/loader - include w/ helper module?
|
56
|
+
def dump_stats
|
57
|
+
# todo: use %5d or similar to format string
|
58
|
+
puts "Stats:"
|
59
|
+
puts " #{Event.count} events"
|
60
|
+
puts " #{Team.count} teams"
|
61
|
+
puts " #{Game.count} games"
|
62
|
+
end
|
63
|
+
|
64
|
+
def dump_props
|
65
|
+
# todo: use %5 or similar to format string
|
66
|
+
puts "Props:"
|
67
|
+
Prop.order( 'created_at asc' ).all.each do |prop|
|
68
|
+
puts " #{prop.key} / #{prop.value} || #{prop.created_at}"
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
end # class Loader
|
73
|
+
end # module SportDB
|
data/lib/sportdb/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sportdb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 23
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 2
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.2.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Gerald Bauer
|
@@ -61,9 +61,17 @@ files:
|
|
61
61
|
- README.markdown
|
62
62
|
- Rakefile
|
63
63
|
- bin/sportdb
|
64
|
+
- db/cl/2011_12/cl.rb
|
65
|
+
- db/cl/2011_12/el.rb
|
66
|
+
- db/cl/2012_13/cl.rb
|
67
|
+
- db/cl/teams.rb
|
68
|
+
- db/euro/2012.rb
|
69
|
+
- db/euro/teams.rb
|
70
|
+
- db/world/quali_2012_13.rb
|
64
71
|
- lib/sportdb.rb
|
65
72
|
- lib/sportdb/cli/opts.rb
|
66
73
|
- lib/sportdb/cli/runner.rb
|
74
|
+
- lib/sportdb/loader.rb
|
67
75
|
- lib/sportdb/models.rb
|
68
76
|
- lib/sportdb/schema.rb
|
69
77
|
- lib/sportdb/utils.rb
|