Update of 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher
In directory 
james.mmbase.org:/tmp/cvs-serv1147/portlets-newsletter/src/java/com/finalist/newsletter/publisher

Modified Files:
        NewsletterPublisher.java 
Log Message:
CMSC-632 Uhm...... resources translated, e-mail adresses and names fixed, and 
some more I can't remember.... . 


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher
See also: http://www.mmbase.org/jira/browse/CMSC-632


Index: NewsletterPublisher.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/publisher/NewsletterPublisher.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- NewsletterPublisher.java    20 Jan 2008 22:48:34 -0000      1.3
+++ NewsletterPublisher.java    21 Jan 2008 22:09:00 -0000      1.4
@@ -1,5 +1,6 @@
 package com.finalist.newsletter.publisher;
 
+import java.io.UnsupportedEncodingException;
 import java.util.List;
 
 import javax.mail.Message;
@@ -16,6 +17,7 @@
 import org.mmbase.util.logging.Logger;
 import org.mmbase.util.logging.Logging;
 
+import com.finalist.cmsc.mmbase.PropertiesUtil;
 import com.finalist.cmsc.services.community.NewsletterCommunication;
 import com.finalist.newsletter.generator.NewsletterGenerator;
 import com.finalist.newsletter.generator.NewsletterGeneratorFactory;
@@ -63,7 +65,6 @@
       startMassPublishing();
    }
 
-   
     private void sendNewsletter(Node publicationNode, String userName) {
       String mimeType = 
NewsletterSubscriptionUtil.getPreferredMimeType(userName);
       Message message = generateNewsletter(userName, publicationNumber, 
mimeType);
@@ -75,18 +76,76 @@
       } catch (MessagingException e) {
          log.debug("An error occurred while trying to send a newsletter 
e-mail");
          log.debug(e.getMessage());
+      } catch (UnsupportedEncodingException e) {
+         // TODO Auto-generated catch block
+         e.printStackTrace();
+      }
+   }
+
+   private Message setMailHeaders(Node publicationNode, String userName, 
Message message) throws MessagingException, UnsupportedEncodingException {
+
+      String emailFrom = null;
+      String nameFrom = null;
+      String emailReplyTo = null;
+      String nameReplyTo = null;
+      /*
+       * Node newsletterNode = SearchUtil.findRelatedNode(publicationNode,
+       * "newsletter", "related"); if (newsletterNode != null) { emailFrom =
+       * newsletterNode.getStringValue("emailfrom"); nameFrom =
+       * newsletterNode.getStringValue("namefrom"); emailReplyTo =
+       * newsletterNode.getStringValue("emailreplyto"); nameReplyTo =
+       * newsletterNode.getStringValue("namereplyto"); }
+       */
+      if (emailFrom == null || emailFrom.length() == 0) {
+         emailFrom = PropertiesUtil.getProperty("newsletter.from.mail");
+         if (emailFrom == null || emailFrom.length() == 0) {
+            emailFrom = PropertiesUtil.getProperty("mail.system.email");
+         }
+      }
+
+      if (nameFrom == null || nameFrom.length() == 0) {
+         nameFrom = PropertiesUtil.getProperty("newsletter.from.name");
+      }
+
+      if (emailReplyTo == null || emailReplyTo.length() == 0) {
+         emailReplyTo = PropertiesUtil.getProperty("newsletter.replyto.mail");
       }
+
+      if (nameReplyTo == null || nameReplyTo.length() == 0) {
+         nameReplyTo = PropertiesUtil.getProperty("newsletter.replyto.name");
    }
 
-   private Message setMailHeaders(Node publicationNode, String userName, 
Message message) throws MessagingException {
+      if (emailFrom != null && emailFrom.length() > 0) {
+         InternetAddress fromAddress = new InternetAddress(emailFrom);
+         if (nameFrom != null && nameFrom.length() > 0) {
+            fromAddress.setPersonal(nameFrom);
+         }
+         message.setFrom(fromAddress);
+      } else {
+         return (null);
+      }
 
-      message.setFrom(new InternetAddress("[EMAIL PROTECTED]"));
+      if (emailReplyTo != null && emailReplyTo.length() > 0) {
+         InternetAddress replyToAddress = new InternetAddress(emailReplyTo);
+         if (nameReplyTo != null && nameReplyTo.length() > 0) {
+            replyToAddress.setPersonal(nameReplyTo);
+         }
+         InternetAddress[] addresses= new InternetAddress[1];
+         addresses[0] = replyToAddress;
+         message.setReplyTo(addresses);
+      } else {
+         return (null);
+      }
       
       String userEmail = NewsletterCommunication.getUserPreference(userName, 
"email");
+      if (userEmail != null && userEmail.length() > 0) {
       InternetAddress toAddress = new InternetAddress(userEmail);
       message.setRecipient(RecipientType.TO, toAddress);
+      } else {
+         return (null);
+      }
 
-      String subject = publicationNode.getStringValue("subject");
+      String subject = "" + publicationNode.getStringValue("subject");
       message.setSubject(subject);
 
       return (message);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to