You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2018/07/26 11:13:55 UTC
[openmeetings] branch 4.0.x updated: [OPENMEETINGS-1898] user
details can be changed without password for oauth user
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch 4.0.x
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/4.0.x by this push:
new 5479834 [OPENMEETINGS-1898] user details can be changed without password for oauth user
5479834 is described below
commit 5479834ac028775705130445e9ab6715941e8a50
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Thu Jul 26 18:13:45 2018 +0700
[OPENMEETINGS-1898] user details can be changed without password for oauth user
---
.../apache/openmeetings/db/dao/user/UserDao.java | 1 -
.../openmeetings/web/user/profile/ProfileForm.html | 2 +-
.../openmeetings/web/user/profile/ProfileForm.java | 24 +++++++++++++---------
3 files changed, 15 insertions(+), 12 deletions(-)
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
index b4f2f3d..b03d503 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
@@ -103,7 +103,6 @@ public class UserDao implements IGroupAdminDataProviderDao<User> {
user.setLanguageId(getDefaultLang());
user.setTimeZoneId(getTimeZone(currentUser).getID());
user.setForceTimeZoneCheck(false);
- user.setSendSMS(false);
user.setAge(new Date());
user.setLastlogin(new Date());
Address address = new Address();
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.html
index b836d6e..006634c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.html
@@ -29,7 +29,7 @@
<wicket:message key="143" />
</legend>
<button type="button" wicket:id="changePwd" id="changePwd" style="margin-left: 180px;"><wicket:message key="327"/></button>
- <div class="formelement">
+ <div class="formelement" wicket:enclosure="passwd">
<label wicket:for="passwd"><wicket:message key="current.password" /></label><input type="password" wicket:id="passwd" />
</div>
<form wicket:id="general"></form>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
index e29b2eb..28e61e4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
@@ -54,18 +54,20 @@ public class ProfileForm extends Form<User> {
private final PasswordTextField passwd = new PasswordTextField("passwd", new Model<String>());
private final GeneralUserForm userForm;
private final ChangePasswordDialog chPwdDlg;
+ private boolean checkPassword;
private FormActionsPanel<User> actions;
public ProfileForm(String id, final ChangePasswordDialog chPwdDlg) {
super(id, new CompoundPropertyModel<>(getBean(UserDao.class).get(getUserId())));
userForm = new GeneralUserForm("general", getModel(), false);
this.chPwdDlg = chPwdDlg;
+ this.checkPassword = User.Type.oauth != getModelObject().getType();
}
@Override
protected void onInitialize() {
super.onInitialize();
- add(passwd.setLabel(Model.of(getString("current.password"))).setRequired(true));
+ add(passwd.setLabel(Model.of(getString("current.password"))).setRequired(true).setVisible(checkPassword));
add(actions = new FormActionsPanel<User>("buttons", this) {
private static final long serialVersionUID = 1L;
@@ -111,7 +113,7 @@ public class ProfileForm extends Form<User> {
protected void onEvent(AjaxRequestTarget target) {
chPwdDlg.open(target);
}
- }));
+ }).setVisible(checkPassword));
add(userForm);
add(new UploadableProfileImagePanel("img", getUserId()));
add(new ComunityUserForm("comunity", getModel()));
@@ -129,14 +131,16 @@ public class ProfileForm extends Form<User> {
@Override
protected void onValidate() {
- String p = passwd.getConvertedInput();
- if (!Strings.isEmpty(p) && !getBean(UserDao.class).verifyPassword(getModelObject().getId(), p)) {
- error(getString("231"));
- // add random timeout
- try {
- Thread.sleep(6 + (long)(10 * Math.random() * 1000));
- } catch (InterruptedException e) {
- log.error("Unexpected exception while sleeping", e);
+ if (checkPassword) {
+ String p = passwd.getConvertedInput();
+ if (!Strings.isEmpty(p) && !getBean(UserDao.class).verifyPassword(getModelObject().getId(), p)) {
+ error(getString("231"));
+ // add random timeout
+ try {
+ Thread.sleep(6 + (long)(10 * Math.random() * 1000));
+ } catch (InterruptedException e) {
+ log.error("Unexpected exception while sleeping", e);
+ }
}
}
super.onValidate();