Author: sebawagner
Date: Tue May  8 18:12:58 2012
New Revision: 1335669

URL: http://svn.apache.org/viewvc?rev=1335669&view=rev
Log:
Fixes wrong start/end date/time in iCal invitation part as time zone info was 
missing in DTSTART/DTEND

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/test/calendar/TestSendIcalMessage.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/IcalHandler.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java?rev=1335669&r1=1335668&r2=1335669&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java
 Tue May  8 18:12:58 2012
@@ -20,7 +20,6 @@ package org.openmeetings.app.data.confer
 
 import java.util.Calendar;
 import java.util.Date;
-import java.util.GregorianCalendar;
 import java.util.HashMap;
 import java.util.List;
 import java.util.TimeZone;
@@ -753,13 +752,8 @@ public class Invitationmanagement {
                HashMap<String, String> attendeeList = 
handler.getAttendeeData(user
                                .getAdresses().getEmail(), user.getLogin(), 
invitor);
 
-               GregorianCalendar start = new GregorianCalendar();
-               start.setTime(startdate);
-
-               GregorianCalendar end = new GregorianCalendar();
-               end.setTime(enddate);
-
-               handler.addNewMeeting(start, end, point.getAppointmentName(), 
atts,
+               handler.addNewMeeting(startdate, enddate, 
+                               point.getAppointmentName(), atts,
                                subject, attendeeList, point.getIcalId(), 
timezone);
 
                log.debug(handler.getICalDataAsString());
@@ -805,13 +799,7 @@ public class Invitationmanagement {
                HashMap<String, String> attendeeList = 
handler.getAttendeeData(user
                                .getAdresses().getEmail(), user.getLogin(), 
invitor);
 
-               GregorianCalendar start = new GregorianCalendar();
-               start.setTime(starttime);
-
-               GregorianCalendar end = new GregorianCalendar();
-               end.setTime(endtime);
-
-               handler.addNewMeeting(start, end, point.getAppointmentName(), 
atts,
+               handler.addNewMeeting(starttime, endtime, 
point.getAppointmentName(), atts,
                                subject, attendeeList, point.getIcalId(), 
timeZone);
 
                log.debug(handler.getICalDataAsString());
@@ -886,16 +874,8 @@ public class Invitationmanagement {
                                organizerAttendee = 
handler.getAttendeeData(replyToEmail, user.getLogin(), invitor);
                        }
 
-                       GregorianCalendar start = new 
GregorianCalendar(timezone);
-                       start.setTime(starttime); // Must be the calculated 
date base on the
-                                                                               
// time zone
-
-                       GregorianCalendar end = new GregorianCalendar(timezone);
-                       end.setTime(endtime); // Must be the calculated date 
base on the
-                                                                       // time 
zone
-
                        // Create ICal Message
-                       String meetingId = handler.addNewMeeting(start, end,
+                       String meetingId = handler.addNewMeeting(starttime, 
endtime,
                                        point.getAppointmentName(), atts, 
invitation_link,
                                        organizerAttendee, point.getIcalId(), 
timezone);
 

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/test/calendar/TestSendIcalMessage.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/test/calendar/TestSendIcalMessage.java?rev=1335669&r1=1335668&r2=1335669&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/test/calendar/TestSendIcalMessage.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/test/calendar/TestSendIcalMessage.java
 Tue May  8 18:12:58 2012
@@ -199,13 +199,9 @@ public class TestSendIcalMessage extends
                        String username = "shans";
                        boolean invitor = false;
 
-                       GregorianCalendar start = new GregorianCalendar();
-                       Calendar start1 = Calendar.getInstance();
-                       start.setTimeInMillis(start1.getTimeInMillis() + 
900000);
-
-                       GregorianCalendar end = new GregorianCalendar();
-                       Calendar end1 = Calendar.getInstance();
-                       end.setTimeInMillis(end1.getTimeInMillis() + 1800000);
+                       Calendar start = Calendar.getInstance();
+
+                       Calendar end = Calendar.getInstance();
 
                        IcalHandler handler = new IcalHandler(
                                        IcalHandler.ICAL_METHOD_REQUEST);
@@ -222,7 +218,7 @@ public class TestSendIcalMessage extends
                        atts.add(attendeeList);
 
                        // Create ICal Message
-                       String meetingId = handler.addNewMeeting(start, end, 
"test event",
+                       String meetingId = 
handler.addNewMeeting(start.getTime(), end.getTime(), "test event",
                                        atts, 
"localhost:5080/link_openmeetings",
                                        organizerAttendee, "", 
TimeZone.getDefault());
 

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/IcalHandler.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/IcalHandler.java?rev=1335669&r1=1335668&r2=1335669&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/IcalHandler.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/IcalHandler.java
 Tue May  8 18:12:58 2012
@@ -21,7 +21,7 @@ package org.openmeetings.utils.mail;
 import java.io.ByteArrayOutputStream;
 import java.io.FileOutputStream;
 import java.net.URI;
-import java.util.GregorianCalendar;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Vector;
 
@@ -118,8 +118,8 @@ public class IcalHandler {
         * @return UID of Meeting
         */
        // 
---------------------------------------------------------------------------------------
-       public String addNewMeeting(GregorianCalendar startDate,
-                       GregorianCalendar endDate, String name,
+       public String addNewMeeting(Date startDate,
+                       Date endDate, String name,
                        Vector<HashMap<String, String>> attendees, String 
description,
                        HashMap<String, String> organizer, String uid, 
java.util.TimeZone normalTimeZone)
                        throws Exception {
@@ -129,8 +129,11 @@ public class IcalHandler {
                
                TimeZone timeZone = 
registry.getTimeZone(normalTimeZone.getID());
 
-               DateTime start = new DateTime(startDate.getTime());
-               DateTime end = new DateTime(endDate.getTime());
+               DateTime start = new DateTime(startDate);
+               start.setTimeZone(timeZone);
+               DateTime end = new DateTime(endDate);
+               end.setTimeZone(timeZone);
+               
                VEvent meeting = new VEvent(start, end, name);
 
                // add timezone info..


Reply via email to