summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorDavisLWebb <davislwebb@ymail.com>2014-04-03 17:56:24 -0400
committerDavisLWebb <davislwebb@ymail.com>2014-04-03 17:56:24 -0400
commit8b3fae332f81b42671bd2a4f332626c75fdeb976 (patch)
tree917b5d74695b69670a75f83f0ba3deeb83e44f07 /app/models
parent6289593da4b6ad30c893b61caf4ac142b590710a (diff)
parent0c1583c0b31504dfdbbbec3e6dcc240acb059891 (diff)
Merge branch 'master' of https://github.com/LukeShu/Leaguer
Diffstat (limited to 'app/models')
-rw-r--r--app/models/tournament.rb8
-rw-r--r--app/models/user.rb15
2 files changed, 19 insertions, 4 deletions
diff --git a/app/models/tournament.rb b/app/models/tournament.rb
index 4483535..6d92f3d 100644
--- a/app/models/tournament.rb
+++ b/app/models/tournament.rb
@@ -20,12 +20,12 @@ class Tournament < ActiveRecord::Base
end
def leave(user)
- if players.include?(user)
+ if players.include?(user) && status == 0
players.delete(user)
end
end
- def setup(tournament)
+ def setup()
num_teams = (self.players.count/self.max_players_per_team).floor
num_matches = num_teams - 1
for i in 1..num_matches
@@ -33,9 +33,9 @@ class Tournament < ActiveRecord::Base
end
match_num = 0
team_num = 0
- self.players.each_slice(tournament.max_players_per_team) do |players|
+ self.players.each_slice(max_players_per_team) do |players|
self.matches[match_num].teams.push(Team.create(users: players))
- if (team_num != 0 and team_num % tournament.max_teams_per_match == 0)
+ if (team_num != 0 and team_num % max_teams_per_match == 0)
match_num += 1
team_num = 0
else
diff --git a/app/models/user.rb b/app/models/user.rb
index 7c8ae84..9a0948f 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -93,3 +93,18 @@ class User < ActiveRecord::Base
validates :password, length: { minimum: 6 }
end
+class NilUser
+ def nil?
+ return true
+ end
+ def can?(action)
+ return false
+ end
+ def method_missing(name, *args)
+ # Throw an error if User doesn't have this method
+ super unless User.new.respond_to?(name)
+ # User has this method -- return a blank value
+ # 'false' if the method ends with '?'; 'nil' otherwise.
+ name.ends_with?('?') ? false : nil
+ end
+end