Author: sebawagner
Date: Sun Apr 22 08:19:27 2012
New Revision: 1328812
URL: http://svn.apache.org/viewvc?rev=1328812&view=rev
Log:
OPENMEETINGS-205 ReplyTo Field leads to exception when sending emails to
external users
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailUtil.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/calendar/management/AppointmentLogic.java
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/conference/Invitationmanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/cli/Admin.java
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailThread.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/calendar/management/AppointmentLogic.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/calendar/management/AppointmentLogic.java?rev=1328812&r1=1328811&r2=1328812&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/calendar/management/AppointmentLogic.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/data/calendar/management/AppointmentLogic.java
Sun Apr 22 08:19:27 2012
@@ -153,13 +153,13 @@ public class AppointmentLogic {
Long numberOfParticipants = cfgManagement.getConfValue(
"calendar.conference.rooms.default.size",
Long.class, "50");
- Long room_id = roommanagement.addRoom(3, // Userlevel
+ Long room_id = roommanagement.addRoom(3, // user level
appointmentName, // name
roomType, // RoomType
"", // Comment
numberOfParticipants, // Number of participants
true, // public
- null, // Organisations
+ null, // organizations
true, // Appointment
false, // Demo Room => Meeting Timer
null, // Meeting Timer time in seconds
@@ -190,10 +190,10 @@ public class AppointmentLogic {
try {
- // Adding Invitor as Meetingmember
+ // Adding creator as MeetingMember
Users user = userManagement.getUserById(userId);
- // Refactor the given time ignoring the Date is always
UTC!
+ // Re-factor the given time ignoring the Date is always
UTC!
TimeZone timezone =
timezoneUtil.getTimezoneByUser(user);
Long appointmentId =
appointmentDao.addAppointment(appointmentName,
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=1328812&r1=1328811&r2=1328812&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
Sun Apr 22 08:19:27 2012
@@ -186,8 +186,9 @@ public class Invitationmanagement {
if (invitationId > 0) {
if (sendMail) {
- this.sendInvitionLink(username,
message, baseurl,
- email,
us.getAdresses().getEmail(), subject, invitation.getHash(),
+
this.sendInvitionLink(us.getAdresses().getEmail(),
+ username,
message, baseurl,
+ email, subject,
invitation.getHash(),
validFrom,
validTo, language_id);
}
@@ -628,11 +629,6 @@ public class Invitationmanagement {
username, message, invitation_link,
language_id, dStart,
dEnd);
- System.out.println(dStart);
- System.out.println(dEnd);
-
- System.out.println(template);
-
return mailHandler.sendMail(email, replyTo, subject,
template);
} catch (Exception err) {
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/cli/Admin.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/cli/Admin.java?rev=1328812&r1=1328811&r2=1328812&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/cli/Admin.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/cli/Admin.java
Sun Apr 22 08:19:27 2012
@@ -10,7 +10,6 @@ import java.net.URL;
import java.util.Date;
import java.util.Enumeration;
import java.util.Set;
-import java.util.regex.Pattern;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
@@ -35,6 +34,7 @@ import org.openmeetings.app.remote.red5.
import org.openmeetings.servlet.outputhandler.BackupExport;
import org.openmeetings.servlet.outputhandler.BackupImportController;
import org.openmeetings.utils.OMContextListener;
+import org.openmeetings.utils.mail.MailUtil;
import org.openmeetings.utils.math.CalendarPatterns;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
@@ -42,9 +42,7 @@ import org.springframework.context.suppo
public class Admin {
private static final Logger log =
Red5LoggerFactory.getLogger(Admin.class);
- private static final Pattern rfc2822 = Pattern.compile(
-
"^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$"
- );
+
private boolean verbose = false;
private InstallationConfig cfg = null;
private Options opts = null;
@@ -301,7 +299,7 @@ public class Admin {
}
try {
- if
(!rfc2822.matcher(email).matches()) {
+ if (!MailUtil.matches(email)) {
throw new
AddressException("Invalid address");
}
new InternetAddress(email,
true);
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailThread.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailThread.java?rev=1328812&r1=1328811&r2=1328812&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailThread.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailThread.java
Sun Apr 22 08:19:27 2012
@@ -110,7 +110,10 @@ public class MailThread {
msg.setSubject(subject);
msg.setFrom(new InternetAddress(from));
if (replyTo != null &&
"1".equals(cfgManagement.getConfValue("inviter.email.as.replyto", String.class,
"1"))) {
- msg.setReplyTo(new InternetAddress[]{new
InternetAddress(replyTo)});
+ log.debug("setReplyTo "+replyTo);
+ if (MailUtil.matches(replyTo)) {
+ msg.setReplyTo(new
InternetAddress[]{new InternetAddress(replyTo)});
+ }
}
msg.addRecipients(Message.RecipientType.TO,
InternetAddress.parse(recipients,
false));
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailUtil.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailUtil.java?rev=1328812&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailUtil.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/utils/mail/MailUtil.java
Sun Apr 22 08:19:27 2012
@@ -0,0 +1,17 @@
+package org.openmeetings.utils.mail;
+
+import java.util.regex.Pattern;
+
+public class MailUtil {
+
+ private static final Pattern rfc2822 = Pattern.compile(
+
"^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$"
+ );
+
+ public static boolean matches(String email) {
+
+ return rfc2822.matcher(email).matches();
+
+ }
+
+}