From 3d66319d893a1e8c86ae8a53c59e3fdb6d45e3a1 Mon Sep 17 00:00:00 2001 From: Jukka Lampikoski Date: Fri, 13 Mar 2026 02:46:28 +0200 Subject: [PATCH] =?UTF-8?q?Korjaa=20s=C3=A4hk=C3=B6postivastausten=20v?= =?UTF-8?q?=C3=A4lily=C3=B6nnit:=20nl2br=20+=20 =20pre-wrap:n=20sijaa?= =?UTF-8?q?n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit white-space:pre-wrap ei toimi kaikissa sähköpostiohjelmissa/Zammadissa. Vaihdettu käyttämään nl2br() rivinvaihdoille ja   peräkkäisille välilyönneille, jotka toimivat universaalisti HTML-sähköposteissa. Co-Authored-By: Claude Opus 4.6 --- api.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/api.php b/api.php index d29e190..79c15ab 100644 --- a/api.php +++ b/api.php @@ -5411,7 +5411,9 @@ switch ($action) { $cc = !empty($input['cc']) ? trim($input['cc']) : ''; // Muunna uusi viesti HTML:ksi (säilytä rivinvaihdot ja välilyönnit) - $newMsgHtml = '
' . htmlspecialchars($body, ENT_QUOTES, 'UTF-8') . '
'; + $escaped = htmlspecialchars($body, ENT_QUOTES, 'UTF-8'); + $escaped = preg_replace('/ /', '  ', $escaped); // säilytä peräkkäiset välilyönnit + $newMsgHtml = nl2br($escaped); // Rakenna viestiketju (quoted thread) vastaukseen $messages = _dbFetchAll( @@ -5425,7 +5427,9 @@ switch ($action) { $msgBody = $msg['body'] ?: ''; // Jos viesti on plain text (ei HTML-tageja), muunna HTML:ksi if ($msgBody !== '' && strip_tags($msgBody) === $msgBody) { - $msgBody = '
' . htmlspecialchars($msgBody, ENT_QUOTES, 'UTF-8') . '
'; + $esc = htmlspecialchars($msgBody, ENT_QUOTES, 'UTF-8'); + $esc = preg_replace('/ /', '  ', $esc); + $msgBody = nl2br($esc); } $quotedThread .= '
' . '' . htmlspecialchars($sender) . ' — ' . $date . '
'