2012-02-13 74 views
1

我有以下設置生成一個iCal飼料,當我們的數字標牌框訂閱飼料在http://foo/rooms/foo/feed.ics他們拉事件信息好,但不停止顯示事件。我相信這是因爲下面的函數生成的實際文件將dtend放在dtstart之前。有什麼我可以解決這個問題嗎?ri_cal問題與飼料生成

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 

回答

2

聽起來像這個問題是與飼料閱讀器,而不是飼料發生器。 iCal標準不會強制iCalendar對象中的任何屬性排序。

+0

我很清楚,這是晚,但非常感謝您的答案! – ridget 2012-06-21 07:20:59