about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/pages_controller.rb40
-rw-r--r--app/views/layouts/application.html.erb3
-rw-r--r--app/views/pages/teampicker.html.erb1
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>