From 9140c4fcc78a7891e7ac7a9ebbc35301ef82ddcc Mon Sep 17 00:00:00 2001 From: Meleki Date: Thu, 5 Mar 2026 19:50:43 +0100 Subject: [PATCH] feat(dashboard): klickbare Session-Cards + UI-Verbesserungen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Session-Cards mit Agent sind klickbar (navigiert zum Chat) - Card-Menü bleibt nutzbar via pointer-events Logik - Menü-Reihenfolge: Bearbeiten vor Chat öffnen - Session-Beschreibung: textarea → input (einzeilig) - Globale Link-Styles (a { color: var(--primary) }) --- wwwroot/css/base.css | 9 +++++++++ wwwroot/css/dashboard.css | 8 +++++++- wwwroot/index.html | 2 +- wwwroot/js/pages/dashboard.js | 8 +++++++- 4 files changed, 24 insertions(+), 3 deletions(-) diff --git a/wwwroot/css/base.css b/wwwroot/css/base.css index 625ae68..b08f9cc 100644 --- a/wwwroot/css/base.css +++ b/wwwroot/css/base.css @@ -109,3 +109,12 @@ textarea { 50% { rotate: 180deg; } 100% { rotate: 360deg; } } + +a { + color: var(--primary); + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} diff --git a/wwwroot/css/dashboard.css b/wwwroot/css/dashboard.css index f3095a6..dca5198 100644 --- a/wwwroot/css/dashboard.css +++ b/wwwroot/css/dashboard.css @@ -69,10 +69,15 @@ } .card.clickable { + pointer-events: none; +} + +.card.clickable:not(:has(.card-menu-dropdown:not([hidden]))) { + pointer-events: unset; cursor: pointer; } -.card.clickable:hover { +.card.clickable:not(:has(.card-menu-dropdown:not([hidden]))):hover { border-color: var(--primary); filter: var(--hover-filter); } @@ -185,6 +190,7 @@ padding-block: var(--badge-spacing); z-index: 1000; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); + pointer-events: all; } .card-menu-dropdown[hidden] { diff --git a/wwwroot/index.html b/wwwroot/index.html index a3a5582..b3a755a 100644 --- a/wwwroot/index.html +++ b/wwwroot/index.html @@ -109,7 +109,7 @@ - + diff --git a/wwwroot/js/pages/dashboard.js b/wwwroot/js/pages/dashboard.js index 1666c87..6c71ae9 100644 --- a/wwwroot/js/pages/dashboard.js +++ b/wwwroot/js/pages/dashboard.js @@ -60,8 +60,8 @@ registerPage('dashboard', {
@@ -79,6 +79,12 @@ registerPage('dashboard', { chatBtn.title = 'Kein Agent zugewiesen'; } + // Card selbst klickbar wenn Agent zugewiesen + if (agent) { + card.classList.add('clickable'); + card.addEventListener('click', () => navigateTo('chat', { id: s.sessionId })); + } + const menuTrigger = card.querySelector('.card-menu-trigger'); const menuDropdown = card.querySelector('.card-menu-dropdown'); menuTrigger.addEventListener('click', (e) => {