34 lines
747 B
Ruby
34 lines
747 B
Ruby
class PagesController < ApplicationController
|
|
def index
|
|
@players = Player.all
|
|
end
|
|
|
|
def teampicker
|
|
@groups = maketeams
|
|
|
|
@machines = Machine.limit(@groups.size).order(Arel.sql("RANDOM()"))
|
|
end
|
|
|
|
private
|
|
def maketeams
|
|
r = Player.where("strikes < 4").order(Arel.sql("RANDOM()")).to_a
|
|
|
|
groups = case r.size
|
|
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
|