@@ -62,6 +62,7 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface
62
62
$ passwordLength = $ this ->getProperty ('passwordLength ' , '12 ' );
63
63
$ pkName = $ table ->getPk ()->getName ();
64
64
$ registerUser = $ this ->getProperty ('registerUser ' , '' );
65
+ $ loginAfterRegistration = $ this ->getProperty ('loginAfterRegistration ' , '' );
65
66
$ condition = new ColumnCondition ($ usernameColumn , 'eq ' , $ username );
66
67
$ returnedColumns = $ this ->getProperty ('returnedColumns ' , '' );
67
68
if (!$ returnedColumns ) {
@@ -90,8 +91,17 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface
90
91
$ this ->db ->createSingle ($ table , $ data );
91
92
$ users = $ this ->db ->selectAll ($ table , $ columnNames , $ condition , $ columnOrdering , 0 , 1 );
92
93
foreach ($ users as $ user ) {
93
- unset($ user [$ passwordColumnName ]);
94
- return $ this ->responder ->success ($ user );
94
+ if ($ loginAfterRegistration ){
95
+ if (!headers_sent ()) {
96
+ session_regenerate_id (true );
97
+ }
98
+ unset($ user [$ passwordColumnName ]);
99
+ $ _SESSION ['user ' ] = $ user ;
100
+ return $ this ->responder ->success ($ user );
101
+ } else {
102
+ unset($ user [$ passwordColumnName ]);
103
+ return $ this ->responder ->success ($ user );
104
+ }
95
105
}
96
106
return $ this ->responder ->error (ErrorCode::AUTHENTICATION_FAILED , $ username );
97
107
}
0 commit comments