branch develop updated (1efed16 -> d70df1e)
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 1efed16 [jgitflow-maven-plugin]Updating develop poms back to pre merge state new d70df1e Correction du transfert de réponse (fixes #8259) 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 d70df1e81a634de58b05ba40102d19adaad8bf99 Author: Kevin Morin <morin@codelutin.com> Date: Mon Apr 18 17:06:49 2016 +0200 Correction du transfert de réponse (fixes #8259) Summary of changes: .../demande/replies/DemandRepliesUIHandler.java | 24 ++++++++----- .../ui/swing/content/reply/ReplyFormUIHandler.java | 40 +++++++++++++--------- .../content/reply/actions/SenderChangedAction.java | 7 ++-- .../faxtomail/ui/swing/util/FaxToMailUIUtil.java | 9 +++++ .../i18n/faxtomail-ui-swing_fr_FR.properties | 2 +- 5 files changed, 53 insertions(+), 29 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 d70df1e81a634de58b05ba40102d19adaad8bf99 Author: Kevin Morin <morin@codelutin.com> Date: Mon Apr 18 17:06:49 2016 +0200 Correction du transfert de réponse (fixes #8259) --- .../demande/replies/DemandRepliesUIHandler.java | 24 ++++++++----- .../ui/swing/content/reply/ReplyFormUIHandler.java | 40 +++++++++++++--------- .../content/reply/actions/SenderChangedAction.java | 7 ++-- .../faxtomail/ui/swing/util/FaxToMailUIUtil.java | 9 +++++ .../i18n/faxtomail-ui-swing_fr_FR.properties | 2 +- 5 files changed, 53 insertions(+), 29 deletions(-) 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 19226b1..0f8226c 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 @@ -33,13 +33,13 @@ import com.franciaflex.faxtomail.persistence.entities.Reply; import com.franciaflex.faxtomail.persistence.entities.ReplyContent; import com.franciaflex.faxtomail.services.FaxToMailServiceUtils; import com.franciaflex.faxtomail.ui.swing.FaxToMailUIContext; -import com.franciaflex.faxtomail.ui.swing.content.demande.replies.actions.OpenReplyAction; import com.franciaflex.faxtomail.ui.swing.content.demande.DemandeUIModel; +import com.franciaflex.faxtomail.ui.swing.content.demande.replies.actions.OpenReplyAction; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyAttachmentModel; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUI; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUIModel; -import com.franciaflex.faxtomail.ui.swing.util.toolbar.AbstractToolbarPopupHandler; import com.franciaflex.faxtomail.ui.swing.util.FaxToMailUIUtil; +import com.franciaflex.faxtomail.ui.swing.util.toolbar.AbstractToolbarPopupHandler; import com.google.common.collect.Iterables; import jaxx.runtime.JAXXUtil; import jaxx.runtime.validator.swing.SwingValidator; @@ -57,7 +57,9 @@ import javax.mail.Message; import javax.mail.Part; import javax.mail.internet.MimeMultipart; import javax.mail.internet.MimeUtility; -import javax.swing.*; +import javax.swing.AbstractCellEditor; +import javax.swing.JComponent; +import javax.swing.JTable; import javax.swing.event.TableModelEvent; import javax.swing.event.TableModelListener; import javax.swing.table.AbstractTableModel; @@ -67,11 +69,13 @@ import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumn; import javax.swing.table.TableColumnModel; import javax.swing.table.TableModel; -import java.awt.*; +import java.awt.Component; +import java.awt.Dimension; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.ByteArrayOutputStream; import java.nio.charset.Charset; +import java.util.regex.Pattern; import static org.nuiton.i18n.I18n.t; @@ -217,12 +221,12 @@ public class DemandRepliesUIHandler extends AbstractToolbarPopupHandler<DemandeU } // XXX: à verifier pour le format, et si on quote ou pas encore le forward - String quotedReply = t("faxtomail.reply.message", - decorate(reply.getSentDate()), - message.getFrom()[0].toString(), - replyModel.getMessage().replaceAll("\n", "\n> ")); + String quotedReply = FaxToMailUIUtil.getQuotedReplyContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), + decorate(reply.getSentDate()), + message.getFrom()[0].toString(), + replyModel.getMessage().replaceAll("\n", "<br/> ")); replyModel.setMessage(quotedReply); - + openFrame(dialogContent, t("faxtomail.reply.forward", message.getSubject()), new Dimension(800, 600)); } catch (Exception e) { @@ -252,6 +256,8 @@ public class DemandRepliesUIHandler extends AbstractToolbarPopupHandler<DemandeU if (bp.isMimeType("text/*") && !Part.ATTACHMENT.equals(disposition)) { Charset charset = FaxToMailServiceUtils.getCharset(bp); String content = IOUtils.toString(bp.getInputStream(), charset); + content = Pattern.compile("<html>.*<body>", Pattern.DOTALL).matcher(content).replaceAll(""); + content = Pattern.compile("</body>.*</html>", Pattern.DOTALL).matcher(content).replaceAll(""); reply.setMessage(content); // if it is multipart part, decompose it 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 cd29d89..55abd5c 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 @@ -195,7 +195,6 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo initBeanFilterableComboBox(ui.getContactField(), getContext().getContactCache(), null); // signatures - signingClass = SIGNING_CLASS_PREFIX + new Date().getTime(); signing = getSigningParagraph(createSigning(recipient)); } else { @@ -206,11 +205,7 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo String plainContent = StringUtils.join(demand.getPlainContent(), CONTENT_SEPARATOR); String quotedText = plainContent != null ? plainContent.replaceAll("\n", "<br/> ") : ""; - String quotedReply = t("faxtomail.reply.message", - signing, - decorate(demand.getReceptionDate()), - demand.getSender(), - quotedText); + String quotedReply = FaxToMailUIUtil.getQuotedReplyContent(signing, decorate(demand.getReceptionDate()), demand.getSender(), quotedText); model.setMessage(quotedReply); } }); @@ -236,6 +231,7 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo ReplyFormUIModel model = (ReplyFormUIModel) evt.getSource(); if (!model.isReadonly()) { getContext().getActionEngine().runAction(senderChangedAction); + ui.getMessage().setCaretPosition(0); } } }); @@ -473,13 +469,13 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo ReplyFormUIModel replyModel = dialogContent.getModel(); replyModel.fromModel(ui.getModel()); - // XXX: à verifier pour le format, et si on quote ou pas encore le forward - String quotedReply = t("faxtomail.reply.message", - decorate(replyModel.getReadSentDate()), - replyModel.getFrom(), - replyModel.getMessage().replaceAll("\n", "\n> ")); - replyModel.setMessage(quotedReply); - replyModel.setSubject(t("faxtomail.reply.forwardsubject", replyModel.getSubject())); + Date readSentDate = replyModel.getReadSentDate(); + String replyFrom = replyModel.getFrom(); + + String content = replyModel.getMessage(); + content = Pattern.compile("<html>.*<body>", Pattern.DOTALL).matcher(content).replaceAll(""); + content = Pattern.compile("</body>.*</html>", Pattern.DOTALL).matcher(content).replaceAll(""); + String originalReply = content.replaceAll("\n", "<br/> "); // clear fields that need to be filled by hand replyModel.setReadonly(false); @@ -488,6 +484,13 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo replyModel.setTo(null); replyModel.setCc(null); replyModel.setCci(null); + replyModel.setSubject(t("faxtomail.reply.forwardsubject", replyModel.getSubject())); + + String quotedReply = FaxToMailUIUtil.getQuotedReplyContent(dialogContent.getHandler().createSigning(replyModel.getFrom()), + decorate(readSentDate), + replyFrom, + originalReply); + replyModel.setMessage(quotedReply); openModalFrame(dialogContent, t("faxtomail.reply.forward", getModel().getSubject()), new Dimension(800, 600)); @@ -547,7 +550,7 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo public void replaceSigning() { ReplyFormUIModel model = getModel(); - String signing = createSigning(model.getFrom()); + String signing = createSigningContent(model.getFrom()); String message = model.getMessage(); if (message != null) { message = Pattern.compile(getSigningParagraph(".*?"), Pattern.DOTALL).matcher(message).replaceFirst(getSigningParagraph(signing)); @@ -555,7 +558,13 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo } } - protected String createSigning(String from) { + public String createSigning(String from) { + signingClass = SIGNING_CLASS_PREFIX + new Date().getTime(); + String signing = createSigningContent(from); + return getSigningParagraph(signing); + } + + protected String createSigningContent(String from) { FaxToMailUser currentUser = getContext().getCurrentUser(); String signing = currentUser.getFirstName() + " " + currentUser.getLastName() + "<br/>"; if (from != null) { @@ -574,7 +583,6 @@ public class ReplyFormUIHandler extends AbstractFaxToMailUIHandler<ReplyFormUIMo } } } - return signing; } 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 82d3eff..47ecf34 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 @@ -30,7 +30,6 @@ import com.franciaflex.faxtomail.ui.swing.actions.AbstractFaxToMailAction; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUI; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUIHandler; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUIModel; -import com.google.common.base.Optional; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -61,8 +60,10 @@ public class SenderChangedAction extends AbstractFaxToMailAction<ReplyFormUIMode public void doAction() throws Exception { ReplyFormUIModel model = getModel(); FaxToMailServiceContext serviceContext = getContext().newServiceContext(); - Optional<SigningForDomain> signingForEmailAddress = serviceContext.getConfigurationService().getSigningForEmailAddress(model.getFrom()); - signingForDomain = signingForEmailAddress.orNull(); + signingForDomain = null; + if (model.getFrom() != null) { + signingForDomain = serviceContext.getConfigurationService().getSigningForEmailAddress(model.getFrom()).orNull(); + } } @Override 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 4deca44..c2f35ca 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 @@ -881,4 +881,13 @@ public final class FaxToMailUIUtil extends ApplicationUIUtil { return textPane; } + public static String getQuotedReplyContent(String signing, String receptionDate, String sender, String originalEmail) { + String quotedReply = t("faxtomail.reply.message", + signing, + receptionDate, + sender, + originalEmail); + return quotedReply; + } + } 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 24c8a37..a71c22c 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 @@ -303,7 +303,7 @@ faxtomail.reply.label.contact=Contact \: faxtomail.reply.label.from=De \: faxtomail.reply.label.subject=Objet \: faxtomail.reply.label.to=À \: -faxtomail.reply.message=<html><body><p></p>%s<p>Le %s, %s a écrit \:</p><p style\='border-left\: 2px solid blue;padding-left\: 5px;'>%s</p> +faxtomail.reply.message=<html><body><p></p>%s<p>Le %s, %s a écrit \:</p><div style\='border-left\: 2px solid blue;padding-left\: 5px;'>%s</div> faxtomail.reply.subject=Re \: %s faxtomail.reply.title=Réponse à \: %s faxtomail.search.action.error=Erreur lors de la recherche -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm