36 lines
696 B
Ruby
36 lines
696 B
Ruby
class PagesController < ApplicationController
|
|
def index
|
|
@players = Player.all
|
|
end
|
|
|
|
def teampicker
|
|
@groups = maketeams
|
|
end
|
|
|
|
private
|
|
def random
|
|
Player.where("strikes < 4").order(Arel.sql("RANDOM()"))
|
|
end
|
|
|
|
def maketeams
|
|
r = 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
|
|
end
|
|
end
|