Class: Workarea::Admin::TimelineViewModel
- Inherits:
-
ApplicationViewModel
- Object
- ApplicationViewModel
- Workarea::Admin::TimelineViewModel
- Defined in:
- app/view_models/workarea/admin/timeline_view_model.rb
Instance Method Summary collapse
- #activity ⇒ Object
- #activity_by_day ⇒ Object
- #empty? ⇒ Boolean
- #subject ⇒ Object
- #today_has_activity ⇒ Object
- #upcoming_changesets ⇒ Object
Instance Method Details
#activity ⇒ Object
10 11 12 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 10 def activity @activity ||= ActivityViewModel.new(nil, id: model.id) end |
#activity_by_day ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 14 def activity_by_day @days ||= activity.entries.reduce({}) do |memo, entry| day = entry.created_at.to_date memo[day] ||= [] memo[day] << entry memo end end |
#empty? ⇒ Boolean
27 28 29 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 27 def empty? upcoming_changesets.empty? && activity.entries.empty? end |
#subject ⇒ Object
31 32 33 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 31 def subject @subject ||= ApplicationController.wrap_in_view_model(model, ) end |
#today_has_activity ⇒ Object
23 24 25 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 23 def today_has_activity activity_by_day[Time.zone.today].present? end |
#upcoming_changesets ⇒ Object
4 5 6 7 8 |
# File 'app/view_models/workarea/admin/timeline_view_model.rb', line 4 def upcoming_changesets @upcoming_changesets ||= ChangesetViewModel.wrap( model_changesets + content_changesets ) end |