From 3d26c687fdb64e3808607447c7578f82de32a525 Mon Sep 17 00:00:00 2001
From: Caozhenhui <823914102@qq.com>
Date: Mon, 20 Dec 2021 14:21:32 +0800
Subject: [PATCH 1/3] Solved two problems of the last PR
---
admin/app/translations.js | 12 +++++++++++-
admin/views/users/user/user.html | 2 +-
myems-api/core/user.py | 2 +-
3 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/admin/app/translations.js b/admin/app/translations.js
index 61e516c9..c8249acf 100644
--- a/admin/app/translations.js
+++ b/admin/app/translations.js
@@ -128,6 +128,7 @@ function config($translateProvider) {
EDIT: 'Edit',
BIND_PROPERTY: 'Bind Property',
DELETE: 'Delete',
+ UNLOCK: 'Unlock',
SELECT: 'Select',
RESET: 'Reset',
SAVE: 'Save',
@@ -560,9 +561,11 @@ function config($translateProvider) {
SUCCESS_ADD_BODY: 'Add {{template}} Success',
SUCCESS_UPDATE_BODY: 'Update {{template}} Success',
SUCCESS_DELETE_BODY: 'Delete {{template}} Success',
+ SUCCESS_UNLOCK_BODY: 'Unlock {{template}} Success',
ERROR_ADD_BODY: 'Add {{template}} Failure',
ERROR_UPDATE_BODY: 'Update {{template}} Failure',
ERROR_DELETE_BODY: 'Delete {{template}} Failure',
+ ERROR_UNLOCK_BODY: 'Unlock {{template}} Failure',
USER_PASSWORD: 'User Password',
BIND_METER_SUCCESS: 'Bind Meter Success',
@@ -587,6 +590,8 @@ function config($translateProvider) {
TEXT: 'Deleting this bar will also delete all related data!',
CONFIRM_BUTTON_TEXT: 'Confirm delete',
CANCEL_BUTTON_TEXT: 'Cancel',
+ UNLOCK_TITLE: 'Please confirm whether to unlock',
+ UNLOCK_CONFIRM_BUTTON_TEXT: 'Confirm unlock',
},
API: {
ADMINISTRATOR_SESSION_NOT_FOUND: 'Administrator Session Not Found',
@@ -1576,7 +1581,7 @@ function config($translateProvider) {
TEXT: '删除该条也会删除所有与其相关数据!',
CONFIRM_BUTTON_TEXT: '确认删除',
CANCEL_BUTTON_TEXT: '取消',
- UNLOCK_TITLE: '请确认是否解锁该用户登录权限',
+ UNLOCK_TITLE: '请确认是否解锁该用户登录权限?',
UNLOCK_CONFIRM_BUTTON_TEXT: '确认解锁'
},
API: {
@@ -2098,6 +2103,7 @@ function config($translateProvider) {
BIND_PROPERTY: 'Bindungseigenschaften',
EDIT: 'ändern',
DELETE: 'löschen',
+ UNLOCK: '',
SELECT: 'wählen',
RESET: 'Zurücksetzen',
SAVE: 'speichern',
@@ -2534,9 +2540,11 @@ function config($translateProvider) {
SUCCESS_ADD_BODY: 'Fügen Sie {{template}} erfolgreich hinzu',
SUCCESS_UPDATE_BODY: 'Update {{template}} erfolgreich',
SUCCESS_DELETE_BODY: '{{Template}} erfolgreich löschen',
+ SUCCESS_UNLOCK_BODY: '',
ERROR_ADD_BODY: 'Das Hinzufügen von {{template}} ist fehlgeschlagen',
ERROR_UPDATE_BODY: 'Update {{template}} fehlgeschlagen',
ERROR_DELETE_BODY: 'Fehler beim Löschen von {{template}}',
+ ERROR_UNLOCK_BODY: '',
USER_PASSWORD: 'Benutzer-Passwort',
BIND_METER_SUCCESS: 'Binden Sie das Messgerät erfolgreich',
@@ -2563,6 +2571,8 @@ function config($translateProvider) {
TEXT: 'Durch Löschen dieses Artikels werden auch alle zugehörigen Daten gelöscht!',
CONFIRM_BUTTON_TEXT: 'Löschung bestätigen',
CANCEL_BUTTON_TEXT: 'stornieren',
+ UNLOCK_TITLE: '',
+ UNLOCK_CONFIRM_BUTTON_TEXT: '',
},
API: {
ADMINISTRATOR_SESSION_NOT_FOUND: 'Administrator Session Not Found',
diff --git a/admin/views/users/user/user.html b/admin/views/users/user/user.html
index 9d92622a..c0be0eaa 100644
--- a/admin/views/users/user/user.html
+++ b/admin/views/users/user/user.html
@@ -36,7 +36,7 @@
{{'SETTING.EDIT' | translate}}
{{'USER.RESET_PASSWORD' | translate}}
{{'SETTING.DELETE' | translate}}
- {{'SETTING.UNLOCK' | translate}}
+ {{'SETTING.UNLOCK' | translate}}
diff --git a/myems-api/core/user.py b/myems-api/core/user.py
index 99116de0..9f2f1c0b 100644
--- a/myems-api/core/user.py
+++ b/myems-api/core/user.py
@@ -60,7 +60,7 @@ class UserCollection:
account_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
"password_expiration_datetime":
password_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
- "failed_login_count": True if row[10] < 3 else False}
+ "is_locked": True if row[10] < 3 else False}
result.append(meta_result)
resp.text = json.dumps(result)
From 545ea96feefea3a9d594ccd3507e56e836920745 Mon Sep 17 00:00:00 2001
From: Caozhenhui <823914102@qq.com>
Date: Mon, 20 Dec 2021 19:25:02 +0800
Subject: [PATCH 2/3] use config.maximum failed login count instead of 3
---
admin/views/users/user/user.html | 2 +-
myems-api/core/user.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/admin/views/users/user/user.html b/admin/views/users/user/user.html
index c0be0eaa..cdafbd34 100644
--- a/admin/views/users/user/user.html
+++ b/admin/views/users/user/user.html
@@ -36,7 +36,7 @@
{{'SETTING.EDIT' | translate}}
{{'USER.RESET_PASSWORD' | translate}}
{{'SETTING.DELETE' | translate}}
- {{'SETTING.UNLOCK' | translate}}
+ {{'SETTING.UNLOCK' | translate}}
diff --git a/myems-api/core/user.py b/myems-api/core/user.py
index 9f2f1c0b..f9ac0a9e 100644
--- a/myems-api/core/user.py
+++ b/myems-api/core/user.py
@@ -60,7 +60,7 @@ class UserCollection:
account_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
"password_expiration_datetime":
password_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
- "is_locked": True if row[10] < 3 else False}
+ "is_locked": True if row[10] >= config.maximum_failed_login_count else False}
result.append(meta_result)
resp.text = json.dumps(result)
From 75ea44dd8483f1403c43e058a74714373ce5ed17 Mon Sep 17 00:00:00 2001
From: "13621160019@163.com" <13621160019@163.com>
Date: Mon, 20 Dec 2021 20:00:48 +0800
Subject: [PATCH 3/3] added locl/unlock user who faied login some times to
admin and api
---
admin/app/translations.js | 16 ++++++++--------
myems-api/core/user.py | 10 +++++++---
2 files changed, 15 insertions(+), 11 deletions(-)
diff --git a/admin/app/translations.js b/admin/app/translations.js
index c8249acf..e8418864 100644
--- a/admin/app/translations.js
+++ b/admin/app/translations.js
@@ -586,11 +586,11 @@ function config($translateProvider) {
UNBIND_STORE_SUCCESS: 'Unbind Store Success',
},
SWEET: {
- TITLE: 'Please confirm whether to delete?',
+ TITLE: 'Please confirm to delete?',
TEXT: 'Deleting this bar will also delete all related data!',
CONFIRM_BUTTON_TEXT: 'Confirm delete',
CANCEL_BUTTON_TEXT: 'Cancel',
- UNLOCK_TITLE: 'Please confirm whether to unlock',
+ UNLOCK_TITLE: 'Please confirm to unlock',
UNLOCK_CONFIRM_BUTTON_TEXT: 'Confirm unlock',
},
API: {
@@ -1581,7 +1581,7 @@ function config($translateProvider) {
TEXT: '删除该条也会删除所有与其相关数据!',
CONFIRM_BUTTON_TEXT: '确认删除',
CANCEL_BUTTON_TEXT: '取消',
- UNLOCK_TITLE: '请确认是否解锁该用户登录权限?',
+ UNLOCK_TITLE: '请确认是否解锁?',
UNLOCK_CONFIRM_BUTTON_TEXT: '确认解锁'
},
API: {
@@ -2103,7 +2103,7 @@ function config($translateProvider) {
BIND_PROPERTY: 'Bindungseigenschaften',
EDIT: 'ändern',
DELETE: 'löschen',
- UNLOCK: '',
+ UNLOCK: 'Öffnen',
SELECT: 'wählen',
RESET: 'Zurücksetzen',
SAVE: 'speichern',
@@ -2540,11 +2540,11 @@ function config($translateProvider) {
SUCCESS_ADD_BODY: 'Fügen Sie {{template}} erfolgreich hinzu',
SUCCESS_UPDATE_BODY: 'Update {{template}} erfolgreich',
SUCCESS_DELETE_BODY: '{{Template}} erfolgreich löschen',
- SUCCESS_UNLOCK_BODY: '',
+ SUCCESS_UNLOCK_BODY: 'Öffnen {{template}} erfolgreich',
ERROR_ADD_BODY: 'Das Hinzufügen von {{template}} ist fehlgeschlagen',
ERROR_UPDATE_BODY: 'Update {{template}} fehlgeschlagen',
ERROR_DELETE_BODY: 'Fehler beim Löschen von {{template}}',
- ERROR_UNLOCK_BODY: '',
+ ERROR_UNLOCK_BODY: 'Öffnen {{template}} fehlgeschlagen',
USER_PASSWORD: 'Benutzer-Passwort',
BIND_METER_SUCCESS: 'Binden Sie das Messgerät erfolgreich',
@@ -2571,8 +2571,8 @@ function config($translateProvider) {
TEXT: 'Durch Löschen dieses Artikels werden auch alle zugehörigen Daten gelöscht!',
CONFIRM_BUTTON_TEXT: 'Löschung bestätigen',
CANCEL_BUTTON_TEXT: 'stornieren',
- UNLOCK_TITLE: '',
- UNLOCK_CONFIRM_BUTTON_TEXT: '',
+ UNLOCK_TITLE: 'Bitte bestätigen, um zu entsperren',
+ UNLOCK_CONFIRM_BUTTON_TEXT: 'Aktivieren bestätigen',
},
API: {
ADMINISTRATOR_SESSION_NOT_FOUND: 'Administrator Session Not Found',
diff --git a/myems-api/core/user.py b/myems-api/core/user.py
index f9ac0a9e..7114bb67 100644
--- a/myems-api/core/user.py
+++ b/myems-api/core/user.py
@@ -214,7 +214,8 @@ class UserItem:
query = (" SELECT u.id, u.name, u.display_name, u.uuid, "
" u.email, u.is_admin, p.id, p.name, "
- " u.account_expiration_datetime_utc, u.password_expiration_datetime_utc "
+ " u.account_expiration_datetime_utc, u.password_expiration_datetime_utc,"
+ " u.failed_login_count "
" FROM tbl_users u "
" LEFT JOIN tbl_privileges p ON u.privilege_id = p.id "
" WHERE u.id =%s ")
@@ -242,8 +243,11 @@ class UserItem:
"privilege": {
"id": row[6],
"name": row[7]} if row[6] is not None else None,
- "account_expiration_datetime": account_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
- "password_expiration_datetime": password_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S')}
+ "account_expiration_datetime":
+ account_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
+ "password_expiration_datetime":
+ password_expiration_datetime_local.strftime('%Y-%m-%dT%H:%M:%S'),
+ "is_locked": True if row[10] >= config.maximum_failed_login_count else False}
resp.text = json.dumps(result)
@staticmethod