Verzendmethoden
Ga naar inhoud
NIEUWIGHEDEN
WINKEL
INFO
WIJ
CONTACT
VERZENDING
HANDLEIDING
CATALOGUS
NL
DE
EN
FR
ES
IT
NL
SV
DA
JA
ZH
????
Verzendmethoden
apollon
2019-10-02T00:05:07+02:00
Selecteer eerst het bestemmingsland voor verzending
Duitsland en Oostenrijk
Lidstaten van de Europese Unie
Europese staten buiten de Europese Unie
Landen buiten Europa
Selecteer eerst het land van verzending
Duitsland
en Oostenrijk
Lidstaten
de Europese Unie
Europese landen
buiten
de Europese Unie
Landen
buiten Europa
Paginaladingkoppeling
Verzenden
'; document.body.appendChild(box); var input = document.getElementById('mz-chat-input'); var sendBtn = document.getElementById('mz-chat-send'); var msgsDiv = document.getElementById('mz-chat-msgs'); var closeBtn = document.getElementById('mz-chat-close'); closeBtn.onclick = function() { box.classList.remove('open'); isOpen = false; }; sendBtn.onclick = sendMessage; input.onkeydown = function(e) { if (e.key === 'Enter' && !e.shiftKey) { e.preventDefault(); sendMessage(); } }; function toggleChat() { isOpen = !isOpen; if (isOpen) { box.classList.add('open'); if (messages.length === 0) addBotMessage('Welkom bij MAZANLI. Hoe kan ik u helpen?'); input.focus(); } else { box.classList.remove('open'); } } function addBotMessage(text) { messages.push({ role: 'bot', text: text }); var div = document.createElement('div'); div.className = 'mz-msg mz-msg-bot'; div.innerHTML = '
' + escapeHtml(text) + '
'; msgsDiv.appendChild(div); msgsDiv.scrollTop = msgsDiv.scrollHeight; } function addUserMessage(text) { messages.push({ role: 'user', text: text }); var div = document.createElement('div'); div.className = 'mz-msg mz-msg-user'; div.innerHTML = '
' + escapeHtml(text) + '
'; msgsDiv.appendChild(div); msgsDiv.scrollTop = msgsDiv.scrollHeight; } function showTyping() { var div = document.createElement('div'); div.className = 'mz-msg mz-msg-bot'; div.id = 'mz-typing'; div.innerHTML = '
'; msgsDiv.appendChild(div); msgsDiv.scrollTop = msgsDiv.scrollHeight; } function hideTyping() { var el = document.getElementById('mz-typing'); if (el) el.remove(); } function showWeiterleitung() { if (document.querySelector('.mz-weiterleitung')) return; var wrap = document.getElementById('mz-chat-input-wrap'); var div = document.createElement('div'); div.className = 'mz-weiterleitung'; div.innerHTML = '
Naar team verzenden
'; wrap.parentNode.insertBefore(div, wrap); } window._mzWeiterleiten = function() { var name = document.getElementById('mz-wl-name').value; var email = document.getElementById('mz-wl-email').value; var msg = document.getElementById('mz-wl-msg').value; if (!email) { alert('Geef alstublieft e-mailadres op'); return; } fetch(API + '/weiterleiten', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ conversation_id: convId, name: name, email: email, nachricht: msg }) }) .then(function(r) { return r.json(); }) .then(function(d) { var el = document.querySelector('.mz-weiterleitung'); if (el) el.remove(); addBotMessage(d.message || 'Bericht is doorgestuurd. We nemen contact met u op.'); }) .catch(function() { addBotMessage('Doorsturen mislukt. Neem rechtstreeks contact met ons op via info@mazan.li'); }); }; function sendMessage() { var text = input.value.trim(); if (!text) return; input.value = ''; addUserMessage(text); sendBtn.disabled = true; showTyping(); fetch(API + '/message', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ message: text, conversation_id: convId }) }) .then(function(r) { return r.json(); }) .then(function(d) { hideTyping(); sendBtn.disabled = false; if (d.error) { addBotMessage('Sorry, er is een fout opgetreden.'); return; } convId = d.conversation_id; addBotMessage(d.antwort); if (d.antwort.toLowerCase().indexOf('weiterleiten') > -1 || d.antwort.toLowerCase().indexOf('team') > -1 || d.antwort.toLowerCase().indexOf('info@mazan.li') > -1) { showWeiterleitung(); } input.focus(); }) .catch(function() { hideTyping(); sendBtn.disabled = false; addBotMessage('Verbinding mislukt. Probeer het alstublieft opnieuw.'); }); } function escapeHtml(str) { return str.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"').replace(/\n/g,'
'); } })();