{"id":1,"date":"2026-05-19T03:30:05","date_gmt":"2026-05-19T03:30:05","guid":{"rendered":"https:\/\/chat.sgtek.com.vn\/?p=1"},"modified":"2026-05-19T04:50:47","modified_gmt":"2026-05-19T04:50:47","slug":"hello-world","status":"publish","type":"post","link":"https:\/\/chat.sgtek.com.vn\/?p=1","title":{"rendered":"Hello world!"},"content":{"rendered":"\n<p>Welcome to WordPress. This is your first post. Edit or delete it, then start writing!<\/p>\n\n\n<!-- Giao di\u1ec7n khung Chatbot -->\r\n<div id=\"hf-chat-container\" style=\"border: 1px solid #ccc; max-width: 500px; margin: 20px auto; padding: 15px; border-radius: 8px; font-family: Arial, sans-serif; box-shadow: 0 4px 6px rgba(0,0,0,0.1); box-sizing: border-box;\">\r\n    <div id=\"hf-chat-box\" style=\"height: 350px; overflow-y: auto; border: 1px solid #eee; margin-bottom: 15px; padding: 10px; border-radius: 4px; background-color: #f9f9f9; font-size: 14px; line-height: 1.5; box-sizing: border-box;\">\r\n        <div id=\"hf-placeholder\" style=\"color: #888; text-align: center; margin-top: 100px;\">B\u1eaft \u0111\u1ea7u cu\u1ed9c tr\u00f2 chuy\u1ec7n b\u1eb1ng c\u00e1ch nh\u1eadp tin nh\u1eafn b\u00ean d\u01b0\u1edbi...<\/div>\r\n    <\/div>\r\n    <div style=\"display: flex; gap: 10px;\">\r\n        <input type=\"text\" id=\"hf-user-input\" placeholder=\"Nh\u1eadp tin nh\u1eafn c\u1ee7a b\u1ea1n...\" style=\"flex-grow: 1; padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px; height: auto; box-sizing: border-box;\">\r\n        <button type=\"button\" id=\"hf-send-btn\" style=\"padding: 10px 20px; background-color: #0073aa; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 14px; font-weight: bold; min-width: 70px; height: auto;\">G\u1eedi<\/button>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n    function initChatbot() {\r\n        var inputEl = document.getElementById('hf-user-input');\r\n        var sendBtn = document.getElementById('hf-send-btn');\r\n        var chatBox = document.getElementById('hf-chat-box');\r\n        var placeholder = document.getElementById('hf-placeholder');\r\n\r\n        if (!inputEl || !sendBtn || !chatBox) return;\r\n\r\n        sendBtn.addEventListener('click', handleChatSubmit);\r\n        inputEl.addEventListener('keypress', function(event) {\r\n            if (event.key === 'Enter') {\r\n                event.preventDefault();\r\n                handleChatSubmit();\r\n            }\r\n        });\r\n\r\n        async function handleChatSubmit() {\r\n            var message = inputEl.value.trim();\r\n            if (!message) return;\r\n\r\n            if (placeholder) {\r\n                placeholder.style.display = 'none';\r\n            }\r\n\r\n            \/\/ T\u1ea1o tin nh\u1eafn ng\u01b0\u1eddi d\u00f9ng b\u1eb1ng Nodes \u0111\u1ec3 tr\u00e1nh l\u1ed7i d\u1ea5u nh\u00e1y\r\n            var userDiv = document.createElement('div');\r\n            userDiv.style.marginBottom = '10px';\r\n            userDiv.style.textAlign = 'right';\r\n            var userSpan = document.createElement('span');\r\n            userSpan.style.backgroundColor = '#0073aa';\r\n            userSpan.style.color = 'white';\r\n            userSpan.style.padding = '8px 12px';\r\n            userSpan.style.borderRadius = '12px';\r\n            userSpan.style.display = 'inline-block';\r\n            userSpan.style.maxWidth = '80%';\r\n            userSpan.style.wordWrap = 'break-word';\r\n            userSpan.innerHTML = '<b>B\u1ea1n:<\/b> ' + message;\r\n            userDiv.appendChild(userSpan);\r\n            chatBox.appendChild(userDiv);\r\n\r\n            inputEl.value = '';\r\n            chatBox.scrollTop = chatBox.scrollHeight;\r\n\r\n            \/\/ T\u1ea1o tr\u1ea1ng th\u00e1i \u0111ang x\u1eed l\u00fd\r\n            var loadingId = 'loading-' + Date.now();\r\n            var loadDiv = document.createElement('div');\r\n            loadDiv.id = loadingId;\r\n            loadDiv.style.marginBottom = '10px';\r\n            loadDiv.style.textAlign = 'left';\r\n            var loadSpan = document.createElement('span');\r\n            loadSpan.style.backgroundColor = '#e5e5ea';\r\n            loadSpan.style.color = '#333';\r\n            loadSpan.style.padding = '8px 12px';\r\n            loadSpan.style.borderRadius = '12px';\r\n            loadSpan.style.display = 'inline-block';\r\n            loadSpan.innerHTML = '<i>AI \u0111ang suy ngh\u0129...<\/i>';\r\n            loadDiv.appendChild(loadSpan);\r\n            chatBox.appendChild(loadDiv);\r\n            chatBox.scrollTop = chatBox.scrollHeight;\r\n\r\n            try {\r\n                \/\/ \u0110\u01b0a n\u1ed9i dung tin nh\u1eafn l\u00ean tr\u1ef1c ti\u1ebfp thanh URL c\u1ee7a Y\u00eau c\u1ea7u (Ph\u01b0\u01a1ng th\u1ee9c GET)\r\nvar ajaxUrl = window.location.origin + '\/wp-admin\/admin-ajax.php?action=hf_chatbot&message=' + encodeURIComponent(message);\r\nvar response = await fetch(ajaxUrl, {\r\n    method: 'GET'\r\n});\r\n\r\n                var responseText = await response.text();\r\n                var loadingEl = document.getElementById(loadingId);\r\n                if (loadingEl) loadingEl.remove();\r\n\r\n                var data;\r\n                try {\r\n                    data = JSON.parse(responseText);\r\n                } catch (e) {\r\n                    throw new Error('H\u1ec7 th\u1ed1ng ph\u1ea3n h\u1ed3i l\u1ed7i PHP\/HTML. Vui l\u00f2ng ki\u1ec3m tra tab Network.');\r\n                }\r\n\r\n                if (!response.ok) {\r\n                    throw new Error(data.error || 'HTTP error ' + response.status);\r\n                }\r\n\r\n                var botReply = 'Kh\u00f4ng nh\u1eadn \u0111\u01b0\u1ee3c ph\u1ea3n h\u1ed3i ph\u00f9 h\u1ee3p.';\r\n                if (Array.isArray(data) && data.length > 0) {\r\n                    botReply = data[0].generated_text || botReply;\r\n                } else if (data && data.generated_text) {\r\n                    botReply = data.generated_text;\r\n                } else if (data && data.error) {\r\n                    botReply = 'L\u1ed7i: ' + data.error;\r\n                }\r\n\r\n                \/\/ Hi\u1ec3n th\u1ecb k\u1ebft qu\u1ea3 AI tr\u1ea3 v\u1ec1\r\n                var botDiv = document.createElement('div');\r\n                botDiv.style.marginBottom = '10px';\r\n                botDiv.style.textAlign = 'left';\r\n                var botSpan = document.createElement('span');\r\n                botSpan.style.backgroundColor = '#e5e5ea';\r\n                botSpan.style.color = '#333';\r\n                botSpan.style.padding = '8px 12px';\r\n                botSpan.style.borderRadius = '12px';\r\n                botSpan.style.display = 'inline-block';\r\n                botSpan.style.maxWidth = '80%';\r\n                botSpan.style.wordWrap = 'break-word';\r\n                botSpan.innerHTML = '<b>AI:<\/b> ' + botReply;\r\n                botDiv.appendChild(botSpan);\r\n                chatBox.appendChild(botDiv);\r\n\r\n            } catch (error) {\r\n                var loadingEl = document.getElementById(loadingId);\r\n                if (loadingEl) loadingEl.remove();\r\n\r\n                var errDiv = document.createElement('div');\r\n                errDiv.style.marginBottom = '10px';\r\n                errDiv.style.textAlign = 'center';\r\n                var errSpan = document.createElement('span');\r\n                errSpan.style.color = '#d9534f';\r\n                errSpan.style.fontSize = '13px';\r\n                errSpan.style.backgroundColor = '#f2dede';\r\n                errSpan.style.padding = '5px 10px';\r\n                errSpan.style.borderRadius = '4px';\r\n                errSpan.style.display = 'inline-block';\r\n                errSpan.style.width = '90%';\r\n                errSpan.innerHTML = '<b>L\u1ed7i:<\/b> ' + error.message;\r\n                errDiv.appendChild(errSpan);\r\n                chatBox.appendChild(errDiv);\r\n            }\r\n            chatBox.scrollTop = chatBox.scrollHeight;\r\n        }\r\n    }\r\n\r\n    if (document.readyState === 'loading') {\r\n        document.addEventListener('DOMContentLoaded', initChatbot);\r\n    } else {\r\n        initChatbot();\r\n    }\r\n})();\r\n<\/script>\r\n\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Welcome to WordPress. This is your first post. Edit or delete it, then start writing!<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/posts\/1","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1"}],"version-history":[{"count":1,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/posts\/1\/revisions"}],"predecessor-version":[{"id":11,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=\/wp\/v2\/posts\/1\/revisions\/11"}],"wp:attachment":[{"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chat.sgtek.com.vn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}