beerdb-admin 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/History.md +3 -0
  2. data/Manifest.txt +55 -0
  3. data/README.md +29 -0
  4. data/Rakefile +26 -0
  5. data/app/assets/javascripts/beer_db_admin/application.js +15 -0
  6. data/app/assets/stylesheets/beer_db_admin/application.css.scss +3 -0
  7. data/app/controllers/beer_db_admin/beer_db_admin_controller.rb +6 -0
  8. data/app/controllers/beer_db_admin/beers_controller.rb +19 -0
  9. data/app/controllers/beer_db_admin/bookmarks_controller.rb +47 -0
  10. data/app/controllers/beer_db_admin/brands_controller.rb +21 -0
  11. data/app/controllers/beer_db_admin/breweries_controller.rb +31 -0
  12. data/app/controllers/beer_db_admin/countries_controller.rb +46 -0
  13. data/app/controllers/beer_db_admin/drinks_controller.rb +63 -0
  14. data/app/controllers/beer_db_admin/frontpage_controller.rb +15 -0
  15. data/app/controllers/beer_db_admin/pages_controller.rb +14 -0
  16. data/app/controllers/beer_db_admin/regions_controller.rb +13 -0
  17. data/app/controllers/beer_db_admin/sessions_controller.rb +53 -0
  18. data/app/controllers/beer_db_admin/tags_controller.rb +15 -0
  19. data/app/controllers/beer_db_admin/time_controller.rb +12 -0
  20. data/app/controllers/beer_db_admin/users_controller.rb +66 -0
  21. data/app/helpers/beer_db_admin/application_helper.rb +52 -0
  22. data/app/helpers/beer_db_admin/part_helper.rb +37 -0
  23. data/app/helpers/beer_db_admin/routes_helper.rb +21 -0
  24. data/app/views/beer_db_admin/beers/index.html.erb +70 -0
  25. data/app/views/beer_db_admin/beers/show.html.erb +132 -0
  26. data/app/views/beer_db_admin/brands/index.html.erb +41 -0
  27. data/app/views/beer_db_admin/breweries/index.html.erb +61 -0
  28. data/app/views/beer_db_admin/breweries/show.html.erb +111 -0
  29. data/app/views/beer_db_admin/countries/index.html.erb +49 -0
  30. data/app/views/beer_db_admin/countries/show.html.erb +133 -0
  31. data/app/views/beer_db_admin/countries/show_pocket.html.erb +111 -0
  32. data/app/views/beer_db_admin/drinks/_form.html.erb +29 -0
  33. data/app/views/beer_db_admin/drinks/edit.html.erb +4 -0
  34. data/app/views/beer_db_admin/drinks/new.html.erb +4 -0
  35. data/app/views/beer_db_admin/pages/about.html.erb +2 -0
  36. data/app/views/beer_db_admin/pages/index.html.erb +2 -0
  37. data/app/views/beer_db_admin/regions/index.html.erb +50 -0
  38. data/app/views/beer_db_admin/sessions/new.html.erb +54 -0
  39. data/app/views/beer_db_admin/shared/_beers.html.erb +16 -0
  40. data/app/views/beer_db_admin/shared/_bookmarks.html.erb +80 -0
  41. data/app/views/beer_db_admin/shared/_breweries_for_country.html.erb +22 -0
  42. data/app/views/beer_db_admin/shared/_breweries_for_region.html.erb +24 -0
  43. data/app/views/beer_db_admin/shared/_brewery_tags.html.erb +16 -0
  44. data/app/views/beer_db_admin/shared/_tags.html.erb +13 -0
  45. data/app/views/beer_db_admin/tags/index.html.erb +24 -0
  46. data/app/views/beer_db_admin/time/index.html.erb +40 -0
  47. data/app/views/beer_db_admin/users/edit.html.erb +40 -0
  48. data/app/views/beer_db_admin/users/show.html.erb +39 -0
  49. data/app/views/layouts/beer_db_admin/_flash.html.erb +6 -0
  50. data/app/views/layouts/beer_db_admin/_header.html.erb +16 -0
  51. data/app/views/layouts/beer_db_admin/beer_db_admin.html.erb +80 -0
  52. data/config/routes.rb +46 -0
  53. data/lib/beerdb/admin/engine.rb +6 -0
  54. data/lib/beerdb/admin/version.rb +5 -0
  55. data/lib/beerdb/admin.rb +20 -0
  56. metadata +127 -0
