Files
fizzy/app/models/user/day_timeline/summarizable.rb
T
2025-07-25 10:04:07 +02:00

37 lines
655 B
Ruby

module User::DayTimeline::Summarizable
extend ActiveSupport::Concern
def summarized?
summary.present?
end
def summary
@summary ||= Event::ActivitySummary.for(events)
end
def summarizable?
day.past? || summarizable_today?
end
def summarize
Event::ActivitySummary.create_for(events)
end
def summary_key
Event::ActivitySummary.key_for(events)
end
def summarizable_content
Event::Summarizer.new(events).summarizable_content
end
def summarize_later
User::DayTimeline::SummarizeJob.perform_later(self)
end
private
def summarizable_today?
day.today? && events.count >= 10
end
end