From 3573a2fac7c4426a6930e340a46eecf35fe59f16 Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Mon, 9 Sep 2019 18:55:37 +0200 Subject: [PATCH] OO-4233: don't use the mascareded phone number to send sms --- .../olat/admin/user/imp/TransientIdentity.java | 5 +++++ .../org/olat/admin/user/imp/UpdateIdentity.java | 5 +++++ .../olat/basesecurity/model/QueryUserHelper.java | 5 +++++ .../sms/manager/SimpleMessageServiceImpl.java | 5 ++--- src/main/java/org/olat/core/id/User.java | 6 ++++++ .../olat/core/util/mail/ui/EMailIdentity.java | 5 +++++ .../olat/course/run/preview/PreviewIdentity.java | 16 ++++++---------- src/main/java/org/olat/user/UserImpl.java | 8 ++++++++ 8 files changed, 42 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/olat/admin/user/imp/TransientIdentity.java b/src/main/java/org/olat/admin/user/imp/TransientIdentity.java index b1ab83724b6..4a17c2954c3 100644 --- a/src/main/java/org/olat/admin/user/imp/TransientIdentity.java +++ b/src/main/java/org/olat/admin/user/imp/TransientIdentity.java @@ -90,6 +90,11 @@ public class TransientIdentity implements Identity, User { return properties.get(UserConstants.INSTITUTIONALEMAIL); } + @Override + public String getSmsTelMobile() { + return properties.get(UserConstants.SMSTELMOBILE); + } + public String getPassword() { return password; } diff --git a/src/main/java/org/olat/admin/user/imp/UpdateIdentity.java b/src/main/java/org/olat/admin/user/imp/UpdateIdentity.java index 4ebb3ca58ec..3de1d29c910 100644 --- a/src/main/java/org/olat/admin/user/imp/UpdateIdentity.java +++ b/src/main/java/org/olat/admin/user/imp/UpdateIdentity.java @@ -173,6 +173,11 @@ public class UpdateIdentity implements Identity { return updatedProperties.get(UserConstants.INSTITUTIONALEMAIL); } + @Override + public String getSmsTelMobile() { + return updatedProperties.get(UserConstants.SMSTELMOBILE); + } + @Override public Date getCreationDate() { return user.getCreationDate(); diff --git a/src/main/java/org/olat/basesecurity/model/QueryUserHelper.java b/src/main/java/org/olat/basesecurity/model/QueryUserHelper.java index 42475c06f86..6bce3b909d7 100644 --- a/src/main/java/org/olat/basesecurity/model/QueryUserHelper.java +++ b/src/main/java/org/olat/basesecurity/model/QueryUserHelper.java @@ -75,6 +75,11 @@ public class QueryUserHelper implements User { return null; } + @Override + public String getSmsTelMobile() { + return null; + } + @Override public Preferences getPreferences() { return null; diff --git a/src/main/java/org/olat/core/commons/services/sms/manager/SimpleMessageServiceImpl.java b/src/main/java/org/olat/core/commons/services/sms/manager/SimpleMessageServiceImpl.java index fbf629be65a..5900eb518fc 100644 --- a/src/main/java/org/olat/core/commons/services/sms/manager/SimpleMessageServiceImpl.java +++ b/src/main/java/org/olat/core/commons/services/sms/manager/SimpleMessageServiceImpl.java @@ -23,6 +23,7 @@ package org.olat.core.commons.services.sms.manager; import java.util.List; import java.util.Random; +import org.apache.logging.log4j.Logger; import org.olat.core.commons.services.sms.MessageLog; import org.olat.core.commons.services.sms.MessagesSPI; import org.olat.core.commons.services.sms.SimpleMessageException; @@ -35,8 +36,6 @@ import org.olat.core.gui.components.form.flexible.impl.Form; import org.olat.core.gui.control.WindowControl; import org.olat.core.helpers.Settings; import org.olat.core.id.Identity; -import org.olat.core.id.UserConstants; -import org.apache.logging.log4j.Logger; import org.olat.core.logging.Tracing; import org.olat.core.util.StringHelper; import org.springframework.beans.factory.annotation.Autowired; @@ -99,7 +98,7 @@ public class SimpleMessageServiceImpl implements SimpleMessageService { @Override public void sendMessage(String text, Identity recipient) throws SimpleMessageException { - String telNumber = recipient.getUser().getProperty(UserConstants.SMSTELMOBILE, null); + String telNumber = recipient.getUser().getSmsTelMobile(); sendMessage(text, telNumber, recipient); } diff --git a/src/main/java/org/olat/core/id/User.java b/src/main/java/org/olat/core/id/User.java index a91134f158d..74c476e402b 100644 --- a/src/main/java/org/olat/core/id/User.java +++ b/src/main/java/org/olat/core/id/User.java @@ -51,6 +51,12 @@ public interface User extends CreateInfo, Persistable { public String getEmail(); public String getInstitutionalEmail(); + + /** + * + * @return The real value, don't show it on any user interface + */ + public String getSmsTelMobile(); /** * Get the users prefereces object diff --git a/src/main/java/org/olat/core/util/mail/ui/EMailIdentity.java b/src/main/java/org/olat/core/util/mail/ui/EMailIdentity.java index 9f23e11df34..23ac3ff0e0f 100644 --- a/src/main/java/org/olat/core/util/mail/ui/EMailIdentity.java +++ b/src/main/java/org/olat/core/util/mail/ui/EMailIdentity.java @@ -126,6 +126,11 @@ public class EMailIdentity implements Identity { return data.get(UserConstants.INSTITUTIONALEMAIL); } + @Override + public String getSmsTelMobile() { + return data.get(UserConstants.SMSTELMOBILE); + } + @Override public Date getLastModified() { return null; diff --git a/src/main/java/org/olat/course/run/preview/PreviewIdentity.java b/src/main/java/org/olat/course/run/preview/PreviewIdentity.java index 071a1a43250..5b1b029c509 100644 --- a/src/main/java/org/olat/course/run/preview/PreviewIdentity.java +++ b/src/main/java/org/olat/course/run/preview/PreviewIdentity.java @@ -100,9 +100,11 @@ public final class PreviewIdentity implements Identity, User { return data.get(UserConstants.LASTNAME); } - /** - * @see org.olat.core.id.Identity#getUser() - */ + @Override + public String getSmsTelMobile() { + return data.get(UserConstants.SMSTELMOBILE); + } + @Override public User getUser() { return this; @@ -143,9 +145,6 @@ public final class PreviewIdentity implements Identity, User { // } - /** - * @see org.olat.core.commons.persistence.Auditable#getCreationDate() - */ @Override public Date getCreationDate() { return new Date(); @@ -160,10 +159,7 @@ public final class PreviewIdentity implements Identity, User { public Integer getStatus() { return Identity.STATUS_ACTIV; } - - /** - * @see org.olat.core.commons.persistence.Persistable#equalsByPersistableKey(org.olat.core.commons.persistence.Persistable) - */ + @Override public boolean equalsByPersistableKey(Persistable persistable) { return equals(persistable); diff --git a/src/main/java/org/olat/user/UserImpl.java b/src/main/java/org/olat/user/UserImpl.java index ca69ab1df34..0f188976ebb 100644 --- a/src/main/java/org/olat/user/UserImpl.java +++ b/src/main/java/org/olat/user/UserImpl.java @@ -343,6 +343,14 @@ public class UserImpl implements Persistable, User { this.institutionalEmail = institutionalEmail; } + public String getSmsTelMobile() { + return smsTelMobile; + } + + public void setSmsTelMobile(String smsTelMobile) { + this.smsTelMobile = smsTelMobile; + } + public boolean isWebdav() { return webdav; } -- GitLab