This is an automated email from the git hooks/post-receive script. New commit to branch feature/7419 in repository faxtomail. See http://git.codelutin.com/faxtomail.git commit 9d34a5bd21b62a3c30705673b4155c488c6d8e4e Author: Kevin Morin <morin@codelutin.com> Date: Wed Aug 26 10:27:59 2015 +0200 - Envoi de la signature dans la réponse - mise en page refs #7419 --- .../faxtomail/services/service/EmailService.java | 3 +- .../services/service/EmailServiceImpl.java | 14 ++++++- .../ui/swing/content/reply/ReplyFormUI.css | 18 ++++++++- .../ui/swing/content/reply/ReplyFormUI.jaxx | 46 +++++++++++++--------- .../{ => content/reply}/actions/ReplyAction.java | 4 +- .../i18n/faxtomail-ui-swing_fr_FR.properties | 1 + 6 files changed, 61 insertions(+), 25 deletions(-) diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java index cf07f89..3da0a7b 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailService.java @@ -38,6 +38,7 @@ import com.franciaflex.faxtomail.persistence.entities.Range; import com.franciaflex.faxtomail.persistence.entities.Reply; import com.franciaflex.faxtomail.persistence.entities.ReplyContent; import com.franciaflex.faxtomail.persistence.entities.SearchFilter; +import com.franciaflex.faxtomail.persistence.entities.Stamp; import com.franciaflex.faxtomail.services.FaxToMailService; import com.franciaflex.faxtomail.services.service.exceptions.AlreadyLockedMailException; import com.franciaflex.faxtomail.services.service.exceptions.FolderNotReadableException; @@ -101,7 +102,7 @@ public interface EmailService extends FaxToMailService { Email groupEmails(String email1Id, String email2Id, FaxToMailUser user); Email reply(String from, String to, String cc, String bcc, String subject, - String content, Collection<AttachmentFile> attachments, + String content, Stamp signing, Collection<AttachmentFile> attachments, String originalEmailId, FaxToMailUser user) throws EmailException, MessagingException, IOException; /** diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java index 8e0b3f8..b4b99a2 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java @@ -1092,6 +1092,7 @@ public class EmailServiceImpl extends FaxToMailServiceSupport implements EmailSe * @param bcc bcc * @param subject subject * @param content content + * @param signing signing * @param attachments attachement * @param originalEmailId mail topia id * @param user user to add new history entry for user @@ -1102,7 +1103,7 @@ public class EmailServiceImpl extends FaxToMailServiceSupport implements EmailSe */ @Override public Email reply(String from, String to, String cc, String bcc, String subject, - String content, Collection<AttachmentFile> attachments, + String content, Stamp signing, Collection<AttachmentFile> attachments, String originalEmailId, FaxToMailUser user) throws EmailException, MessagingException, IOException { Email email = getEmailById(originalEmailId, @@ -1135,10 +1136,19 @@ public class EmailServiceImpl extends FaxToMailServiceSupport implements EmailSe message.addBcc(bccs); } message.setSubject(subject); + + StringBuilder toSendContent = new StringBuilder(); if (StringUtils.isNotEmpty(content)) { - message.setMsg(content); + toSendContent.append(content); + } + + // l'insertion de cette signature sera faîte pour l'envoi de fax uniquement si un corps de mail est renseigné. + if (signing != null && (!email.isFax() || StringUtils.isNotEmpty(content))) { + toSendContent.append("\n\n").append(signing.getText()); } + message.setMsg(toSendContent.toString()); + for (AttachmentFile attachmentFile : attachments) { // Create the attachment File file = attachmentFile.getFile(); diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.css b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.css index 7389a8a..04aa031 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.css +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.css @@ -116,11 +116,25 @@ dividerLocation: 270; } +#signingSplitPane { + dividerSize: { model.isReadonly() ? 0 : 10 }; + resizeWeight: 1.0; + name: { "signingSplitPane" + model.isReadonly() }; // to save the state differently in the swing session +} + #message { text: { model.getMessage() }; editable: { !model.isReadonly() }; } +#signingPanel { + visible: { !model.isReadonly() }; +} + +#signingLabel { + text: "faxtomail.reply.label.signing"; +} + #stampComboBox { showReset: true; showDecorator: false; @@ -139,7 +153,7 @@ visible: { model.getStamp() != null }; } -#signingPanel { +#signingTextPanel { editable: false; text: { model.getStamp().getText() }; } @@ -203,7 +217,7 @@ actionIcon: reply; text: "faxtomail.reply.action.validate"; toolTipText: "faxtomail.reply.action.validate.tip"; - _applicationAction: { com.franciaflex.faxtomail.ui.swing.actions.ReplyAction.class }; + _applicationAction: { com.franciaflex.faxtomail.ui.swing.content.reply.actions.ReplyAction.class }; /* FIXME echatellier 20140715 : ca doit pas se faire comme ca, mais pas trop d'idée */ enabled: { getModel().isValid() && getModel().isAttachmentSizeValid(getModel().getTotalAttachmentLength()) }; diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.jaxx b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.jaxx index b9785cf..f580568 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.jaxx +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/ReplyFormUI.jaxx @@ -151,30 +151,38 @@ <JSplitPane id="signingSplitPane" orientation="{JSplitPane.VERTICAL_SPLIT}"> + + <JScrollPane> <JTextPane id="message" onKeyReleased='handler.setText(event, "message")'/> </JScrollPane> - <Table fill="both"> - <row> - <cell weightx="1"> - <BeanComboBox id="stampComboBox" - constructorParams='this' - genericType="Stamp"/> - </cell> - <cell> - <JButton id="configureSigningButton"/> - </cell> - </row> - <row> - <cell columns="2" weighty="1.0"> - <JScrollPane id="signingScrollPanel"> - <JTextPane id="signingPanel"/> - </JScrollPane> - </cell> - </row> - </Table> + <JPanel id="signingPanel" + layout="{new BorderLayout()}"> + + <JPanel layout="{new BorderLayout()}" + constraints="BorderLayout.NORTH"> + + <JLabel id="signingLabel" + constraints="BorderLayout.WEST"/> + + <BeanComboBox id="stampComboBox" + constructorParams='this' + genericType="Stamp" + constraints="BorderLayout.CENTER"/> + + <JButton id="configureSigningButton" + constraints="BorderLayout.EAST"/> + + </JPanel> + + <JScrollPane id="signingScrollPanel" + constraints="BorderLayout.CENTER"> + <JTextPane id="signingTextPanel"/> + </JScrollPane> + + </JPanel> </JSplitPane> diff --git a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/ReplyAction.java similarity index 94% rename from faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java rename to faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/ReplyAction.java index 082e0f9..7a8ba79 100644 --- a/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/ReplyAction.java +++ b/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/reply/actions/ReplyAction.java @@ -1,4 +1,4 @@ -package com.franciaflex.faxtomail.ui.swing.actions; +package com.franciaflex.faxtomail.ui.swing.content.reply.actions; /* * #%L @@ -28,6 +28,7 @@ import com.franciaflex.faxtomail.persistence.entities.AttachmentFile; import com.franciaflex.faxtomail.persistence.entities.Email; import com.franciaflex.faxtomail.services.FaxToMailServiceContext; import com.franciaflex.faxtomail.services.service.EmailService; +import com.franciaflex.faxtomail.ui.swing.actions.AbstractFaxToMailAction; import com.franciaflex.faxtomail.ui.swing.content.demande.DemandeUIModel; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyAttachmentModel; import com.franciaflex.faxtomail.ui.swing.content.reply.ReplyFormUI; @@ -75,6 +76,7 @@ public class ReplyAction extends AbstractFaxToMailAction<ReplyFormUIModel, Reply model.getCci(), model.getSubject(), model.getMessage(), + model.getStamp(), attachmentFiles, originalDemand.getTopiaId(), getContext().getCurrentUser()); 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 55a061f..dd9f924 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 @@ -290,6 +290,7 @@ faxtomail.reply.label.cc=Copie \: faxtomail.reply.label.cci=Copie cachée \: faxtomail.reply.label.contact=Contact \: faxtomail.reply.label.from=De \: +faxtomail.reply.label.signing=Signature faxtomail.reply.label.subject=Objet \: faxtomail.reply.label.to=À \: faxtomail.reply.message=\nLe %1$s, %2$s a écrit \:\n> %3$s -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.