diff --git a/app/models/tournament.rb b/app/models/tournament.rb index 6dff6ff..ea79a6b 100644 --- a/app/models/tournament.rb +++ b/app/models/tournament.rb @@ -3,6 +3,7 @@ class Tournament < ActiveRecord::Base has_many :weights, dependent: :destroy has_many :matches, dependent: :destroy has_many :mats, dependent: :destroy + has_many :wrestlers, through: :weights attr_accessor :upcomingMatches, :unfinishedMatches def self.unfinishedMatches @@ -11,8 +12,9 @@ class Tournament < ActiveRecord::Base def upcomingMatches @matches = [] + @wrestlers = self.wrestlers self.weights.sort_by{|x|[x.max]}.each do |weight| - @upcomingMatches = weight.generateMatchups(@matches) + @upcomingMatches = generateMatchups(@matches,@wrestlers,weight) end @upcomingMatches = assignBouts(@upcomingMatches) return @upcomingMatches @@ -34,6 +36,21 @@ class Tournament < ActiveRecord::Base return @matches end + def generateMatchups(matches,wrestlers,weight) + @wrestlers = wrestlers.select{|w| w.weight_id == weight.id} + if weight.pools == 1 + @pool = Pool.new + @matches = @pool.generatePools(1,@wrestlers,weight,self.id,matches) + elsif weight.pools == 2 + @pool = Pool.new + @matches = @pool.generatePools(2,@wrestlers,weight,self.id,matches) + elsif weight.pools == 4 + @pool = Pool.new + @matches = @pool.generatePools(4,@wrestlers,weight,self.id,matches) + end + return @matches + end + end diff --git a/app/models/weight.rb b/app/models/weight.rb index d3bae91..5c0953d 100644 --- a/app/models/weight.rb +++ b/app/models/weight.rb @@ -99,20 +99,5 @@ class Weight < ActiveRecord::Base end self.wrestlers.size end - - def generateMatchups(matches) - @wrestlers = self.wrestlers - if self.pools == 1 - @pool = Pool.new - @matches = @pool.generatePools(1,@wrestlers,self,self.tournament_id,matches) - elsif self.pools == 2 - @pool = Pool.new - @matches = @pool.generatePools(2,@wrestlers,self,self.tournament_id,matches) - elsif self.pools == 4 - @pool = Pool.new - @matches = @pool.generatePools(4,@wrestlers,self,self.tournament_id,matches) - end - return @matches - end end