mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
fix: handle IDLE timeout
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This commit is contained in:
parent
3e7909ad1f
commit
6e6b4efb30
3 changed files with 26 additions and 1 deletions
|
|
@ -41,6 +41,7 @@ use OCA\OAuth2\Db\AccessTokenMapper;
|
|||
use OCA\OAuth2\Db\ClientMapper;
|
||||
use OCP\AppFramework\Controller;
|
||||
use OCP\AppFramework\Http;
|
||||
use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
|
||||
use OCP\AppFramework\Http\Attribute\UseSession;
|
||||
use OCP\AppFramework\Http\Response;
|
||||
use OCP\AppFramework\Http\StandaloneTemplateResponse;
|
||||
|
|
@ -254,6 +255,7 @@ class ClientFlowLoginController extends Controller {
|
|||
* @return Http\RedirectResponse|Response
|
||||
*/
|
||||
#[UseSession]
|
||||
#[PasswordConfirmationRequired]
|
||||
public function generateAppPassword(string $stateToken,
|
||||
string $clientIdentifier = '') {
|
||||
if (!$this->isValidToken($stateToken)) {
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ use OC\Core\Exception\LoginFlowV2NotFoundException;
|
|||
use OC\Core\Service\LoginFlowV2Service;
|
||||
use OCP\AppFramework\Controller;
|
||||
use OCP\AppFramework\Http;
|
||||
use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
|
||||
use OCP\AppFramework\Http\Attribute\UseSession;
|
||||
use OCP\AppFramework\Http\JSONResponse;
|
||||
use OCP\AppFramework\Http\RedirectResponse;
|
||||
|
|
@ -236,6 +237,7 @@ class ClientFlowLoginV2Controller extends Controller {
|
|||
* @NoAdminRequired
|
||||
*/
|
||||
#[UseSession]
|
||||
#[PasswordConfirmationRequired]
|
||||
public function generateAppPassword(?string $stateToken): Response {
|
||||
if ($stateToken === null) {
|
||||
return $this->stateTokenMissingResponse();
|
||||
|
|
|
|||
|
|
@ -1,8 +1,29 @@
|
|||
document.querySelector('form').addEventListener('submit', function(e) {
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
|
||||
const form = document.querySelector('form')
|
||||
form.addEventListener('submit', function(event) {
|
||||
const wrapper = document.getElementById('submit-wrapper')
|
||||
if (wrapper === null) {
|
||||
return
|
||||
}
|
||||
|
||||
if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
|
||||
// stop the event
|
||||
event.preventDefault()
|
||||
event.stopPropagation()
|
||||
|
||||
// handle password confirmation
|
||||
OC.PasswordConfirmation.requirePasswordConfirmation(function () {
|
||||
// when password is confirmed we submit the form
|
||||
form.submit()
|
||||
})
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
Array.from(wrapper.getElementsByClassName('icon-confirm-white')).forEach(function(el) {
|
||||
el.classList.remove('icon-confirm-white')
|
||||
el.classList.add(OCA.Theming && OCA.Theming.inverted ? 'icon-loading-small' : 'icon-loading-small-dark')
|
||||
|
|
|
|||
Loading…
Reference in a new issue