diff options
author | Christoph Wurst <ChristophWurst@users.noreply.github.com> | 2023-11-29 08:54:25 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-29 08:54:25 +0100 |
commit | 4d2a32a79b316042f2dd6cc89b14c65527f3ae08 (patch) | |
tree | 80bc93ea7a8a6181fae1edebefc9c4c65368fea2 /apps | |
parent | 779141532269e413e6d9c2148907d03fab4786e7 (diff) | |
parent | ecc1576be61a59b7f41024c913acc083e08d1209 (diff) | |
download | nextcloud-server-4d2a32a79b316042f2dd6cc89b14c65527f3ae08.tar.gz nextcloud-server-4d2a32a79b316042f2dd6cc89b14c65527f3ae08.zip |
Merge pull request #41759 from nextcloud/fix/dav/ooo-form-mandatory-message
fix(dav): Make ooo settings a form and the message required
Diffstat (limited to 'apps')
-rw-r--r-- | apps/dav/src/components/AbsenceForm.vue | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/apps/dav/src/components/AbsenceForm.vue b/apps/dav/src/components/AbsenceForm.vue index 0462c22a53d..500004b755a 100644 --- a/apps/dav/src/components/AbsenceForm.vue +++ b/apps/dav/src/components/AbsenceForm.vue @@ -21,24 +21,26 @@ --> <template> - <div class="absence"> + <form class="absence" @submit.prevent="saveForm"> <div class="absence__dates"> <NcDateTimePickerNative id="absence-first-day" v-model="firstDay" :label="$t('dav', 'First day')" - class="absence__dates__picker" /> + class="absence__dates__picker" + :required="true" /> <NcDateTimePickerNative id="absence-last-day" v-model="lastDay" :label="$t('dav', 'Last day (inclusive)')" - class="absence__dates__picker" /> + class="absence__dates__picker" + :required="true" /> </div> - <NcTextField :value.sync="status" :label="$t('dav', 'Short absence status')" /> - <NcTextArea :value.sync="message" :label="$t('dav', 'Long absence Message')" /> + <NcTextField :value.sync="status" :label="$t('dav', 'Short absence status')" :required="true" /> + <NcTextArea :value.sync="message" :label="$t('dav', 'Long absence Message')" :required="true" /> <div class="absence__buttons"> <NcButton :disabled="loading || !valid" type="primary" - @click="saveForm"> + native-type="submit"> {{ $t('dav', 'Save') }} </NcButton> <NcButton :disabled="loading || !valid" @@ -47,7 +49,7 @@ {{ $t('dav', 'Disable absence') }} </NcButton> </div> - </div> + </form> </template> <script> @@ -59,7 +61,9 @@ import { generateUrl } from '@nextcloud/router' import axios from '@nextcloud/axios' import { formatDateAsYMD } from '../utils/date.js' import { loadState } from '@nextcloud/initial-state' -import { showError } from '@nextcloud/dialogs' +import { showError, showSuccess } from '@nextcloud/dialogs' + +import logger from '../service/logger.js' export default { name: 'AbsenceForm', @@ -88,6 +92,7 @@ export default { return !!this.firstDay && !!this.lastDay && !!this.status + && !!this.message && this.lastDay > this.firstDay }, }, @@ -111,8 +116,10 @@ export default { status: this.status, message: this.message, }) + showSuccess(this.$t('dav', 'Absence saved')) } catch (error) { showError(this.$t('dav', 'Failed to save your absence settings')) + logger.error('Could not save absence', { error }) } finally { this.loading = false } @@ -122,8 +129,10 @@ export default { try { await axios.delete(generateUrl('/apps/dav/settings/absence')) this.resetForm() + showSuccess(this.$t('dav', 'Absence cleared')) } catch (error) { showError(this.$t('dav', 'Failed to clear your absence settings')) + logger.error('Could not clear absence', { error }) } finally { this.loading = false } |