06/12: refs #44 envoi d'un mail pour validation de l'adresse email
This is an automated email from the git hooks/post-receive script. New commit to branch feature/44_several_email_address in repository pollen. See https://gitlab.nuiton.org/chorem/pollen.git commit e574d5ced9bd6b5a19791aad7316e508c5d2ca9c Author: Kevin Morin <morin@codelutin.com> Date: Thu Oct 12 15:31:03 2017 +0200 refs #44 envoi d'un mail pour validation de l'adresse email --- .../services/service/NotificationService.java | 8 +++++++ .../pollen/services/service/PollenUserService.java | 3 +++ .../pollen/services/service/mail/EmailService.java | 11 +++++++++ .../service/mail/UserAccountCreatedEmail.java | 8 ------- ...java => UserAccountEmailAddressAddedEmail.java} | 28 ++++------------------ .../UserAccountEmailAddressAddedEmail.mustache | 5 ++++ .../UserAccountEmailAddressAddedEmail_fr.mustache | 5 ++++ .../i18n/pollen-services_en_GB.properties | 1 + .../i18n/pollen-services_fr_FR.properties | 1 + 9 files changed, 38 insertions(+), 32 deletions(-) diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/NotificationService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/NotificationService.java index c06da4c8..0b26b609 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/NotificationService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/NotificationService.java @@ -57,6 +57,7 @@ import org.chorem.pollen.services.service.mail.UserAccountCreatedEmail; import org.chorem.pollen.services.service.mail.UserAccountCreatedFromProviderEmail; import org.chorem.pollen.services.service.mail.UserAccountDeletedEmail; import org.chorem.pollen.services.service.mail.UserAccountEditedEmail; +import org.chorem.pollen.services.service.mail.UserAccountEmailAddressAddedEmail; import org.chorem.pollen.services.service.mail.UserAccountEmailValidatedEmail; import org.chorem.pollen.services.service.mail.UserAccountPasswordChangedEmail; import org.chorem.pollen.services.service.mail.VoteAddedEmail; @@ -128,6 +129,13 @@ public class NotificationService extends PollenServiceSupport { } } + public void onUserEmailAddressAdded(PollenUser user, PollenUserEmailAddress emailAddress) { + EmailService emailService = getEmailService(); + UserAccountEmailAddressAddedEmail email = emailService.newUserAccountEmailAddressAddedEmail(user, emailAddress); + email.addTo(emailAddress.getEmailAddress()); + emailService.send(email); + } + public void onUserEmailValidated(PollenUser user, PollenUserEmailAddress emailAddress) { EmailService emailService = getEmailService(); UserAccountEmailValidatedEmail email = emailService.newUserAccountEmailValidatedEmail(user); diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java index 3f2b45f5..3b772a5e 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/PollenUserService.java @@ -338,6 +338,9 @@ public class PollenUserService extends PollenServiceSupport implements PollenSer address.setActivationToken(emailActivation); user.addEmailAddresses(address); commit(); + + getNotificationService().onUserEmailAddressAdded(user, address); + return PollenEntityRef.of(address); } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/EmailService.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/EmailService.java index 4d7de18e..6d9f4d1a 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/EmailService.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/EmailService.java @@ -261,6 +261,17 @@ public class EmailService extends PollenServiceSupport { return email; } + public UserAccountEmailAddressAddedEmail newUserAccountEmailAddressAddedEmail(PollenUser user, + PollenUserEmailAddress emailAddress) { + UserAccountEmailAddressAddedEmail email = new UserAccountEmailAddressAddedEmail(getLocale()); + email.setUser(user); + PollenEntityId<PollenUser> userId = getPollenEntityId(user); + email.setValidateUrl(getPollenUIUrlRenderService().getUserValidateUrl(getUIContext().getUserValidateUrl(), + userId.getReducedId(), + emailAddress.getActivationToken().getToken())); + return email; + } + public UserAccountEmailValidatedEmail newUserAccountEmailValidatedEmail(PollenUser user) { UserAccountEmailValidatedEmail email = new UserAccountEmailValidatedEmail(getLocale()); email.setUser(user); diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java index e8f527ec..72d6695c 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java @@ -38,7 +38,6 @@ public class UserAccountCreatedEmail extends PollenMail { private String validateUrl; private String pollenUrl; - private String password; protected UserAccountCreatedEmail(Locale locale) { super(locale); @@ -73,11 +72,4 @@ public class UserAccountCreatedEmail extends PollenMail { this.pollenUrl = pollenUrl; } - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } } diff --git a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountEmailAddressAddedEmail.java similarity index 67% copy from pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java copy to pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountEmailAddressAddedEmail.java index e8f527ec..b61c28dc 100644 --- a/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountCreatedEmail.java +++ b/pollen-services/src/main/java/org/chorem/pollen/services/service/mail/UserAccountEmailAddressAddedEmail.java @@ -27,26 +27,21 @@ import org.nuiton.i18n.I18n; import java.util.Locale; /** - * Created on 4/30/14. - * - * @author Tony Chemit - dev@tchemit.fr - * @since 2.0 + * @author Kevin Morin - morin@codelutin.com */ -public class UserAccountCreatedEmail extends PollenMail { +public class UserAccountEmailAddressAddedEmail extends PollenMail { private PollenUser user; private String validateUrl; - private String pollenUrl; - private String password; - protected UserAccountCreatedEmail(Locale locale) { + protected UserAccountEmailAddressAddedEmail(Locale locale) { super(locale); } @Override public String getSubject() { - return I18n.l(locale, "pollen.service.mail.UserAccountCreatedEmail.subject", user.getName()); + return I18n.l(locale, "pollen.service.mail.UserAccountEmailAddressAddedEmail.subject", user.getName()); } public PollenUser getUser() { @@ -65,19 +60,4 @@ public class UserAccountCreatedEmail extends PollenMail { this.validateUrl = validateUrl; } - public String getPollenUrl() { - return pollenUrl; - } - - public void setPollenUrl(String pollenUrl) { - this.pollenUrl = pollenUrl; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } } diff --git a/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail.mustache b/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail.mustache new file mode 100644 index 00000000..b70c4bb1 --- /dev/null +++ b/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail.mustache @@ -0,0 +1,5 @@ +Welcome {{user.name}}, + +You have just added the following email address to your Pollen account: {{user.email}} + +To use it, you need to validate this email address on this url: {{validateUrl}} \ No newline at end of file diff --git a/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail_fr.mustache b/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail_fr.mustache new file mode 100644 index 00000000..b130080d --- /dev/null +++ b/pollen-services/src/main/resources/email/UserAccountEmailAddressAddedEmail_fr.mustache @@ -0,0 +1,5 @@ +Bonjour {{user.name}}, + +Vous venez d'ajouter l'adresse électronique suivante à votre compte Pollen : {{user.email}} + +Pour l'utiliser, vous devez valider cette adresse en allant sur cette url : {{validateUrl}} \ No newline at end of file diff --git a/pollen-services/src/main/resources/i18n/pollen-services_en_GB.properties b/pollen-services/src/main/resources/i18n/pollen-services_en_GB.properties index a48fcfba..ea6db8ad 100644 --- a/pollen-services/src/main/resources/i18n/pollen-services_en_GB.properties +++ b/pollen-services/src/main/resources/i18n/pollen-services_en_GB.properties @@ -167,6 +167,7 @@ pollen.service.mail.UserAccountCreatedEmail.subject=[Pollen] Confirmation of acc pollen.service.mail.UserAccountCreatedFromProviderEmail.subject=[Pollen] Confirmation of account creation %s pollen.service.mail.UserAccountDeletedEmail.subject=[Pollen] Confirmation of deletion of the account %s pollen.service.mail.UserAccountEditedEmail.subject=[Pollen] Update of the account %s +pollen.service.mail.UserAccountEmailAddressAddedEmail.subject=[Pollen] New email address added %s pollen.service.mail.UserAccountEmailValidatedEmail.subject=[Pollen] Validation of your account %s pollen.service.mail.UserAccountPasswordChangedEmail.subject=[Pollen] Confirmation of the modification of teh password of your account %s pollen.service.mail.VoteAddedEmail.subject=[Pollen] A vote was added in poll %s diff --git a/pollen-services/src/main/resources/i18n/pollen-services_fr_FR.properties b/pollen-services/src/main/resources/i18n/pollen-services_fr_FR.properties index 49cccfaf..47b32796 100644 --- a/pollen-services/src/main/resources/i18n/pollen-services_fr_FR.properties +++ b/pollen-services/src/main/resources/i18n/pollen-services_fr_FR.properties @@ -166,6 +166,7 @@ pollen.service.mail.UserAccountCreatedEmail.subject=[Pollen] Confirmation de cr pollen.service.mail.UserAccountCreatedFromProviderEmail.subject=[Pollen] Confirmation de création du compte %s pollen.service.mail.UserAccountDeletedEmail.subject=[Pollen] Confirmation de suppression du compte %s pollen.service.mail.UserAccountEditedEmail.subject=[Pollen] Édition du compte %s +pollen.service.mail.UserAccountEmailAddressAddedEmail.subject=[Pollen] Nouvelle adresse électronique ajoutée %s pollen.service.mail.UserAccountEmailValidatedEmail.subject=[Pollen] Valiation de votre compte %s pollen.service.mail.UserAccountPasswordChangedEmail.subject=[Pollen] Confirmation de la modification du mot de passe du compte %s pollen.service.mail.VoteAddedEmail.subject=[Pollen] Un nouveau vote a été ajouté au sondage %s -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.
participants (1)
-
chorem.org scm