diff --git a/app/controllers/main_controller.rb b/app/controllers/main_controller.rb --- a/app/controllers/main_controller.rb +++ b/app/controllers/main_controller.rb @@ -196,7 +196,7 @@ def problem_list_by_user_contests(user) contest_problems = [] pin = {} - user.contests.each do |contest| + user.contests.enabled.each do |contest| available_problems = contest.problems.available contest_problems << { :contest => contest, diff --git a/app/models/contest.rb b/app/models/contest.rb --- a/app/models/contest.rb +++ b/app/models/contest.rb @@ -3,4 +3,6 @@ has_and_belongs_to_many :users has_and_belongs_to_many :problems + named_scope :enabled, :conditions => {:enabled => true} + end diff --git a/app/models/user.rb b/app/models/user.rb --- a/app/models/user.rb +++ b/app/models/user.rb @@ -21,7 +21,7 @@ belongs_to :site belongs_to :country - has_and_belongs_to_many :contests, :uniq => true + has_and_belongs_to_many :contests, :uniq => true, :order => 'name' named_scope :activated_users, :conditions => {:activated => true}