User active column
This commit is contained in:
@@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
||||
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [Unreleased]
|
||||
### Added
|
||||
- User active column
|
||||
|
||||
## [4.0.0-rc1]
|
||||
### Added
|
||||
|
||||
@@ -67,6 +67,7 @@ Name | Description | Details
|
||||
**Home** | Home path column. | Mandatory for `Query` *Home sync* option.
|
||||
**Password** | Password hash column. | Mandatory for user backend.
|
||||
**Display name** | Display name column. | Optional.
|
||||
**Active** | Flag indicating if user can log in. | Optional.<br/>Default: true.
|
||||
**Can change avatar** | Flag indicating if user can change its avatar. | Optional.<br/>Default: false.
|
||||
|
||||
#### Group table
|
||||
@@ -161,6 +162,7 @@ User table: jhi_users
|
||||
Username column: login
|
||||
Password column: password_hash
|
||||
Email column: email
|
||||
Active column: activated
|
||||
|
||||
Hashing algorithm: Unix (Crypt)
|
||||
```
|
||||
|
||||
@@ -75,7 +75,7 @@ user_sql.adminSettingsUI = function () {
|
||||
);
|
||||
|
||||
autocomplete(
|
||||
"#db-table-user-column-uid, #db-table-user-column-email, #db-table-user-column-home, #db-table-user-column-password, #db-table-user-column-name, #db-table-user-column-avatar",
|
||||
"#db-table-user-column-uid, #db-table-user-column-email, #db-table-user-column-home, #db-table-user-column-password, #db-table-user-column-name, #db-table-user-column-active, #db-table-user-column-avatar",
|
||||
"/apps/user_sql/settings/autocomplete/table/user"
|
||||
);
|
||||
|
||||
|
||||
@@ -278,6 +278,14 @@ final class UserBackend extends Backend
|
||||
$password, $user->password
|
||||
);
|
||||
|
||||
if ($user->active == false) {
|
||||
$this->logger->info(
|
||||
"User account is inactive for user: $uid",
|
||||
["app" => $this->appName]
|
||||
);
|
||||
return false;
|
||||
}
|
||||
|
||||
if ($isCorrect !== true) {
|
||||
$this->logger->info(
|
||||
"Invalid password attempt for user: $uid",
|
||||
|
||||
@@ -45,6 +45,7 @@ final class DB
|
||||
const USER_GROUP_GID_COLUMN = "db.table.user_group.column.gid";
|
||||
const USER_GROUP_UID_COLUMN = "db.table.user_group.column.uid";
|
||||
|
||||
const USER_ACTIVE_COLUMN = "db.table.user.column.active";
|
||||
const USER_AVATAR_COLUMN = "db.table.user.column.avatar";
|
||||
const USER_EMAIL_COLUMN = "db.table.user.column.email";
|
||||
const USER_HOME_COLUMN = "db.table.user.column.home";
|
||||
|
||||
@@ -48,6 +48,10 @@ class User
|
||||
* @var string The user's home location.
|
||||
*/
|
||||
public $home;
|
||||
/**
|
||||
* @var bool Is user account active.
|
||||
*/
|
||||
public $active;
|
||||
/**
|
||||
* @var bool Can user change its avatar.
|
||||
*/
|
||||
|
||||
@@ -65,6 +65,7 @@ class QueryProvider implements \ArrayAccess
|
||||
$gGID = $this->properties[DB::GROUP_GID_COLUMN];
|
||||
$gName = $this->properties[DB::GROUP_NAME_COLUMN];
|
||||
|
||||
$uActive = $this->properties[DB::USER_ACTIVE_COLUMN];
|
||||
$uAvatar = $this->properties[DB::USER_AVATAR_COLUMN];
|
||||
$uEmail = $this->properties[DB::USER_EMAIL_COLUMN];
|
||||
$uHome = $this->properties[DB::USER_HOME_COLUMN];
|
||||
@@ -90,6 +91,7 @@ class QueryProvider implements \ArrayAccess
|
||||
(empty($uName) ? "null" : $uName) . " AS name, " .
|
||||
(empty($uEmail) ? "null" : $uEmail) . " AS email, " .
|
||||
(empty($uHome) ? "null" : $uHome) . " AS home, " .
|
||||
(empty($uActive) ? "true" : $uActive) . " AS active, " .
|
||||
(empty($uAvatar) ? "false" : $uAvatar) . " AS avatar";
|
||||
|
||||
$this->queries = [
|
||||
|
||||
@@ -147,6 +147,7 @@ function print_select_options(
|
||||
print_text_input($l, "db-table-user-column-home", "Home", $_['db.table.user.column.home']);
|
||||
print_text_input($l, "db-table-user-column-password", "Password", $_['db.table.user.column.password']);
|
||||
print_text_input($l, "db-table-user-column-name", "Display name", $_['db.table.user.column.name']);
|
||||
print_text_input($l, "db-table-user-column-active", "Active", $_['db.table.user.column.active']);
|
||||
print_text_input($l, "db-table-user-column-avatar", "Can change avatar", $_['db.table.user.column.avatar']); ?>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user