Skip to content

Commit 005184a

Browse files
authored
Fix setting cookies to remember username/org
We set them in the wrong place.
1 parent b662650 commit 005184a

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

modules/core/src/Controller/Login.php

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -155,9 +155,9 @@ private function handleLogin(Request $request, $source, array $state): Response
155155
$errorParams = $state['error']['params'];
156156
}
157157

158-
$cookies = [];
159158
if ($organizations === null || $organization !== '') {
160159
if (!empty($username) || !empty($password)) {
160+
$cookies = [];
161161
$httpUtils = new Utils\HTTP();
162162
$sameSiteNone = $httpUtils->canSetSamesiteNone() ? Cookie::SAMESITE_NONE : null;
163163

@@ -221,10 +221,16 @@ private function handleLogin(Request $request, $source, array $state): Response
221221

222222
try {
223223
if ($source instanceof UserPassOrgBase) {
224-
return UserPassOrgBase::handleLogin($authStateId, $username, $password, $organization);
224+
$response = UserPassOrgBase::handleLogin($authStateId, $username, $password, $organization);
225225
} else {
226-
return UserPassBase::handleLogin($authStateId, $username, $password);
226+
$response = UserPassBase::handleLogin($authStateId, $username, $password);
227227
}
228+
229+
foreach ($cookies as $cookie) {
230+
$response->headers->setCookie($cookie);
231+
}
232+
233+
return $response;
228234
} catch (Error\Error $e) {
229235
// Login failed. Extract error code and parameters, to display the error
230236
$errorCode = $e->getErrorCode();
@@ -302,10 +308,6 @@ private function handleLogin(Request $request, $source, array $state): Response
302308
$t->data['SPMetadata'] = null;
303309
}
304310

305-
foreach ($cookies as $cookie) {
306-
$t->headers->setCookie($cookie);
307-
}
308-
309311
return $t;
310312
}
311313

0 commit comments

Comments
 (0)