@@ -0,0 +1,61 @@
1
+
2
+ <h3><%= Brewery.count %> Breweries</h3>
3
+ <!-- todo: add display/page count e.g. 25 -->
4
+
5
+ <p>
6
+ Sort By: <%= link_to 'Key A-Z', breweries_path( order: 'key' ) %>
7
+ &bull;
8
+ <%= link_to 'Title A-Z', breweries_path( order: 'title' ) %>
9
+ &bull;
10
+ <%= link_to 'Production/Capacity (in hl)', breweries_path( order: 'hl' ) %>
11
+ </p>
12
+
13
+
14
+ <table>
15
+ <% @breweries.each do |brewery| %>
16
+ <tr>
17
+ <td class='brewery-key'><%= brewery.key %></td>
18
+
19
+ <% if signed_in? %>
20
+ <td>
21
+ <%= link_to 'Add', add_brewery_to_user_path( brewery.id, current_user_id ), class: 'btn' %>
22
+ </td>
23
+ <% end %>
24
+
25
+ <td>
26
+ <%= link_to brewery.title, brewery_path( brewery.id ) %>
27
+ <% if brewery.synonyms.present? %>
28
+ | <%= brewery.synonyms %>
29
+ <% end %>
30
+
31
+ <%= render_brewery_tags( brewery ) %>
32
+
33
+ </td>
34
+ <td>
35
+ <% if brewery.city.present? %>
36
+ <%= brewery.city.title %>
37
+ <% else %>
38
+ -
39
+ <% end %>
40
+ /
41
+ <% if brewery.region.present? %>
42
+ <%= brewery.region.title %>
43
+ <% else %>
44
+ -
45
+ <% end %>
46
+ /
47
+ <%= image_tag_for_country( brewery.country ) %>
48
+ <%= link_to brewery.country.title, short_country_path( brewery.country ) %>
49
+ </td>
50
+ </tr>
51
+
52
+ <tr>
53
+ <td></td>
54
+ <td colspan='2'>
55
+ <%= render_beers( brewery.beers ) %>
56
+ </td>
57
+ </tr>
58
+
59
+ <% end %>
60
+ </table>
61
+
@@ -0,0 +1,111 @@
1
+
2
+ <% brewery = @brewery
3
+ %>
4
+
5
+
6
+ <span class='brewery-key'><%= brewery.key %></span>
7
+
8
+ <h3 style='margin-top: 0;'>
9
+ <%= brewery.title %>
10
+
11
+ <% if brewery.synonyms.present? %>
12
+ • <%= brewery.synonyms.gsub( '|', ' • ') %>
13
+ <% end %>
14
+
15
+ <% if brewery.founded.present? %>
16
+ | <%= brewery.founded %>
17
+ <% end %>
18
+
19
+ ||
20
+ <%= image_tag_for_country( brewery.country ) %>
21
+ <%= link_to brewery.country.title, short_country_path( brewery.country ) %>
22
+
23
+
24
+ <% if brewery.tags.count > 0 %>
25
+ <span class='tags tag-list'>
26
+ <%= render_tags( brewery.tags ) %>
27
+ </span>
28
+ <% end %>
29
+
30
+ </h3>
31
+
32
+ <p>
33
+ <%= brewery.address %>
34
+ </p>
35
+
36
+ <% if brewery.web.present? %>
37
+ <p class='city-count'>
38
+ <%= link_to brewery.web, "http://#{brewery.web}" %>
39
+ </p>
40
+ <% end %>
41
+
42
+
43
+ <!-- add all beers -->
44
+
45
+ <hr>
46
+ <ul>
47
+ <% brewery.beers.each do |beer| %>
48
+ <li>
49
+ <%= link_to beer.title, beer_path( beer.id ) %>
50
+
51
+ <% if beer.synonyms.present? %>
52
+ &bull; <%= beer.synonyms %>
53
+ <% end %>
54
+ /
55
+ <% if beer.abv.present? %>
56
+ <%= beer.abv %>
57
+ <% else %>
58
+ -
59
+ <% end %>
60
+ %
61
+ <% if beer.plato.present? %>
62
+ / <%= beer.plato %>°
63
+ <% end %>
64
+
65
+ <% if beer.tags.count > 0 %>
66
+ /
67
+ <span class='tags'>
68
+ <% beer.tags.each_with_index do |tag,i| %>
69
+ <% if i > 0 %>
70
+ &bull;
71
+ <% end %>
72
+ <%= tag.key %>
73
+ <% end %>
74
+ </span>
75
+ <% end %>
76
+
77
+
78
+
79
+ </li>
80
+ <% end %>
81
+ </ul>
82
+
83
+
84
+ <hr>
85
+
86
+ <% if brewery.region.present? %>
87
+ <%= render_breweries_for_region( brewery.region ) %>
88
+ <% else %>
89
+ <%= render_breweries_for_country( brewery.country ) %>
90
+ <% end %><!-- if brewery.region.present? -->
91
+
92
+
93
+
94
+ <hr>
95
+
96
+ <p>
97
+ <% if brewery.city.present? %>
98
+ <%= brewery.city.title %>
99
+ <% else %>
100
+ -
101
+ <% end %>
102
+ /
103
+ <% if brewery.region.present? %>
104
+ <%= brewery.region.title %>
105
+ <% else %>
106
+ -
107
+ <% end %>
108
+ /
109
+ <%= image_tag_for_country( brewery.country ) %>
110
+ <%= link_to brewery.country.title, short_country_path( brewery.country ) %>
111
+ </p>
@@ -0,0 +1,49 @@
1
+
2
+ <h3>Countries</h3>
3
+
4
+ <table>
5
+ <% @countries.each do |country| %>
6
+
7
+
8
+
9
+ <% count = country.beers.count
10
+ if count > 0 %>
11
+ <tr>
12
+ <td>
13
+ <span class='country-key'><%= country.key %></span>
14
+ <%= image_tag_for_country( country ) %>
15
+ <%= link_to country.title, short_country_path( country ) %>
16
+ </td>
17
+ </tr>
18
+
19
+ <tr>
20
+ <td>
21
+ <% country.beers.each_with_index do |beer,i| %>
22
+ <% if i > 0 %>
23
+ &bull;
24
+ <% end %>
25
+ <%= link_to beer.title, beer_path( beer.id ) %>
26
+ <% end %>
27
+ <span class="beer-count">(<%= count %>)</span>
28
+ </td>
29
+ </tr>
30
+
31
+ <% breweries_count = country.breweries.count
32
+ if breweries_count > 0 %>
33
+ <tr>
34
+ <td>
35
+ <% country.breweries.each_with_index do |brewery,i| %>
36
+ <% if i > 0 %>
37
+ &bull;
38
+ <% end %>
39
+ <%= brewery.title %>
40
+ <% end %>
41
+ <span class="beer-count">(<%= breweries_count %>)</span>
42
+ </td>
43
+ </tr>
44
+ <% end %>
45
+
46
+ <% end %>
47
+
48
+ <% end %>
49
+ </table>
@@ -0,0 +1,133 @@
1
+
2
+ <h3>
3
+ <%= image_tag_for_country( @country, size: '64x64' ) %>
4
+
5
+ <!-- fix: use full_title e.g. is title (code) -->
6
+ <%= @country.title %>
7
+ (<%= @country.code %>),
8
+
9
+ <%= @country.breweries.count %> Breweries,
10
+ <%= @country.beers.count %> Beers
11
+ </h3>
12
+
13
+
14
+ <p>
15
+ Sort By: <%= link_to 'Key A-Z', short_country_path( @country, order: 'key' ) %>
16
+ &bull;
17
+ <%= link_to 'Title A-Z', short_country_path( @country, order: 'title' ) %>
18
+ &bull;
19
+ <%= link_to 'Address', short_country_path( @country, order: 'adr' ) %>
20
+ &bull;
21
+ <%= link_to 'Production/Capacity (in hl)', short_country_path( @country, order: 'hl' ) %>
22
+
23
+ | Style: <%= link_to 'Pocket', short_country_path( @country, style: 'pocket' ) %>
24
+
25
+ </p>
26
+
27
+ <table>
28
+
29
+ <%
30
+ beers_missing_breweries = @country.beers.where( 'brewery_id is null' ).order( @order_clause )
31
+ beers_missing_breweries_count = beers_missing_breweries.count
32
+
33
+ if beers_missing_breweries_count > 0
34
+ %>
35
+ <tr>
36
+ <td><b>Uncategorized</b></td>
37
+ <td></td>
38
+ <td style='vertical-align: baseline;'>
39
+ <%= render_beers( beers_missing_breweries ) %>
40
+ </td>
41
+ </tr>
42
+ <% end %>
43
+
44
+
45
+ <!-- for now add section for uncategorized breweries (e.g. w/o region; region missing)
46
+ -->
47
+
48
+ <% breweries_missing_regions = @country.breweries.where( 'region_id is null').order( @order_clause )
49
+ breweries_missing_regions_count = breweries_missing_regions.count
50
+
51
+ if breweries_missing_regions_count > 0
52
+ %>
53
+
54
+ <tr>
55
+ <td colspan='3' style='background-color: silver;'>
56
+ <b>Uncategorized</b>
57
+ <span class='city-count'>
58
+ (<%= @country.breweries.where( 'region_id is null').count %>)
59
+ </span>
60
+ </td>
61
+ </tr>
62
+
63
+ <% breweries_missing_regions.each do |brewery| %>
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 -->
87
+ <% end %><!-- if breweries_missing_regions_count > 0 -->
88
+
89
+
90
+
91
+ <% @country.regions.each do |region| %>
92
+ <tr>
93
+ <td colspan='3' style='background-color: silver;'>
94
+ <!-- use class region-key -->
95
+ <span class='city-count'>
96
+ <%= region.key %>
97
+ </span>
98
+
99
+ <%= region.title_w_synonyms %>
100
+ <span class='city-count'>
101
+ (<%= region.breweries.count %>)
102
+ </span>
103
+ </td>
104
+ </tr>
105
+
106
+ <% region.breweries.order( @order_clause ).each do |brewery| %>
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 -->
130
+ <% end %> <!-- each region -->
131
+
132
+
133
+ </table>
@@ -0,0 +1,111 @@
1
+
2
+ <h3>
3
+ <%= image_tag_for_country( @country, size: '64x64' ) %>
4
+
5
+ <!-- fix: use full_title e.g. is title (code) -->
6
+ <%= @country.title %>
7
+ (<%= @country.code %>),
8
+
9
+ <%= @country.breweries.count %> Breweries,
10
+ <%= @country.beers.count %> Beers (Pocket)
11
+ </h3>
12
+
13
+
14
+ <p>
15
+ Sort By: <%= link_to 'Key A-Z', short_country_path( @country, style: 'pocket', order: 'key' ) %>
16
+ &bull;
17
+ <%= link_to 'Title A-Z', short_country_path( @country, style: 'pocket', order: 'title' ) %>
18
+ &bull;
19
+ <%= link_to 'Address', short_country_path( @country, style: 'pocket', order: 'adr' ) %>
20
+ &bull;
21
+ <%= link_to 'Production/Capacity (in hl)', short_country_path( @country, style: 'pocket', order: 'hl' ) %>
22
+
23
+ | Style: <%= link_to 'Standard', short_country_path( @country ) %>
24
+
25
+ </p>
26
+
27
+
28
+ <table>
29
+
30
+
31
+ <!-- for now add section for uncategorized breweries (e.g. w/o region; region missing)
32
+ -->
33
+
34
+ <% breweries_missing_regions = @country.breweries.where( 'region_id is null').order( @order_clause )
35
+ breweries_missing_regions_count = breweries_missing_regions.count
36
+
37
+ if breweries_missing_regions_count > 0
38
+ %>
39
+
40
+ <tr>
41
+ <td colspan='3' style='background-color: silver;'>
42
+ <b>Uncategorized</b>
43
+ <span class='city-count'>
44
+ (<%= @country.breweries.where( 'region_id is null').count %>)
45
+ </span>
46
+ </td>
47
+ </tr>
48
+
49
+ <% breweries_missing_regions.each do |brewery| %>
50
+ <tr>
51
+ <td style='vertical-align: baseline;'>
52
+ <span class='city-count'>
53
+ <% if brewery.web.present? %>
54
+ <%= link_to brewery.web, "http://#{brewery.web}" %>
55
+ <% end %>
56
+ </span>
57
+ </td>
58
+ <td style='vertical-align: baseline;'>
59
+ <%= brewery.title %>
60
+
61
+ | <%= brewery.founded %>
62
+ |
63
+ <span class='city-count'>
64
+ <%= brewery.address %>
65
+ </span>
66
+ | <%= render_brewery_tags( brewery ) %>
67
+ </td>
68
+ </tr>
69
+ <% end %><!-- each brewery -->
70
+ <% end %><!-- if breweries_missing_regions_count > 0 -->
71
+
72
+
73
+ <% @country.regions.each do |region| %>
74
+ <tr>
75
+ <td colspan='3' style='background-color: silver;'>
76
+ <!-- use class region-key -->
77
+ <span class='city-count'>
78
+ <%= region.key %>
79
+ </span>
80
+
81
+ <%= region.title_w_synonyms %>
82
+ <span class='city-count'>
83
+ (<%= region.breweries.count %>)
84
+ </span>
85
+ </td>
86
+ </tr>
87
+
88
+ <% region.breweries.order( @order_clause ).each do |brewery| %>
89
+ <tr>
90
+ <td style='vertical-align: baseline;'>
91
+ <span class='city-count'>
92
+ <% if brewery.web.present? %>
93
+ <%= link_to brewery.web, "http://#{brewery.web}" %>
94
+ <% end %>
95
+ </span>
96
+ </td>
97
+ <td style='vertical-align: baseline;'>
98
+ <%= brewery.title %>
99
+
100
+ | <%= brewery.founded %>
101
+ |
102
+ <span class='city-count'>
103
+ <%= brewery.address %>
104
+ </span>
105
+ | <%= render_brewery_tags( brewery ) %>
106
+ </td>
107
+ </tr>
108
+ <% end %><!-- each brewery -->
109
+ <% end %> <!-- each region -->
110
+
111
+ </table>