diff options
-rw-r--r-- | app/controllers/pages_controller.rb | 40 | ||||
-rw-r--r-- | app/views/layouts/application.html.erb | 3 | ||||
-rw-r--r-- | app/views/pages/teampicker.html.erb | 1 |
3 files changed, 21 insertions, 23 deletions
diff --git a/app/controllers/pages_controller.rb b/app/controllers/pages_controller.rb index e3838d2..2c454f9 100644 --- a/app/controllers/pages_controller.rb +++ b/app/controllers/pages_controller.rb @@ -5,31 +5,29 @@ class PagesController < ApplicationController def teampicker @groups = maketeams + + @machines = Machine.limit(@groups.count).order(Arel.sql("RANDOM()")) end private - def random - Player.where("strikes < 4").order(Arel.sql("RANDOM()")) - end - def maketeams - r = random.to_a + r = Player.where("strikes < 4").order(Arel.sql("RANDOM()")).to_a - case Player.count { |p| p.active? } - when 5 - [r.shift(3), r.shift(2)] - when 6 - r.each_slice(3) - when 9 - r.each_slice(3) - when 10 - [r.shift(4), r.shift(3), r.shift(3)] - when 13 - [r.shift(4), r.shift(3), r.shift(3), r.shift(3)] - when 14 - [r.shift(4), r.shift(4), r.shift(3), r.shift(3)] - else - r.each_slice(4) - end + groups = case r.count + when 5 + [r.shift(3), r.shift(2)] + when 6 + r.each_slice(3) + when 9 + r.each_slice(3) + when 10 + [r.shift(4), r.shift(3), r.shift(3)] + when 13 + [r.shift(4), r.shift(3), r.shift(3), r.shift(3)] + when 14 + [r.shift(4), r.shift(4), r.shift(3), r.shift(3)] + else + r.each_slice(4) + end end end diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index eccec27..f0d2dd6 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -16,8 +16,7 @@ <%= link_to "Home", root_path %> ~ <%= link_to "Tables", machines_path %> ~ <%= link_to "Players", players_path %> ~ - <%= link_to "Pick Table", controller: "machines", action: "random" %> ~ - <%= link_to "Pick Teams", controller: "pages", action: "teampicker" %> + <%= link_to "Randomize", controller: "pages", action: "teampicker" %> </nav> <hr> diff --git a/app/views/pages/teampicker.html.erb b/app/views/pages/teampicker.html.erb index b0066cb..7bb9222 100644 --- a/app/views/pages/teampicker.html.erb +++ b/app/views/pages/teampicker.html.erb @@ -2,6 +2,7 @@ <% @groups.each.with_index(1) do |slice, i| %> <h3>Team <%= i %></h3> + <p>Table: <%= @machines[i - 1].name %></p> <ul> <% slice.each do |player| %> <li><%= link_to player.name, edit_player_path(player) %></li> |