Refactor homepage layout to dynamically render sections based on configuration

This commit updates the homepage component to utilize a dynamic rendering approach for sections, allowing for configuration-based display of components. It introduces computed properties to manage section visibility and mapping of section IDs to their respective components, enhancing flexibility and maintainability of the homepage structure.
This commit is contained in:
Torsten Schulz (local)
2026-02-05 17:40:02 +01:00
parent 65fee7eeef
commit c02ec73676
3 changed files with 341 additions and 15 deletions

View File

@@ -183,6 +183,27 @@
</p>
</NuxtLink>
<!-- Startseite -->
<NuxtLink
to="/cms/startseite"
class="bg-white p-6 rounded-xl shadow-lg border border-gray-100 hover:shadow-xl transition-all group"
>
<div class="flex items-center mb-4">
<div class="w-12 h-12 bg-cyan-100 rounded-lg flex items-center justify-center group-hover:bg-cyan-600 transition-colors">
<Layout
:size="24"
class="text-cyan-600 group-hover:text-white"
/>
</div>
<h2 class="ml-4 text-xl font-semibold text-gray-900">
Startseite
</h2>
</div>
<p class="text-gray-600">
Reihenfolge der Startseiten-Elemente konfigurieren
</p>
</NuxtLink>
<!-- Einstellungen -->
<NuxtLink
to="/cms/einstellungen"
@@ -231,7 +252,7 @@
</template>
<script setup>
import { Newspaper, Calendar, Users, UserCog, Settings } from 'lucide-vue-next'
import { Newspaper, Calendar, Users, UserCog, Settings, Layout } from 'lucide-vue-next'
const authStore = useAuthStore()