Closed Bug 438963 Opened 12 years ago Closed 12 years ago

All day event is shown on the day before the actual day of the event (only in the today pane)

Categories

(Calendar :: Lightning Only, defect)

defect
Not set

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: anil.srivastava, Assigned: berend.cornelius09)

Details

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9) Gecko/2008061004 Firefox/3.0
Build Identifier: 0.9pre build 2008061119

some users have reported the case where an all day event is shown, in the today pane, on the day before the actual day of the event in addition to the actual day of the event.

However, in the calendar grid view the event is shown on the actual day.

Reproducible: Sometimes

Steps to Reproduce:
1.
2.
3.
Does this happens only with wcap provider? Or also with e.g. storage, ics or caldav provider? Related to Bug 437420?
@Anil: It's not possible for me to reproduce this issue. Please provide more information or some 'Steps to reproduce'. Maybe this issue is duplicate to bug 417222 
Here are the steps to reproduce the bug (as told to me by the person who reported this bug to me).

>>>>
It's pretty simple to describe:

I double click on the top section of the day's calendar in the correct date column.  (I always view my calendar weekly.)   A pop up (New Event: New Event) comes up and it is already checked as an all-day event.  I insert WFH (for instance) in the title line, and then click "save and close."  It populates my calendar properly, but I get WFH for both the correct day and the day prior to that.

>>>>
Thunderbird: 2.0.0.14 (20080421)
Lightning: 0.9pre (build 2008061719)

I have also get this bug, and the way of reproducing it is as described above.
@all: Thanks for the information and the screen shot. Now it's possible for me to reproduce this issue:

STR:

- local time is 'Europe/Paris' (MEST)
- set lightning timezone to 'Pacific/Rarotonga'
- create a all day event by double mouse clicking the all day section
- the timezone in the edit item dialog is 'Pacific/Rarotonga' -> BUG, should be 'Local Time'
- save this event, change the timezone of lightning to 'Europe/Paris' and restart Thunderbird
- check the today pane -> the all day event is visible in 'Today' and 'Tomorrow'

If you select the 'all day' checkbox in the 'Edit Item' dialog manually the timezone changed to 'Local Time' and this is correct.

The root cause of this bug is:

All day events created by double mouse clicking in the all day section are not 'floating' events.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: blocking-calendar0.9+
I think the function createEventWithDialog() should ensure that start and end dates are set to floating when creating all day:
http://bonsai.mozilla.org/cvsblame.cgi?file=/mozilla/calendar/base/content/calendar-item-editing.js&rev=1.62&mark=64,88#63
Attached patch patch v. #1Splinter Review
In reply to comment #6: I think Stefan spotted the right location to set the timezone.
Assignee: nobody → Berend.Cornelius
Status: NEW → ASSIGNED
Attachment #326664 - Flags: review?(daniel.boelzle)
And the Agenda in the Today Pane should be checked to correctly display all day events that have a timezone set. The views already do it right after all ...
Comment on attachment 326664 [details] [diff] [review]
patch v. #1

r=dbo
Attachment #326664 - Flags: review?(daniel.boelzle) → review+
patch checked in on trunk and MOZILLA_1_8_BRANCH

Before I set the issue to "fixed" we should evaluate Stefan's comment #8
Target Milestone: --- → 0.9
regarding comment 8: in bug 445764 Daniel correctly states that allday events shouldn't have timezones. However the original rfc2445 doesn't state this. So we should be able to parse date-values with timezones.
(In reply to comment #11)
Bas, we correctly parse the timezones of DATE values. We just don't *create* all-day events with timezones any longer. If you think parsing broken, please file a bug.
I've tested this with two different timezones:

In Europe/Paris (same offset as my default timezone), the event displayed correctly.

In Pacific/Pago_Pago, the event was shown both for today and tomorrow. Whats the expected outcome here? Since the event is far away, relative to Europe/Berlin it may actually be today and tomorrow. Do we want this event shown on both days, or just one?
(In reply to comment #13)
> I've tested this with two different timezones:
> 
> In Europe/Paris (same offset as my default timezone), the event displayed
> correctly.
> 
> In Pacific/Pago_Pago, the event was shown both for today and tomorrow. Whats
> the expected outcome here? Since the event is far away, relative to
> Europe/Berlin it may actually be today and tomorrow. Do we want this event
> shown on both days, or just one?

This is exactly how Outlook 2003 does it, when you change your timezone only in the application and not in the OS as well. So I would say, that what we're doing is correct, since we're looking at the event from a German date-time view (OS timezone is still set to CEST).
Whiteboard: [patch in hand]
In that case, this one is FIXED. If anyone disagrees with the way its working now, please reopen.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Whiteboard: [patch in hand]
I think we're doing right here. That's the reason why all-day events shouldn't be tied to a timezone. If someone does so, we calculate the event from 0:00 to -24:00 in that timezone. If this falls into two days observing from another timezone, we show the event spanning those days then.
Checked in lightning 2008082103 and sunbird 20080820 -> VERIFIED
Status: RESOLVED → VERIFIED
I still see the problem with Sunbird 0.9 -- tomorrow's all-day events show up in the "Currently Selected Day" window.

Also, when I print the month view, I manually specify only to print the days within the month, as opposed to the trailing days from the previous month and the leading days from the following month.

But all-day events from the first day of the following month are shown. So if I specify to print October 1-31, the all-day events are shown in the box for November 1. In this case the events are listed under the correct day, but they should not be shown.
You need to log in before you can comment on or make changes to this bug.