Add registration_limit to conference model. Added the input for registration limit in the edit conference form. In the controller, if the limit has exceeded redirect to root_path with an alert. fix #761

This commit is contained in:
David Sedeño 2016-02-02 00:16:43 +01:00
parent 2034c0f965
commit 28fbc518f3
12 changed files with 124 additions and 16 deletions

View file

@ -26,6 +26,7 @@ class Registration < ActiveRecord::Base
validates :user, presence: true
validates_uniqueness_of :user_id, scope: :conference_id, message: 'already Registered!'
validate :registration_limit_not_exceed, on: :create
after_create :set_week, :subscribe_to_conference, :send_registration_mail
@ -49,4 +50,10 @@ class Registration < ActiveRecord::Base
self.week = created_at.strftime('%W')
save!
end
def registration_limit_not_exceed
if self.conference.registration_limit>0 && self.conference.registrations(:reload).count >= self.conference.registration_limit
errors.add(:base, 'Registration limit exceeded')
end
end
end