From 98e2a60948abf637d31cb4e878f86b96b8b15796 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Fri, 6 Mar 2026 13:04:33 +0200 Subject: [PATCH 1/2] fix bio being interpreted as html for editing --- src/components/user_card/user_card.js | 4 ++++ src/components/user_card/user_card.vue | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/user_card/user_card.js b/src/components/user_card/user_card.js index 0df27e6cb..b16e95b1c 100644 --- a/src/components/user_card/user_card.js +++ b/src/components/user_card/user_card.js @@ -1,6 +1,7 @@ import isEqual from 'lodash/isEqual' import merge from 'lodash/merge' import ldUnescape from 'lodash/unescape' +import ldEscape from 'lodash/escape' import { mapGetters } from 'vuex' import Checkbox from 'src/components/checkbox/checkbox.vue' @@ -159,6 +160,9 @@ export default { this.$store.dispatch('fetchUserRelationship', this.user.id) }, computed: { + escapedNewBio() { + return ldEscape(this.newBio).replace(/\n/g, '
') + }, somethingToSave() { if (this.newName !== this.user.name_unescaped) return true if (this.newBio !== ldUnescape(this.user.description)) return true diff --git a/src/components/user_card/user_card.vue b/src/components/user_card/user_card.vue index 66529f59b..f5ddf9a8c 100644 --- a/src/components/user_card/user_card.vue +++ b/src/components/user_card/user_card.vue @@ -358,7 +358,7 @@ v-if="!hideBio" class="user-card-bio" :class="{ '-justify-left': mergedConfig.userCardLeftJustify }" - :html="editable ? newBio.replace(/\n/g, '
') : user.description_html" + :html="editable ? escapedNewBio : user.description_html" :emoji="editable ? emoji : user.emoji" :handle-links="true" /> From 8a43624f2ee47f53a5c09b6f6f5dabcb2eafa0f3 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Fri, 6 Mar 2026 13:07:28 +0200 Subject: [PATCH 2/2] lint --- src/components/user_card/user_card.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/user_card/user_card.js b/src/components/user_card/user_card.js index b16e95b1c..3c5784ba5 100644 --- a/src/components/user_card/user_card.js +++ b/src/components/user_card/user_card.js @@ -1,7 +1,7 @@ +import ldEscape from 'lodash/escape' import isEqual from 'lodash/isEqual' import merge from 'lodash/merge' import ldUnescape from 'lodash/unescape' -import ldEscape from 'lodash/escape' import { mapGetters } from 'vuex' import Checkbox from 'src/components/checkbox/checkbox.vue'