clarion/app/models/suggestion_group.rb
2014-10-10 19:23:38 +03:00

15 lines
487 B
Ruby

class SuggestionGroup
include ActiveModel::Model
attr_accessor :speaker, :suggestions
def self.where(conditions = {})
Event.joins(:track).includes(:user).where(conditions).group_by(&:user).map do |speaker, suggestions|
SuggestionGroup.new speaker: speaker, suggestions: suggestions
end.sort_by { |group| group.speaker.name }
end
def self.for_conference(conference, conditions = {})
where conditions.merge({tracks: {conference_id: conference.id}})
end
end