Class: Workarea::Admin::ReleasesFeedViewModel

Inherits:
ApplicationViewModel
  • Object
show all
Defined in:
app/view_models/workarea/admin/releases_feed_view_model.rb

Instance Method Summary collapse

Instance Method Details

#calendarObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/view_models/workarea/admin/releases_feed_view_model.rb', line 6

def calendar
  @calendar ||= Icalendar::Calendar.new.tap do |calendar|
    calendar.add_timezone(calendar_timezone)

    calendar.x_wr_calname = I18n.t(
      'workarea.admin.releases.feed.name',
      site_name: Workarea.config.site_name
    )

    releases.each do |release|
      calendar.event do |event|
        event.dtstart = format_date(release.starts_at)
        event.dtend = format_date(release.ends_at)
        event.summary = release.name
        event.description = release.description
      end
    end

    calendar
  end
end