BCC-kenttä tiketteihin + To/CC/BCC tallennus + allekirjoituskorjaus
- Lisää BCC-kenttä vastauslomakkeeseen (HTML, JS, API) - To/CC/BCC tallentuvat tiketille pysyvästi (seuraava vastaus muistaa muutokset) - Lisää to_email ja bcc sarakkeet tickets-tauluun - BCC-tuki SMTP-lähetykseen (RCPT TO ilman headeria) - Korjaa allekirjoitukset: buildSignaturesWithDefaults() generoi nyt oletukset myös Zammad-sähköposteille (support@web1.fi ym.), ei pelkille mailboxeille - Allekirjoituksiin lisätty puhelinnumero Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
14
script.js
14
script.js
@@ -1838,14 +1838,18 @@ async function showTicketDetail(id, companyId = '') {
|
||||
document.querySelector('.btn-reply-tab[data-reply-type="reply"]').classList.add('active');
|
||||
document.getElementById('btn-send-reply').textContent = 'Lähetä vastaus';
|
||||
|
||||
// TO-kenttä — tiketin alkuperäinen lähettäjä
|
||||
// TO-kenttä — käytä tiketin tallennettua to_email:a, tai fallback from_email:iin
|
||||
const toField = document.getElementById('reply-to');
|
||||
if (toField) toField.value = ticket.from_email || '';
|
||||
if (toField) toField.value = ticket.to_email || ticket.from_email || '';
|
||||
|
||||
// CC-kenttä — täytetään tiketin CC:stä
|
||||
const ccField = document.getElementById('reply-cc');
|
||||
if (ccField) ccField.value = ticket.cc || '';
|
||||
|
||||
// BCC-kenttä — täytetään tiketin BCC:stä
|
||||
const bccField = document.getElementById('reply-bcc');
|
||||
if (bccField) bccField.value = ticket.bcc || '';
|
||||
|
||||
// Mailbox-valinta — Zammad-tiketit vastaa Zammadin kautta, muut SMTP:llä
|
||||
const mbSelect = document.getElementById('reply-mailbox-select');
|
||||
let replyMailboxes = []; // tallennetaan postilaatikkodata allekirjoitushakua varten
|
||||
@@ -2027,12 +2031,14 @@ document.getElementById('btn-send-reply').addEventListener('click', async () =>
|
||||
}
|
||||
if (zSig) zBody += '\n\n-- \n' + zSig;
|
||||
}
|
||||
// Lähetä Zammad API:n kautta — välitä myös to/cc-kentät
|
||||
// Lähetä Zammad API:n kautta — välitä myös to/cc/bcc-kentät
|
||||
const zPayload = { ticket_id: currentTicketId, body: zBody };
|
||||
const zToFld = document.getElementById('reply-to');
|
||||
const zCcFld = document.getElementById('reply-cc');
|
||||
const zBccFld = document.getElementById('reply-bcc');
|
||||
if (zToFld && zToFld.value.trim()) zPayload.to = zToFld.value.trim();
|
||||
if (zCcFld && zCcFld.value.trim()) zPayload.cc = zCcFld.value.trim();
|
||||
if (zBccFld && zBccFld.value.trim()) zPayload.bcc = zBccFld.value.trim();
|
||||
await apiCall('zammad_reply' + ticketCompanyParam(), 'POST', zPayload);
|
||||
} else {
|
||||
const action = ticketReplyType === 'note' ? 'ticket_note' : 'ticket_reply';
|
||||
@@ -2041,10 +2047,12 @@ document.getElementById('btn-send-reply').addEventListener('click', async () =>
|
||||
const mbSel = document.getElementById('reply-mailbox-select');
|
||||
const toFld = document.getElementById('reply-to');
|
||||
const ccFld = document.getElementById('reply-cc');
|
||||
const bccFld = document.getElementById('reply-bcc');
|
||||
const useSig = document.getElementById('reply-use-signature');
|
||||
if (mbSel) payload.mailbox_id = mbSel.value;
|
||||
if (toFld && toFld.value.trim()) payload.to = toFld.value.trim();
|
||||
if (ccFld) payload.cc = ccFld.value.trim();
|
||||
if (bccFld) payload.bcc = bccFld.value.trim();
|
||||
if (useSig && !useSig.checked) payload.no_signature = true;
|
||||
}
|
||||
await apiCall(action + ticketCompanyParam(), 'POST', payload);
|
||||
|
||||
Reference in New Issue
Block a user