diff --git a/application/src/main/java/org/thingsboard/server/controller/BaseController.java b/application/src/main/java/org/thingsboard/server/controller/BaseController.java index 2d868a1135..dbe430ba18 100644 --- a/application/src/main/java/org/thingsboard/server/controller/BaseController.java +++ b/application/src/main/java/org/thingsboard/server/controller/BaseController.java @@ -923,6 +923,7 @@ public abstract class BaseController { UserCredentials userCredentials = userService.findUserCredentialsByUserId(user.getTenantId(), user.getId()); info.put("userCredentialsEnabled", userCredentials.isEnabled()); + info.put("userActivated", userCredentials.getActivateToken() == null); info.put("lastLoginTs", userCredentials.getLastLoginTs()); } diff --git a/application/src/test/java/org/thingsboard/server/controller/AuthControllerTest.java b/application/src/test/java/org/thingsboard/server/controller/AuthControllerTest.java index 73182587fb..dac48a1c06 100644 --- a/application/src/test/java/org/thingsboard/server/controller/AuthControllerTest.java +++ b/application/src/test/java/org/thingsboard/server/controller/AuthControllerTest.java @@ -83,6 +83,7 @@ public class AuthControllerTest extends AbstractControllerTest { assertThat(user.getEmail()).isEqualTo(CUSTOMER_USER_EMAIL); user = getUser(customerUserId); assertThat(user.getAdditionalInfo().get("userCredentialsEnabled").asBoolean()).isTrue(); + assertThat(user.getAdditionalInfo().get("userActivated").asBoolean()).isTrue(); assertThat(user.getAdditionalInfo().get("lastLoginTs").asLong()).isCloseTo(System.currentTimeMillis(), within(10000L)); } @@ -243,6 +244,7 @@ public class AuthControllerTest extends AbstractControllerTest { user.setAuthority(Authority.TENANT_ADMIN); user.setEmail("tenant-admin-2@thingsboard.org"); user = doPost("/api/user", user, User.class); + assertThat(getUser(user.getId()).getAdditionalInfo().get("userActivated").asBoolean()).isFalse(); UserCredentials userCredentials = userCredentialsDao.findByUserId(tenantId, user.getUuidId()); assertThat(userCredentials.getActivateTokenExpTime()).isCloseTo(System.currentTimeMillis() + TimeUnit.HOURS.toMillis(ttl), Offset.offset(120000L)); @@ -289,6 +291,7 @@ public class AuthControllerTest extends AbstractControllerTest { doPost("/api/noauth/activate", JacksonUtil.newObjectNode() .put("activateToken", newActivationToken) .put("password", "wefewe")).andExpect(status().isOk()); + assertThat(getUser(user.getId()).getAdditionalInfo().get("userActivated").asBoolean()).isTrue(); } @Test diff --git a/ui-ngx/src/app/modules/home/pages/user/user.component.html b/ui-ngx/src/app/modules/home/pages/user/user.component.html index 933e244290..3c52d89fc6 100644 --- a/ui-ngx/src/app/modules/home/pages/user/user.component.html +++ b/ui-ngx/src/app/modules/home/pages/user/user.component.html @@ -25,25 +25,25 @@