Author: solomax
Date: Tue Oct 2 15:38:09 2012
New Revision: 1392980
URL: http://svn.apache.org/viewvc?rev=1392980&view=rev
Log:
TimeZone is added to the invitation
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/JabberWebService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/calendar/management/MeetingMemberLogic.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Invitationmanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/invitation/Invitations.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/InvitationService.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/JabberWebService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/JabberWebService.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/JabberWebService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/JabberWebService.java
Tue Oct 2 15:38:09 2012
@@ -23,6 +23,8 @@ import java.util.List;
import org.apache.openmeetings.OpenmeetingsVariables;
import org.apache.openmeetings.data.basic.AuthLevelmanagement;
import org.apache.openmeetings.data.basic.Sessionmanagement;
+import org.apache.openmeetings.data.basic.dao.ConfigurationDaoImpl;
+import org.apache.openmeetings.data.basic.dao.OmTimeZoneDaoImpl;
import org.apache.openmeetings.data.conference.Invitationmanagement;
import org.apache.openmeetings.data.user.Usermanagement;
import org.apache.openmeetings.persistence.beans.domain.Organisation_Users;
@@ -56,6 +58,10 @@ public class JabberWebService {
private ConferenceService conferenceService;
@Autowired
private Invitationmanagement invitationManagement;
+ @Autowired
+ private OmTimeZoneDaoImpl omTimeZoneDaoImpl;
+ @Autowired
+ private ConfigurationDaoImpl cfgManagement;
/**
* Get List<Rooms> of all rooms available to the user.
@@ -127,7 +133,8 @@ public class JabberWebService {
user_level, username, username, username,
username, username,
room_id, "", Boolean.valueOf(false), null,
Integer.valueOf(3),
null, null, users_id, "", Long.valueOf(1L),
- Boolean.valueOf(false), null, null, null,
username);
+ Boolean.valueOf(false), null, null, null,
username
+ ,
omTimeZoneDaoImpl.getOmTimeZone(cfgManagement.getConfValue("default.timezone",
String.class, "Europe/Berlin")));
return ((invitation == null) ? null : invitation.getHash());
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/RoomWebService.java
Tue Oct 2 15:38:09 2012
@@ -1716,7 +1716,7 @@ public class RoomWebService {
username,
username, username, room_id, "",
isPasswordProtected, invitationpass, valid,
dFrom, dTo,
users_id, "", 1L, false, dFrom,
- dTo, null,
username);
+ dTo, null,
username, userManagement.getUserById(users_id).getOmTimeZone());
if (invitation != null) {
@@ -1855,7 +1855,7 @@ public class RoomWebService {
baseurl, email,
subject, room_id, "",
isPasswordProtected, invitationpass, valid,
dFrom, dTo,
users_id, baseurl, language_id,
- sendMail,
dFrom, dTo, null, username);
+ sendMail,
dFrom, dTo, null, username,
userManagement.getUserById(users_id).getOmTimeZone());
if (invitation != null) {
@@ -1956,7 +1956,7 @@ public class RoomWebService {
baseurl, email,
subject, room_id, "",
isPasswordProtected, invitationpass, valid,
dFrom, dTo,
users_id, baseurl, language_id,
- sendMail,
dFrom, dTo, null, username);
+ sendMail,
dFrom, dTo, null, username,
userManagement.getUserById(users_id).getOmTimeZone());
if (invitation != null) {
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/calendar/management/MeetingMemberLogic.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/calendar/management/MeetingMemberLogic.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/calendar/management/MeetingMemberLogic.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/calendar/management/MeetingMemberLogic.java
Tue Oct 2 15:38:09 2012
@@ -139,7 +139,8 @@ public class MeetingMemberLogic {
point.getAppointmentStarttime(),
point.getAppointmentEndtime(),
point.getAppointmentId(),
- invitorName);
+ invitorName,
+ omTimeZone);
invitationId = invitation.getInvitations_id();
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Invitationmanagement.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Invitationmanagement.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Invitationmanagement.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/conference/Invitationmanagement.java
Tue Oct 2 15:38:09 2012
@@ -34,10 +34,12 @@ import org.apache.openmeetings.Openmeeti
import org.apache.openmeetings.data.basic.AuthLevelmanagement;
import org.apache.openmeetings.data.basic.Fieldmanagment;
import org.apache.openmeetings.data.basic.dao.ConfigurationDaoImpl;
+import org.apache.openmeetings.data.basic.dao.OmTimeZoneDaoImpl;
import org.apache.openmeetings.data.calendar.daos.AppointmentDaoImpl;
import org.apache.openmeetings.data.calendar.management.AppointmentLogic;
import org.apache.openmeetings.data.user.Usermanagement;
import org.apache.openmeetings.data.user.dao.UsersDaoImpl;
+import org.apache.openmeetings.persistence.beans.basic.OmTimeZone;
import org.apache.openmeetings.persistence.beans.calendar.Appointment;
import org.apache.openmeetings.persistence.beans.calendar.MeetingMember;
import org.apache.openmeetings.persistence.beans.invitation.Invitations;
@@ -98,6 +100,8 @@ public class Invitationmanagement {
private TimezoneUtil timezoneUtil;
@Autowired
private AppointmentDaoImpl appointmentDaoImpl;
+ @Autowired
+ private OmTimeZoneDaoImpl omTimeZoneDaoImpl;
/**
* Sending invitation within plain mail
@@ -125,7 +129,7 @@ public class Invitationmanagement {
Boolean isPasswordProtected, String invitationpass,
Integer valid,
Date validFrom, Date validTo, Long createdBy, String
baseUrl,
Long language_id, Boolean sendMail, Date gmtTimeStart,
- Date gmtTimeEnd, Long appointmentId, String
fromUserField) {
+ Date gmtTimeEnd, Long appointmentId, String
fromUserField, OmTimeZone omTimeZone) {
try {
if (authLevelManagement.checkUserLevel(user_level)) {
@@ -140,6 +144,7 @@ public class Invitationmanagement {
invitation.setInvitationWasUsed(false);
log.debug(baseUrl);
invitation.setBaseUrl(baseUrl);
+ invitation.setOmTimeZone(omTimeZone);
// valid period of Invitation
if (valid == 1) {
@@ -933,9 +938,7 @@ public class Invitationmanagement {
+ "&room=" + room +
"&roomtype=" + roomtype + "&email="
+ email + "&roomid=" + room_id;
- Long default_lang_id = Long.valueOf(
-
configurationDaoImpl.getConfKey("default_lang_id")
-
.getConf_value()).longValue();
+ Long default_lang_id =
configurationDaoImpl.getConfValue("default_lang_id", Long.class, "1");
String template = invitationTemplate
.getRegisterInvitationTemplate(username, message,
@@ -1055,13 +1058,16 @@ public class Invitationmanagement {
}
} else if (invitation.getIsValidByTime()) {
-
- Calendar now = Calendar.getInstance();
-
- if (invitation.getValidFrom().getTime()
<= now.getTime()
- .getTime()
- &&
invitation.getValidTo().getTime() >= now
-
.getTime().getTime()) {
+ OmTimeZone tz =
invitation.getOmTimeZone() == null
+ ?
omTimeZoneDaoImpl.getOmTimeZone(configurationDaoImpl.getConfValue("default.timezone",
String.class, "Europe/Berlin"))
+ :
invitation.getOmTimeZone();
+ Calendar now =
Calendar.getInstance(TimeZone.getTimeZone(tz.getIcal()));
+ Calendar start =
Calendar.getInstance(TimeZone.getTimeZone(tz.getIcal()));
+
start.setTime(invitation.getValidFrom());
+
+ Calendar end =
Calendar.getInstance(TimeZone.getTimeZone(tz.getIcal()));
+ end.setTime(invitation.getValidTo());
+ if (now.after(start) &&
now.before(end)) {
this.updateInvitation(invitation);
//
invitation.setInvitationpass(null);
invitation.setAllowEntry(true);
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/invitation/Invitations.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/invitation/Invitations.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/invitation/Invitations.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/invitation/Invitations.java
Tue Oct 2 15:38:09 2012
@@ -31,6 +31,7 @@ import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
+import org.apache.openmeetings.persistence.beans.basic.OmTimeZone;
import org.apache.openmeetings.persistence.beans.rooms.Rooms;
import org.apache.openmeetings.persistence.beans.user.Users;
@@ -109,6 +110,10 @@ public class Invitations implements Seri
@Column(name = "baseUrl")
private String baseUrl;
+ @ManyToOne(fetch = FetchType.EAGER)
+ @JoinColumn(name = "omtimezoneId", insertable = true, updatable = true)
+ private OmTimeZone omTimeZone; // In UTC +/- hours
+
private boolean allowEntry = true;
public Invitations() {
@@ -275,4 +280,11 @@ public class Invitations implements Seri
this.allowEntry = allowEntry;
}
+ public OmTimeZone getOmTimeZone() {
+ return omTimeZone;
+ }
+
+ public void setOmTimeZone(OmTimeZone omTimeZone) {
+ this.omTimeZone = omTimeZone;
+ }
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/InvitationService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/InvitationService.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/InvitationService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/InvitationService.java
Tue Oct 2 15:38:09 2012
@@ -28,7 +28,6 @@ import org.apache.openmeetings.data.basi
import org.apache.openmeetings.data.basic.dao.OmTimeZoneDaoImpl;
import org.apache.openmeetings.data.conference.Invitationmanagement;
import org.apache.openmeetings.data.user.Usermanagement;
-import org.apache.openmeetings.persistence.beans.basic.Configuration;
import org.apache.openmeetings.persistence.beans.basic.OmTimeZone;
import org.apache.openmeetings.persistence.beans.invitation.Invitations;
import org.red5.logging.Red5LoggerFactory;
@@ -102,21 +101,6 @@ public class InvitationService implement
log.info("validFromHour: " + validFromHour);
log.info("validFromMinute: " + validFromMinute);
- Calendar calFrom = Calendar.getInstance();
- calFrom.setTime(validFromDate);
- calFrom.set(Calendar.HOUR_OF_DAY, validFromHour);
- calFrom.set(Calendar.MINUTE, validFromMinute);
- calFrom.set(Calendar.SECOND, 0);
-
- Calendar calTo = Calendar.getInstance();
- calTo.setTime(validToDate);
- calTo.set(Calendar.HOUR_OF_DAY, validToHour);
- calTo.set(Calendar.MINUTE, validToMinute);
- calTo.set(Calendar.SECOND, 0);
-
- Date dFrom = calFrom.getTime();
- Date dTo = calTo.getTime();
-
Long users_id = sessionManagement.checkSession(SID);
Long user_level =
userManagement.getUserLevelByID(users_id);
@@ -125,32 +109,31 @@ public class InvitationService implement
// If everything fails
if (omTimeZone == null) {
- Configuration conf = configurationDaoImpl
- .getConfKey("default.timezone");
- if (conf != null) {
- jNameTimeZone = conf.getConf_value();
- }
- omTimeZone =
omTimeZoneDaoImpl.getOmTimeZone(jNameTimeZone);
+ omTimeZone =
omTimeZoneDaoImpl.getOmTimeZone(configurationDaoImpl.getConfValue("default.timezone",
String.class, "Europe/Berlin"));
}
String timeZoneName = omTimeZone.getIcal();
+ Calendar calFrom =
Calendar.getInstance(TimeZone.getTimeZone(timeZoneName));
+ calFrom.setTime(validFromDate);
+ calFrom.set(Calendar.HOUR_OF_DAY, validFromHour);
+ calFrom.set(Calendar.MINUTE, validFromMinute);
+ calFrom.set(Calendar.SECOND, 0);
- Calendar cal = Calendar.getInstance();
- cal.setTimeZone(TimeZone.getTimeZone(timeZoneName));
- int offset = cal.get(Calendar.ZONE_OFFSET)
- + cal.get(Calendar.DST_OFFSET);
-
- log.debug("addAppointment offset :: " + offset);
+ Calendar calTo =
Calendar.getInstance(TimeZone.getTimeZone(timeZoneName));
+ calTo.setTime(validToDate);
+ calTo.set(Calendar.HOUR_OF_DAY, validToHour);
+ calTo.set(Calendar.MINUTE, validToMinute);
+ calTo.set(Calendar.SECOND, 0);
- Date gmtTimeStart = new Date(dFrom.getTime() - offset);
- Date gmtTimeEnd = new Date(dTo.getTime() - offset);
+ Date dFrom = calFrom.getTime();
+ Date dTo = calTo.getTime();
Invitations invitation = invitationManagement
.addInvitationLink(user_level,
username, message, baseurl,
email, subject,
room_id, conferencedomain,
isPasswordProtected,
invitationpass, valid, dFrom,
dTo, users_id, baseurl,
language_id, true,
- gmtTimeStart,
gmtTimeEnd, null, username);
+ dFrom, dTo, null,
username, omTimeZone);
if (invitation != null) {
return "success";
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java?rev=1392980&r1=1392979&r2=1392980&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
Tue Oct 2 15:38:09 2012
@@ -965,9 +965,8 @@ public class UserService {
Long user_level =
userManagement.getUserLevelByID(users_id);
// users only
if (authLevelManagement.checkUserLevel(user_level)) {
-
- TimeZone timezone =
timezoneUtil.getTimezoneByUser(usersDao
- .get(users_id));
+ Users from =
userManagement.getUserById(users_id);
+ TimeZone timezone =
timezoneUtil.getTimezoneByUser(from);
Date appointmentstart =
createCalendarDate(timezone,
validFromDate, validFromTime);
@@ -981,8 +980,6 @@ public class UserService {
+ CalendarPatterns
.getDateWithTimeByMiliSeconds(appointmentend));
- Users from =
userManagement.getUserById(users_id);
-
Rooms room = null;
String baseURL = "http://" + domain + ":" +
port + webapp;
@@ -1094,7 +1091,8 @@ public class UserService {
false, // really send mail sendMail
appointmentstart, appointmentend,
appointmentId, from.getFirstname()
-
+ " " + from.getLastname());
+
+ " " + from.getLastname(),
+
from.getOmTimeZone());
invitation_link = baseURL +
"?invitationHash="
+
invitation.getHash();