{"id":16336,"date":"2025-12-22T05:10:58","date_gmt":"2025-12-22T05:10:58","guid":{"rendered":"https:\/\/arttao.org\/?page_id=16336"},"modified":"2025-12-22T16:25:53","modified_gmt":"2025-12-22T16:25:53","slug":"s-17%e8%8d%af%e7%89%a9%e6%88%96%e7%89%a9%e8%b4%a8%e5%bc%95%e5%8f%91%e7%9a%84%e6%8a%91%e9%83%81%e7%97%87-2","status":"publish","type":"page","link":"https:\/\/arttao.org\/ru\/s-17%e8%8d%af%e7%89%a9%e6%88%96%e7%89%a9%e8%b4%a8%e5%bc%95%e5%8f%91%e7%9a%84%e6%8a%91%e9%83%81%e7%97%87-2\/","title":{"rendered":"s-17:\u836f\u7269\u6216\u7269\u8d28\u5f15\u53d1\u7684\u6291\u90c1\u75c7"},"content":{"rendered":"<div id=\"pst-17-3xfp6a\"\n    class=\"pst-wrap\"\n    data-ajax=\"https:\/\/arttao.org\/wp-admin\/admin-ajax.php\"\n    data-test-id=\"17\"\n    data-recommend=\"https:\/\/arttao.org\/%e7%ac%ac%e5%8d%81%e4%b8%83%e8%af%be%ef%bc%9a%e8%8d%af%e7%89%a9%e6%88%96%e7%89%a9%e8%b4%a8%e5%bc%95%e5%8f%91%e7%9a%84%e6%8a%91%e9%83%81%e7%97%87%e8%af%be%e7%a8%8b%ef%bc%88%e7%ac%ac601%ef%bd%9e640\/\"\n    style=\"border:1px solid #ccc; padding:16px; background:#fff; max-width:700px; border-radius:30px; position:relative;\">\n\n    <!-- \u9898\u76ee\u7f13\u5b58\uff1a\u7ed9 TranslatePress \u626b\u63cf\uff08TranslatePress \u4f1a\u7ffb\u8fd9\u4e9b\u6587\u672c\uff1bJS \u518d\u8bfb\u53d6\uff09 -->\n    <ul class=\"pst-i18n-cache\" aria-hidden=\"true\"\n        style=\"position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; margin:0; padding:0; list-style:none;\">\n                    <li class=\"pst-i18n-q\" data-index=\"0\">\n                Q1. \u4f60\u7684\u60c5\u7eea\u4f4e\u843d\u662f\u5426\u4e0e\u67d0\u79cd\u836f\u7269\u3001\u9152\u7cbe\u6216\u5176\u4ed6\u7269\u8d28\u7684\u4f7f\u7528\u6216\u505c\u7528\u6709\u5173\uff1f A. \u6ca1\u6709 B. \u4e0d\u786e\u5b9a C. \u53ef\u80fd\u6709\u5173 D. \u975e\u5e38\u660e\u786e            <\/li>\n                    <li class=\"pst-i18n-q\" data-index=\"1\">\n                Q2. \u5728\u4f7f\u7528\u6216\u505c\u7528\u540e\uff0c\u4f60\u662f\u5426\u611f\u5230\u60c5\u7eea\u660e\u663e\u4e0b\u964d\u6216\u7a7a\u865a\uff1f A. \u51e0\u4e4e\u6ca1\u6709 B. \u6709\u4e00\u70b9 C. \u660e\u663e D. \u975e\u5e38\u660e\u663e            <\/li>\n                    <li class=\"pst-i18n-q\" data-index=\"2\">\n                Q3. \u8fd9\u79cd\u72b6\u6001\u662f\u5426\u4e0e\u4ee5\u5f80\u7684\u6291\u90c1\u4f53\u9a8c\u6709\u6240\u4e0d\u540c\uff1f A. \u6ca1\u533a\u522b B. \u6709\u70b9\u4e0d\u540c C. \u660e\u663e\u4e0d\u540c D. \u5b8c\u5168\u4e0d\u540c            <\/li>\n                    <li class=\"pst-i18n-q\" data-index=\"3\">\n                Q4. \u4f60\u662f\u5426\u53d1\u73b0\u60c5\u7eea\u6ce2\u52a8\u4e0e\u7269\u8d28\u6444\u5165\u65f6\u95f4\u9ad8\u5ea6\u76f8\u5173\uff1f A. \u6ca1\u6709 B. \u4e0d\u786e\u5b9a C. \u6709 D. \u975e\u5e38\u660e\u663e            <\/li>\n                    <li class=\"pst-i18n-q\" data-index=\"4\">\n                Q5. \u60c5\u7eea\u95ee\u9898\u662f\u5426\u5f71\u54cd\u4f60\u5bf9\u7ee7\u7eed\u4f7f\u7528\u6216\u505c\u6b62\u4f7f\u7528\u7684\u5224\u65ad\uff1f A. \u57fa\u672c\u6ca1\u6709 B. \u6709\u4e00\u70b9 C. \u660e\u663e D. \u5f88\u4e25\u91cd            <\/li>\n                    <li class=\"pst-i18n-q\" data-index=\"5\">\n                Q6. \u4f60\u662f\u5426\u613f\u610f\u5728\u5b89\u5168\u524d\u63d0\u4e0b\u91cd\u65b0\u8bc4\u4f30\u7269\u8d28\u4f7f\u7528\u4e0e\u60c5\u7eea\u7684\u5173\u7cfb\uff1f A. \u6682\u65f6\u4e0d\u613f B. \u4e5f\u8bb8 C. \u613f\u610f D. \u975e\u5e38\u613f\u610f            <\/li>\n            <\/ul>\n\n<!-- \u2705 \u7b2c\u4e09\u4ee3\u4fee\u6b63\u7248\uff1aTranslatePress \u53ef\u8bc6\u522b -->\n<div class=\"pst-i18n\" style=\"width:0;height:0;overflow:hidden;opacity:0;position:absolute;\">\n  <span data-key=\"choose\">\u6211\u9009\u62e9\uff1a<\/span>\n  <span data-key=\"generating\">\u6b63\u5728\u751f\u6210\u5fc3\u7406\u5206\u6790\uff0c\u8bf7\u7a0d\u5019\u2026<\/span>\n  <span data-key=\"err_fetch\">\u9898\u5e93\u83b7\u53d6\u5931\u8d25<\/span>\n  <span data-key=\"err_net\">\u751f\u6210\u5206\u6790\u5931\u8d25\uff1a\u7f51\u7edc\u9519\u8bef<\/span>\n  <span data-key=\"submit\">\u63d0\u4ea4<\/span>\n  <span data-key=\"recommend\">\u63a8\u8350\u6b64\u8bfe\u7a0b<\/span>\n  <span data-key=\"placeholder\">\u8f93\u5165 A\/B\/C\/D \u9009\u9879\u2026<\/span>\n<\/div>\n\n\n\n    <!-- ======================================================\n         \u9636\u6bb5\u4e00\uff1a\u7b54\u9898\/\u5bf9\u8bdd\u9636\u6bb5\uff08\u9ed8\u8ba4\u663e\u793a\uff09\n         ====================================================== -->\n    <div class=\"pst-quiz-stage\" id=\"pst-quiz-stage\" style=\"display:block;\">\n\n        <!-- \u804a\u5929\u7a97\u53e3\uff08\u95ee\u7b54\u8fc7\u7a0b\u56de\u653e\uff09 -->\n        <div class=\"pst-window\"\n            style=\"height:300px; overflow-y:auto; background:#fff; padding:10px; border:1px solid #F5DEB3; white-space:pre-wrap; font-size:16px; border-radius:20px;\"><\/div>\n\n        <div style=\"margin-top:10px;\">\n            <div class=\"pst-title\" style=\"text-align:center; font-weight:400; margin:6px 0 10px 0;\">\n                \u836f\u7269\u6216\u7269\u8d28\u5f15\u53d1\u7684\u6291\u90c1\u75c7\u8bfe\u7a0b \u00b7 \u82cf\u683c\u62c9\u5e95\u63d0\u95ee            <\/div>\n\n            <textarea class=\"pst-input\" placeholder=\"\u8f93\u5165 A\/B\/C\/D \u9009\u9879\u2026\"\n                style=\"width:95%; height:100px; border-radius:12px; border:1px solid #F5DEB3; outline:none; padding-left:10px; font-size:16px; overflow-y:auto; resize:vertical;\"><\/textarea>\n\n            <button class=\"pst-submit\"\n                style=\"border:1px solid #F5DEB3; background:#fff; color:#16a085; border-radius:20px; padding:6px 12px; cursor:pointer;\">\n                \u63d0\u4ea4\n            <\/button>\n\n            <button class=\"pst-recommend\"\n                style=\"display:inline-block; margin-left:10px; background:#e0f7fa; padding:5px 10px; border:none; border-radius:10px; cursor:pointer;\">\n                \u63a8\u8350\u6b64\u8bfe\u7a0b\n            <\/button>\n\n            <div class=\"pst-status\"\n                style=\"display:none; margin-top:8px; font-size:12px; color:#0f8d75;\">\n                \u5df2\u751f\u6210\u7b54\u590d \u00b7 \u6b64\u7b54\u590d\u5df2\u4fdd\u5b58\u81f3\u8bfe\u7a0b\u6587\u6863\u7ba1\u7406\u3001\u5fc3\u7406\u6d4b\u8bd5\u62a5\u544a\u5217\u8868\u4e2d            <\/div>\n\n            <div style=\"margin-top:12px;font-size:11px;color:#999;line-height:1.4;\">\n                \u672c\u5de5\u5177\u4ec5\u7528\u4e8e\u81ea\u6211\u89c9\u5bdf\u4e0e\u60c5\u7eea\u652f\u6301\uff0c\u4e0d\u7b49\u540c\u4e8e\u4e34\u5e8a\u8bca\u65ad\u6216\u6cbb\u7597\u5efa\u8bae\u3002\n                \u5982\u5b58\u5728\u4e25\u91cd\u75db\u82e6\u3001\u4f24\u5bb3\u81ea\u5df1\u6216\u4ed6\u4eba\u98ce\u9669\uff0c\u8bf7\u7acb\u523b\u5bfb\u6c42\u73b0\u5b9e\u4e16\u754c\u7684\u4e13\u4e1a\u652f\u6301\u6216\u7d27\u6025\u534f\u52a9\u3002\n            <\/div>\n        <\/div>\n    <\/div><!-- \/#pst-quiz-stage -->\n\n\n    <!-- ======================================================\n         \u9636\u6bb5\u4e8c\uff1a\u6d4b\u8bd5\u5b8c\u6210 \/ \u7597\u6108\u4e3b\u7ebf\u5206\u914d\u9636\u6bb5\uff08\u9ed8\u8ba4\u9690\u85cf\uff09\n         JS \u5728\u5b8c\u6210\u540e\u4f1a\u628aUI\u63d2\u8fdb\u6765\n         ====================================================== -->\n    <div class=\"pst-result-stage\" id=\"pst-result-stage\" style=\"display:none;\">\n        <!-- JS \u6ce8\u5165\u7528\u6237\u7684\u7597\u6108\u4e3b\u7ebf\/\u6a21\u5757 -->\n    <\/div><!-- \/#pst-result-stage -->\n\n<\/div><!-- \/.pst-wrap -->\n\n<script>\n(function(){\n\n    \/\/ =========================\n    \/\/ \u57fa\u7840 DOM & \u914d\u7f6e\n    \/\/ =========================\n    const rootId = 'pst-17-3xfp6a';\n    const root   = document.getElementById(rootId);\n    if(!root) return;\n\n    \/\/ \u5bf9\u8bdd\u7a97\u53e3\u3001\u8f93\u5165\u6846\u3001\u63d0\u4ea4\u6309\u94ae\u3001\u63a8\u8350\u6309\u94ae\u3001\u72b6\u6001\u533a\n    const win   = root.querySelector('.pst-window');\n    const input = root.querySelector('.pst-input');\n    const btn   = root.querySelector('.pst-submit');\n    const btnRc = root.querySelector('.pst-recommend'); \/\/ \u63a8\u8350\u6b64\u8bfe\u7a0b\u6309\u94ae\n    const stat  = root.querySelector('.pst-status');\n\n    \/\/ AJAX \u5730\u5740 \/ \u6d4b\u8bd5ID \/ \u63a8\u8350\u8bfe\u7a0bURL\n    const AJAX  = root.getAttribute('data-ajax') || '';\n    const TEST  = parseInt(root.getAttribute('data-test-id') || '0', 10);\n    const RECO_RAW  = root.getAttribute('data-recommend') || '';\n\n    \/\/ \u521d\u59cb\u9690\u85cf\u201c\u63a8\u8350\u6b64\u8bfe\u7a0b\u201d\u6309\u94ae\uff0c\u4e0d\u8ba9\u5b83\u548c\u804a\u5929\u6846\u4e00\u8d77\u51fa\u73b0\n    if (btnRc) {\n        btnRc.style.display = 'none';\n        btnRc.disabled = true;\n        btnRc.style.pointerEvents = 'none';\n    }\n\n    \/\/ \u9898\u5e93\uff08PHP\u6ce8\u5165\uff0c\u5df2\u7ecf\u6309 TranslatePress \u7ffb\u8bd1\u8fc7\u4e00\u904d\uff09\n    let QUESTIONS = [\"Q1. \u4f60\u7684\u60c5\u7eea\u4f4e\u843d\u662f\u5426\u4e0e\u67d0\u79cd\u836f\u7269\u3001\u9152\u7cbe\u6216\u5176\u4ed6\u7269\u8d28\u7684\u4f7f\u7528\u6216\u505c\u7528\u6709\u5173\uff1f A. \u6ca1\u6709 B. \u4e0d\u786e\u5b9a C. \u53ef\u80fd\u6709\u5173 D. \u975e\u5e38\u660e\u786e\",\"Q2. \u5728\u4f7f\u7528\u6216\u505c\u7528\u540e\uff0c\u4f60\u662f\u5426\u611f\u5230\u60c5\u7eea\u660e\u663e\u4e0b\u964d\u6216\u7a7a\u865a\uff1f A. \u51e0\u4e4e\u6ca1\u6709 B. \u6709\u4e00\u70b9 C. \u660e\u663e D. \u975e\u5e38\u660e\u663e\",\"Q3. \u8fd9\u79cd\u72b6\u6001\u662f\u5426\u4e0e\u4ee5\u5f80\u7684\u6291\u90c1\u4f53\u9a8c\u6709\u6240\u4e0d\u540c\uff1f A. \u6ca1\u533a\u522b B. \u6709\u70b9\u4e0d\u540c C. \u660e\u663e\u4e0d\u540c D. \u5b8c\u5168\u4e0d\u540c\",\"Q4. \u4f60\u662f\u5426\u53d1\u73b0\u60c5\u7eea\u6ce2\u52a8\u4e0e\u7269\u8d28\u6444\u5165\u65f6\u95f4\u9ad8\u5ea6\u76f8\u5173\uff1f A. \u6ca1\u6709 B. \u4e0d\u786e\u5b9a C. \u6709 D. \u975e\u5e38\u660e\u663e\",\"Q5. \u60c5\u7eea\u95ee\u9898\u662f\u5426\u5f71\u54cd\u4f60\u5bf9\u7ee7\u7eed\u4f7f\u7528\u6216\u505c\u6b62\u4f7f\u7528\u7684\u5224\u65ad\uff1f A. \u57fa\u672c\u6ca1\u6709 B. \u6709\u4e00\u70b9 C. \u660e\u663e D. \u5f88\u4e25\u91cd\",\"Q6. \u4f60\u662f\u5426\u613f\u610f\u5728\u5b89\u5168\u524d\u63d0\u4e0b\u91cd\u65b0\u8bc4\u4f30\u7269\u8d28\u4f7f\u7528\u4e0e\u60c5\u7eea\u7684\u5173\u7cfb\uff1f A. \u6682\u65f6\u4e0d\u613f B. \u4e5f\u8bb8 C. \u613f\u610f D. \u975e\u5e38\u613f\u610f\"];\n\n    \/\/ =========================\n    \/\/ \u4f18\u5148\u4f7f\u7528 .pst-i18n-cache \u4e2d\u7ffb\u8bd1\u540e\u7684\u9898\u9762\n    \/\/ =========================\n    (function applyTranslatedQuestions(){\n        const cache = root.querySelector('.pst-i18n-cache');\n        if(!cache) return;\n        const trans = [];\n        cache.querySelectorAll('.pst-i18n-q').forEach(li=>{\n            const txt = (li.textContent || '').trim();\n            if (txt) trans.push(txt);\n        });\n        if (trans.length === QUESTIONS.length && trans.length > 0){\n            QUESTIONS = trans;\n        }\n    })();\n\n  \n    \/\/ i18n \u6587\u6848 \n    \/\/ =========================\n    const i18nFromDom = {};\n    root.querySelectorAll('.pst-i18n [data-key]').forEach(el => {\n        i18nFromDom[el.dataset.key] = (el.textContent || '').trim();\n    });\n\n    const htmlLangRaw = (document.documentElement.getAttribute('lang') || '').toLowerCase();\n    const langShort   = htmlLangRaw.split('-')[0]; \/\/ zh-CN -> zh\n\n    const fallbackByLang = {\n        zh:{choose:'\u6211\u9009\u62e9\uff1a',generating:'\u6b63\u5728\u751f\u6210\u5fc3\u7406\u5206\u6790\uff0c\u8bf7\u7a0d\u5019\u2026',err_fetch:'\u9898\u5e93\u83b7\u53d6\u5931\u8d25',err_net:'\u751f\u6210\u5206\u6790\u5931\u8d25\uff1a\u7f51\u7edc\u9519\u8bef',submit:'\u63d0\u4ea4',recommend:'\u63a8\u8350\u6b64\u8bfe\u7a0b',placeholder:'\u8f93\u5165 A\/B\/C\/D \u9009\u9879\u2026'},\n        en:{choose:'I choose: ',generating:'Generating analysis, please wait\u2026',err_fetch:'Failed to load questions',err_net:'Failed to generate: network error',submit:'Submit',recommend:'Recommended course',placeholder:'Enter option A\/B\/C\/D\u2026'},\n        es:{choose:'Mi elecci\u00f3n: ',generating:'Generando el an\u00e1lisis, por favor espera\u2026',err_fetch:'Error al cargar las preguntas',err_net:'Error al generar: problema de red',submit:'Enviar',recommend:'Curso recomendado',placeholder:'Introduce la opci\u00f3n A\/B\/C\/D\u2026'},\n        fr:{choose:'Je choisis : ',generating:\"G\u00e9n\u00e9ration de l\u2019analyse, veuillez patienter\u2026\",err_fetch:'\u00c9chec du chargement des questions',err_net:'\u00c9chec de g\u00e9n\u00e9ration : erreur r\u00e9seau',submit:'Envoyer',recommend:'Cours recommand\u00e9',placeholder:'Saisissez l\u2019option A\/B\/C\/D\u2026'},\n        ar:{choose:'\u0627\u062e\u062a\u0631\u062a: ',generating:'\u062c\u0627\u0631\u064a \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u062a\u062d\u0644\u064a\u0644\u060c \u064a\u0631\u062c\u0649 \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631\u2026',err_fetch:'\u0641\u0634\u0644 \u062a\u062d\u0645\u064a\u0644 \u0627\u0644\u0623\u0633\u0626\u0644\u0629',err_net:'\u0641\u0634\u0644 \u0627\u0644\u062a\u062d\u0644\u064a\u0644: \u062e\u0637\u0623 \u0641\u064a \u0627\u0644\u0634\u0628\u0643\u0629',submit:'\u0625\u0631\u0633\u0627\u0644',recommend:'\u0627\u0644\u062f\u0648\u0631\u0629 \u0627\u0644\u0645\u0648\u0635\u0649 \u0628\u0647\u0627',placeholder:'\u0623\u062f\u062e\u0644 \u0627\u0644\u062e\u064a\u0627\u0631 A\/B\/C\/D\u2026'},\n        hi:{choose:'\u092e\u0947\u0930\u093e \u091a\u092f\u0928: ',generating:'\u0935\u093f\u0936\u094d\u0932\u0947\u0937\u0923 \u0924\u0948\u092f\u093e\u0930 \u0939\u094b \u0930\u0939\u093e \u0939\u0948, \u0915\u0943\u092a\u092f\u093e \u092a\u094d\u0930\u0924\u0940\u0915\u094d\u0937\u093e \u0915\u0930\u0947\u0902\u2026',err_fetch:'\u092a\u094d\u0930\u0936\u094d\u0928 \u0932\u094b\u0921 \u0915\u0930\u0928\u0947 \u092e\u0947\u0902 \u0935\u093f\u092b\u0932',err_net:'\u0935\u093f\u0936\u094d\u0932\u0947\u0937\u0923 \u0935\u093f\u092b\u0932: \u0928\u0947\u091f\u0935\u0930\u094d\u0915 \u0924\u094d\u0930\u0941\u091f\u093f',submit:'\u091c\u092e\u093e \u0915\u0930\u0947\u0902',recommend:'\u0905\u0928\u0941\u0936\u0902\u0938\u093f\u0924 \u0915\u094b\u0930\u094d\u0938',placeholder:'A\/B\/C\/D \u0935\u093f\u0915\u0932\u094d\u092a \u0926\u0930\u094d\u091c \u0915\u0930\u0947\u0902\u2026'},\n        bn:{choose:'\u0986\u09ae\u09be\u09b0 \u09aa\u099b\u09a8\u09cd\u09a6: ',generating:'\u09ac\u09bf\u09b6\u09cd\u09b2\u09c7\u09b7\u09a3 \u09a4\u09c8\u09b0\u09bf \u09b9\u099a\u09cd\u099b\u09c7, \u0985\u09a8\u09c1\u0997\u09cd\u09b0\u09b9 \u0995\u09b0\u09c7 \u0985\u09aa\u09c7\u0995\u09cd\u09b7\u09be \u0995\u09b0\u09c1\u09a8\u2026',err_fetch:'\u09aa\u09cd\u09b0\u09b6\u09cd\u09a8 \u09b2\u09cb\u09a1 \u09ac\u09cd\u09af\u09b0\u09cd\u09a5 \u09b9\u09af\u09bc\u09c7\u099b\u09c7',err_net:'\u09ac\u09bf\u09b6\u09cd\u09b2\u09c7\u09b7\u09a3 \u09ac\u09cd\u09af\u09b0\u09cd\u09a5: \u09a8\u09c7\u099f\u0993\u09af\u09bc\u09be\u09b0\u09cd\u0995 \u09a4\u09cd\u09b0\u09c1\u099f\u09bf',submit:'\u099c\u09ae\u09be \u09a6\u09bf\u09a8',recommend:'\u09aa\u09cd\u09b0\u09b8\u09cd\u09a4\u09be\u09ac\u09bf\u09a4 \u0995\u09cb\u09b0\u09cd\u09b8',placeholder:'A\/B\/C\/D \u09ac\u09bf\u0995\u09b2\u09cd\u09aa \u09b2\u09bf\u0996\u09c1\u09a8\u2026'},\n        pt:{choose:'Minha escolha: ',generating:'Gerando an\u00e1lise, por favor aguarde\u2026',err_fetch:'Falha ao carregar perguntas',err_net:'Falha na gera\u00e7\u00e3o: erro de rede',submit:'Enviar',recommend:'Curso recomendado',placeholder:'Digite a op\u00e7\u00e3o A\/B\/C\/D\u2026'},\n        ru:{choose:'\u041c\u043e\u0439 \u0432\u044b\u0431\u043e\u0440: ',generating:'\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435\u2026',err_fetch:'\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b',err_net:'\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438: \u0441\u0431\u043e\u0439 \u0441\u0435\u0442\u0438',submit:'\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c',recommend:'\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0439 \u043a\u0443\u0440\u0441',placeholder:'\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 A\/B\/C\/D\u2026'},\n        ur:{choose:'\u0645\u06cc\u0631\u06cc \u067e\u0633\u0646\u062f: ',generating:'\u062a\u062c\u0632\u06cc\u06c1 \u062a\u06cc\u0627\u0631 \u06c1\u0648 \u0631\u06c1\u0627 \u06c1\u06d2\u060c \u0628\u0631\u0627\u06c1 \u06a9\u0631\u0645 \u0627\u0646\u062a\u0638\u0627\u0631 \u06a9\u0631\u06cc\u06ba\u2026',err_fetch:'\u0633\u0648\u0627\u0644\u0627\u062a \u0644\u0648\u0688 \u06a9\u0631\u0646\u06d2 \u0645\u06cc\u06ba \u0646\u0627\u06a9\u0627\u0645\u06cc',err_net:'\u062a\u062c\u0632\u06cc\u06c1 \u0646\u0627\u06a9\u0627\u0645: \u0646\u06cc\u0679 \u0648\u0631\u06a9 \u06a9\u06cc \u062e\u0631\u0627\u0628\u06cc',submit:'\u062c\u0645\u0639 \u06a9\u0631\u0627\u0626\u06cc\u06ba',recommend:'\u062a\u062c\u0648\u06cc\u0632 \u06a9\u0631\u062f\u06c1 \u06a9\u0648\u0631\u0633',placeholder:'A\/B\/C\/D \u0622\u067e\u0634\u0646 \u062f\u0631\u062c \u06a9\u0631\u06cc\u06ba\u2026'},\n        id:{choose:'Pilihan saya: ',generating:'Sedang membuat analisis, harap tunggu\u2026',err_fetch:'Gagal memuat pertanyaan',err_net:'Gagal membuat analisis: kesalahan jaringan',submit:'Kirim',recommend:'Kursus yang disarankan',placeholder:'Masukkan opsi A\/B\/C\/D\u2026'},\n        ja:{choose:'\u79c1\u306e\u9078\u629e\uff1a',generating:'\u5206\u6790\u3092\u751f\u6210\u3057\u3066\u3044\u307e\u3059\u3002\u5c11\u3005\u304a\u5f85\u3061\u304f\u3060\u3055\u3044\u2026',err_fetch:'\u8a2d\u554f\u306e\u53d6\u5f97\u306b\u5931\u6557\u3057\u307e\u3057\u305f',err_net:'\u5206\u6790\u306e\u751f\u6210\u306b\u5931\u6557\uff1a\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u30a8\u30e9\u30fc',submit:'\u9001\u4fe1',recommend:'\u304a\u3059\u3059\u3081\u30b3\u30fc\u30b9',placeholder:'A\/B\/C\/D \u3092\u5165\u529b\u2026'},\n        de:{choose:'Meine Auswahl: ',generating:'Analyse wird erstellt, bitte warten\u2026',err_fetch:'Fragen konnten nicht geladen werden',err_net:'Analyse fehlgeschlagen: Netzwerkfehler',submit:'Senden',recommend:'Empfohlener Kurs',placeholder:'Geben Sie die Option A\/B\/C\/D ein\u2026'},\n        sw:{choose:'Chaguo langu: ',generating:'Inaunda uchambuzi, tafadhali subiri\u2026',err_fetch:'Imeshindwa kupakia maswali',err_net:'Kushindwa kuunda: hitilafu ya mtandao',submit:'Tuma',recommend:'Kozi iliyopendekezwa',placeholder:'Ingiza chaguo A\/B\/C\/D\u2026'},\n        tr:{choose:'Se\u00e7imim: ',generating:'Analiz olu\u015fturuluyor, l\u00fctfen bekleyin\u2026',err_fetch:'Sorular y\u00fcklenemedi',err_net:'Analiz ba\u015far\u0131s\u0131z: a\u011f hatas\u0131',submit:'G\u00f6nder',recommend:'\u00d6nerilen kurs',placeholder:'A\/B\/C\/D se\u00e7ene\u011fini girin\u2026'},\n        ko:{choose:'\ub0b4 \uc120\ud0dd: ',generating:'\uc2ec\ub9ac \ubd84\uc11d\uc744 \uc0dd\uc131 \uc911\uc785\ub2c8\ub2e4. \uc7a0\uc2dc\ub9cc \uae30\ub2e4\ub824 \uc8fc\uc138\uc694\u2026',err_fetch:'\ubb38\ud56d\uc744 \ubd88\ub7ec\uc624\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4',err_net:'\ubd84\uc11d \uc0dd\uc131 \uc2e4\ud328: \ub124\ud2b8\uc6cc\ud06c \uc624\ub958',submit:'\uc81c\ucd9c',recommend:'\ucd94\ucc9c \uacfc\uc815',placeholder:'A\/B\/C\/D \uc635\uc158\uc744 \uc785\ub825\ud558\uc138\uc694\u2026'},\n        vi:{choose:'L\u1ef1a ch\u1ecdn c\u1ee7a t\u00f4i: ',generating:'\u0110ang t\u1ea1o ph\u00e2n t\u00edch, vui l\u00f2ng \u0111\u1ee3i\u2026',err_fetch:'Kh\u00f4ng t\u1ea3i \u0111\u01b0\u1ee3c c\u00e2u h\u1ecfi',err_net:'T\u1ea1o th\u1ea5t b\u1ea1i: l\u1ed7i m\u1ea1ng',submit:'G\u1eedi',recommend:'Kh\u00f3a h\u1ecdc \u0111\u01b0\u1ee3c \u0111\u1ec1 xu\u1ea5t',placeholder:'Nh\u1eadp t\u00f9y ch\u1ecdn A\/B\/C\/D\u2026'},\n        it:{choose:'La mia scelta: ',generating:'Generazione dell\u2019analisi in corso, attendere\u2026',err_fetch:'Impossibile caricare le domande',err_net:'Errore di generazione: errore di rete',submit:'Invia',recommend:'Corso consigliato',placeholder:'Inserisci l\u2019opzione A\/B\/C\/D\u2026'},\n        th:{choose:'\u0e15\u0e31\u0e27\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e02\u0e2d\u0e07\u0e09\u0e31\u0e19: ',generating:'\u0e01\u0e33\u0e25\u0e31\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e01\u0e32\u0e23\u0e27\u0e34\u0e40\u0e04\u0e23\u0e32\u0e30\u0e2b\u0e4c \u0e42\u0e1b\u0e23\u0e14\u0e23\u0e2d\u2026',err_fetch:'\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e42\u0e2b\u0e25\u0e14\u0e04\u0e33\u0e16\u0e32\u0e21\u0e44\u0e14\u0e49',err_net:'\u0e44\u0e21\u0e48\u0e2a\u0e32\u0e21\u0e32\u0e23\u0e16\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e44\u0e14\u0e49: \u0e02\u0e49\u0e2d\u0e1c\u0e34\u0e14\u0e1e\u0e25\u0e32\u0e14\u0e02\u0e2d\u0e07\u0e40\u0e04\u0e23\u0e37\u0e2d\u0e02\u0e48\u0e32\u0e22',submit:'\u0e2a\u0e48\u0e07',recommend:'\u0e2b\u0e25\u0e31\u0e01\u0e2a\u0e39\u0e15\u0e23\u0e41\u0e19\u0e30\u0e19\u0e33',placeholder:'\u0e01\u0e23\u0e2d\u0e01\u0e15\u0e31\u0e27\u0e40\u0e25\u0e37\u0e2d\u0e01 A\/B\/C\/D\u2026'},\n        fa:{choose:'\u0627\u0646\u062a\u062e\u0627\u0628 \u0645\u0646: ',generating:'\u062f\u0631 \u062d\u0627\u0644 \u062a\u0648\u0644\u06cc\u062f \u062a\u062d\u0644\u06cc\u0644\u060c \u0644\u0637\u0641\u0627\u064b \u0635\u0628\u0631 \u06a9\u0646\u06cc\u062f\u2026',err_fetch:'\u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0633\u0648\u0627\u0644\u0627\u062a \u0646\u0627\u0645\u0648\u0641\u0642 \u0628\u0648\u062f',err_net:'\u0627\u06cc\u062c\u0627\u062f \u062a\u062d\u0644\u06cc\u0644 \u0646\u0627\u0645\u0648\u0641\u0642: \u062e\u0637\u0627\u06cc \u0634\u0628\u06a9\u0647',submit:'\u0627\u0631\u0633\u0627\u0644',recommend:'\u062f\u0648\u0631\u0647 \u067e\u06cc\u0634\u0646\u0647\u0627\u062f\u06cc',placeholder:'\u06af\u0632\u06cc\u0646\u0647 A\/B\/C\/D \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f\u2026'}\n    };\n    const fb = fallbackByLang[langShort] || fallbackByLang['en'];\n\n    const i18n = {\n        choose:      i18nFromDom.choose      || fb.choose,\n        generating:  i18nFromDom.generating  || fb.generating,\n        err_fetch:   i18nFromDom.err_fetch   || fb.err_fetch,\n        err_net:     i18nFromDom.err_net     || fb.err_net,\n        submit:      i18nFromDom.submit      || fb.submit,\n        recommend:   i18nFromDom.recommend   || fb.recommend,\n        placeholder: i18nFromDom.placeholder || fb.placeholder\n    };\n\n    \/\/ \u628a\u6587\u6848\u704c\u8fdb\u8f93\u5165\u6846\/\u6309\u94ae\n    if (btn)   btn.textContent = i18n.submit;\n    if (btnRc) btnRc.textContent = i18n.recommend;\n    if (input) input.setAttribute('placeholder', i18n.placeholder);\n\n    \/\/ =========================\n    \/\/ \u5de5\u5177\u51fd\u6570\n    \/\/ =========================\n    function addLine(t, cls){\n        if(!win) return;\n        const d = document.createElement('div');\n        d.textContent = t;\n        d.className = 'pst-line' + (cls ? (' ' + cls) : '');\n        d.style.margin = '8px 0';\n\n        if (cls === 'pst-err'){\n            d.style.color = '#b00020';\n            d.style.fontSize = '12px';\n        }\n        if (cls === 'pst-q'){\n            d.style.fontWeight = '300';\n        }\n\n        win.appendChild(d);\n        win.scrollTop = win.scrollHeight;\n    }\n\n    function showErr(msg){\n        addLine('\u3010\u9519\u8bef\u3011' + msg, 'pst-err');\n    }\n\n    \/\/ \u63a8\u65ad\u8bed\u8a00 -> \u7528\u4e8e\u62fc\u672c\u5730\u5316\u8bfe\u7a0bURL\n    function currentLangGuess() {\n        const map = { 'zh-cn':'zh','zh-hans':'zh','zh-hant':'zh' };\n        return map[htmlLangRaw] || langShort || 'zh';\n    }\n\n    function detectLangMode() {\n        const url = new URL(location.href);\n        const firstSeg = (url.pathname.split('\/').filter(Boolean)[0] || '').toLowerCase();\n        const langCodes = ['zh','en','es','fr','ar','hi','bn','pt','ru','ur','id','ja','de','sw','tr','ko','vi','it','th','fa'];\n\n        if (langCodes.includes(firstSeg)) {\n            return { mode:'path', code:firstSeg };\n        }\n        const q = url.searchParams.get('trp_language');\n        if (q) {\n            return { mode:'query', code:q.toLowerCase() };\n        }\n        return { mode:'unknown', code: currentLangGuess() };\n    }\n\n    function localizedRecoUrl(rawReco) {\n        if (!rawReco) return '';\n        try {\n            const reco = new URL(rawReco, location.origin);\n            const mode = detectLangMode();\n            const lng  = mode.code || currentLangGuess();\n            const langCodes = ['zh','en','es','fr','ar','hi','bn','pt','ru','ur','id','ja','de','sw','tr','ko','vi','it','th','fa'];\n\n            if (mode.mode === 'path') {\n                const segs = reco.pathname.split('\/').filter(Boolean);\n                if (segs.length && langCodes.includes(segs[0].toLowerCase())) {\n                    \/\/ \u5df2\u6709\u8bed\u8a00\u524d\u7f00 -> \u4e0d\u52a8\n                } else {\n                    \/\/ \u6ca1\u6709\u8bed\u8a00\u524d\u7f00 -> \u52a0\n                    reco.pathname = '\/' + lng + (reco.pathname.startsWith('\/') ? '' : '\/') + reco.pathname;\n                }\n                return reco.toString();\n            }\n\n            if (mode.mode === 'query') {\n                reco.searchParams.set('trp_language', lng);\n                return reco.toString();\n            }\n\n            \/\/ \u9ed8\u8ba4\u515c\u5e95\uff1aquery \u6a21\u5f0f\n            reco.searchParams.set('trp_language', lng);\n            return reco.toString();\n        } catch(e){\n            return rawReco;\n        }\n    }\n\n    \/\/ =========================\n    \/\/ \u72b6\u6001\n    \/\/ =========================\n    let step = 0;\n    let busy = false;\n    let historyLog   = [];  \/\/ \u6bcf\u9898\u95ee\u7b54\u8bb0\u5f55\n    let finalSummary = '';  \/\/ AI \u603b\u7ed3\u6587\u672c\n\n    \/\/ =========================\n    \/\/ \u5b50\u901a\u9053 \/ \u4e3b\u7ebf\u5224\u5b9a\uff08\u539f\u5c01\u4fdd\u7559\uff09\n    \/\/ =========================\n    function decideSubPathByTestId(testId, allAnswersTxt) {\n        switch (parseInt(testId, 10)) {\n            case 1: return { key:'anxiety_gad', parent_key:'anxiety' , label:'\u5e7f\u6cdb\u6027\u7126\u8651\u969c\u788d\u8bfe\u7a0b\uff086\u8bfe\uff09', parent_label:'\u7126\u8651\u76f8\u5173\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u6301\u7eed\u6027\u9ad8\u5f20\u529b...' };\n            case 2: return { key:'depression',   parent_key:'depression', label:'\u6291\u90c1\u76f8\u5173\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u6291\u90c1\u76f8\u5173\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u60c5\u7eea\u80fd\u91cf\u67af\u7aed...' };\n            case 3: return { key:'compulsion',   parent_key:'compulsion', label:'\u5f3a\u8feb\u4e0e\u51b2\u52a8\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u5f3a\u8feb\u4e0e\u51b2\u52a8\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u51fa\u73b0\u4e86\u5bf9\u63a7\u5236\/\u5931\u63a7\u4e4b\u95f4\u6765\u56de\u62c9\u626f...' };\n            case 4: return { key:'trauma',       parent_key:'trauma',     label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u5305\u542b\u8fc7\u5ea6\u8b66\u89c9\u3001\u60c5\u7eea\u9ebb\u6728\u6216\u56de\u907f\u2026' };\n            case 5: return { key:'mood',         parent_key:'mood',       label:'\u60c5\u7eea\u6ce2\u52a8\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u60c5\u7eea\u6ce2\u52a8\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u60c5\u7eea\u8d77\u4f0f\u5f88\u9661\u2026' };\n            case 6: return { key:'sleep',        parent_key:'sleep',      label:'\u7761\u7720\u4e0e\u8eaf\u4f53\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u7761\u7720\u4e0e\u8eaf\u4f53\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u63d0\u793a\u957f\u671f\u8eab\u4f53\u7d27\u7ef7\u2026' };\n            case 7: return { key:'addiction',    parent_key:'addiction',  label:'\u4f9d\u8d56\u4e0e\u6210\u763e\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u4f9d\u8d56\u4e0e\u6210\u763e\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u63d0\u793a\u4f60\u5728\u7528\u67d0\u79cd\u4e60\u60ef\/\u7269\u8d28\u6491\u8fc7\u96be\u53d7\u2026' };\n            default:return { key:'trauma',       parent_key:'trauma',     label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b', parent_label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b',\n                reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u9ad8\u538b\u627f\u53d7\u6216\u957f\u671f\u6d88\u8017\u2026' };\n        }\n    }\n\n    function decidePathByTestId(testId) {\n        switch (parseInt(testId, 10)) {\n            case 1: return { key:'anxiety',    label:'\u7126\u8651\u76f8\u5173\u95ee\u9898\u8bfe\u7a0b',    reason:'\u4f60\u7684\u56de\u7b54\u5448\u73b0\u4e86\u663e\u8457\u7684\u7d27\u5f20\u2026' };\n            case 2: return { key:'depression', label:'\u6291\u90c1\u76f8\u5173\u95ee\u9898\u8bfe\u7a0b',    reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u60c5\u7eea\u4f4e\u843d\u2026'   };\n            case 3: return { key:'compulsion', label:'\u5f3a\u8feb\u4e0e\u51b2\u52a8\u95ee\u9898\u8bfe\u7a0b',  reason:'\u4f60\u7684\u56de\u7b54\u51fa\u73b0\u4e86\u63a7\u5236\u4e0d\u4f4f\u2026' };\n            case 4: return { key:'trauma',     label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b',  reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u4f60\u5728\u627f\u53d7\u9ad8\u538b\u2026'};\n            case 5: return { key:'mood',       label:'\u60c5\u7eea\u6ce2\u52a8\u95ee\u9898\u8bfe\u7a0b',    reason:'\u4f60\u7684\u56de\u7b54\u63d0\u5230\u60c5\u7eea\u5267\u70c8\u8d77\u4f0f\u2026'};\n            case 6: return { key:'sleep',      label:'\u7761\u7720\u4e0e\u8eaf\u4f53\u95ee\u9898\u8bfe\u7a0b',  reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u7761\u7720\u7d0a\u4e71\u2026'  };\n            case 7: return { key:'addiction',  label:'\u4f9d\u8d56\u4e0e\u6210\u763e\u95ee\u9898\u8bfe\u7a0b',  reason:'\u4f60\u7684\u56de\u7b54\u6307\u5411\u4f9d\u8d56\u6216\u4e0a\u763e\u5f0f\u7f13\u89e3\u2026'};\n            default:return { key:'trauma',     label:'\u521b\u4f24\u4e0e\u5e94\u6fc0\u95ee\u9898\u8bfe\u7a0b',  reason:'\u4f60\u7684\u56de\u7b54\u663e\u793a\u4f60\u5728\u627f\u53d7\u9ad8\u538b\u2026'};\n        }\n    }\n\n    \/\/ =========================\n    \/\/ \u5c55\u793a\u9996\u9898\n    \/\/ =========================\n    if (QUESTIONS.length > 0){\n        addLine(QUESTIONS[step], 'pst-q');\n    } else {\n        showErr(i18n.err_fetch || '\u9898\u5e93\u83b7\u53d6\u5931\u8d25');\n    }\n\n    \/\/ =========================\n    \/\/ \u63d0\u4ea4\u5f53\u524d\u9898\u7b54\u6848\n    \/\/ =========================\n    function handleUserSubmit(){\n        if (busy) return;\n        const raw = (input.value || '').trim().toUpperCase();\n\n        \/\/ \u53ea\u63a5\u53d7 A\/B\/C\/D\n        if (!raw.match(\/^[ABCD]$\/)) {\n            if (input) input.focus();\n            return;\n        }\n\n        const qText = QUESTIONS[step] || '';\n\n        \/\/ \u7528\u6237\u56de\u7b54\u5c55\u793a\u51fa\u6765\n        addLine(i18n.choose + raw);\n\n        \/\/ \u4fdd\u5b58\u5230\u5386\u53f2\n        historyLog.push(qText + \"\\n\u56de\u7b54\uff1a\" + raw);\n\n        \/\/ \u4e0b\u4e00\u9898\n        step++;\n        input.value = '';\n\n        askNextOrFinish();\n    }\n\n    function askNextOrFinish(){\n        if (step < QUESTIONS.length){\n            addLine(QUESTIONS[step], 'pst-q');\n            return;\n        }\n        \/\/ \u6ca1\u6709\u4e0b\u4e00\u9898\u4e86 -> \u8fdb\u5165\u603b\u7ed3\n        generateSummary();\n    }\n\n    \/\/ =========================\n    \/\/ \u751f\u6210\u603b\u7ed3 + \u5b58\u62a5\u544a + \u5206\u914d\u7597\u6108\u4e3b\u7ebf + \u663e\u793a\u63a8\u8350\u6309\u94ae\n    \/\/ =========================\n    function generateSummary(){\n        if (!AJAX){\n            showErr('AJAX MISSING');\n            return;\n        }\n\n        busy = true;\n        if (btn) btn.disabled = true;\n        addLine(i18n.generating);\n\n        \/\/ \u7b2c\u4e00\u6b65\uff1a\u8981 AI \u751f\u6210\u603b\u7ed3\n        const fd = new FormData();\n        fd.append('action', 'chatgpt_socratic_chat_ajax'); \/\/ \u5982\u679c\u540e\u7aef\u4e0d\u662f\u8fd9\u4e2a\uff0c\u5c31\u6539\n        fd.append('test_id', TEST);\n        fd.append('history', historyLog.join(\"\\n\\n\"));\n\n        fetch(AJAX, {\n            method: 'POST',\n            body: fd\n        })\n        .then(r => r.text())\n        .then(txt => {\n            finalSummary = (txt || '').trim() || '\uff08\u672a\u83b7\u53d6\u5230\u5206\u6790\u7ed3\u679c\uff09';\n\n            \/\/ \u628a\u603b\u7ed3\u663e\u793a\u5728\u5bf9\u8bdd\u7a97\u53e3\u4e2d\n            addLine(finalSummary, 'pst-ai-final');\n\n            \/\/ \u7b2c\u4e8c\u6b65\uff1a\u4fdd\u5b58\u62a5\u544a\n            const body2 = new URLSearchParams();\n            body2.append('action',  'save_socratic_report'); \/\/ \u5982\u679c\u540e\u7aef\u4e0d\u662f\u8fd9\u4e2a\uff0c\u5c31\u6539\n            body2.append('test_id', TEST);\n            body2.append('history', historyLog.join(\"\\n\\n\"));\n            body2.append('summary', finalSummary);\n\n            return fetch(AJAX, {\n                method: 'POST',\n                body: body2\n            });\n        })\n        .then(() => {\n            \/\/ \u7b2c\u4e09\u6b65\uff1a\u540e\u7aef\u5206\u914d\u7597\u6108\u4e3b\u7ebf\n            const fine   = decideSubPathByTestId(TEST, historyLog.join(\"\\n\\n\"));\n            const coarse = decidePathByTestId(TEST);\n            const assignKey = (fine && fine.key) ? fine.key : coarse.key;\n\n            const formAssign = new FormData();\n            formAssign.append('action',   'arttao_assign_healing_path_exact'); \/\/ \u5982\u679c\u540e\u7aef\u4e0d\u662f\u8fd9\u4e2a\uff0c\u5c31\u6539\n            formAssign.append('path_key', assignKey);\n\n            return fetch(AJAX, {\n                method: 'POST',\n                body: formAssign,\n                credentials: 'same-origin'\n            }).then(r => r.json());\n        })\n        .then(resp => {\n            \/\/ \u7b2c\u56db\u6b65\uff1a\u663e\u793a\u201c\u63a8\u8350\u6b64\u8bfe\u7a0b\u201d\u6309\u94ae\uff0c\u5e76\u8ba9\u5b83\u53ef\u4ee5\u70b9\u8df3\n            if (btnRc) {\n                btnRc.style.display = 'inline-block';\n                btnRc.disabled = false;\n                btnRc.style.pointerEvents = 'auto';\n\n                \/\/ \u70b9\u51fb\u8df3\u8f6c\u672c\u5730\u5316\u8bfe\u7a0bURL\n                btnRc.onclick = function(e){\n                    e.preventDefault();\n\n                    \/\/ \u5982\u679c\u540e\u7aef\u7ed9\u7684 RECO_RAW \u4e3a\u7a7a\uff0c\u6216\u8005\u7528\u6237\u672a\u6210\u529f\u5206\u914d\uff0c\u5c31\u63d0\u793a\n                    if (!RECO_RAW) {\n                        showErr('\u63a8\u8350\u8bfe\u7a0b\u5c1a\u672a\u914d\u7f6e\uff0c\u8bf7\u68c0\u67e5 data-recommend\u3002');\n                        return;\n                    }\n\n                    \/\/ \u5982\u679c resp.ok \u9700\u8981\u6821\u9a8c\u6743\u9650\u624d\u8df3\uff0c\u5c31\u770b\u4f60\u8981\u4e0d\u8981\u7528\n                    \/\/ \u8fd9\u91cc\u5982\u679c\u9700\u8981\u5c31\u5224\u65ad resp && resp.ok\n                    const jump = localizedRecoUrl(RECO_RAW);\n                    if (jump) {\n                        location.href = jump;\n                    } else {\n                        showErr('\u627e\u4e0d\u5230\u8bfe\u7a0b\u94fe\u63a5\u3002');\n                    }\n                };\n            }\n\n            \/\/ \u8fd9\u91cc\u4e0d\u5f80\u5bf9\u8bdd\u6846\u91cc\u8f93\u51fa\u522b\u7684\u63d0\u793a\u8bed\uff0c\u4fdd\u6301\u5b89\u9759\n        })\n        .catch(() => {\n            showErr(i18n.err_net || '\u751f\u6210\u5206\u6790\u5931\u8d25\uff1a\u7f51\u7edc\u9519\u8bef');\n        })\n        .finally(() => {\n            busy = false;\n            if (btn) btn.disabled = false;\n            if (stat) stat.style.display = 'block';\n        });\n    }\n\n    \/\/ =========================\n    \/\/ \u4e8b\u4ef6\u7ed1\u5b9a\uff1a\u70b9\u51fb\u6309\u94ae \/ \u56de\u8f66\n    \/\/ =========================\n    if (btn){\n        btn.addEventListener('click', function(){\n            handleUserSubmit();\n        });\n    }\n    if (input){\n        input.addEventListener('keydown', function(e){\n            if (e.key === 'Enter'){\n                e.preventDefault();\n                handleUserSubmit();\n            }\n        });\n    }\n\n})(); \/\/ IIFE \u7ed3\u675f\n<\/script>\n\n\n\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":{"nf_dc_page":"","om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-16336","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/pages\/16336","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/comments?post=16336"}],"version-history":[{"count":4,"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/pages\/16336\/revisions"}],"predecessor-version":[{"id":16347,"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/pages\/16336\/revisions\/16347"}],"wp:attachment":[{"href":"https:\/\/arttao.org\/ru\/wp-json\/wp\/v2\/media?parent=16336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}