From 9535ceb268d9e240e2bef4910ee55d911b8f34fa Mon Sep 17 00:00:00 2001 From: einhornimmond Date: Mon, 10 Mar 2025 11:08:12 +0100 Subject: [PATCH] clickable icon for filter by email --- .../ContributionMessagesList.vue | 18 +++++++++++++++++- .../components/Tables/OpenCreationsTable.vue | 9 ++++++++- admin/src/locales/de.json | 3 +++ admin/src/locales/en.json | 3 +++ admin/src/pages/CreationConfirm.vue | 1 + 5 files changed, 32 insertions(+), 2 deletions(-) diff --git a/admin/src/components/ContributionMessages/ContributionMessagesList.vue b/admin/src/components/ContributionMessages/ContributionMessagesList.vue index 8e1d5fcb7..7f365298f 100644 --- a/admin/src/components/ContributionMessages/ContributionMessagesList.vue +++ b/admin/src/components/ContributionMessages/ContributionMessagesList.vue @@ -7,6 +7,10 @@   {{ contribution.email }} + + + {{ $t('filter.byEmail') }} +   {{ contribution.username }}   Humhub-Profil @@ -61,7 +65,12 @@ const props = defineProps({ }, }) -const emit = defineEmits(['update-status', 'reload-contribution', 'update-contributions']) +const emit = defineEmits([ + 'update-status', + 'reload-contribution', + 'update-contributions', + 'search-for-email', +]) const { toastError } = useAppToast() const mailtoLink = computed(() => { return `mailto:${props.contribution.email}` @@ -101,9 +110,16 @@ const reloadContribution = (id) => { const updateContributions = () => { emit('update-contributions') } + +const searchForEmail = () => { + emit('search-for-email', props.contribution.email) +} diff --git a/admin/src/components/Tables/OpenCreationsTable.vue b/admin/src/components/Tables/OpenCreationsTable.vue index 56ff980f0..824c9e141 100644 --- a/admin/src/components/Tables/OpenCreationsTable.vue +++ b/admin/src/components/Tables/OpenCreationsTable.vue @@ -126,6 +126,7 @@ @update-status="updateStatus" @reload-contribution="reloadContribution" @update-contributions="updateContributions" + @search-for-email="$emit('search-for-email', $event)" /> @@ -173,7 +174,13 @@ export default { required: false, }, }, - emits: ['update-contributions', 'reload-contribution', 'update-status', 'show-overlay'], + emits: [ + 'update-contributions', + 'reload-contribution', + 'update-status', + 'show-overlay', + 'search-for-email', + ], data() { return { slotIndex: 0, diff --git a/admin/src/locales/de.json b/admin/src/locales/de.json index bce6fc229..a5c4d2e37 100644 --- a/admin/src/locales/de.json +++ b/admin/src/locales/de.json @@ -99,6 +99,9 @@ "verified": "Verifiziert", "verifiedAt": "Verifiziert am" }, + "filter": { + "byEmail": "Nach E-Mail filtern" + }, "firstname": "Vorname", "footer": { "app_version": "App version {version}", diff --git a/admin/src/locales/en.json b/admin/src/locales/en.json index 52555f12b..b3f500564 100644 --- a/admin/src/locales/en.json +++ b/admin/src/locales/en.json @@ -99,6 +99,9 @@ "verified": "Verified", "verifiedAt": "Verified at" }, + "filter": { + "byEmail": "Filter by email" + }, "firstname": "Firstname", "footer": { "app_version": "App version {version}", diff --git a/admin/src/pages/CreationConfirm.vue b/admin/src/pages/CreationConfirm.vue index 7095d93c6..d9497df7a 100644 --- a/admin/src/pages/CreationConfirm.vue +++ b/admin/src/pages/CreationConfirm.vue @@ -58,6 +58,7 @@ @update-status="updateStatus" @reload-contribution="reloadContribution" @update-contributions="refetch" + @search-for-email="query = $event" />