{"id":1041,"date":"2026-08-19T11:43:08","date_gmt":"2026-08-19T04:43:08","guid":{"rendered":"https:\/\/kohmaknews.com\/api-test\/"},"modified":"2026-09-30T07:30:32","modified_gmt":"2026-09-30T00:30:32","slug":"api-test","status":"publish","type":"page","link":"https:\/\/kohmaknews.com\/th\/api-test\/","title":{"rendered":"API Test"},"content":{"rendered":"        <div class=\"kmnb-public\" id=\"kmnb-95507\" data-seat-ajax=\"https:\/\/kohmaknews.com\/wp-admin\/admin-ajax.php\" data-seat-nonce=\"1278ff8f62\" data-ajax=\"https:\/\/kohmaknews.com\/wp-admin\/admin-ajax.php\" data-nonce=\"1278ff8f62\" data-loading=\"\u0e01\u0e33\u0e25\u0e31\u0e07\u0e42\u0e2b\u0e25\u0e14\u2026\" data-lang=\"th\">\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-ln\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"true\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a\" aria-expanded=\"true\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\"><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"ln-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e41\u0e2b\u0e25\u0e21\u0e07\u0e2d\u0e1a \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-ls\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"ls-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e41\u0e2b\u0e25\u0e21\u0e28\u0e2d\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-mainland\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"mainland-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e41\u0e1c\u0e48\u0e19\u0e14\u0e34\u0e19\u0e43\u0e2b\u0e0d\u0e48 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-kc\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"kc-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e0a\u0e49\u0e32\u0e07 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-kk\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"kk-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e01\u0e39\u0e14 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"km-kw\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                    <section class=\"kmnb-group\" data-route-view=\"kw-km\">\r\n            <div class=\"kmnb-group-head\">\r\n              <button type=\"button\" class=\"kmnb-toggle kmnb-route-toggle\" aria-expanded=\"false\"><span>\u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01<\/span><\/button>\r\n              <input type=\"date\" class=\"kmnb-date\" aria-label=\"Date for \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" value=\"2026-10-29\">\r\n              <button type=\"button\" class=\"kmnb-chevron-button\" aria-label=\"Open or close \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e27\u0e32\u0e22 \u2192 \u0e40\u0e01\u0e32\u0e30\u0e2b\u0e21\u0e32\u0e01\" aria-expanded=\"false\"><span class=\"kmnb-chevron\" aria-hidden=\"true\">\u2304<\/span><\/button>\r\n            <\/div>\r\n            <div class=\"kmnb-group-body\" hidden><div class=\"kmnb-status\" aria-live=\"polite\"><\/div><div class=\"kmnb-results\"><\/div><\/div>\r\n          <\/section>\r\n                  <\/div>\r\n        <script src=\"https:\/\/kohmaknews.com\/wp-content\/plugins\/koh-mak-news-boats\/assets\/seat-refresh.js?ver=1.6.24\" defer><\/script>\r\n        <style>\r\n        .kmnb-seat-refresh{font:inherit;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;text-decoration:underline}.kmnb-seat-refresh:disabled{opacity:.6;cursor:wait}.kmnb-seat-checked{display:block;font-size:11px;max-width:160px}\r\n        .kmnb-full{display:inline-block;background:#b32d2e;color:#fff;border:0;border-radius:4px;padding:2px 5px;font-size:calc(1em - 1px);font-weight:600;line-height:1.2;white-space:nowrap}\r\n        .kmnb-public{width:100%;max-width:800px;margin-left:auto;margin-right:auto;font-size:16px}.kmnb-group{border:1px solid #d6d6d6;margin:0 0 8px;background:#fff}.kmnb-group-head{display:flex;align-items:center;background:#efefef;min-height:42px}.kmnb-toggle{min-width:0;flex:1;display:flex;align-items:center;border:0;background:transparent;padding:9px 8px 9px 14px;font:inherit;font-weight:700;text-align:left;cursor:pointer}.kmnb-toggle:focus,.kmnb-chevron-button:focus{outline:none}.kmnb-toggle:focus-visible,.kmnb-date:focus-visible,.kmnb-sort:focus-visible,.kmnb-chevron-button:focus-visible{outline:2px solid currentColor;outline-offset:-2px}.kmnb-chevron-button{flex:0 0 32px;width:32px;min-height:34px;border:0;background:transparent;padding:0 6px 0 2px;font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center}.kmnb-chevron{font-size:1.15em;line-height:1;transition:transform .15s}.kmnb-chevron-button[aria-expanded=\"true\"] .kmnb-chevron{transform:rotate(180deg)}.kmnb-date{flex:0 0 auto;width:118px;min-height:30px;margin:3px 0;padding:1px 4px;border:1px solid #bbb;background:#fff;font:inherit;font-size:14px;cursor:pointer}.kmnb-group-body{padding:0;background:#fff}.kmnb-status{padding:7px 10px 0;font-size:.88em;color:#666}.kmnb-table-wrap{overflow-x:auto}.kmnb-table{width:100%;border-collapse:collapse;min-width:680px}.kmnb-table th,.kmnb-table td{text-align:left;border-bottom:1px solid #e5e5e5;padding:6px 8px;vertical-align:top}.kmnb-table th{padding:0;background:#fafafa;white-space:nowrap}.kmnb-table th:nth-child(1),.kmnb-table td:nth-child(1),.kmnb-table th:nth-child(2),.kmnb-table td:nth-child(2){width:68px;min-width:68px;max-width:68px;box-sizing:border-box;white-space:nowrap}.kmnb-sort{width:100%;border:0;background:transparent;padding:6px 8px;text-align:left;font:inherit;font-weight:700;cursor:pointer}.kmnb-sort:hover{background:#f0f0f0}.kmnb-updated{margin:0;padding:6px 8px;font-size:.85em;color:#666;border-bottom:1px solid #e5e5e5}.kmnb-line-box{margin:0;padding:5px 8px;text-align:center}.kmnb-line-button{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid #bbb;border-radius:5px;background:#fff;text-decoration:none;font-weight:600}.kmnb-line-button:hover{text-decoration:none;background:#f7f7f7}.kmnb-line-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:#06c755;color:#fff;font-size:7px;font-weight:700;line-height:1}.kmnb-body>.kmn-boat-alert,.kmnb-body>.kmn-boat-alerts,.kmnb-body>[class*=\"boat-alert\"]{margin-top:0!important;margin-bottom:0!important;padding-top:6px!important;padding-bottom:6px!important}.kmnb-alert-slot{margin:0!important;padding:0!important}.kmnb-alert-slot>*,.kmnb-alert-slot>div{margin-top:0!important;margin-bottom:0!important}.kmnb-alert-slot p{margin-top:0!important;margin-bottom:0!important}.kmnb-alert-slot>div{border-radius:0!important}.kmnb-empty{margin:0;padding:8px;border-bottom:1px solid #e5e5e5}.kmnb-error{color:#b32d2e;padding:10px}.kmnb-group[aria-busy=\"true\"]{opacity:.78}@media(max-width:600px){.kmnb-group-head{min-height:42px}.kmnb-toggle{padding:8px 6px 8px 10px;font-size:15px}.kmnb-date{width:112px;margin:3px 0;font-size:12px;padding:1px 3px}.kmnb-chevron-button{flex-basis:28px;width:28px;padding-right:4px}.kmnb-table{min-width:620px}.kmnb-table th,.kmnb-table td{padding:7px 8px}}\r\n        <\/style>\r\n        <script>\r\n        (function(){\r\n          const root=document.getElementById(\"kmnb-95507\"); if(!root||root.dataset.ready==='1')return; root.dataset.ready='1';\r\n          const ajax=root.dataset.ajax, nonce=root.dataset.nonce, lang=root.dataset.lang||'en';\r\n          function sortTable(table,key,button){\r\n            const body=table.tBodies[0], rows=Array.from(body.rows), old=table.dataset.sortKey, dir=(old===key&&table.dataset.sortDir==='asc')?'desc':'asc';\r\n            rows.sort((a,b)=>{let av,bv;if(key==='price'||key==='seats'){av=parseFloat(a.dataset[key]);bv=parseFloat(b.dataset[key]);av=Number.isFinite(av)?av:Number.POSITIVE_INFINITY;bv=Number.isFinite(bv)?bv:Number.POSITIVE_INFINITY;}else{av=(a.querySelector('[data-key=\"'+key+'\"]')?.textContent||'').trim();bv=(b.querySelector('[data-key=\"'+key+'\"]')?.textContent||'').trim();}let c=(typeof av==='number')?av-bv:av.localeCompare(bv,undefined,{numeric:true,sensitivity:'base'});return dir==='asc'?c:-c;});\r\n            rows.forEach(r=>body.appendChild(r)); table.dataset.sortKey=key; table.dataset.sortDir=dir; table.querySelectorAll('.kmnb-sort').forEach(b=>b.removeAttribute('aria-sort')); button.setAttribute('aria-sort',dir==='asc'?'ascending':'descending');\r\n          }\r\n          function wireSort(section){section.querySelectorAll('.kmnb-sort').forEach(btn=>btn.addEventListener('click',()=>sortTable(btn.closest('table'),btn.dataset.sort,btn)));}\r\n          function load(section){\r\n            const date=section.querySelector('.kmnb-date').value, results=section.querySelector('.kmnb-results'), status=section.querySelector('.kmnb-status'); if(!date)return;\r\n            status.textContent=root.dataset.loading||'Loading\u2026'; section.setAttribute('aria-busy','true');\r\n            const body=new URLSearchParams({action:'kmnb_public_timetable',nonce:nonce,route_view:section.dataset.routeView,date:date,lang:lang});\r\n            fetch(ajax,{method:'POST',headers:{'Content-Type':'application\/x-www-form-urlencoded; charset=UTF-8'},body:body.toString(),credentials:'same-origin'})\r\n              .then(r=>r.json()).then(j=>{if(!j.success)throw new Error((j.data&&j.data.message)||'Could not load timetable.');results.innerHTML=j.data.html;section.dataset.loadedDate=date;status.textContent='';wireSort(section);})\r\n              .catch(e=>{results.innerHTML='<p class=\"kmnb-error\"><\/p>';results.querySelector('p').textContent=e.message;status.textContent='';})\r\n              .finally(()=>section.removeAttribute('aria-busy'));\r\n          }\r\n          root.querySelectorAll('.kmnb-group').forEach((section,index)=>{\r\n            const toggle=section.querySelector('.kmnb-route-toggle'), chevron=section.querySelector('.kmnb-chevron-button'), body=section.querySelector('.kmnb-group-body'), date=section.querySelector('.kmnb-date');\r\n            function setOpen(open){toggle.setAttribute('aria-expanded',open?'true':'false');chevron.setAttribute('aria-expanded',open?'true':'false');body.hidden=!open;if(open&&section.dataset.loadedDate!==date.value)load(section);}\r\n            function flip(){setOpen(toggle.getAttribute('aria-expanded')!=='true');}\r\n            toggle.addEventListener('click',flip);\r\n            chevron.addEventListener('click',flip);\r\n            date.addEventListener('click',e=>{e.stopPropagation();if(typeof date.showPicker==='function'){try{date.showPicker();}catch(err){}}});\r\n            date.addEventListener('focus',()=>{ \/* the whole field remains a native date control *\/ });\r\n            date.addEventListener('change',()=>{setOpen(true);load(section);});\r\n            if(index===0)setOpen(true);\r\n          });\r\n        })();\r\n        <\/script>\r\n        \n\n\n\n<p class=\"wp-block-paragraph\"><\/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":{"footnotes":""},"class_list":["post-1041","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/pages\/1041","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/comments?post=1041"}],"version-history":[{"count":3,"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/pages\/1041\/revisions"}],"predecessor-version":[{"id":1312,"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/pages\/1041\/revisions\/1312"}],"wp:attachment":[{"href":"https:\/\/kohmaknews.com\/th\/wp-json\/wp\/v2\/media?parent=1041"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}