beerdb-admin 0.1.1 → 0.1.2
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.
- checksums.yaml +7 -0
- data/Manifest.txt +57 -60
- data/README.md +4 -3
- data/Rakefile +1 -1
- data/app/assets/stylesheets/beer_db_admin/application.css.scss +4 -11
- data/app/assets/stylesheets/beer_db_admin/navbar.css.scss +3 -18
- data/app/controllers/beer_db_admin/beers_controller.rb +7 -1
- data/app/controllers/beer_db_admin/breweries_controller.rb +6 -0
- data/app/controllers/beer_db_admin/cities_controller.rb +25 -0
- data/app/controllers/beer_db_admin/regions_controller.rb +16 -0
- data/app/helpers/beer_db_admin/application_helper.rb +3 -21
- data/app/helpers/beer_db_admin/link_helper.rb +42 -0
- data/app/helpers/beer_db_admin/part_helper.rb +27 -7
- data/app/helpers/beer_db_admin/routes_helper.rb +17 -0
- data/app/helpers/beer_db_admin/service_helper.rb +69 -0
- data/app/views/beer_db_admin/beers/index.html.erb +14 -33
- data/app/views/beer_db_admin/beers/show.html.erb +7 -69
- data/app/views/beer_db_admin/brands/index.html.erb +11 -18
- data/app/views/beer_db_admin/breweries/_actions.html.erb +53 -0
- data/app/views/beer_db_admin/breweries/index.html.erb +8 -21
- data/app/views/beer_db_admin/breweries/show.html.erb +19 -51
- data/app/views/beer_db_admin/cities/show.html.erb +59 -0
- data/app/views/beer_db_admin/countries/index.html.erb +1 -1
- data/app/views/beer_db_admin/countries/show.html.erb +47 -52
- data/app/views/beer_db_admin/countries/show_pocket.html.erb +2 -2
- data/app/views/beer_db_admin/regions/show.html.erb +85 -0
- data/app/views/beer_db_admin/shared/_beer.html.erb +36 -0
- data/app/views/beer_db_admin/shared/_beers.html.erb +1 -1
- data/app/views/beer_db_admin/shared/_breweries_for_city.html +26 -0
- data/app/views/beer_db_admin/shared/_breweries_for_country.html.erb +2 -1
- data/app/views/beer_db_admin/shared/_breweries_for_region.html.erb +8 -2
- data/app/views/beer_db_admin/shared/_breweries_table_rows.html.erb +32 -0
- data/app/views/beer_db_admin/shared/_breweries_table_rows_for_region.html.erb +47 -0
- data/app/views/beer_db_admin/shared/_countries.html.erb +3 -4
- data/app/views/beer_db_admin/shared/_world_tree.html.erb +26 -0
- data/app/views/layouts/beer_db_admin/beer_db_admin.html.erb +1 -20
- data/config/routes.rb +14 -22
- data/lib/beerdb/admin.rb +3 -3
- data/lib/beerdb/admin/version.rb +1 -1
- metadata +36 -35
- data/app/controllers/beer_db_admin/bookmarks_controller.rb +0 -47
- data/app/controllers/beer_db_admin/drinks_controller.rb +0 -63
- data/app/controllers/beer_db_admin/frontpage_controller.rb +0 -15
- data/app/controllers/beer_db_admin/sessions_controller.rb +0 -53
- data/app/controllers/beer_db_admin/time_controller.rb +0 -12
- data/app/controllers/beer_db_admin/users_controller.rb +0 -66
- data/app/views/beer_db_admin/drinks/_form.html.erb +0 -29
- data/app/views/beer_db_admin/drinks/edit.html.erb +0 -4
- data/app/views/beer_db_admin/drinks/new.html.erb +0 -4
- data/app/views/beer_db_admin/sessions/new.html.erb +0 -54
- data/app/views/beer_db_admin/shared/_bookmarks.html.erb +0 -80
- data/app/views/beer_db_admin/time/index.html.erb +0 -40
- data/app/views/beer_db_admin/users/edit.html.erb +0 -40
- data/app/views/beer_db_admin/users/show.html.erb +0 -39
@@ -0,0 +1,59 @@
|
|
1
|
+
<% city = @city
|
2
|
+
region = @city.region
|
3
|
+
country = @city.country
|
4
|
+
%>
|
5
|
+
|
6
|
+
<h3>
|
7
|
+
<%= image_tag_for_country( country, size: '64x64' ) %>
|
8
|
+
|
9
|
+
<!-- fix: use full_title e.g. is title (code) -->
|
10
|
+
|
11
|
+
<%= city.title %>
|
12
|
+
|
13
|
+
›
|
14
|
+
|
15
|
+
<%= link_to_region(region) %>
|
16
|
+
|
17
|
+
›
|
18
|
+
|
19
|
+
<%= link_to_country(country) %>
|
20
|
+
(<%= country.code %>)
|
21
|
+
-
|
22
|
+
<%= city.beers.count %> Beers,
|
23
|
+
<%= city.breweries.count %> Breweries
|
24
|
+
</h3>
|
25
|
+
|
26
|
+
|
27
|
+
<table>
|
28
|
+
<%= render_breweries_table_rows( city.breweries ) %>
|
29
|
+
</table>
|
30
|
+
|
31
|
+
|
32
|
+
<!-- add links to all cities here -->
|
33
|
+
<hr>
|
34
|
+
|
35
|
+
<!-- note: add cities w/ breweries only -->
|
36
|
+
<p>
|
37
|
+
<% cities_count = 0
|
38
|
+
region.cities.order(:name).each do |city|
|
39
|
+
city_breweries_count = city.breweries.count
|
40
|
+
%>
|
41
|
+
|
42
|
+
<% if city_breweries_count > 0 %>
|
43
|
+
|
44
|
+
<% if cities_count > 0 %>
|
45
|
+
•
|
46
|
+
<% end %>
|
47
|
+
|
48
|
+
<%= link_to_city( city ) %>
|
49
|
+
<% if city_breweries_count > 1 %>
|
50
|
+
<span class='region-key'>
|
51
|
+
(<%= city_breweries_count %>)
|
52
|
+
</span>
|
53
|
+
<% end %>
|
54
|
+
<% cities_count +=1
|
55
|
+
end %>
|
56
|
+
|
57
|
+
<% end %>
|
58
|
+
</p>
|
59
|
+
|
@@ -1,16 +1,46 @@
|
|
1
|
+
<% country = @country
|
2
|
+
%>
|
1
3
|
|
2
4
|
<h3>
|
3
5
|
<%= image_tag_for_country( @country, size: '64x64' ) %>
|
4
6
|
|
5
7
|
<!-- fix: use full_title e.g. is title (code) -->
|
6
8
|
<%= @country.title %>
|
7
|
-
(<%= @country.code %>)
|
8
|
-
|
9
|
+
(<%= @country.code %>)
|
10
|
+
-
|
9
11
|
<%= @country.beers.count %> Beers,
|
10
12
|
<%= @country.breweries.count %> Breweries
|
11
13
|
</h3>
|
12
14
|
|
13
15
|
|
16
|
+
<!-- add intra-page links here -->
|
17
|
+
<p>
|
18
|
+
<% country.regions.each_with_index do |region,i| %>
|
19
|
+
<% if i > 0 %>
|
20
|
+
•
|
21
|
+
<% end %>
|
22
|
+
<%= link_to region.title, "##{region.key}" %>
|
23
|
+
<span class='city-count'>
|
24
|
+
(<%= region.breweries.count %>)
|
25
|
+
</span>
|
26
|
+
|
27
|
+
<% end %>
|
28
|
+
|
29
|
+
<!-- check for uncategorized breweries (no region) -->
|
30
|
+
<% uncategorized_breweries_count = country.breweries.where( 'region_id is null').count %>
|
31
|
+
<% if uncategorized_breweries_count > 0 %>
|
32
|
+
•
|
33
|
+
<b> Uncategorized
|
34
|
+
<span class='city-count'>
|
35
|
+
(<%= uncategorized_breweries_count %>)
|
36
|
+
</span>
|
37
|
+
</b>
|
38
|
+
<% end %>
|
39
|
+
|
40
|
+
</p>
|
41
|
+
|
42
|
+
|
43
|
+
|
14
44
|
<p>
|
15
45
|
Sort By: <%= link_to 'Key A-Z', short_country_path( @country, order: 'key' ) %>
|
16
46
|
•
|
@@ -60,73 +90,38 @@
|
|
60
90
|
</td>
|
61
91
|
</tr>
|
62
92
|
|
63
|
-
|
64
|
-
<tr>
|
65
|
-
<td style='vertical-align: baseline;'>
|
66
|
-
<%= link_to brewery.title, brewery_path( brewery.id ) %>
|
67
|
-
|
68
|
-
| <%= brewery.founded %>
|
69
|
-
<%= render_brewery_tags( brewery ) %>
|
70
|
-
<br>
|
71
|
-
<span class='city-count'>
|
72
|
-
<%= brewery.address %>
|
73
|
-
</span>
|
74
|
-
</td>
|
75
|
-
<td style='vertical-align: baseline;'>
|
76
|
-
<span class='city-count'>
|
77
|
-
<% if brewery.web.present? %>
|
78
|
-
<%= link_to brewery.web, "http://#{brewery.web}" %>
|
79
|
-
<% end %>
|
80
|
-
</span>
|
81
|
-
</td>
|
82
|
-
<td style='vertical-align: baseline;'>
|
83
|
-
<%= render_beers( brewery.beers ) %>
|
84
|
-
</td>
|
85
|
-
</tr>
|
86
|
-
<% end %><!-- each brewery -->
|
93
|
+
<%= render_breweries_table_rows( breweries_missing_regions ) %>
|
87
94
|
<% end %><!-- if breweries_missing_regions_count > 0 -->
|
88
95
|
|
89
96
|
|
90
97
|
|
91
98
|
<% @country.regions.each do |region| %>
|
92
99
|
<tr>
|
93
|
-
<td
|
100
|
+
<td style='background-color: silver;'></td>
|
101
|
+
<td colspan='2' style='background-color: silver; font-size: 130%;'>
|
94
102
|
<!-- use class region-key -->
|
95
103
|
<span class='city-count'>
|
96
104
|
<%= region.key %>
|
97
105
|
</span>
|
98
106
|
|
99
|
-
<%= region.
|
107
|
+
<a name='<%= region.key %>'></a>
|
108
|
+
<%= link_to region.title_w_synonyms, short_region_path(region) %>
|
109
|
+
|
110
|
+
<% if region.abbr.present? %>
|
111
|
+
<!-- fix: check if abbr is same as title
|
112
|
+
or lowercase is same as key e.g. NY == ny or similar ??
|
113
|
+
- if yes, do NOT print -->
|
114
|
+
, <%= region.abbr %>
|
115
|
+
<% end %>
|
116
|
+
|
100
117
|
<span class='city-count'>
|
101
118
|
(<%= region.breweries.count %>)
|
102
119
|
</span>
|
120
|
+
|
103
121
|
</td>
|
104
122
|
</tr>
|
105
123
|
|
106
|
-
|
107
|
-
<tr>
|
108
|
-
<td style='vertical-align: baseline;'>
|
109
|
-
<%= link_to brewery.title, brewery_path( brewery.id ) %>
|
110
|
-
|
111
|
-
| <%= brewery.founded %>
|
112
|
-
<%= render_brewery_tags( brewery ) %>
|
113
|
-
<br>
|
114
|
-
<span class='city-count'>
|
115
|
-
<%= brewery.address %>
|
116
|
-
</span>
|
117
|
-
</td>
|
118
|
-
<td style='vertical-align: baseline;'>
|
119
|
-
<span class='city-count'>
|
120
|
-
<% if brewery.web.present? %>
|
121
|
-
<%= link_to brewery.web, "http://#{brewery.web}" %>
|
122
|
-
<% end %>
|
123
|
-
</span>
|
124
|
-
</td>
|
125
|
-
<td style='vertical-align: baseline;'>
|
126
|
-
<%= render_beers( brewery.beers ) %>
|
127
|
-
</td>
|
128
|
-
</tr>
|
129
|
-
<% end %><!-- each brewery -->
|
124
|
+
<%= render_breweries_table_rows_for_region( region ) %>
|
130
125
|
<% end %> <!-- each region -->
|
131
126
|
|
132
127
|
|
@@ -56,7 +56,7 @@
|
|
56
56
|
</span>
|
57
57
|
</td>
|
58
58
|
<td style='vertical-align: baseline;'>
|
59
|
-
<%= brewery
|
59
|
+
<%= link_to_brewery( brewery ) %>
|
60
60
|
|
61
61
|
| <%= brewery.founded %>
|
62
62
|
|
|
@@ -95,7 +95,7 @@
|
|
95
95
|
</span>
|
96
96
|
</td>
|
97
97
|
<td style='vertical-align: baseline;'>
|
98
|
-
<%= brewery
|
98
|
+
<%= link_to_brewery( brewery) %>
|
99
99
|
|
100
100
|
| <%= brewery.founded %>
|
101
101
|
|
|
@@ -0,0 +1,85 @@
|
|
1
|
+
<% region = @region
|
2
|
+
country = @region.country
|
3
|
+
%>
|
4
|
+
|
5
|
+
<h3>
|
6
|
+
<%= image_tag_for_country( country, size: '64x64' ) %>
|
7
|
+
|
8
|
+
<!-- fix: use full_title e.g. is title (code) -->
|
9
|
+
|
10
|
+
<span class='region-key'>
|
11
|
+
<%= region.key %>
|
12
|
+
</span>
|
13
|
+
<%= region.title %>
|
14
|
+
<% if region.abbr.present? %>
|
15
|
+
• <%= region.abbr %>
|
16
|
+
<% end %>
|
17
|
+
›
|
18
|
+
|
19
|
+
<%= link_to_country(country ) %>
|
20
|
+
(<%= country.code %>)
|
21
|
+
-
|
22
|
+
<%= region.beers.count %> Beers,
|
23
|
+
<%= region.breweries.count %> Breweries
|
24
|
+
</h3>
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
<!-- note: add cities w/ breweries only -->
|
29
|
+
<p>
|
30
|
+
<% cities_count = 0
|
31
|
+
region.cities.order(:name).each do |city|
|
32
|
+
city_breweries_count = city.breweries.count
|
33
|
+
%>
|
34
|
+
|
35
|
+
<% if city_breweries_count > 0 %>
|
36
|
+
<% if cities_count > 0 %>
|
37
|
+
•
|
38
|
+
<% end %>
|
39
|
+
|
40
|
+
<%= link_to city.title, "##{city.key}" %>
|
41
|
+
<% if city_breweries_count > 1 %>
|
42
|
+
<span class='region-key'>
|
43
|
+
(<%= city_breweries_count %>)
|
44
|
+
</span>
|
45
|
+
<% end %>
|
46
|
+
<% cities_count +=1
|
47
|
+
end %>
|
48
|
+
<% end %>
|
49
|
+
|
50
|
+
<!-- check for uncategorized breweries (no region) -->
|
51
|
+
<% uncategorized_breweries_count = region.breweries.where( 'city_id is null').count %>
|
52
|
+
<% if uncategorized_breweries_count > 0 %>
|
53
|
+
•
|
54
|
+
<b> Uncategorized
|
55
|
+
<span class='city-count'>
|
56
|
+
(<%= uncategorized_breweries_count %>)
|
57
|
+
</span>
|
58
|
+
</b>
|
59
|
+
<% end %>
|
60
|
+
|
61
|
+
</p>
|
62
|
+
|
63
|
+
|
64
|
+
<table>
|
65
|
+
<%= render_breweries_table_rows_for_region( region ) %>
|
66
|
+
</table>
|
67
|
+
|
68
|
+
|
69
|
+
<!-- add links to all regions here -->
|
70
|
+
<hr>
|
71
|
+
|
72
|
+
<% country.regions.each_with_index do |region,i| %>
|
73
|
+
<% if i > 0 %>
|
74
|
+
|
75
|
+
<% end %>
|
76
|
+
<span class='region-key'>
|
77
|
+
<%= region.key %>
|
78
|
+
</span>
|
79
|
+
<%= link_to_region( region ) %>
|
80
|
+
<span class='region-key'>
|
81
|
+
(<%= region.breweries.count %>)
|
82
|
+
</span>
|
83
|
+
<% end %>
|
84
|
+
|
85
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
|
2
|
+
<!--
|
3
|
+
render beer in a single line
|
4
|
+
-- todo: add more formats: compact|full|???
|
5
|
+
-->
|
6
|
+
|
7
|
+
<%= link_to_beer( beer ) %>
|
8
|
+
|
9
|
+
<% if beer.synonyms.present? %>
|
10
|
+
• <%= beer.synonyms %>
|
11
|
+
<% end %>
|
12
|
+
|
13
|
+
/
|
14
|
+
|
15
|
+
<% if beer.abv.present? %>
|
16
|
+
<%= beer.abv %>
|
17
|
+
<% else %>
|
18
|
+
-
|
19
|
+
<% end %>
|
20
|
+
%
|
21
|
+
|
22
|
+
<% if beer.plato.present? %>
|
23
|
+
/ <%= beer.plato %>°
|
24
|
+
<% end %>
|
25
|
+
|
26
|
+
<% if beer.tags.count > 0 %>
|
27
|
+
/
|
28
|
+
<span class='tags'>
|
29
|
+
<% beer.tags.each_with_index do |tag,i| %>
|
30
|
+
<% if i > 0 %>
|
31
|
+
•
|
32
|
+
<% end %>
|
33
|
+
<%= tag.key %>
|
34
|
+
<% end %>
|
35
|
+
</span>
|
36
|
+
<% end %>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
|
2
|
+
<% breweries_count = city.breweries.count
|
3
|
+
%>
|
4
|
+
|
5
|
+
<% if breweries_count > 0 %>
|
6
|
+
<p>
|
7
|
+
<span class='region-key'><%= city.key %></span>
|
8
|
+
<%= link_to_city( city ) %>
|
9
|
+
<span class='beer-count'>(<%= breweries_count %>)</span>
|
10
|
+
</p>
|
11
|
+
|
12
|
+
<!-- todo/fix:
|
13
|
+
reuse use new partial render_breweries
|
14
|
+
-->
|
15
|
+
<tr>
|
16
|
+
<td>
|
17
|
+
<% city.breweries.order(:key).each_with_index do |brewery,i| %>
|
18
|
+
<% if i > 0 %>
|
19
|
+
•
|
20
|
+
<% end %>
|
21
|
+
<!-- todo: add a href title -- use address for hover if present -->
|
22
|
+
<%= link_to_brewery( brewery ) %>
|
23
|
+
<% end %>
|
24
|
+
</td>
|
25
|
+
</tr>
|
26
|
+
<% end %><!-- if breweries_count > 0 -->
|
@@ -5,7 +5,13 @@
|
|
5
5
|
<% if breweries_count > 0 %>
|
6
6
|
<p>
|
7
7
|
<span class='region-key'><%= region.key %></span>
|
8
|
-
<%= region
|
8
|
+
<%= link_to_region( region ) %>
|
9
|
+
<% if region.abbr.present? %>
|
10
|
+
<!-- fix: check if abbr is same as title
|
11
|
+
or lowercase is same as key e.g. NY == ny or similar ??
|
12
|
+
- if yes, do NOT print -->
|
13
|
+
, <%= region.abbr %>
|
14
|
+
<% end %>
|
9
15
|
<span class='beer-count'>(<%= breweries_count %>)</span>
|
10
16
|
</p>
|
11
17
|
|
@@ -16,7 +22,7 @@
|
|
16
22
|
•
|
17
23
|
<% end %>
|
18
24
|
<!-- todo: add a href title -- use address for hover if present -->
|
19
|
-
<%=
|
25
|
+
<%= link_to_brewery( brewery ) %>
|
20
26
|
<% end %>
|
21
27
|
</td>
|
22
28
|
</tr>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
|
2
|
+
<!-- todo: make padding-left an option
|
3
|
+
use level 1,2,3 etc. - level 0 (top)? default ?? no indentation ??
|
4
|
+
-->
|
5
|
+
|
6
|
+
|
7
|
+
<% breweries.each do |brewery| %>
|
8
|
+
<tr>
|
9
|
+
<td style='vertical-align: baseline;'>
|
10
|
+
<div style='padding-left: 8px;'>
|
11
|
+
<%= link_to_brewery( brewery ) %>
|
12
|
+
|
13
|
+
| <%= brewery.founded %>
|
14
|
+
<%= render_brewery_tags( brewery ) %>
|
15
|
+
<br>
|
16
|
+
<span class='city-count'>
|
17
|
+
<%= brewery.address %>
|
18
|
+
</span>
|
19
|
+
</div>
|
20
|
+
</td>
|
21
|
+
<td style='vertical-align: baseline;'>
|
22
|
+
<span class='city-count'>
|
23
|
+
<% if brewery.web.present? %>
|
24
|
+
<%= link_to brewery.web, "http://#{brewery.web}" %>
|
25
|
+
<% end %>
|
26
|
+
</span>
|
27
|
+
</td>
|
28
|
+
<td style='vertical-align: baseline;'>
|
29
|
+
<%= render_beers( brewery.beers ) %>
|
30
|
+
</td>
|
31
|
+
</tr>
|
32
|
+
<% end %><!-- each brewery -->
|