diff --git a/api.php b/api.php index bcbe4ba..a087bdb 100644 --- a/api.php +++ b/api.php @@ -3075,8 +3075,13 @@ switch ($action) { if ($integ && $integ['enabled']) { $z = new ZammadClient($integ['config']['url'], $integ['config']['token']); $articles = $z->getArticles((int)$ticket['zammad_ticket_id']); + $toEmail = ''; foreach ($articles as $art) { if (($art['internal'] ?? false)) continue; + // Tallenna ensimmäisen saapuneen viestin to-osoite + if (!$toEmail && ($art['sender'] ?? '') === 'Customer' && !empty($art['to'])) { + $toEmail = $art['to']; + } $artId = (int)$art['id']; $existingMsg = dbGetMessageByZammadArticleId($ticket['id'], $artId); if ($existingMsg) continue; @@ -3094,6 +3099,10 @@ switch ($action) { $art['message_id'] ?? '', $artId] ); } + // Tallenna Zammad to-osoite tikettiin + if ($toEmail) { + _dbExecute("UPDATE tickets SET zammad_to_email = ? WHERE id = ?", [$toEmail, $ticket['id']]); + } // Lataa tiketti uudelleen viestien kanssa $tickets = dbLoadTickets($companyId); foreach ($tickets as $t) { @@ -5276,7 +5285,7 @@ switch ($action) { $body = $input['body'] ?? ''; if (!$ticketId || !$body) { http_response_code(400); echo json_encode(['error' => 'Tiketti ja viesti vaaditaan']); break; } - $ticket = _dbFetchRow("SELECT * FROM tickets WHERE id = ? AND company_id = ?", [$ticketId, $companyId]); + $ticket = _dbFetchOne("SELECT * FROM tickets WHERE id = ? AND company_id = ?", [$ticketId, $companyId]); if (!$ticket || !$ticket['zammad_ticket_id']) { http_response_code(400); echo json_encode(['error' => 'Tiketti ei ole Zammad-tiketti']); diff --git a/index.html b/index.html index 73a51d4..24eeebd 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@