From 146da01a7d5c48e2897dcd34a0e7a344993d273b Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Tue, 31 Mar 2009 22:25:52 +1300 Subject: [PATCH] Freebusy time should all be GMT based. --- inc/caldav-POST.php | 12 ++-- .../regression-suite/243-Moz-POST-FB.result | 10 +-- .../regression-suite/244-Moz-POST-FB.result | 32 ++++----- .../regression-suite/516-iCal-POST.result | 6 +- .../regression-suite/517-iCal-POST.result | 10 +-- .../regression-suite/880-Freebusy-POST.result | 68 +++++++++---------- 6 files changed, 70 insertions(+), 68 deletions(-) diff --git a/inc/caldav-POST.php b/inc/caldav-POST.php index 35c3c90d..066d4c0d 100644 --- a/inc/caldav-POST.php +++ b/inc/caldav-POST.php @@ -128,7 +128,7 @@ function handle_freebusy_request( $ic ) { $i = 0; $fb = new iCalComponent(); - $fb->AddProperty( 'DTSTAMP', date('Ymd\THis\Z') ); + $fb->AddProperty( 'DTSTAMP', gmdate('Ymd\THis\Z') ); $fb->AddProperty( 'DTSTART', $fbq_start ); $fb->AddProperty( 'DTEND', $fbq_end ); $fb->AddProperty( 'UID', $ic->GetPValue('UID') ); @@ -147,11 +147,12 @@ function handle_freebusy_request( $ic ) { if ( $date->GreaterThan($fbq_end) ) break; $todate = clone($date); $todate->AddDuration($duration); - $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $date->Render('Ymd\THis'), $todate->Render('Ymd\THis') ), $fbparams); + $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $date->RenderGMT(), $todate->RenderGMT() ), $fbparams); } } else { - $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $start->Render('Ymd\THis'), $v->finish ), $fbparams ); + $finish = new iCalDate($v->finish); + $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $start->RenderGMT(), $finish->RenderGMT() ), $fbparams ); } } @@ -166,11 +167,12 @@ function handle_freebusy_request( $ic ) { if ( $date->GreaterThan($fbq_end) ) break; $todate = clone($date); $todate->AddDuration($duration); - $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $date->Render('Ymd\THis'), $todate->Render('Ymd\THis') ), $fbparams ); + $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $date->RenderGMT(), $todate->RenderGMT() ), $fbparams ); } } else { - $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $start->Render('Ymd\THis'), $v->finish ), $fbparams ); + $finish = new iCalDate($v->finish); + $fb->AddProperty("FREEBUSY", sprintf("%s/%s", $start->RenderGMT(), $finish->RenderGMT() ), $fbparams ); } } diff --git a/testing/tests/regression-suite/243-Moz-POST-FB.result b/testing/tests/regression-suite/243-Moz-POST-FB.result index 6c14aec6..0af9ddb8 100644 --- a/testing/tests/regression-suite/243-Moz-POST-FB.result +++ b/testing/tests/regression-suite/243-Moz-POST-FB.result @@ -18,11 +18,11 @@ UID:c5bd82ea-cd89-4f58-8d31-336f47e44f97 ORGANIZER:mailto:user1@example.net ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;CUTYPE=INDIVIDUAL: mailto:user1@example.net -FREEBUSY;FBTYPE=BUSY:20081021T184500/20081021T193000 -FREEBUSY;FBTYPE=BUSY:20081023T184500/20081023T193000 -FREEBUSY;FBTYPE=BUSY:20081028T184500/20081028T193000 -FREEBUSY;FBTYPE=BUSY:20081030T184500/20081030T193000 -FREEBUSY;FBTYPE=BUSY:20081104T184500/20081104T193000 +FREEBUSY;FBTYPE=BUSY:20081021T054500Z/20081021T063000Z +FREEBUSY;FBTYPE=BUSY:20081023T054500Z/20081023T063000Z +FREEBUSY;FBTYPE=BUSY:20081028T054500Z/20081028T063000Z +FREEBUSY;FBTYPE=BUSY:20081030T054500Z/20081030T063000Z +FREEBUSY;FBTYPE=BUSY:20081104T054500Z/20081104T063000Z END:VFREEBUSY END:VCALENDAR diff --git a/testing/tests/regression-suite/244-Moz-POST-FB.result b/testing/tests/regression-suite/244-Moz-POST-FB.result index 0090894c..435ad8e6 100644 --- a/testing/tests/regression-suite/244-Moz-POST-FB.result +++ b/testing/tests/regression-suite/244-Moz-POST-FB.result @@ -18,22 +18,22 @@ UID:c5bd82ea-cd89-4f58-8d31-336f47e44f97 ORGANIZER:mailto:user1@example.net ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;CUTYPE=INDIVIDUAL: mailto:user2@example.net -FREEBUSY;FBTYPE=BUSY:20081020T220000/20081020T223000 -FREEBUSY;FBTYPE=BUSY:20081021T220000/20081021T223000 -FREEBUSY;FBTYPE=BUSY:20081022T220000/20081022T223000 -FREEBUSY;FBTYPE=BUSY:20081023T220000/20081023T223000 -FREEBUSY;FBTYPE=BUSY:20081024T220000/20081024T223000 -FREEBUSY;FBTYPE=BUSY:20081027T220000/20081027T223000 -FREEBUSY;FBTYPE=BUSY:20081028T220000/20081028T223000 -FREEBUSY;FBTYPE=BUSY:20081029T220000/20081029T223000 -FREEBUSY;FBTYPE=BUSY:20081030T220000/20081030T223000 -FREEBUSY;FBTYPE=BUSY:20081031T220000/20081031T223000 -FREEBUSY;FBTYPE=BUSY:20081103T220000/20081103T223000 -FREEBUSY;FBTYPE=BUSY:20081104T220000/20081104T223000 -FREEBUSY;FBTYPE=BUSY:20081026T200000/20081026T210000 -FREEBUSY;FBTYPE=BUSY:20081102T200000/20081102T210000 -FREEBUSY;FBTYPE=BUSY:20081024T010000/20081024T020000 -FREEBUSY;FBTYPE=BUSY:20081031T010000/20081031T020000 +FREEBUSY;FBTYPE=BUSY:20081020T090000Z/20081020T093000Z +FREEBUSY;FBTYPE=BUSY:20081021T090000Z/20081021T093000Z +FREEBUSY;FBTYPE=BUSY:20081022T090000Z/20081022T093000Z +FREEBUSY;FBTYPE=BUSY:20081023T090000Z/20081023T093000Z +FREEBUSY;FBTYPE=BUSY:20081024T090000Z/20081024T093000Z +FREEBUSY;FBTYPE=BUSY:20081027T090000Z/20081027T093000Z +FREEBUSY;FBTYPE=BUSY:20081028T090000Z/20081028T093000Z +FREEBUSY;FBTYPE=BUSY:20081029T090000Z/20081029T093000Z +FREEBUSY;FBTYPE=BUSY:20081030T090000Z/20081030T093000Z +FREEBUSY;FBTYPE=BUSY:20081031T090000Z/20081031T093000Z +FREEBUSY;FBTYPE=BUSY:20081103T090000Z/20081103T093000Z +FREEBUSY;FBTYPE=BUSY:20081104T090000Z/20081104T093000Z +FREEBUSY;FBTYPE=BUSY:20081026T070000Z/20081026T080000Z +FREEBUSY;FBTYPE=BUSY:20081102T070000Z/20081102T080000Z +FREEBUSY;FBTYPE=BUSY:20081023T120000Z/20081023T130000Z +FREEBUSY;FBTYPE=BUSY:20081030T120000Z/20081030T130000Z END:VFREEBUSY END:VCALENDAR diff --git a/testing/tests/regression-suite/516-iCal-POST.result b/testing/tests/regression-suite/516-iCal-POST.result index 2dce30c9..b8b29a78 100644 --- a/testing/tests/regression-suite/516-iCal-POST.result +++ b/testing/tests/regression-suite/516-iCal-POST.result @@ -17,9 +17,9 @@ DTEND:20081024T083000Z UID:89E43E7F-911D-4052-9FE3-4782268649E0 ORGANIZER:mailto:user1@example.net X-WR-ATTENDEE:mailto:user2@example.net -FREEBUSY;FBTYPE=BUSY:20081022T220000/20081022T223000 -FREEBUSY;FBTYPE=BUSY:20081023T220000/20081023T223000 -FREEBUSY;FBTYPE=BUSY:20081024T010000/20081024T020000 +FREEBUSY;FBTYPE=BUSY:20081022T090000Z/20081022T093000Z +FREEBUSY;FBTYPE=BUSY:20081023T090000Z/20081023T093000Z +FREEBUSY;FBTYPE=BUSY:20081023T120000Z/20081023T130000Z END:VFREEBUSY END:VCALENDAR diff --git a/testing/tests/regression-suite/517-iCal-POST.result b/testing/tests/regression-suite/517-iCal-POST.result index 79f85b95..05ca8d32 100644 --- a/testing/tests/regression-suite/517-iCal-POST.result +++ b/testing/tests/regression-suite/517-iCal-POST.result @@ -17,9 +17,9 @@ DTEND:20081024T113000 UID:174F9C2A-1223-40C4-9E06-6E91F2EA9491 ORGANIZER;CN="User 1":mailto:user1@example.net ATTENDEE;CN="User 1";PARTSTAT=ACCEPTED:mailto:user1@example.net -FREEBUSY;FBTYPE=BUSY:20081023T184500/20081023T193000 -FREEBUSY;FBTYPE=BUSY:20081022T180000/20081023T040000 -FREEBUSY;FBTYPE=BUSY:20081023T180000/20081024T040000 +FREEBUSY;FBTYPE=BUSY:20081023T054500Z/20081023T063000Z +FREEBUSY;FBTYPE=BUSY:20081022T050000Z/20081022T150000Z +FREEBUSY;FBTYPE=BUSY:20081023T050000Z/20081023T150000Z END:VFREEBUSY END:VCALENDAR @@ -42,8 +42,8 @@ UID:174F9C2A-1223-40C4-9E06-6E91F2EA9491 ORGANIZER;CN="User 1":mailto:user1@example.net X-WR-ATTENDEE;CN=\"user2\";CUTYPE=INDIVIDUAL;PARTSTAT=NEEDS-ACTION;ROLE= REQ-PARTICIPANT;RSVP=TRUE:mailto:user2@example.net -FREEBUSY;FBTYPE=BUSY:20081022T220000/20081022T223000 -FREEBUSY;FBTYPE=BUSY:20081023T220000/20081023T223000 +FREEBUSY;FBTYPE=BUSY:20081022T090000Z/20081022T093000Z +FREEBUSY;FBTYPE=BUSY:20081023T090000Z/20081023T093000Z END:VFREEBUSY END:VCALENDAR diff --git a/testing/tests/regression-suite/880-Freebusy-POST.result b/testing/tests/regression-suite/880-Freebusy-POST.result index f9587366..b117ed1d 100644 --- a/testing/tests/regression-suite/880-Freebusy-POST.result +++ b/testing/tests/regression-suite/880-Freebusy-POST.result @@ -18,24 +18,24 @@ UID:1e680b0e-ee15-4d63-844f-3e48aa92791f ORGANIZER:mailto:user1@example.net ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;CUTYPE=INDIVIDUAL: mailto:user1@example.net -FREEBUSY;FBTYPE=BUSY:20081021T184500/20081021T193000 -FREEBUSY;FBTYPE=BUSY:20081023T184500/20081023T193000 -FREEBUSY;FBTYPE=BUSY:20081028T184500/20081028T193000 -FREEBUSY;FBTYPE=BUSY:20081030T184500/20081030T193000 -FREEBUSY;FBTYPE=BUSY:20081104T184500/20081104T193000 -FREEBUSY;FBTYPE=BUSY:20081102T183000/20081102T203000 -FREEBUSY;FBTYPE=BUSY:20081021T180000/20081022T040000 -FREEBUSY;FBTYPE=BUSY:20081022T180000/20081023T040000 -FREEBUSY;FBTYPE=BUSY:20081023T180000/20081024T040000 -FREEBUSY;FBTYPE=BUSY:20081024T180000/20081025T040000 -FREEBUSY;FBTYPE=BUSY:20081027T180000/20081028T040000 -FREEBUSY;FBTYPE=BUSY:20081028T180000/20081029T040000 -FREEBUSY;FBTYPE=BUSY:20081029T180000/20081030T040000 -FREEBUSY;FBTYPE=BUSY:20081030T180000/20081031T040000 -FREEBUSY;FBTYPE=BUSY:20081031T180000/20081101T040000 -FREEBUSY;FBTYPE=BUSY:20081103T180000/20081104T040000 -FREEBUSY;FBTYPE=BUSY:20081104T180000/20081105T040000 -FREEBUSY;FBTYPE=BUSY:20081105T180000/20081106T040000 +FREEBUSY;FBTYPE=BUSY:20081021T054500Z/20081021T063000Z +FREEBUSY;FBTYPE=BUSY:20081023T054500Z/20081023T063000Z +FREEBUSY;FBTYPE=BUSY:20081028T054500Z/20081028T063000Z +FREEBUSY;FBTYPE=BUSY:20081030T054500Z/20081030T063000Z +FREEBUSY;FBTYPE=BUSY:20081104T054500Z/20081104T063000Z +FREEBUSY;FBTYPE=BUSY:20081102T053000Z/20081102T073000Z +FREEBUSY;FBTYPE=BUSY:20081021T050000Z/20081021T150000Z +FREEBUSY;FBTYPE=BUSY:20081022T050000Z/20081022T150000Z +FREEBUSY;FBTYPE=BUSY:20081023T050000Z/20081023T150000Z +FREEBUSY;FBTYPE=BUSY:20081024T050000Z/20081024T150000Z +FREEBUSY;FBTYPE=BUSY:20081027T050000Z/20081027T150000Z +FREEBUSY;FBTYPE=BUSY:20081028T050000Z/20081028T150000Z +FREEBUSY;FBTYPE=BUSY:20081029T050000Z/20081029T150000Z +FREEBUSY;FBTYPE=BUSY:20081030T050000Z/20081030T150000Z +FREEBUSY;FBTYPE=BUSY:20081031T050000Z/20081031T150000Z +FREEBUSY;FBTYPE=BUSY:20081103T050000Z/20081103T150000Z +FREEBUSY;FBTYPE=BUSY:20081104T050000Z/20081104T150000Z +FREEBUSY;FBTYPE=BUSY:20081105T050000Z/20081105T150000Z END:VFREEBUSY END:VCALENDAR @@ -58,22 +58,22 @@ UID:1e680b0e-ee15-4d63-844f-3e48aa92791f ORGANIZER:mailto:user1@example.net ATTENDEE;PARTSTAT=NEEDS-ACTION;ROLE=REQ-PARTICIPANT;CUTYPE=INDIVIDUAL: mailto:user2@example.net -FREEBUSY;FBTYPE=BUSY:20081021T220000/20081021T223000 -FREEBUSY;FBTYPE=BUSY:20081022T220000/20081022T223000 -FREEBUSY;FBTYPE=BUSY:20081023T220000/20081023T223000 -FREEBUSY;FBTYPE=BUSY:20081024T220000/20081024T223000 -FREEBUSY;FBTYPE=BUSY:20081027T220000/20081027T223000 -FREEBUSY;FBTYPE=BUSY:20081028T220000/20081028T223000 -FREEBUSY;FBTYPE=BUSY:20081029T220000/20081029T223000 -FREEBUSY;FBTYPE=BUSY:20081030T220000/20081030T223000 -FREEBUSY;FBTYPE=BUSY:20081031T220000/20081031T223000 -FREEBUSY;FBTYPE=BUSY:20081103T220000/20081103T223000 -FREEBUSY;FBTYPE=BUSY:20081104T220000/20081104T223000 -FREEBUSY;FBTYPE=BUSY:20081105T220000/20081105T223000 -FREEBUSY;FBTYPE=BUSY:20081026T200000/20081026T210000 -FREEBUSY;FBTYPE=BUSY:20081102T200000/20081102T210000 -FREEBUSY;FBTYPE=BUSY:20081024T010000/20081024T020000 -FREEBUSY;FBTYPE=BUSY:20081031T010000/20081031T020000 +FREEBUSY;FBTYPE=BUSY:20081021T090000Z/20081021T093000Z +FREEBUSY;FBTYPE=BUSY:20081022T090000Z/20081022T093000Z +FREEBUSY;FBTYPE=BUSY:20081023T090000Z/20081023T093000Z +FREEBUSY;FBTYPE=BUSY:20081024T090000Z/20081024T093000Z +FREEBUSY;FBTYPE=BUSY:20081027T090000Z/20081027T093000Z +FREEBUSY;FBTYPE=BUSY:20081028T090000Z/20081028T093000Z +FREEBUSY;FBTYPE=BUSY:20081029T090000Z/20081029T093000Z +FREEBUSY;FBTYPE=BUSY:20081030T090000Z/20081030T093000Z +FREEBUSY;FBTYPE=BUSY:20081031T090000Z/20081031T093000Z +FREEBUSY;FBTYPE=BUSY:20081103T090000Z/20081103T093000Z +FREEBUSY;FBTYPE=BUSY:20081104T090000Z/20081104T093000Z +FREEBUSY;FBTYPE=BUSY:20081105T090000Z/20081105T093000Z +FREEBUSY;FBTYPE=BUSY:20081026T070000Z/20081026T080000Z +FREEBUSY;FBTYPE=BUSY:20081102T070000Z/20081102T080000Z +FREEBUSY;FBTYPE=BUSY:20081023T120000Z/20081023T130000Z +FREEBUSY;FBTYPE=BUSY:20081030T120000Z/20081030T130000Z END:VFREEBUSY END:VCALENDAR