This commit is contained in:
2026-06-18 20:34:05 +02:00
parent 5bbbbfa956
commit 8d3470d7f7
2 changed files with 6 additions and 3 deletions
+2 -1
View File
@@ -78,11 +78,12 @@ router.get('/', (req, res) => {
ORDER BY t.updated_at DESC
`).all()
: db.prepare(`
SELECT t.*,
SELECT t.*, u.display_name as user_name, u.email as user_email,
(SELECT COUNT(*) FROM ticket_messages WHERE ticket_id = t.id) as message_count,
(SELECT body FROM ticket_messages WHERE ticket_id = t.id ORDER BY created_at DESC LIMIT 1) as last_body,
(SELECT created_at FROM ticket_messages WHERE ticket_id = t.id ORDER BY created_at DESC LIMIT 1) as last_message_at
FROM tickets t
JOIN users u ON u.id = t.user_id
WHERE t.user_id = ?
ORDER BY t.updated_at DESC
`).all(userId);
+4 -2
View File
@@ -24,7 +24,9 @@ function fmtSize(bytes) {
function initials(name) {
if (!name) return '?';
return name.split(' ').map(w => w[0]).join('').toUpperCase().slice(0, 2);
// Si c'est un email, prendre les 2 premières lettres avant le @
if (name.includes('@')) return name.split('@')[0].slice(0, 2).toUpperCase();
return name.split(' ').filter(Boolean).map(w => w[0]).join('').toUpperCase().slice(0, 2);
}
// ── Avatar lettres ─────────────────────────────────────────────────────────
@@ -927,7 +929,7 @@ export default function Communication() {
className={`comm-list-row${selectedTicket === t.id ? ' selected' : ''}`}
onClick={() => openTicket(t.id)}
>
<UserAvatar name={t.user_name ?? user?.name} size={38} />
<UserAvatar name={t.user_name ?? t.user_email ?? user?.displayName ?? user?.email} size={38} />
<div className="comm-list-row-body">
<div className="comm-list-row-top">
<span className="comm-list-row-name">{t.user_name ?? 'Moi'}</span>