{"id":14906,"date":"2025-04-07T08:24:16","date_gmt":"2025-04-07T07:24:16","guid":{"rendered":"https:\/\/cenexgroup.nl\/?page_id=14906"},"modified":"2025-06-22T14:04:54","modified_gmt":"2025-06-22T13:04:54","slug":"test-chat","status":"publish","type":"page","link":"https:\/\/cenexgroup.nl\/nl\/test-chat\/","title":{"rendered":"test chat"},"content":{"rendered":"\n<!-- Cenex Chatbot - Embed this HTML snippet into your website -->\n<div id=\"cenex-chatbot-container\"><\/div>\n\n<script>\n(function() {\n    'use strict';\n\n    \/\/ Prevent multiple initialization\n    if (window.CenexChatbotLoaded) return;\n    window.CenexChatbotLoaded = true;\n\n    let sessionId = null; \/\/ Session ID for the conversation\n\n    \/\/ Create and inject CSS\n    const style = document.createElement('style');\n    style.textContent = `\n        .cenex-chat-button {\n            position: fixed !important;\n            bottom: 20px !important;\n            right: 20px !important;\n            width: 60px !important;\n            height: 60px !important;\n            background: #1f4e79 !important;\n            border-radius: 50% !important;\n            cursor: pointer !important;\n            display: flex !important;\n            align-items: center !important;\n            justify-content: center !important;\n            box-shadow: 0 4px 16px rgba(31, 78, 121, 0.15) !important;\n            z-index: 999999 !important;\n            border: none !important;\n            pointer-events: auto !important;\n            opacity: 1 !important;\n            visibility: visible !important;\n        }\n        .cenex-chat-button svg {\n            width: 30px !important;\n            height: 30px !important;\n            min-width: 30px !important;\n            min-height: 30px !important;\n            max-width: 30px !important;\n            max-height: 30px !important;\n            fill: white !important;\n            display: block !important;\n            flex-shrink: 0 !important;\n        }\n        .cenex-chat-widget {\n            position: fixed !important;\n            bottom: 90px !important;\n            right: 20px !important;\n            width: 380px !important;\n            height: 500px !important;\n            background: white !important;\n            border-radius: 16px !important;\n            box-shadow: 0 10px 40px rgba(31, 78, 121, 0.15) !important;\n            display: none !important;\n            flex-direction: column !important;\n            z-index: 999998 !important;\n            overflow: hidden !important;\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n        }\n        .cenex-chat-header {\n            background: #1f4e79 !important;\n            color: white !important;\n            padding: 16px 20px !important;\n            display: flex !important;\n            align-items: center !important;\n            justify-content: space-between !important;\n        }\n        .cenex-chat-header-content {\n            display: flex !important;\n            align-items: center !important;\n            gap: 12px !important;\n        }\n        .cenex-chat-logo {\n            width: 32px !important;\n            height: 32px !important;\n            border-radius: 6px !important;\n            background: white !important;\n            padding: 4px !important;\n        }\n        .cenex-chat-logo img {\n            width: 100% !important;\n            height: 100% !important;\n            object-fit: contain !important;\n        }\n        .cenex-chat-title {\n            font-size: 16px !important;\n            font-weight: 600 !important;\n        }\n        .cenex-chat-subtitle {\n            font-size: 12px !important;\n            opacity: 0.9 !important;\n            margin-top: 2px !important;\n        }\n        .cenex-chat-close {\n            background: none !important;\n            border: none !important;\n            color: white !important;\n            cursor: pointer !important;\n            padding: 4px !important;\n            border-radius: 4px !important;\n        }\n        .cenex-chat-close svg {\n            width: 20px !important;\n            height: 20px !important;\n            fill: currentColor !important;\n        }\n        .cenex-chat-messages {\n            flex: 1 !important;\n            overflow-y: auto !important;\n            padding: 20px !important;\n            background: #f8f9fa !important;\n        }\n        .cenex-welcome-message {\n            text-align: center !important;\n            padding: 20px !important;\n            color: #2c5f8a !important;\n        }\n        .cenex-welcome-message h3 {\n            font-size: 18px !important;\n            margin-bottom: 8px !important;\n            color: #1f4e79 !important;\n        }\n        .cenex-welcome-message p {\n            font-size: 14px !important;\n            line-height: 1.4 !important;\n        }\n        .cenex-chat-input-container {\n            padding: 16px 20px !important;\n            background: white !important;\n            border-top: 1px solid #e9ecef !important;\n            display: flex !important;\n            gap: 12px !important;\n            align-items: flex-end !important;\n        }\n        .cenex-chat-input {\n            flex: 1 !important;\n            border: 1px solid #ddd !important;\n            border-radius: 20px !important;\n            padding: 10px 16px !important;\n            font-size: 14px !important;\n            resize: none !important;\n            max-height: 100px !important;\n            min-height: 40px !important;\n            outline: none !important;\n            font-family: inherit !important;\n        }\n                 .cenex-chat-send {\n             background: #1f4e79 !important;\n             border: none !important;\n             border-radius: 50% !important;\n             width: 40px !important;\n             height: 40px !important;\n             min-width: 40px !important;\n             min-height: 40px !important;\n             max-width: 40px !important;\n             max-height: 40px !important;\n             cursor: pointer !important;\n             display: flex !important;\n             align-items: center !important;\n             justify-content: center !important;\n             transition: background-color 0.2s ease !important;\n             padding: 0 !important;\n             margin: 0 !important;\n             flex-shrink: 0 !important;\n             box-sizing: border-box !important;\n             outline: none !important;\n             position: relative !important;\n         }\n         .cenex-chat-send:hover {\n             background: #1a3a5c !important;\n         }\n         .cenex-chat-send:disabled {\n             background: #ccc !important;\n             cursor: not-allowed !important;\n         }\n         .cenex-chat-send svg {\n             width: 20px !important;\n             height: 20px !important;\n             fill: white !important;\n             display: block !important;\n         }\n                 \/* Typing Indicator *\/\n         .cenex-typing-indicator {\n             display: none;\n             margin-bottom: 16px !important;\n             margin-top: 16px !important;\n             padding: 12px 16px !important;\n             background: white !important;\n             border-radius: 16px !important;\n             border-bottom-left-radius: 4px !important;\n             box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;\n             max-width: 70px !important;\n             animation: cenex-fadeIn 0.3s ease !important;\n             position: relative !important;\n             align-self: flex-start !important;\n         }\n         .cenex-typing-dots {\n             display: flex !important;\n             align-items: center !important;\n             gap: 4px !important;\n         }\n         .cenex-typing-dot {\n             width: 8px !important;\n             height: 8px !important;\n             background: #1f4e79 !important;\n             border-radius: 50% !important;\n             animation: cenex-typingPulse 1.4s infinite ease-in-out !important;\n         }\n         .cenex-typing-dot:nth-child(1) {\n             animation-delay: 0s !important;\n         }\n         .cenex-typing-dot:nth-child(2) {\n             animation-delay: 0.2s !important;\n         }\n         .cenex-typing-dot:nth-child(3) {\n             animation-delay: 0.4s !important;\n         }\n         @keyframes cenex-typingPulse {\n             0%, 60%, 100% {\n                 opacity: 0.4;\n                 transform: scale(1);\n             }\n             30% {\n                 opacity: 1;\n                 transform: scale(1.2);\n             }\n         }\n         @keyframes cenex-fadeIn {\n             from {\n                 opacity: 0;\n                 transform: translateY(10px);\n             }\n             to {\n                 opacity: 1;\n                 transform: translateY(0);\n             }\n         }\n\n         @media (max-width: 420px) {\n             .cenex-chat-widget {\n                 width: calc(100vw - 20px) !important;\n                 height: calc(100vh - 100px) !important;\n                 right: 10px !important;\n                 bottom: 80px !important;\n             }\n         }\n    `;\n    document.head.appendChild(style);\n\n    \/\/ Create HTML\n    const html = `\n        <button class=\"cenex-chat-button\" id=\"cenex-chat-btn\">\n            <svg viewBox=\"0 0 24 24\" style=\"width: 30px !important; height: 30px !important; fill: white !important; display: block !important;\">\n                <path d=\"M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z\"\/>\n            <\/svg>\n        <\/button>\n        <div class=\"cenex-chat-widget\" id=\"cenex-chat-widget\">\n            <div class=\"cenex-chat-header\">\n                <div class=\"cenex-chat-header-content\">\n                    <div class=\"cenex-chat-logo\">\n                        <img decoding=\"async\" src=\"https:\/\/cenexgroup.nl\/wp-content\/uploads\/2019\/05\/Netherlands-Logo-final-transparentx650-180x180.png\" alt=\"Cenex Logo\">\n                    <\/div>\n                    <div>\n                        <div class=\"cenex-chat-title\">Cenex Assistant<\/div>\n                        <div class=\"cenex-chat-subtitle\">We're here to help<\/div>\n                    <\/div>\n                <\/div>\n                <button class=\"cenex-chat-close\" id=\"cenex-chat-close\">\n                    <svg viewBox=\"0 0 24 24\">\n                        <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/>\n                    <\/svg>\n                <\/button>\n            <\/div>\n                         <div class=\"cenex-chat-messages\">\n                 <div class=\"cenex-welcome-message\">\n                     <h3>Welcome to Cenex!<\/h3>\n                     <p>Hi, how can I help you today? Feel free to ask me anything about our services.<\/p>\n                 <\/div>\n             <\/div>\n            <div class=\"cenex-chat-input-container\">\n                <textarea class=\"cenex-chat-input\" id=\"cenex-chat-input\" placeholder=\"Type your message here...\" rows=\"1\"><\/textarea>\n                                 <button class=\"cenex-chat-send\" id=\"cenex-chat-send\" style=\"width: 40px !important; height: 40px !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important;\">\n                     <svg viewBox=\"0 0 24 24\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width: 20px; height: 20px; fill: white;\">\n                         <path d=\"M2.01 21L23 12 2.01 3 2 10l15 2-15 2z\"\/>\n                     <\/svg>\n                 <\/button>\n            <\/div>\n        <\/div>\n    `;\n\n    \/\/ Add to page\n    document.body.insertAdjacentHTML('beforeend', html);\n\n         \/\/ Message display function\n     function addMessage(content, sender) {\n         const messagesContainer = document.getElementById('cenex-chat-widget').querySelector('.cenex-chat-messages');\n         const messageDiv = document.createElement('div');\n         messageDiv.style.cssText = `\n             margin-bottom: 16px !important;\n             display: flex !important;\n             gap: 8px !important;\n             ${sender === 'user' ? 'flex-direction: row-reverse !important;' : ''}\n         `;\n         \n         const now = new Date();\n         const timeString = now.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' });\n         \n         \/\/ Format the content for better display\n         let formattedContent = content;\n         if (sender === 'bot') {\n             \/\/ Convert **text** to <strong>text<\/strong>\n             formattedContent = formattedContent.replace(\/\\*\\*(.*?)\\*\\*\/g, '<strong>$1<\/strong>');\n             \n             \/\/ Convert line breaks to <br> tags\n             formattedContent = formattedContent.replace(\/\\\\n\/g, '<br>');\n             formattedContent = formattedContent.replace(\/\\n\/g, '<br>');\n             \n             \/\/ Convert email addresses to clickable links\n             const emailRegex = \/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9_-]+)\/gi;\n             formattedContent = formattedContent.replace(emailRegex, '<a href=\"mailto:$1\" style=\"color: #3d7cb8 !important; text-decoration: underline !important;\">$1<\/a>');\n             \n             \/\/ Convert other URLs to clickable links\n             const urlRegex = \/(https?:\\\/\\\/\\S+)\/gi;\n             formattedContent = formattedContent.replace(urlRegex, '<a href=\"$1\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"color: #3d7cb8 !important; text-decoration: underline !important;\">$1<\/a>');\n             \n             \/\/ Convert sentences ending with ? to have line breaks\n             formattedContent = formattedContent.replace(\/\\?\\s+\/g, '?<br><br>');\n             \n             \/\/ Convert numbered lists to proper HTML lists\n             formattedContent = formattedContent.replace(\/(\\d+\\.\\s)\/g, '<br><strong>$1<\/strong>');\n             \n             \/\/ Clean up any multiple line breaks\n             formattedContent = formattedContent.replace(\/<br><br><br>\/g, '<br><br>');\n             formattedContent = formattedContent.replace(\/^<br>\/, ''); \/\/ Remove leading break\n         } else {\n             \/\/ For user messages, escape HTML to prevent formatting issues\n             formattedContent = formattedContent.replace(\/<\/g, '&lt;').replace(\/>\/g, '&gt;');\n         }\n         \n         messageDiv.innerHTML = `\n             <div style=\"\n                 max-width: 80% !important;\n                 padding: 12px 16px !important;\n                 border-radius: 16px !important;\n                 font-size: 14px !important;\n                 line-height: ${sender === 'bot' ? '1.5' : '1.4'} !important;\n                 ${sender === 'bot' ? 'white-space: normal !important; word-wrap: break-word !important; overflow-wrap: break-word !important;' : 'white-space: normal !important;'}\n                 ${sender === 'bot' ? \n                     'background: white !important; color: #1a3a5c !important; border-bottom-left-radius: 4px !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;' : \n                     'background: #1f4e79 !important; color: white !important; border-bottom-right-radius: 4px !important;'\n                 }\n             \">\n                 ${formattedContent}\n                 <div style=\"\n                     font-size: 11px !important;\n                     opacity: 0.6 !important;\n                     margin-top: ${sender === 'bot' ? '8px' : '4px'} !important;\n                     text-align: ${sender === 'user' ? 'right' : 'left'} !important;\n                     ${sender === 'bot' ? 'border-top: 1px solid rgba(0,0,0,0.1) !important; padding-top: 4px !important;' : ''}\n                 \">${timeString}<\/div>\n             <\/div>\n         `;\n         \n         \/\/ Insert before welcome message (or at end if no welcome message)\n         const welcomeMsg = messagesContainer.querySelector('.cenex-welcome-message');\n         if (welcomeMsg && messagesContainer.children.length === 1) {\n             \/\/ First message - add after welcome\n             messagesContainer.appendChild(messageDiv);\n         } else {\n             messagesContainer.appendChild(messageDiv);\n         }\n         \n         \/\/ Scroll the new message into view, aligning to the top\n         messageDiv.scrollIntoView({ behavior: 'smooth', block: 'start' });\n     }\n\n     \/\/ Simple toggle function\n     let isOpen = false;\n     function toggleChat() {\n        const widget = document.getElementById('cenex-chat-widget');\n        const button = document.getElementById('cenex-chat-btn');\n        \n        if (!isOpen) {\n            \/\/ Force widget to be visible with explicit styles\n            widget.style.cssText = `\n                position: fixed !important;\n                bottom: 90px !important;\n                right: 20px !important;\n                width: 380px !important;\n                height: 500px !important;\n                background: white !important;\n                border-radius: 16px !important;\n                box-shadow: 0 10px 40px rgba(31, 78, 121, 0.15) !important;\n                display: flex !important;\n                flex-direction: column !important;\n                z-index: 2147483647 !important;\n                overflow: hidden !important;\n                font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\n                pointer-events: auto !important;\n                opacity: 1 !important;\n                visibility: visible !important;\n                transform: none !important;\n                margin: 0 !important;\n                padding: 0 !important;\n                border: 2px solid #1f4e79 !important;\n            `;\n            isOpen = true;\n            console.log('Cenex Chat: Opened with forced styles');\n            \n            \/\/ Change button icon to X\n            button.innerHTML = `\n                <svg viewBox=\"0 0 24 24\" style=\"width: 30px !important; height: 30px !important; fill: white !important; display: block !important;\">\n                    <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/>\n                <\/svg>\n            `;\n        } else {\n            widget.style.display = 'none';\n            isOpen = false;\n            console.log('Cenex Chat: Closed');\n            \n            \/\/ Change button icon back to chat\n            button.innerHTML = `\n                <svg viewBox=\"0 0 24 24\" style=\"width: 30px !important; height: 30px !important; fill: white !important; display: block !important;\">\n                    <path d=\"M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z\"\/>\n                <\/svg>\n            `;\n        }\n    }\n\n    \/\/ Function to get or create session ID, persisting in localStorage\n    function getSessionId() {\n        if (sessionId) return sessionId;\n        \n        \/\/ Try to get existing session from localStorage\n        const storedSessionId = localStorage.getItem('cenex-chat-session-id');\n        \n        if (storedSessionId) {\n            sessionId = storedSessionId;\n            console.log('Cenex Chat: Resumed session ID:', sessionId);\n        } else {\n            \/\/ If no existing session, create a new one\n            sessionId = 'cenex-chat-' + Math.random().toString(36).substr(2, 9) + '-' + Date.now();\n            localStorage.setItem('cenex-chat-session-id', sessionId);\n            console.log('Cenex Chat: Created new session ID:', sessionId);\n        }\n        return sessionId;\n    }\n\n         \/\/ Add test function to force visibility\n     window.showCenexChat = function() {\n         const widget = document.getElementById('cenex-chat-widget');\n         if (widget) {\n             widget.style.cssText = `\n                 position: fixed !important;\n                 bottom: 90px !important;\n                 right: 20px !important;\n                 width: 380px !important;\n                 height: 500px !important;\n                 background: red !important;\n                 border: 5px solid blue !important;\n                 display: block !important;\n                 z-index: 2147483647 !important;\n                 opacity: 1 !important;\n                 visibility: visible !important;\n             `;\n             console.log('Cenex Chat: Forced visible with red background');\n         }\n     };\n\n     \/\/ Wait for DOM to be ready and add event listeners\n     setTimeout(() => {\n         const button = document.getElementById('cenex-chat-btn');\n         const closeBtn = document.getElementById('cenex-chat-close');\n         const sendBtn = document.getElementById('cenex-chat-send');\n         const input = document.getElementById('cenex-chat-input');\n\n         if (button) {\n             button.onclick = toggleChat;\n             console.log('Cenex Chat: Button ready - try typing showCenexChat() in console');\n         }\n\n        if (closeBtn) {\n            closeBtn.onclick = toggleChat;\n        }\n\n                 if (sendBtn && input) {\n             sendBtn.onclick = async function() {\n                 const message = input.value.trim();\n                 if (message) {\n                     console.log('Sending message:', message);\n                     \n                     \/\/ Clear input and show sending state\n                     input.value = '';\n                     input.placeholder = 'Sending...';\n                     sendBtn.disabled = true;\n                     \n                     \/\/ Add user message to chat\n                     addMessage(message, 'user');\n                     \n                     \/\/ Show typing indicator\n                     showTypingIndicator();\n                     \n                     try {\n                         \/\/ Send to n8n webhook - matching the standard n8n format\n                         const response = await fetch('https:\/\/n8n.cenexgroup.nl\/webhook\/54994152-4e7f-4ad7-9fed-298155d69e1d\/chat', {\n                             method: 'POST',\n                             headers: {\n                                 'Content-Type': 'application\/json',\n                             },\n                             body: JSON.stringify({\n                                 action: 'sendMessage',\n                                 sessionId: getSessionId(), \/\/ Use the persistent session ID\n                                 chatInput: message\n                             })\n                         });\n                         \n                         console.log('Response status:', response.status);\n                         const responseText = await response.text();\n                         console.log('Response text:', responseText);\n                         \n                         if (response.ok) {\n                             \/\/ Try to parse as JSON, fallback to text\n                             let botMessage = 'Thank you for your message!';\n                             try {\n                                 const data = JSON.parse(responseText);\n                                 botMessage = data.output || data.message || data.response || data.text || responseText;\n                             } catch (parseError) {\n                                 \/\/ If it's not JSON, use the text response directly\n                                 botMessage = responseText || 'Thank you for your message!';\n                             }\n                             \n                             \/\/ Hide typing indicator and show response\n                             hideTypingIndicator();\n                             addMessage(botMessage, 'bot');\n                         } else {\n                             hideTypingIndicator();\n                             addMessage('I apologize, but I\\'m having trouble connecting right now. Please try again in a moment.', 'bot');\n                         }\n                     } catch (error) {\n                         console.error('Error:', error);\n                         hideTypingIndicator();\n                         addMessage('I apologize, but I\\'m having trouble connecting right now. Please try again in a moment.', 'bot');\n                     }\n                     \n                     \/\/ Reset input state\n                     input.placeholder = 'Type your message here...';\n                     sendBtn.disabled = false;\n                 }\n             };\n\n            input.onkeydown = function(e) {\n                if (e.key === 'Enter' && !e.shiftKey) {\n                    e.preventDefault();\n                    sendBtn.click();\n                }\n            };\n        }\n    }, 100);\n    \n    \/\/ Typing indicator functions\n    function showTypingIndicator() {\n        const messagesContainer = document.getElementById('cenex-chat-widget').querySelector('.cenex-chat-messages');\n        \n        \/\/ Remove any existing typing indicator\n        const existingIndicator = document.getElementById('cenex-typing-indicator');\n        if (existingIndicator) {\n            existingIndicator.remove();\n        }\n        \n        \/\/ Create new typing indicator\n        const indicator = document.createElement('div');\n        indicator.id = 'cenex-typing-indicator';\n        indicator.className = 'cenex-typing-indicator';\n        indicator.style.cssText = `\n            display: block !important;\n            margin-bottom: 16px !important;\n            margin-top: 16px !important;\n            padding: 12px 16px !important;\n            background: white !important;\n            border-radius: 16px !important;\n            border-bottom-left-radius: 4px !important;\n            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;\n            max-width: 70px !important;\n            animation: cenex-fadeIn 0.3s ease !important;\n            position: relative !important;\n            align-self: flex-start !important;\n        `;\n        \n        indicator.innerHTML = `\n            <div class=\"cenex-typing-dots\" style=\"display: flex !important; align-items: center !important; gap: 4px !important;\">\n                <div class=\"cenex-typing-dot\" style=\"width: 8px !important; height: 8px !important; background: #1f4e79 !important; border-radius: 50% !important; animation: cenex-typingPulse 1.4s infinite ease-in-out !important; animation-delay: 0s !important;\"><\/div>\n                <div class=\"cenex-typing-dot\" style=\"width: 8px !important; height: 8px !important; background: #1f4e79 !important; border-radius: 50% !important; animation: cenex-typingPulse 1.4s infinite ease-in-out !important; animation-delay: 0.2s !important;\"><\/div>\n                <div class=\"cenex-typing-dot\" style=\"width: 8px !important; height: 8px !important; background: #1f4e79 !important; border-radius: 50% !important; animation: cenex-typingPulse 1.4s infinite ease-in-out !important; animation-delay: 0.4s !important;\"><\/div>\n            <\/div>\n        `;\n        \n        \/\/ Add to the end of messages container\n        messagesContainer.appendChild(indicator);\n        messagesContainer.scrollTop = messagesContainer.scrollHeight;\n    }\n    \n    function hideTypingIndicator() {\n        const indicator = document.getElementById('cenex-typing-indicator');\n        if (indicator) {\n            indicator.remove();\n        }\n    }\n\n})();\n<\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-14906","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/pages\/14906","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/comments?post=14906"}],"version-history":[{"count":0,"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/pages\/14906\/revisions"}],"wp:attachment":[{"href":"https:\/\/cenexgroup.nl\/nl\/wp-json\/wp\/v2\/media?parent=14906"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}