summaryrefslogtreecommitdiff
path: root/app/models/tournament.rb
diff options
context:
space:
mode:
authorLuke Shumaker <shumakl@purdue.edu>2014-04-22 15:50:21 -0400
committerLuke Shumaker <shumakl@purdue.edu>2014-04-22 15:50:21 -0400
commit9d226fcd27b6c2470edf718ad36a262348891470 (patch)
treebb17fce921d0017b6e9111bd81edc194c07f61d3 /app/models/tournament.rb
parent136b86453000aa6ad3a099efb96d85232eb2eeb5 (diff)
re-factor for tournament_stage's and separate scheduling modules
Diffstat (limited to 'app/models/tournament.rb')
-rw-r--r--app/models/tournament.rb31
1 files changed, 4 insertions, 27 deletions
diff --git a/app/models/tournament.rb b/app/models/tournament.rb
index 822e641..e21ccb1 100644
--- a/app/models/tournament.rb
+++ b/app/models/tournament.rb
@@ -1,15 +1,15 @@
class Tournament < ActiveRecord::Base
belongs_to :game
- has_many :matches
+ has_many :tournament_stages
has_many :settings_raw, class_name: "TournamentSetting"
has_and_belongs_to_many :players, class_name: "User", association_foreign_key: "player_id", join_table: "players_tournaments"
has_and_belongs_to_many :hosts, class_name: "User", association_foreign_key: "host_id", join_table: "hosts_tournaments"
- def matches_ordered
+ def stages_ordered
h = {}
i = 1
- matches.order(:id).each do |m|
- h[i] = m
+ self.tournament_stages.order(:id).each do |s|
+ h[i] = s
i += 1
end
return h
@@ -86,27 +86,4 @@ class Tournament < ActiveRecord::Base
players.delete(user)
end
end
-
- def setup
- num_teams = (self.players.count/self.min_players_per_team).floor
- num_matches = num_teams - 1
- for i in 1..num_matches
- self.matches.create(name: "Match #{i}", status: 0, submitted_peer_evaluations: 0)
- end
- match_num = num_matches-1
- team_num = 0
- #for each grouping of min_players_per_team
- players.each_slice(min_players_per_team) do |players|
-
- #if the match is full, move to the next match, otherwise move to the next team
- if (team_num == min_teams_per_match)
- match_num -= 1
- team_num = 0
- else
- team_num += 1
- end
- #create a new team in the current match
- self.matches[match_num].teams.push(Team.create(users: players))
- end
- end
end