Skip to content

Commit 399b048

Browse files
authored
Merge pull request #48992 from nextcloud/fix/add-password-confirmation-to-save-global-creds
fix: add PasswordConfirmationRequired to saveGlobalCredentials
2 parents e74ce1a + 3b6a36f commit 399b048

File tree

2 files changed

+19
-10
lines changed

2 files changed

+19
-10
lines changed

apps/files_external/js/settings.js

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1488,30 +1488,37 @@ window.addEventListener('DOMContentLoaded', function() {
14881488
}
14891489
});
14901490

1491-
$('#global_credentials').on('submit', function() {
1492-
var $form = $(this);
1491+
function _submitCredentials(success) {
14931492
var uid = $form.find('[name=uid]').val();
14941493
var user = $form.find('[name=username]').val();
14951494
var password = $form.find('[name=password]').val();
1496-
var $submit = $form.find('[type=submit]');
1497-
$submit.val(t('files_external', 'Saving …'));
14981495
$.ajax({
14991496
type: 'POST',
15001497
contentType: 'application/json',
15011498
data: JSON.stringify({
1502-
uid: uid,
1503-
user: user,
1504-
password: password
1499+
uid,
1500+
user,
1501+
password,
15051502
}),
15061503
url: OC.generateUrl('apps/files_external/globalcredentials'),
15071504
dataType: 'json',
1508-
success: function() {
1505+
success,
1506+
});
1507+
}
1508+
1509+
$('#global_credentials').on('submit', function() {
1510+
var $form = $(this);
1511+
var $submit = $form.find('[type=submit]');
1512+
$submit.val(t('files_external', 'Saving …'));
1513+
1514+
window.OC.PasswordConfirmation
1515+
.requirePasswordConfirmation(() => _submitCredentials(function() {
15091516
$submit.val(t('files_external', 'Saved'));
15101517
setTimeout(function(){
15111518
$submit.val(t('files_external', 'Save'));
15121519
}, 2500);
1513-
}
1514-
});
1520+
}));
1521+
15151522
return false;
15161523
});
15171524

apps/files_external/lib/Controller/AjaxController.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use OCA\Files_External\Lib\Auth\PublicKey\RSA;
1111
use OCP\AppFramework\Controller;
1212
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
13+
use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
1314
use OCP\AppFramework\Http\JSONResponse;
1415
use OCP\IGroupManager;
1516
use OCP\IRequest;
@@ -71,6 +72,7 @@ public function getSshKeys($keyLength = 1024) {
7172
* @return bool
7273
*/
7374
#[NoAdminRequired]
75+
#[PasswordConfirmationRequired]
7476
public function saveGlobalCredentials($uid, $user, $password) {
7577
$currentUser = $this->userSession->getUser();
7678
if ($currentUser === null) {

0 commit comments

Comments
 (0)