Class: PollAnswer
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- PollAnswer
- Defined in:
- app/models/poll_answer.rb
Constant Summary collapse
- TEXT_LIMIT =
140
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.creation_parameters ⇒ Object
25 26 27 |
# File 'app/models/poll_answer.rb', line 25 def self.creation_parameters entity_parameters + %i(poll_question_id) end |
.entity_parameters ⇒ Object
21 22 23 |
# File 'app/models/poll_answer.rb', line 21 def self.entity_parameters %i(image text) end |
Instance Method Details
#change_priority(delta) ⇒ Object
39 40 41 42 43 44 45 46 47 48 |
# File 'app/models/poll_answer.rb', line 39 def change_priority(delta) new_priority = priority + delta adjacent = self.class.siblings(self).find_by(priority: new_priority) if adjacent.is_a?(self.class) && (adjacent.id != id) adjacent.update!(priority: priority) end update(priority: new_priority) self.class.siblings(self).map { |e| [e.id, e.priority] }.to_h end |
#editable_by?(user) ⇒ Boolean
30 31 32 |
# File 'app/models/poll_answer.rb', line 30 def editable_by?(user) poll_question.poll.editable_by?(user) end |
#poll ⇒ Object
34 35 36 |
# File 'app/models/poll_answer.rb', line 34 def poll poll_question&.poll end |