Merge pull request #49008 from nextcloud/backport/48992/stable27

This commit is contained in:
John Molakvoæ 2024-10-30 15:33:17 +01:00 committed by GitHub
commit fa6001d609
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 21 additions and 12 deletions

View file

@ -1457,30 +1457,37 @@ window.addEventListener('DOMContentLoaded', function() {
}
});
$('#global_credentials').on('submit', function() {
var $form = $(this);
function _submitCredentials(success) {
var uid = $form.find('[name=uid]').val();
var user = $form.find('[name=username]').val();
var password = $form.find('[name=password]').val();
var $submit = $form.find('[type=submit]');
$submit.val(t('files_external', 'Saving …'));
$.ajax({
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
uid: uid,
user: user,
password: password
uid,
user,
password,
}),
url: OC.generateUrl('apps/files_external/globalcredentials'),
dataType: 'json',
success: function() {
success,
});
}
$('#global_credentials').on('submit', function() {
var $form = $(this);
var $submit = $form.find('[type=submit]');
$submit.val(t('files_external', 'Saving …'));
window.OC.PasswordConfirmation
.requirePasswordConfirmation(() => _submitCredentials(function() {
$submit.val(t('files_external', 'Saved'));
setTimeout(function(){
$submit.val(t('files_external', 'Save'));
}, 2500);
}
});
}));
return false;
});

View file

@ -31,6 +31,8 @@ namespace OCA\Files_External\Controller;
use OCA\Files_External\Lib\Auth\Password\GlobalAuth;
use OCA\Files_External\Lib\Auth\PublicKey\RSA;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
use OCP\AppFramework\Http\JSONResponse;
use OCP\IGroupManager;
use OCP\IRequest;
@ -97,13 +99,13 @@ class AjaxController extends Controller {
}
/**
* @NoAdminRequired
*
* @param string $uid
* @param string $user
* @param string $password
* @return bool
*/
#[NoAdminRequired]
#[PasswordConfirmationRequired]
public function saveGlobalCredentials($uid, $user, $password) {
$currentUser = $this->userSession->getUser();
if ($currentUser === null) {