aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <coding@schilljs.com>2024-08-15 14:39:56 +0200
committerJoas Schilling <coding@schilljs.com>2024-08-15 14:39:56 +0200
commit50c48aa538b20213f112d74e11e9f340ee662e8a (patch)
tree0339bd55dc6db8ab3dc06661c6f764c7eb63eae0
parent601b3b16cb139a919f1efdadd2dbc68f2c758193 (diff)
downloadnextcloud-server-50c48aa538b20213f112d74e11e9f340ee662e8a.tar.gz
nextcloud-server-50c48aa538b20213f112d74e11e9f340ee662e8a.zip
fix(userstatus): Don't set predefined user status as custom when changing "Clear at"
Signed-off-by: Joas Schilling <coding@schilljs.com>
-rw-r--r--apps/user_status/src/components/SetStatusModal.vue24
1 files changed, 19 insertions, 5 deletions
diff --git a/apps/user_status/src/components/SetStatusModal.vue b/apps/user_status/src/components/SetStatusModal.vue
index 45e36a803c2..e91493414fa 100644
--- a/apps/user_status/src/components/SetStatusModal.vue
+++ b/apps/user_status/src/components/SetStatusModal.vue
@@ -109,6 +109,7 @@ export default {
return {
clearAt: null,
editedMessage: '',
+ predefinedMessageId: null,
isSavingStatus: false,
statuses: getAllStatusOptions(),
}
@@ -176,6 +177,7 @@ export default {
mounted() {
this.$store.dispatch('fetchBackupFromServer')
+ this.predefinedMessageId = this.$store.state.userStatus.messageId
if (this.$store.state.userStatus.clearAt !== null) {
this.clearAt = {
type: '_time',
@@ -196,6 +198,7 @@ export default {
* @param {string} icon The new icon
*/
setIcon(icon) {
+ this.predefinedMessageId = null
this.$store.dispatch('setCustomMessage', {
message: this.message,
icon,
@@ -211,6 +214,7 @@ export default {
* @param {string} message The new message
*/
setMessage(message) {
+ this.predefinedMessageId = null
this.editedMessage = message
},
/**
@@ -227,6 +231,7 @@ export default {
* @param {object} status The predefined status object
*/
selectPredefinedMessage(status) {
+ this.predefinedMessageId = status.id
this.clearAt = status.clearAt
this.$store.dispatch('setPredefinedMessage', {
messageId: status.id,
@@ -246,11 +251,18 @@ export default {
try {
this.isSavingStatus = true
- await this.$store.dispatch('setCustomMessage', {
- message: this.editedMessage,
- icon: this.icon,
- clearAt: this.clearAt,
- })
+ if (this.predefinedMessageId === null) {
+ await this.$store.dispatch('setCustomMessage', {
+ message: this.editedMessage,
+ icon: this.icon,
+ clearAt: this.clearAt,
+ })
+ } else {
+ this.$store.dispatch('setPredefinedMessage', {
+ messageId: this.predefinedMessageId,
+ clearAt: this.clearAt,
+ })
+ }
} catch (err) {
showError(this.$t('user_status', 'There was an error saving the status'))
console.debug(err)
@@ -278,6 +290,7 @@ export default {
}
this.isSavingStatus = false
+ this.predefinedMessageId = null
this.closeModal()
},
/**
@@ -299,6 +312,7 @@ export default {
}
this.isSavingStatus = false
+ this.predefinedMessageId = this.$store.state.userStatus?.messageId
},
},
}