diff --git a/workflow/engine/classes/model/UsersProperties.php b/workflow/engine/classes/model/UsersProperties.php index 3bb8b6797..8e20454eb 100644 --- a/workflow/engine/classes/model/UsersProperties.php +++ b/workflow/engine/classes/model/UsersProperties.php @@ -195,6 +195,10 @@ class UsersProperties extends BaseUsersProperties $changePassword = 1; } } + //Spaces not supported at the end of passwords + if (substr($password, -1) === " ") { + $listErrors[] = 'ID_PPP_SPACES_NOT_SUPPORTED_AT_THE_END_OF_PASSWORD'; + } if ($changePassword == 1) { $listErrors[] = 'ID_PPP_CHANGE_PASSWORD_AFTER_NEXT_LOGIN'; diff --git a/workflow/engine/content/translations/english/processmaker.en.po b/workflow/engine/content/translations/english/processmaker.en.po index c23f08e16..870939d31 100755 --- a/workflow/engine/content/translations/english/processmaker.en.po +++ b/workflow/engine/content/translations/english/processmaker.en.po @@ -22277,6 +22277,12 @@ msgstr "Minimum length" msgid "Numerical Character is required" msgstr "Numerical Character is required" +# TRANSLATION +# LABEL/ID_PPP_SPACES_NOT_SUPPORTED_AT_THE_END_OF_PASSWORD +#: LABEL/ID_PPP_SPACES_NOT_SUPPORTED_AT_THE_END_OF_PASSWORD +msgid "Spaces not supported at the end of password" +msgstr "Spaces not supported at the end of password" + # TRANSLATION # LABEL/ID_PPP_SPECIAL_CHARACTER_REQUIRED #: LABEL/ID_PPP_SPECIAL_CHARACTER_REQUIRED diff --git a/workflow/engine/data/mysql/insert.sql b/workflow/engine/data/mysql/insert.sql index 6a91c72e0..a2663b94e 100755 --- a/workflow/engine/data/mysql/insert.sql +++ b/workflow/engine/data/mysql/insert.sql @@ -60625,6 +60625,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ( 'LABEL','ID_PPP_MINIMUM_LENGTH','en','Minimum length','2014-01-15') , ( 'LABEL','ID_PPP_MINIMUN_LENGTH','en','Minimum length','2014-01-15') , ( 'LABEL','ID_PPP_NUMERICAL_CHARACTER_REQUIRED','en','Numerical Character is required','2014-01-15') , +( 'LABEL','ID_PPP_SPACES_NOT_SUPPORTED_AT_THE_END_OF_PASSWORD','en','Spaces not supported at the end of password','2022-02-09') , ( 'LABEL','ID_PPP_SPECIAL_CHARACTER_REQUIRED','en','Special Character is required','2014-01-15') , ( 'LABEL','ID_PPP_UPPERCASE_CHARACTER_REQUIRED','en','Uppercase Character is required','2014-01-15') , ( 'LABEL','ID_PREFERENCES','en','Preferences','2014-01-15') , diff --git a/workflow/engine/methods/login/authentication.php b/workflow/engine/methods/login/authentication.php index bce846d57..b8f3ed162 100644 --- a/workflow/engine/methods/login/authentication.php +++ b/workflow/engine/methods/login/authentication.php @@ -40,7 +40,8 @@ try { if (isset($frm['USR_USERNAME'])) { $usr = mb_strtolower(trim($frm['USR_USERNAME']), 'UTF-8'); - $pwd = trim($frm['USR_PASSWORD']); + //Spaces not supported at the end of passwords + $pwd = rtrim($frm['USR_PASSWORD']); } /*----------------------------------********---------------------------------*/ require_once PATH_CORE . 'methods' . PATH_SEP . 'enterprise' . PATH_SEP . 'enterprise.php'; diff --git a/workflow/engine/xmlform/login/changePasswordpm3.xml b/workflow/engine/xmlform/login/changePasswordpm3.xml index 9147f5894..24731f8ec 100644 --- a/workflow/engine/xmlform/login/changePasswordpm3.xml +++ b/workflow/engine/xmlform/login/changePasswordpm3.xml @@ -108,6 +108,11 @@ var verifyPassword = function() { return; } } + //Spaces not supported at the end of passwords + if (oPassword1.value.slice(-1) === ' ') { + alert('@G::LoadTranslation(ID_PPP_SPACES_NOT_SUPPORTED_AT_THE_END_OF_PASSWORD)'); + return; + } oPassword1.form.submit(); };