{"id":351,"date":"2026-01-11T07:43:54","date_gmt":"2026-01-11T04:43:54","guid":{"rendered":"https:\/\/tattva.cc\/guru\/?page_id=351"},"modified":"2026-01-11T07:44:40","modified_gmt":"2026-01-11T04:44:40","slug":"ask-guru","status":"publish","type":"page","link":"https:\/\/tattva.cc\/guru\/ask-guru\/","title":{"rendered":"\u0417\u0430\u0434\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441 \u0413\u0443\u0440\u0443"},"content":{"rendered":"<div id=\"web-chat\">\r\n  <div id=\"chat-messages\"><\/div>\r\n  \r\n  <!-- \u041f\u0430\u043d\u0435\u043b\u044c \u044d\u043c\u043e\u0434\u0437\u0438 \u2014 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432\u0438\u0434\u043d\u0430 -->\r\n  <div id=\"emoji-panel\" style=\"padding:8px 15px; background:#f9f9f9; border-top:1px solid #eee; display:flex; flex-wrap:wrap; gap:4px;\">\r\n\r\n\t\t<span data-emoji=\"\ud83d\ude4f\" class=\"emoji-item\">\ud83d\ude4f<\/span>\r\n\t\t<span data-emoji=\"\ud83d\udc4d\" class=\"emoji-item\">\ud83d\udc4d<\/span>\r\n\t\t<span data-emoji=\"\ud83d\udc4c\" class=\"emoji-item\">\ud83d\udc4c<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude4c\" class=\"emoji-item\">\ud83d\ude4c<\/span>\r\n\t\t<span data-emoji=\"\ud83d\udcaa\" class=\"emoji-item\">\ud83d\udcaa<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udd1e\" class=\"emoji-item\">\ud83e\udd1e<\/span>\r\n\r\n\t\t<span data-emoji=\"\ud83d\ude01\" class=\"emoji-item\">\ud83d\ude01<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude02\" class=\"emoji-item\">\ud83d\ude02<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udd29\" class=\"emoji-item\">\ud83e\udd29<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udd70\" class=\"emoji-item\">\ud83e\udd70<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude0d\" class=\"emoji-item\">\ud83d\ude0d<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude42\" class=\"emoji-item\">\ud83d\ude42<\/span>\r\n\t\t<span data-emoji=\"\u263a\ufe0f\" class=\"emoji-item\">\u263a\ufe0f<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude07\" class=\"emoji-item\">\ud83d\ude07<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udd79\" class=\"emoji-item\">\ud83e\udd79<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udee1\" class=\"emoji-item\">\ud83e\udee1<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udd14\" class=\"emoji-item\">\ud83e\udd14<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude10\" class=\"emoji-item\">\ud83d\ude10<\/span>\r\n\t\t<span data-emoji=\"\ud83e\udee3\" class=\"emoji-item\">\ud83e\udee3<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude33\" class=\"emoji-item\">\ud83d\ude33<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude22\" class=\"emoji-item\">\ud83d\ude22<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude2d\" class=\"emoji-item\">\ud83d\ude2d<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude1e\" class=\"emoji-item\">\ud83d\ude1e<\/span>\r\n\t\t<span data-emoji=\"\u2639\ufe0f\" class=\"emoji-item\">\u2639\ufe0f<\/span>\r\n\t\t<span data-emoji=\"\ud83d\ude29\" class=\"emoji-item\">\ud83d\ude29<\/span>\r\n\r\n\t\t<span data-emoji=\"\u2764\ufe0f\" class=\"emoji-item\">\u2764\ufe0f<\/span>\r\n\t\t<span data-emoji=\"\ud83d\udcaf\" class=\"emoji-item\">\ud83d\udcaf<\/span>\r\n\t\t<span data-emoji=\"\u26a1\ufe0f\" class=\"emoji-item\">\u26a1\ufe0f<\/span>\r\n\t\t<span data-emoji=\"\ud83c\udf89\" class=\"emoji-item\">\ud83c\udf89<\/span>\r\n\r\n  <\/div>\r\n\r\n  <div style=\"padding:10px; border-top:1px solid #eee; background:#fff;\">\r\n    <textarea id=\"chat-input\" placeholder=\"\u041d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435...\"><\/textarea>\r\n    <button id=\"chat-send\">\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c<\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n.emoji-item {\r\n  font-size: 18px;\r\n  cursor: pointer;\r\n  opacity: 0.85;\r\n  transition: opacity 0.2s;\r\n}\r\n.emoji-item:hover {\r\n  opacity: 1;\r\n}\r\n.chat-message {\r\n  padding: 10px 14px;\r\n  margin: 6px 0;\r\n  border-radius: 12px;\r\n  max-width: 80%;\r\n  word-wrap: break-word;\r\n  font-size: 14px;\r\n  line-height: 1.4;\r\n}\r\n.chat-user {\r\n  background: #e3f2fd;\r\n  color: #0d47a1;\r\n  align-self: flex-end;\r\n  text-align: right;\r\n}\r\n.chat-admin {\r\n  background: #f1f8e9;\r\n  color: #1b5e20;\r\n  align-self: flex-start;\r\n  text-align: left;\r\n}\r\n.chat-label {\r\n  font-weight: bold;\r\n  margin-bottom: 4px;\r\n  font-size: 13px;\r\n}\r\n#chat-input {\r\n  width: 100%;\r\n  height: 60px;\r\n  padding: 8px;\r\n  border: 1px solid #ccc;\r\n  border-radius: 8px;\r\n  resize: none;\r\n  font-size: 14px;\r\n  box-sizing: border-box;\r\n}\r\n#chat-send {\r\n  margin-top:8px;\r\n  padding:8px 16px;\r\n  background:#4CAF50;\r\n  color:white;\r\n  border:none;\r\n  border-radius:6px;\r\n  cursor:pointer;\r\n}\r\n#web-chat {\r\n  max-width:600px;\r\n  margin:20px auto;\r\n  border:1px solid #e0e0e0;\r\n  border-radius:12px;\r\n  overflow:hidden; \r\n  box-shadow:0 2px 10px rgba(0,0,0,0.1);\r\n}\r\n#chat-messages {\r\n  height:300px; \/* \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u043b \u043d\u0430 50px, \u0447\u0442\u043e\u0431\u044b \u043a\u043e\u043c\u043f\u0435\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043d\u0435\u043b\u044c *\/\r\n  overflow-y:auto;\r\n  padding:15px;\r\n  background:#fcfcfc;\r\n  display:flex;\r\n  flex-direction:column;\r\n}\r\n#emoji-panel {\r\n  \/* \u0444\u043e\u043d \u0438 \u0440\u0430\u043c\u043a\u0430 \u0443\u0436\u0435 \u0437\u0430\u0434\u0430\u043d\u044b \u0432 \u0438\u043d\u043b\u0430\u0439\u043d-\u0441\u0442\u0438\u043b\u0435 *\/\r\n}\r\n<\/style>\r\n\r\n<script>\r\nlet sessionId = localStorage.getItem('web_chat_session_id');\r\n\r\nfunction renderMessages(messages) {\r\n  const container = document.getElementById('chat-messages');\r\n  container.innerHTML = '';\r\n  messages.forEach(msg => {\r\n    const div = document.createElement('div');\r\n    div.className = msg.sender === 'admin' ? 'chat-message chat-admin' : 'chat-message chat-user';\r\n    \r\n    const label = document.createElement('div');\r\n    label.className = 'chat-label';\r\n    label.textContent = msg.sender === 'admin' ? '\u0413\u0443\u0440\u0443:' : '\u0412\u044b:';\r\n    \r\n    const text = document.createElement('div');\r\n    text.textContent = msg.message;\r\n    \r\n    div.appendChild(label);\r\n    div.appendChild(text);\r\n    container.appendChild(div);\r\n  });\r\n  container.scrollTop = container.scrollHeight;\r\n}\r\n\r\nasync function loadMessages() {\r\n  const params = sessionId ? `?session_id=${sessionId}` : '';\r\n  const res = await fetch('\/chat-poll.php' + params);\r\n  const data = await res.json();\r\n  \r\n  if (data.session_id && !sessionId) {\r\n    sessionId = data.session_id;\r\n    localStorage.setItem('web_chat_session_id', sessionId);\r\n  }\r\n\r\n  renderMessages(data.messages || []);\r\n}\r\n\r\nasync function sendMessage() {\r\n  const input = document.getElementById('chat-input');\r\n  const text = input.value.trim();\r\n  if (!text) return;\r\n\r\n  const res = await fetch('\/chat-send.php', {\r\n    method: 'POST',\r\n    headers: {'Content-Type': 'application\/json'},\r\n    body: JSON.stringify({message: text, session_id: sessionId})\r\n  });\r\n  const result = await res.json();\r\n  if (result.ok) {\r\n    if (result.session_id) {\r\n      sessionId = result.session_id;\r\n      localStorage.setItem('web_chat_session_id', sessionId);\r\n    }\r\n    input.value = '';\r\n    loadMessages();\r\n  } else {\r\n    alert('\u041e\u0448\u0438\u0431\u043a\u0430: ' + (result.error || '\u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e'));\r\n  }\r\n}\r\n\r\n\/\/ === \u042d\u043c\u043e\u0434\u0437\u0438 \u2014 \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043f\u043e \u043a\u043b\u0438\u043a\u0443 ===\r\ndocument.querySelectorAll('#emoji-panel .emoji-item').forEach(item => {\r\n  item.onclick = () => {\r\n    const input = document.getElementById('chat-input');\r\n    input.value += item.getAttribute('data-emoji');\r\n    input.focus();\r\n  };\r\n});\r\n\r\ndocument.getElementById('chat-send').onclick = sendMessage;\r\ndocument.getElementById('chat-input').onkeypress = (e) => {\r\n  if (e.key === 'Enter' && !e.shiftKey) {\r\n    e.preventDefault();\r\n    sendMessage();\r\n  }\r\n};\r\n\r\nsetInterval(loadMessages, 10000);\r\nloadMessages();\r\n<\/script>\n<p>\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0437\u0430\u0434\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441, \u0443\u0437\u043d\u0430\u0439\u0442\u0435, <a href=\"https:\/\/tattva.cc\/guru\/rules\/\">\u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u0437\u0430\u0434\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441, \u0443\u0437\u043d\u0430\u0439\u0442\u0435, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-351","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/pages\/351","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/comments?post=351"}],"version-history":[{"count":3,"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/pages\/351\/revisions"}],"predecessor-version":[{"id":355,"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/pages\/351\/revisions\/355"}],"wp:attachment":[{"href":"https:\/\/tattva.cc\/guru\/wp-json\/wp\/v2\/media?parent=351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}