Transforming dining experiences

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Experience the Future of Dining

Transform your venue with our innovative QR code solutions. Book a demo today!

Book a Demo
Change cookie settings (function () { const STORAGE_KEY = 'referral'; function getReferralFromUrl() { const params = new URLSearchParams(window.location.search); if (params.has('ref')) { return params.get('ref'); } if (params.has('gclid')) { return 'Google:' + params.get('gclid'); } if (params.has('fbclid')) { return 'Meta:' + params.get('fbclid'); } return null; } function saveReferral() { const referralFromUrl = getReferralFromUrl(); if (referralFromUrl) { sessionStorage.setItem(STORAGE_KEY, referralFromUrl); return referralFromUrl; } return sessionStorage.getItem(STORAGE_KEY); } function getStoredReferral() { return sessionStorage.getItem(STORAGE_KEY); } function ensureReferralInput(form) { let input = form.querySelector('input[name="referral"]'); if (!input) { input = document.createElement('input'); input.type = 'hidden'; input.name = 'referral'; input.setAttribute('data-name', 'Referral'); form.appendChild(input); } return input; } function applyReferralToForm(form, referral) { if (!form || !referral) { return; } const existingInput = form.querySelector('input[name="referral"]'); // Не перетираем, если в форме уже есть значение if (existingInput && existingInput.value) { return; } const input = existingInput || ensureReferralInput(form); input.value = referral; } function applyReferralToAllForms() { const referral = getStoredReferral(); if (!referral) { return; } document.querySelectorAll('form').forEach(function (form) { applyReferralToForm(form, referral); }); } function initObserver() { const observer = new MutationObserver(function (mutations) { const referral = getStoredReferral(); if (!referral) { return; } for (const mutation of mutations) { for (const node of mutation.addedNodes) { if (!(node instanceof HTMLElement)) { continue; } if (node.matches && node.matches('form')) { applyReferralToForm(node, referral); } if (node.querySelectorAll) { node.querySelectorAll('form').forEach(function (form) { applyReferralToForm(form, referral); }); } } } }); observer.observe(document.documentElement, { childList: true, subtree: true }); } function init() { saveReferral(); applyReferralToAllForms(); initObserver(); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', init); } else { init(); } })();