diff options
author | skjnldsv <skjnldsv@protonmail.com> | 2025-03-07 14:22:25 +0100 |
---|---|---|
committer | skjnldsv <skjnldsv@protonmail.com> | 2025-03-11 11:38:07 +0100 |
commit | 07264dff12c1671cab5bc0b76198a2708e09d0b0 (patch) | |
tree | 875365fc9521e267a9350b30b6a660a82c27293a /apps/files_external/src | |
parent | 21c09e4816cd76288a5d73d2910bde989bc814ae (diff) | |
download | nextcloud-server-07264dff12c1671cab5bc0b76198a2708e09d0b0.tar.gz nextcloud-server-07264dff12c1671cab5bc0b76198a2708e09d0b0.zip |
fix(external_storage): fix settings save
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
Diffstat (limited to 'apps/files_external/src')
-rw-r--r-- | apps/files_external/src/settings.js | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/apps/files_external/src/settings.js b/apps/files_external/src/settings.js index 2601fbe6ddb..aa9b57786d9 100644 --- a/apps/files_external/src/settings.js +++ b/apps/files_external/src/settings.js @@ -4,9 +4,11 @@ * SPDX-License-Identifier: AGPL-3.0-or-later */ -import axios from '@nextcloud/axios' -import { t } from '@nextcloud/l10n' import { addPasswordConfirmationInterceptors, PwdConfirmationMode } from '@nextcloud/password-confirmation' +import { generateUrl } from '@nextcloud/router' +import { showError } from '@nextcloud/dialogs' +import { t } from '@nextcloud/l10n' +import axios, { isAxiosError } from '@nextcloud/axios' import jQuery from 'jquery' @@ -1522,21 +1524,30 @@ window.addEventListener('DOMContentLoaded', function() { const uid = $form.find('[name=uid]').val() const user = $form.find('[name=username]').val() const password = $form.find('[name=password]').val() - await axios.request({ - method: 'POST', - data: JSON.stringify({ - uid, - user, - password, - }), - url: OC.generateUrl('apps/files_external/globalcredentials'), - confirmPassword: PwdConfirmationMode.Strict, - }) - $submit.val(t('files_external', 'Saved')) - setTimeout(function() { + try { + await axios.request({ + method: 'POST', + data: { + uid, + user, + password, + }, + url: generateUrl('apps/files_external/globalcredentials'), + confirmPassword: PwdConfirmationMode.Strict, + }) + + $submit.val(t('files_external', 'Saved')) + setTimeout(function() { + $submit.val(t('files_external', 'Save')) + }, 2500) + } catch (error) { $submit.val(t('files_external', 'Save')) - }, 2500) + if (isAxiosError(error)) { + const message = error.response?.data?.message || t('files_external', 'Failed to save global credentials') + showError(t('files_external', 'Failed to save global credentials: {message}', { message })) + } + } return false }) |