pinrails/app/controllers/pages_controller.rb

33 lines
616 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: 0...3).order(Arel.sql("RANDOM()")).to_a
teams = []
while r.size > 0
if r.size % 4 == 0
teams << r.shift(4)
elsif r.size % 2 == 0
teams << r.shift(3)
teams << r.shift(3)
elsif r.size % 3 == 0
teams << r.shift(3)
else
teams << r.shift(4)
end
end
teams.sort { |a, b| b.length <=> a.length }
end
end