diff --git a/frontend/src/components/DiaryParticipantsPanel.vue b/frontend/src/components/DiaryParticipantsPanel.vue index 23d83189..1bc3b224 100644 --- a/frontend/src/components/DiaryParticipantsPanel.vue +++ b/frontend/src/components/DiaryParticipantsPanel.vue @@ -12,6 +12,14 @@ {{ galleryLoading ? $t('diary.galleryCreating') : $t('diary.gallery') }} + @@ -196,6 +205,19 @@ export default { box-shadow: none; } +.participant-group-photo-button { + padding: 0.45rem 0.75rem; + border: 1px solid var(--border-color); + border-radius: 10px; + background: var(--surface-muted); + color: var(--text-color); + font-weight: 600; + cursor: pointer; + display: inline-flex; + align-items: center; + gap: 0.4rem; +} + .participant-search-input { width: 100%; padding: 0.65rem 0.8rem; diff --git a/frontend/src/views/DiaryView.vue b/frontend/src/views/DiaryView.vue index d7f05c96..9254433e 100644 --- a/frontend/src/views/DiaryView.vue +++ b/frontend/src/views/DiaryView.vue @@ -570,6 +570,7 @@ @open-tags="openTagInfos" @open-quick-add="openQuickAddDialog" @open-gallery="openGalleryDialog" + @open-group-photo-crop="showGroupPhotoCropDialog = true" /> @@ -673,6 +674,13 @@ @member-click="handleGalleryMemberClick" /> + + String(entry.id) === String(memberId)); + if (member) { + member.hasImage = true; + } + await this.showInfo(this.$t('messages.success'), this.$t('members.groupPhotoCropSaved'), '', 'success'); + }, hasItemDrawingData(item) { if (!item) return false;