branch develop updated (ad15ae4 -> 5ff7966)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git from ad15ae4 fixes #9054 Pouvoir consulter en lecture seule un mail bloqué par un autre utilisateur new 5ff7966 fixes #9057 Transfert de réponse : il manque le destinataire de la réponse initiale The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 5ff79667dfb858566a82c7084fbea2df0272ede5 Author: Kevin Morin <morin@codelutin.com> Date: Thu Feb 16 10:56:26 2017 +0100 fixes #9057 Transfert de réponse : il manque le destinataire de la réponse initiale Summary of changes: .../faxtomail/services/FaxToMailServiceUtils.java | 13 +++++++++++++ .../ui/swing/content/demande/DemandeUIModel.java | 17 ++--------------- .../demande/replies/DemandRepliesUIHandler.java | 18 +++++++++++++----- .../ui/swing/content/reply/ReplyFormUIHandler.java | 17 +++++++++-------- .../content/reply/actions/SenderChangedAction.java | 2 +- .../faxtomail/ui/swing/util/FaxToMailUIUtil.java | 16 ++++++++++++++++ .../resources/i18n/faxtomail-ui-swing_fr_FR.properties | 1 + .../faxtomail/web/action/DemandDetailAction.java | 17 ++--------------- 8 files changed, 57 insertions(+), 44 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit 5ff79667dfb858566a82c7084fbea2df0272ede5 Author: Kevin Morin <morin@codelutin.com> Date: Thu Feb 16 10:56:26 2017 +0100 fixes #9057 Transfert de réponse : il manque le destinataire de la réponse initiale --- .../faxtomail/services/FaxToMailServiceUtils.java | 13 +++++++++++++ .../ui/swing/content/demande/DemandeUIModel.java | 17 ++--------------- .../demande/replies/DemandRepliesUIHandler.java | 18 +++++++++++++----- .../ui/swing/content/reply/ReplyFormUIHandler.java | 17 +++++++++-------- .../content/reply/actions/SenderChangedAction.java | 2 +- .../faxtomail/ui/swing/util/FaxToMailUIUtil.java | 16 ++++++++++++++++ .../resources/i18n/faxtomail-ui-swing_fr_FR.properties | 1 + .../faxtomail/web/action/DemandDetailAction.java | 17 ++--------------- 8 files changed, 57 insertions(+), 44 deletions(-) diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceUtils.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceUtils.java index f708e7a..99641b1 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceUtils.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/FaxToMailServiceUtils.java @@ -33,6 +33,7 @@ import org.apache.commons.io.IOUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import javax.mail.Address; import javax.mail.MessagingException; import javax.mail.Part; import javax.mail.internet.ContentType; @@ -46,7 +47,9 @@ import java.net.MalformedURLException; import java.net.URL; import java.nio.charset.Charset; import java.nio.charset.UnsupportedCharsetException; +import java.util.ArrayList; import java.util.Collection; +import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -199,4 +202,14 @@ public class FaxToMailServiceUtils { public static String getTextFromInputStream(InputStream inputStream, Charset charset) throws IOException { return IOUtils.toString(inputStream, charset); } + + public static List<String> convertAddressesToStrings(Address[] addresses) { + List<String> result = new ArrayList<>(); + if (addresses != null) { + for (Address address : addresses) { + result.add(address.toString()); + } + } + return result; + } } diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java index 1810e85..2f5b2e2 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIModel.java @@ -55,7 +55,6 @@ import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; import javax.activation.DataSource; -import javax.mail.Address; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.Part; @@ -936,20 +935,8 @@ public class DemandeUIModel extends AbstractFaxToMailBeanUIModel<Email, DemandeU subject = FaxToMailServiceUtils.getDecodedSubject(message.getSubject()); } - toRecipients = new ArrayList<String>(); - ccRecipients = new ArrayList<String>(); - Address[] recipients = message.getRecipients(Message.RecipientType.TO); - if (recipients != null) { - for (Address address : recipients) { - toRecipients.add(address.toString()); - } - } - recipients = message.getRecipients(Message.RecipientType.CC); - if (recipients != null) { - for (Address address : recipients) { - ccRecipients.add(address.toString()); - } - } + toRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.TO)); + ccRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.CC)); plainContents = null; htmlContents = null; diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/replies/DemandRepliesUIHandler.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/replies/DemandRepliesUIHandler.java index b4ec12d..7512e4d 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/replies/DemandRepliesUIHandler.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/replies/DemandRepliesUIHandler.java @@ -43,6 +43,7 @@ import com.franciaflex.faxtomail.ui.swing.util.toolbar.AbstractToolbarPopupHandl import com.google.common.collect.Iterables; import jaxx.runtime.JAXXUtil; import jaxx.runtime.validator.swing.SwingValidator; +import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.commons.mail.util.MimeMessageUtils; @@ -52,6 +53,7 @@ import org.jdesktop.swingx.decorator.HighlighterFactory; import javax.activation.DataHandler; import javax.activation.DataSource; import javax.mail.BodyPart; +import javax.mail.Message; import javax.mail.Part; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; @@ -73,6 +75,7 @@ import java.awt.Dimension; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.ByteArrayOutputStream; +import java.util.List; import java.util.regex.Pattern; import static org.nuiton.i18n.I18n.t; @@ -217,11 +220,16 @@ public class DemandRepliesUIHandler extends AbstractToolbarPopupHandler<DemandeU replyModel.setMessage(content); } - // XXX: à verifier pour le format, et si on quote ou pas encore le forward - String quotedReply = FaxToMailUIUtil.getQuotedReplyContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), - decorate(reply.getSentDate()), - message.getFrom()[0].toString(), - replyModel.getMessage().replaceAll("\n", "<br/> ")); + List<String> toRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.TO)); + List<String> ccRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.CC)); + + String quotedReply = FaxToMailUIUtil.getQuotedForwardContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), + reply.getSubject(), + decorate(reply.getSentDate()), + message.getFrom()[0].toString(), + StringUtils.join(toRecipients, " ; "), + StringUtils.join(ccRecipients, " ; "), + replyModel.getMessage().replaceAll("\n", "<br/> ")); replyModel.setMessage(quotedReply); openFrame(dialogContent, t("faxtomail.reply.forward", message.getSubject()), new Dimension(800, 600)); diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUIHandler.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUIHandler.java index 55abd5c..17d1066 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUIHandler.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUIHandler.java @@ -467,10 +467,8 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo // display a new ui with a copy of original ui model ReplyFormUI dialogContent = new ReplyFormUI(ui); ReplyFormUIModel replyModel = dialogContent.getModel(); - replyModel.fromModel(ui.getModel()); - - Date readSentDate = replyModel.getReadSentDate(); - String replyFrom = replyModel.getFrom(); + ReplyFormUIModel uiModel = ui.getModel(); + replyModel.fromModel(uiModel); String content = replyModel.getMessage(); content = Pattern.compile("<html>.*<body>", Pattern.DOTALL).matcher(content).replaceAll(""); @@ -486,10 +484,13 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo replyModel.setCci(null); replyModel.setSubject(t("faxtomail.reply.forwardsubject", replyModel.getSubject())); - String quotedReply = FaxToMailUIUtil.getQuotedReplyContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), - decorate(readSentDate), - replyFrom, - originalReply); + String quotedReply = FaxToMailUIUtil.getQuotedForwardContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), + uiModel.getSubject(), + decorate(uiModel.getReadSentDate()), + uiModel.getFrom(), + uiModel.getTo(), + uiModel.getCc(), + originalReply); replyModel.setMessage(quotedReply); openModalFrame(dialogContent, t("faxtomail.reply.forward", getModel().getSubject()), new Dimension(800, 600)); diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/SenderChangedAction.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/SenderChangedAction.java index 40ae4e7..0dd185d 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/SenderChangedAction.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/SenderChangedAction.java @@ -61,7 +61,7 @@ public class SenderChangedAction extends AbstractFaxToMailAction<ReplyFormUIMode ReplyFormUIModel model = getModel(); FaxToMailServiceContext serviceContext = getContext().newServiceContext(); signingForDomain = null; - if (!model.getOriginalDemand().isFax() && model.getFrom() != null) { + if (model.getOriginalDemand() != null && !model.getOriginalDemand().isFax() && model.getFrom() != null) { signingForDomain = serviceContext.getConfigurationService().getSigningForEmailAddress(model.getFrom()).orNull(); } } diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java index 86ae50f..9359998 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/FaxToMailUIUtil.java @@ -69,6 +69,7 @@ import org.nuiton.jaxx.application.swing.util.ApplicationUIUtil; import org.nuiton.util.FileUtil; import org.nuiton.util.StringUtil; +import javax.mail.Address; import javax.media.jai.PlanarImage; import javax.print.attribute.HashPrintRequestAttributeSet; import javax.print.attribute.PrintRequestAttributeSet; @@ -890,4 +891,19 @@ public final class FaxToMailUIUtil extends ApplicationUIUtil { return quotedReply; } + public static String getQuotedForwardContent(String signing, String subject, String receptionDate, String sender, + String recipient, String ccRecipient, String originalEmail) { + String recipients = t("faxtomail.reply.label.to") + " " + recipient; + if (StringUtils.isNotBlank(ccRecipient)) { + recipients += "<br/>" + t("faxtomail.reply.label.cc") + " " + ccRecipient; + } + return t("faxtomail.forward.message", + signing, + subject, + receptionDate, + sender, + recipients, + originalEmail); + } + } diff --git a/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties b/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties index 99ce390..d6b77cb 100644 --- a/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties +++ b/faxtomail-ui-swing/src/main/resources/i18n/faxtomail-ui-swing_fr_FR.properties @@ -233,6 +233,7 @@ faxtomail.demandeList.table.header.waitingState.tip=État attente faxtomail.demandeList.title=Liste des éléments faxtomail.demandeList.totalCount=Nombre de demandes \: faxtomail.email.content.attachment.unnamed=Pièce-jointe %s +faxtomail.forward.message=<html><body><p></p>%s<p>--- Message transféré ---<br/>Sujet \: %s<br/>Date \: %s<br/>De \: %s<br/>%s</p><p>%s</p> faxtomail.historyList.action.tip=Historique faxtomail.historyList.text=Historique (%s) faxtomail.historyList.title=Historique diff --git a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/DemandDetailAction.java b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/DemandDetailAction.java index 2242274..3e5d3c4 100644 --- a/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/DemandDetailAction.java +++ b/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/action/DemandDetailAction.java @@ -57,7 +57,6 @@ import org.nuiton.topia.persistence.TopiaNoResultException; import javax.activation.DataHandler; import javax.activation.DataSource; -import javax.mail.Address; import javax.mail.BodyPart; import javax.mail.Message; import javax.mail.Part; @@ -340,22 +339,10 @@ public class DemandDetailAction extends FaxToMailActionSupport { MimeMessage message = new MimeMessage(null, byteArrayInputStream); emailUIModel.setSubject(message.getSubject()); - List<String> toRecipients = new ArrayList<>(); - List<String> ccRecipients = new ArrayList<>(); - Address[] recipients = message.getRecipients(Message.RecipientType.TO); - if (recipients != null) { - for (Address address : recipients) { - toRecipients.add(address.toString()); - } - } + List<String> toRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.TO)); emailUIModel.setToRecipients(toRecipients); - recipients = message.getRecipients(Message.RecipientType.CC); - if (recipients != null) { - for (Address address : recipients) { - ccRecipients.add(address.toString()); - } - } + List<String> ccRecipients = FaxToMailServiceUtils.convertAddressesToStrings(message.getRecipients(Message.RecipientType.CC)); emailUIModel.setCcRecipients(ccRecipients); if (message.isMimeType("multipart/*")) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm