${esc(ticket.subject)}
-
+
${esc(ticket.from_name)} <${esc(ticket.from_email)}> · Luotu ${esc(ticket.created)}
@@ -1369,7 +1369,7 @@ async function showTicketDetail(id, companyId = '') {
} catch (e) { alert(e.message); }
});
- // Customer link — load customers dropdown
+ // Customer link — load customers dropdown + automaattinen tunnistus
try {
const custSelect = document.getElementById('ticket-customer-select');
customers.forEach(c => {
@@ -1379,6 +1379,45 @@ async function showTicketDetail(id, companyId = '') {
if (c.id === ticket.customer_id) opt.selected = true;
custSelect.appendChild(opt);
});
+
+ // Automaattinen asiakastunnistus sähköpostin perusteella
+ const senderEmail = (ticket.from_email || '').toLowerCase().trim();
+ const senderLine = document.getElementById('ticket-sender-line');
+ if (senderEmail && !ticket.customer_id) {
+ const matchedCustomer = customers.find(c =>
+ (c.sahkoposti || '').toLowerCase().trim() === senderEmail ||
+ (c.laskutussahkoposti || '').toLowerCase().trim() === senderEmail
+ );
+ if (matchedCustomer) {
+ // Löytyi asiakas → linkitä automaattisesti
+ custSelect.value = matchedCustomer.id;
+ custSelect.dispatchEvent(new Event('change'));
+ if (senderLine) {
+ senderLine.insertAdjacentHTML('beforeend',
+ `
✓ ${esc(matchedCustomer.yritys)}`);
+ }
+ } else {
+ // Ei löytynyt → näytä "Lisää liidi" -nappi
+ if (senderLine) {
+ senderLine.insertAdjacentHTML('beforeend',
+ `
`);
+ document.getElementById('btn-ticket-add-lead')?.addEventListener('click', () => {
+ // Avaa liidilomake esitäytetyillä tiedoilla
+ openLeadForm(null);
+ document.getElementById('lead-form-yhteyshenkilo').value = ticket.from_name || '';
+ document.getElementById('lead-form-sahkoposti').value = ticket.from_email || '';
+ document.getElementById('lead-form-muistiinpanot').value = 'Tiketti: ' + (ticket.subject || '') + '\\nLähettäjä: ' + (ticket.from_email || '');
+ });
+ }
+ }
+ } else if (senderEmail && ticket.customer_id) {
+ // Asiakas jo linkitetty — näytä badge
+ const linked = customers.find(c => c.id === ticket.customer_id);
+ if (linked && senderLine) {
+ senderLine.insertAdjacentHTML('beforeend',
+ `
✓ ${esc(linked.yritys)}`);
+ }
+ }
} catch (e) {}
document.getElementById('ticket-customer-select').addEventListener('change', async function() {