app/models/tramway/event/participant.rb in tramway-event-1.9.19.1 vs app/models/tramway/event/participant.rb in tramway-event-1.9.19.2
- old
+ new
@@ -1,42 +1,44 @@
+# frozen_string_literal: true
+
class Tramway::Event::Participant < ::Tramway::Event::ApplicationRecord
belongs_to :event, class_name: 'Tramway::Event::Event'
-
+
state_machine :participation_state, initial: :requested do
state :requested
state :prev_approved
state :waiting
state :rejected
state :approved
state :without_answer
state :reserved
event :previous_approve do
- transition [ :requested, :without_answer, :waiting ] => :prev_approved
+ transition %i[requested without_answer waiting] => :prev_approved
end
event :wait_for_decision do
- transition [ :requested, :without_answer ] => :waiting
+ transition %i[requested without_answer] => :waiting
end
event :reserve do
- transition [ :requested, :without_answer, :waiting ] => :reserved
+ transition %i[requested without_answer waiting] => :reserved
end
event :reject do
- transition [ :requested, :without_answer, :waiting, :prev_approved, :reserved ] => :rejected
+ transition %i[requested without_answer waiting prev_approved reserved] => :rejected
end
event :approve do
- transition [ :prev_approved, :reserved, :requested ] => :approved
+ transition %i[prev_approved reserved requested] => :approved
end
event :not_got_answer do
transition requested: :without_answer
end
event :return_to_requested do
- transition [ :prev_approved, :rejected ] => :requested
+ transition %i[prev_approved rejected] => :requested
end
end
scope :requested, -> { where participation_state: :requested }
scope :waiting, -> { where participation_state: :waiting }