mirror of
https://github.com/nextcloud/server.git
synced 2026-02-20 00:12:30 -05:00
Merge pull request #46534 from nextcloud/fix/direct-flow-v2
fix: Add direct parameter to flow auth v2
This commit is contained in:
commit
0678bdcc43
3 changed files with 10 additions and 5 deletions
|
|
@ -84,7 +84,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
#[OpenAPI(scope: OpenAPI::SCOPE_IGNORE)]
|
||||
#[UseSession]
|
||||
#[FrontpageRoute(verb: 'GET', url: '/login/v2/flow/{token}')]
|
||||
public function landing(string $token, $user = ''): Response {
|
||||
public function landing(string $token, $user = '', int $direct = 0): Response {
|
||||
if (!$this->loginFlowV2Service->startLoginFlow($token)) {
|
||||
return $this->loginTokenForbiddenResponse();
|
||||
}
|
||||
|
|
@ -92,7 +92,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
$this->session->set(self::TOKEN_NAME, $token);
|
||||
|
||||
return new RedirectResponse(
|
||||
$this->urlGenerator->linkToRouteAbsolute('core.ClientFlowLoginV2.showAuthPickerPage', ['user' => $user])
|
||||
$this->urlGenerator->linkToRouteAbsolute('core.ClientFlowLoginV2.showAuthPickerPage', ['user' => $user, 'direct' => $direct])
|
||||
);
|
||||
}
|
||||
|
||||
|
|
@ -101,7 +101,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
#[OpenAPI(scope: OpenAPI::SCOPE_IGNORE)]
|
||||
#[UseSession]
|
||||
#[FrontpageRoute(verb: 'GET', url: '/login/v2/flow')]
|
||||
public function showAuthPickerPage($user = ''): StandaloneTemplateResponse {
|
||||
public function showAuthPickerPage(string $user = '', int $direct = 0): StandaloneTemplateResponse {
|
||||
try {
|
||||
$flow = $this->getFlowByLoginToken();
|
||||
} catch (LoginFlowV2NotFoundException $e) {
|
||||
|
|
@ -123,6 +123,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
'urlGenerator' => $this->urlGenerator,
|
||||
'stateToken' => $stateToken,
|
||||
'user' => $user,
|
||||
'direct' => $direct,
|
||||
],
|
||||
'guest'
|
||||
);
|
||||
|
|
@ -136,7 +137,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
#[OpenAPI(scope: OpenAPI::SCOPE_IGNORE)]
|
||||
#[UseSession]
|
||||
#[FrontpageRoute(verb: 'GET', url: '/login/v2/grant')]
|
||||
public function grantPage(?string $stateToken): StandaloneTemplateResponse {
|
||||
public function grantPage(?string $stateToken, int $direct = 0): StandaloneTemplateResponse {
|
||||
if ($stateToken === null) {
|
||||
return $this->stateTokenMissingResponse();
|
||||
}
|
||||
|
|
@ -163,6 +164,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
'instanceName' => $this->defaults->getName(),
|
||||
'urlGenerator' => $this->urlGenerator,
|
||||
'stateToken' => $stateToken,
|
||||
'direct' => $direct,
|
||||
],
|
||||
'guest'
|
||||
);
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ $urlGenerator = $_['urlGenerator'];
|
|||
<br/>
|
||||
|
||||
<p id="redirect-link">
|
||||
<form id="login-form" action="<?php p($urlGenerator->linkToRouteAbsolute('core.ClientFlowLoginV2.grantPage', ['stateToken' => $_['stateToken'], 'user' => $_['user']])) ?>" method="get">
|
||||
<form id="login-form" action="<?php p($urlGenerator->linkToRouteAbsolute('core.ClientFlowLoginV2.grantPage', ['stateToken' => $_['stateToken'], 'user' => $_['user'], 'direct' => $_['direct'] ?? 0])) ?>" method="get">
|
||||
<input type="submit" class="login primary icon-confirm-white" value="<?php p($l->t('Log in')) ?>" disabled>
|
||||
</form>
|
||||
</p>
|
||||
|
|
|
|||
|
|
@ -33,6 +33,9 @@ $urlGenerator = $_['urlGenerator'];
|
|||
<form method="POST" action="<?php p($urlGenerator->linkToRouteAbsolute('core.ClientFlowLoginV2.generateAppPassword')) ?>">
|
||||
<input type="hidden" name="requesttoken" value="<?php p($_['requesttoken']) ?>" />
|
||||
<input type="hidden" name="stateToken" value="<?php p($_['stateToken']) ?>" />
|
||||
<?php if ($_['direct']) { ?>
|
||||
<input type="hidden" name="direct" value="1" />
|
||||
<?php } ?>
|
||||
<div id="submit-wrapper">
|
||||
<input type="submit" class="login primary icon-confirm-white" title="" value="<?php p($l->t('Grant access')); ?>" />
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Reference in a new issue