class Submission
Attributes
additional_info[R]
cfp_additional_answers[R]
co_presenter_profiles[R]
confirmed[R]
created_at[R]
feedback[RW]
id[R]
presenter_profile[R]
rating[R]
ratings[RW]
state[R]
talk[R]
trust[R]
updated_at[R]
Public Class Methods
new(json_hash)
click to toggle source
# File lib/papercall/models/submission.rb, line 9 def initialize(json_hash) @id = json_hash[:id] @state = json_hash[:state] @confirmed = json_hash[:confirmed] @created_at = Time.parse(json_hash[:created_at]) @updated_at = Time.parse(json_hash[:updated_at]) @additional_info = json_hash[:additional_info] @rating = json_hash[:rating] @trust = json_hash[:trust] @tags = json_hash[:tags] @co_presenter_profiles = json_hash[:co_presenter_profiles] @presenter_profile = PresenterProfile.new(json_hash[:profile]) @talk = Talk.new(json_hash[:talk]) @cfp_additional_answers = json_hash[:cfp_additional_question_answers] @ratings = [] @feedback = [] end
Public Instance Methods
accepted?()
click to toggle source
# File lib/papercall/models/submission.rb, line 51 def accepted? @state == 'accepted' end
confirmed?()
click to toggle source
# File lib/papercall/models/submission.rb, line 63 def confirmed? accepted? && @confirmed == true end
enough_reviews?()
click to toggle source
# File lib/papercall/models/submission.rb, line 31 def enough_reviews? @ratings.size >= 3 end
highly_rated?()
click to toggle source
# File lib/papercall/models/submission.rb, line 39 def highly_rated? @rating >= 75 && enough_reviews? end
low_rated?()
click to toggle source
# File lib/papercall/models/submission.rb, line 43 def low_rated? @rating <= 25 && enough_reviews? end
maybe?()
click to toggle source
# File lib/papercall/models/submission.rb, line 47 def maybe? !accepted? && !rejected? && enough_reviews? end
no_feedback?()
click to toggle source
# File lib/papercall/models/submission.rb, line 67 def no_feedback? @feedback.empty? end
no_reviews?()
click to toggle source
# File lib/papercall/models/submission.rb, line 27 def no_reviews? @ratings.empty? end
rejected?()
click to toggle source
# File lib/papercall/models/submission.rb, line 55 def rejected? @state == 'rejected' end
to_json()
click to toggle source
# File lib/papercall/models/submission.rb, line 75 def to_json this.to_h.to_json end
to_s()
click to toggle source
# File lib/papercall/models/submission.rb, line 71 def to_s puts "Submission: #{@id}, #{@talk.title}, #{@presenter_profile.name}. Number of reviews: #{@ratings.size}. Number of feedback: #{@feedback.size}" end
too_many_reviews?()
click to toggle source
# File lib/papercall/models/submission.rb, line 35 def too_many_reviews? @ratings.size >= 4 end
waitlisted?()
click to toggle source
# File lib/papercall/models/submission.rb, line 59 def waitlisted? @state == 'waitlist' end