ri_cal проблема с генерацией корма

У меня есть следующие настройки для создания канала iCal, когда наши цифровые рекламные поля подписываются на канал по адресу http://foo/rooms/foo/feed.ics они в порядке, получают информацию о событии, но не перестают отображать событие. Я полагаю, что это потому, что фактический ical-файл, сгенерированный функцией ниже, помещает dtend перед dtstart. Что я могу сделать, чтобы это исправить?

def feed
  @room = Room.find(params[:id])
  @events = @room.events
  respond_to do |format|
    if @room.valid?
      format.ics { render :text => self.generate_ical }
    else
      format.ics { render :nothing => true, :status => :forbidden}
    end
  end
end

def generate_ical
  RiCal.Calendar do |ical|
    ical.add_x_property 'X-WR-CALNAME',@room.name
    @events.each do |e|
      ical.event do |event|
        event.dtstart = e.start
        event.dtend = e.end
        event.summary = e.summary
      end
    end
  end.export
end

1 ответ

Решение

Похоже, проблема в читателе, а не в генераторе. Стандарт iCal не предусматривает какого-либо упорядочения свойств внутри объекта iCalendar.

Другие вопросы по тегам