Fügt eine neue Methode hasActivityVisual in DiaryView.vue hinzu, um die Sichtbarkeit von Aktivitätsvisualisierungen zu überprüfen. Aktualisiert die Bedingungen für die Anzeige von Icons, die Bilder oder Zeichnungen darstellen, um die Benutzeroberfläche zu verbessern und die Logik zu optimieren.
This commit is contained in:
@@ -124,10 +124,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</span>
|
||||
<span v-else @click="startActivityEdit(item)" class="clickable activity-label"
|
||||
<span v-else @click="startActivityEdit(item)" class="clickable activity-label"
|
||||
:title="item.predefinedActivity && item.predefinedActivity.name ? item.predefinedActivity.name : ''">
|
||||
<!-- Icon öffnet Rendering (falls vorhanden) oder Bild im Modal -->
|
||||
<span v-if="item.predefinedActivity"
|
||||
<span v-if="hasActivityVisual(item.predefinedActivity)"
|
||||
@click.stop="openActivityVisual(item.predefinedActivity)"
|
||||
class="image-icon"
|
||||
title="Bild/Zeichnung anzeigen">🖼️</span>
|
||||
@@ -163,7 +163,7 @@
|
||||
<td>
|
||||
<span class="activity-label" :title="(groupItem.groupPredefinedActivity && groupItem.groupPredefinedActivity.name) ? groupItem.groupPredefinedActivity.name : ''">
|
||||
<!-- Icon öffnet Rendering (falls vorhanden) oder Bild im Modal -->
|
||||
<span v-if="groupItem.groupPredefinedActivity"
|
||||
<span v-if="hasActivityVisual(groupItem.groupPredefinedActivity)"
|
||||
@click.stop="openActivityVisual(groupItem.groupPredefinedActivity)"
|
||||
class="image-icon"
|
||||
title="Bild/Zeichnung anzeigen">🖼️</span>
|
||||
@@ -550,6 +550,19 @@ export default {
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
hasActivityVisual(pa) {
|
||||
if (!pa) return false;
|
||||
try {
|
||||
// direktes drawingData am PA
|
||||
if (pa.drawingData && pa.drawingData !== '') return true;
|
||||
// Bildliste mit drawingData
|
||||
if (Array.isArray(pa.images) && pa.images.some(img => img && img.drawingData && img.drawingData !== '')) return true;
|
||||
// gerenderter Code / renderSpec
|
||||
if (pa.renderCode && pa.renderCode.trim() !== '') return true;
|
||||
if (pa.renderSpec && Object.keys(pa.renderSpec).length) return true;
|
||||
} catch (e) {}
|
||||
return false;
|
||||
},
|
||||
drawingDataFor(pa) {
|
||||
// Zeichnungsdaten können bereits als Objekt vorliegen oder als JSON-String
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user