2011-05-18 34 views
1

我有一個重複的UTC指定的iCal事件。一切似乎都輸出正確,但iCal客戶端是flailing:重複模式是M,W,F但開始日期(翻譯爲UTC)是一個星期二。iCal事件重複設置爲M,W,F - 顯示爲S,T,R!

被錯誤地計算的重複圖案是S,T,R。

這是不正常的的iCal輸出:

BEGIN:VCALENDAR 
VERSION:2.0 
METHOD:PUBLISH 
X-WR-CALNAME: Room ICCS008 
PRODID:-//Drupal iCal API//EN 
BEGIN:VEVENT 
UID:calendar.18861.field_date.0.8 
SUMMARY:CPSC 210 L2C 
DTSTAMP:20110518T123628Z 
DTSTART:20110621T010000Z 
DTEND:20110621T033000Z 
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,WE,FR;UNTIL=20110730T033000Z 
URL;VALUE=URI:https://localhost/event/2011/06/cpsc-210-l2c 
END:VEVENT 
END:VCALENDAR 

該事件應該在下午6:00 PST開始6月20日。該日曆正確地將其轉換爲UTC時間6月21日凌晨1點。它重複M,W,F一個月。然而,它似乎完全摒棄了谷歌日曆和蘋果iCal對重複事件的計算。

的第一個事件是顯示了在星期一,但第二個是在星期二,第三星期四,並從那時起它的S,T,R的重複圖案,直到結束。

這是一個錯誤的iCal?這是我的iCal創建者(Drupal的Views iCal)輸出錯誤嗎?

更新:好吧,很多人都導入了它,它適用於除蘋果iCal和雷鳥閃電以外的所有情況。

這是因爲進口的客戶是(我相信)在全球範圍劃定範圍的時區和一次性轉移的一切,正確。

但是,如果你訂閱它與GCal,它單獨範圍的每個事件的時間和kerplewey,顯示我上面描述的行爲。

UPDAT-IER

的iCal的文件本身是錯誤的 - 由於某種原因,某些客戶端可以處理的不正當和其他人不能,但作爲UTC指定的事件實際上是重複的每T,R, S上午1點,「好」的客戶根據當地TZ的情況將其退回。 iCal創建過程根據當地時區計算重複天數,而不是轉換爲UTC時間。這是Drupal iCal實現中的一個錯誤。

+0

我測試過您的具體例子在我自己的iCalendar發動機,在Outlook 2003中,並在谷歌日曆。我無法複製你的問題;在所有情況下,它似乎重複週一,週三和週五。我的心理能力建議你仔細檢查你當前計算機的時區(如果有幫助,我在EST中)。否則,祝你好運! – 2011-05-18 20:19:17

+0

哈哈,好的,謝謝克里斯,很好的驗證它是我的誰瘋了,而不是其他人=)我在PST,我有一個用戶報告它,我可以複製它在我的Google日曆和我的本地iCal客戶端。所以嗯...我會玩指定TZs,看看我是否可以散發更多光芒。謝謝! – Renee 2011-05-18 20:34:26

+0

一位朋友證實,這對他們在GCals中有效,但不在蘋果的iCal中。威爾德和威爾德! – Renee 2011-05-18 20:49:08

回答

0

的iCal的文件是錯誤的。

出於某種原因,某些客戶端可以處理錯誤,而其他客戶端則不能,但UTC中指定的事件實際上應該指定每個T,R,S(在UTC上午1:00)的重複週期,並且「好」的客戶根據當地的TZ將這個迴歸爲M,W,F。

輸出是基於重複輸入(M,W,F)而不是轉換爲UTC時間的本地時區計算重複天數。

所以......到drupal.stackexchange.com =)

1

檢查您的CCK日期字段。它是否設置爲UTC,站點時區或用戶時區?

確保它設置爲你使用輸入日期的任何時區。上述

+0

所有其他重複事件都顯示正常,這不是TZ問題 - 我希望它們在UTC並且時間正確。只有那些開始日期將其推到UTC的另一天。看起來日曆應用程序正在通過計算重複日期d-1將事件放入其自己的TZ時「調整」UTC(因此而不是M,W ,F是S,T,R)。 我需要知道的是,如果Drupal將錯誤地重複發佈,格式化(當我查看iCal規範時看起來不錯),如果是這樣,它應該如何輸出?如果你將上面的內容導入你的iCal客戶端,你會明白我的意思。 – Renee 2011-05-18 20:29:26

相關問題