44
55namespace PhpList \Core \Domain \Identity \Service ;
66
7+ use PhpList \Core \Domain \Common \I18n \Messages ;
8+ use PhpList \Core \Domain \Common \I18n \TranslatorInterface ;
9+ use PhpList \Core \Domain \Configuration \Service \Manager \EventLogManager ;
710use PhpList \Core \Domain \Identity \Model \AdministratorToken ;
811use PhpList \Core \Domain \Identity \Repository \AdministratorRepository ;
912use PhpList \Core \Domain \Identity \Repository \AdministratorTokenRepository ;
@@ -13,24 +16,36 @@ class SessionManager
1316{
1417 private AdministratorTokenRepository $ tokenRepository ;
1518 private AdministratorRepository $ administratorRepository ;
19+ private EventLogManager $ eventLogManager ;
20+ private TranslatorInterface $ translator ;
1621
1722 public function __construct (
1823 AdministratorTokenRepository $ tokenRepository ,
19- AdministratorRepository $ administratorRepository
24+ AdministratorRepository $ administratorRepository ,
25+ EventLogManager $ eventLogManager ,
26+ TranslatorInterface $ translator
2027 ) {
2128 $ this ->tokenRepository = $ tokenRepository ;
2229 $ this ->administratorRepository = $ administratorRepository ;
30+ $ this ->eventLogManager = $ eventLogManager ;
31+ $ this ->translator = $ translator ;
2332 }
2433
2534 public function createSession (string $ loginName , string $ password ): AdministratorToken
2635 {
2736 $ administrator = $ this ->administratorRepository ->findOneByLoginCredentials ($ loginName , $ password );
2837 if ($ administrator === null ) {
29- throw new UnauthorizedHttpException ('' , 'Not authorized ' , null , 1500567098 );
38+ $ entry = $ this ->translator ->translate (Messages::AUTH_LOGIN_FAILED , ['login ' => $ loginName ]);
39+ $ this ->eventLogManager ->log ('login ' , $ entry );
40+ $ message = $ this ->translator ->translate (Messages::AUTH_NOT_AUTHORIZED );
41+ throw new UnauthorizedHttpException ('' , $ message , null , 1500567098 );
3042 }
3143
3244 if ($ administrator ->isDisabled ()) {
33- throw new UnauthorizedHttpException ('' , 'Not authorized ' , null , 1500567099 );
45+ $ entry = $ this ->translator ->translate (Messages::AUTH_LOGIN_DISABLED , ['login ' => $ loginName ]);
46+ $ this ->eventLogManager ->log ('login ' , $ entry );
47+ $ message = $ this ->translator ->translate (Messages::AUTH_NOT_AUTHORIZED );
48+ throw new UnauthorizedHttpException ('' , $ message , null , 1500567099 );
3449 }
3550
3651 $ token = new AdministratorToken ();
0 commit comments