{"id":5266,"date":"2026-05-30T08:33:51","date_gmt":"2026-05-30T08:33:51","guid":{"rendered":"https:\/\/glacademy.edu.my\/admissions\/"},"modified":"2026-05-30T08:33:51","modified_gmt":"2026-05-30T08:33:51","slug":"admissions","status":"publish","type":"page","link":"https:\/\/glacademy.edu.my\/ja\/admissions\/","title":{"rendered":"Admission"},"content":{"rendered":"<!--\n  SEO Title: \u5165\u5b66\u6848\u5185 | GL\u30a2\u30ab\u30c7\u30df\u30fc \u30af\u30a2\u30e9\u30eb\u30f3\u30d7\u30fc\u30eb\u3078\u306e\u767b\u9332\n  Meta Description: \u30b0\u30ed\u30fc\u30d0\u30eb\u30fb\u30ea\u30fc\u30c0\u30fc\u30ba\u30fb\u30a2\u30ab\u30c7\u30df\u30fc\u3078\u306e\u304a\u7533\u3057\u8fbc\u307f \u2014 \u5f53\u6821\u306e\u5165\u5b66\u30d5\u30a9\u30fc\u30e0\u304b\u3089\u3054\u5165\u529b\u3044\u305f\u3060\u3044\u305f\u60c5\u5831\u304c\u5165\u5b66\u62c5\u5f53\u30c1\u30fc\u30e0\u306b\u76f4\u63a5\u9001\u4fe1\u3055\u308c\u307e\u3059\u3002\u30e2\u30f3\u30c8\u30ad\u30a2\u30e9\uff08\u30af\u30a2\u30e9\u30eb\u30f3\u30d7\u30fc\u30eb\uff09\u306e\u8a9e\u5b66\u5b66\u6821\u30fb\u5b66\u7fd2\u587e\u3002\n  Focus Keyword: GL Academy admission\n  Slug: admission\n\n  Native admission form. Submits to the WordPress route \/wp-json\/glacademy\/v1\/erp-register,\n  which forwards the lead to the GL Academy ERP server-side (API key never touches the browser).\n  Styles live in gl-academy-all.css (.adm- classes).\n-->\n<link href=\"https:\/\/fonts.font.im\/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap\" rel=\"stylesheet\">\n\n\n<!-- \u2550\u2550 HERO \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"adm-hero\">\n  <div class=\"adm-hero__inner\">\n    <span class=\"adm-eyebrow\">\u4eca\u3059\u3050\u5165\u5b66<\/span>\n    <h1 class=\"adm-hero__title\">\u5b66\u751f <span class=\"adm-grad\">\u5165\u5b66\u6848\u5185<\/span><\/h1>\n    <p class=\"adm-hero__sub\">\u4e0b\u8a18\u306e\u30d5\u30a9\u30fc\u30e0\u306b\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002\u5165\u5b66\u62c5\u5f53\u30c1\u30fc\u30e0\u304c3\u55b6\u696d\u65e5\u4ee5\u5185\u306b\u3054\u9023\u7d61\u3057\u3001\u304a\u5e2d\u3092\u78ba\u5b9a\u3044\u305f\u3057\u307e\u3059\u3002\u3088\u308a\u65e9\u3044\u3054\u8fd4\u7b54\u3092\u3054\u5e0c\u671b\u306e\u5834\u5408\u306f\u3001WhatsApp\u3001KakaoTalk\u3001WeChat\u304b\u3089\u76f4\u63a5\u304a\u6c17\u8efd\u306b\u3054\u9023\u7d61\u304f\u3060\u3055\u3044\u3002<\/p>\n    <div class=\"adm-hero__chips\">\n      <span class=\"adm-hero__chip\">\ud83d\udccb \u6240\u8981\u6642\u95933\u5206<\/span>\n      <span class=\"adm-hero__chip\">\ud83d\udd12 \u30c7\u30fc\u30bf\u306f\u5b89\u5168\u306b\u4fdd\u8b77\u3055\u308c\u307e\u3059<\/span>\n      <span class=\"adm-hero__chip\">\u26a1 3\u55b6\u696d\u65e5\u4ee5\u5185\u306b\u3054\u8fd4\u7b54<\/span>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n<!-- \u2550\u2550 BODY \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<section class=\"adm-section\">\n  <div class=\"adm-section__inner\">\n    <div class=\"adm-layout\">\n\n      <!-- \u2500\u2500 LEFT: Info Panel \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n      <aside class=\"adm-sidebar\">\n\n        <div class=\"adm-info-card\">\n          <div class=\"adm-info-card__icon\">\ud83c\udf93<\/div>\n          <h3 class=\"adm-info-card__title\">\u6b21\u306e\u30b9\u30c6\u30c3\u30d7\u306f\uff1f<\/h3>\n          <ol class=\"adm-steps\">\n            <li>\u3053\u306e\u30d5\u30a9\u30fc\u30e0\u3092<strong>\u9001\u4fe1<\/strong> \u2014 \u6240\u8981\u6642\u95933\u5206<\/li>\n            <li>3\u55b6\u696d\u65e5\u4ee5\u5185\u306b<strong>\u5f53\u6821\u3088\u308a\u3054\u9023\u7d61<\/strong>\u3057\u3001\u8a73\u7d30\u3092\u78ba\u8a8d\u3057\u307e\u3059<\/li>\n            <li><strong>\u30d7\u30ec\u30a4\u30b9\u30e1\u30f3\u30c8\u30c6\u30b9\u30c8<\/strong>\uff08\u8a9e\u5b66\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u5834\u5408\uff09<\/li>\n            <li><strong>\u5165\u5b66\u78ba\u5b9a<\/strong> \u2014 \u9078\u629e\u3055\u308c\u305f\u65e5\u7a0b\u3067\u958b\u59cb<\/li>\n          <\/ol>\n        <\/div>\n\n        <div class=\"adm-contact-card\">\n          <p class=\"adm-contact-card__label\">\u307e\u305a\u306f\u304a\u8a71\u3057\u3057\u305f\u3044\u3067\u3059\u304b\uff1f<\/p>\n\n          <a href=\"https:\/\/wa.me\/601137959673\" target=\"_blank\" rel=\"noopener\" class=\"adm-wa-btn\">\n            <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z\"\/><\/svg>\n            WhatsApp\u3067\u3054\u9023\u7d61\n          <\/a>\n\n          <a href=\"http:\/\/pf.kakao.com\/_xaRENG\/chat\" target=\"_blank\" rel=\"noopener\" class=\"adm-kakao-btn\">\n            <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12 3C6.477 3 2 6.477 2 10.8c0 2.765 1.696 5.19 4.25 6.662L5.08 21l4.577-2.397A11.8 11.8 0 0012 18.6c5.523 0 10-3.477 10-7.8S17.523 3 12 3z\"\/><\/svg>\n            KakaoTalk\n          <\/a>\n\n          <div class=\"adm-wechat-row\">\n            <svg width=\"17\" height=\"17\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M8.69 3C4.47 3 1 6.02 1 9.77c0 2.01 1.01 3.8 2.6 5.02l-.65 1.96 2.3-1.14c.77.2 1.58.32 2.44.32.22 0 .43-.01.64-.03-.14-.44-.21-.9-.21-1.38 0-3.41 3.12-6.18 6.97-6.18.23 0 .46.01.68.03C14.93 5.56 12.06 3 8.69 3zm-1.9 3.4c.5 0 .9.4.9.9s-.4.9-.9.9-.9-.4-.9-.9.4-.9.9-.9zm3.8 0c.5 0 .9.4.9.9s-.4.9-.9.9-.9-.4-.9-.9.4-.9.9-.9z\"\/><path d=\"M22.5 14.5c0-3.03-2.93-5.5-6.55-5.5S9.4 11.47 9.4 14.5s2.93 5.5 6.55 5.5c.7 0 1.38-.1 2.01-.28l1.95.97-.55-1.67C21.28 17.88 22.5 16.31 22.5 14.5zm-8.65-1c-.42 0-.75-.34-.75-.75s.33-.75.75-.75.75.34.75.75-.33.75-.75.75zm4.2 0c-.42 0-.75-.34-.75-.75s.33-.75.75-.75.75.34.75.75-.33.75-.75.75z\"\/><\/svg>\n            <span>WeChat: <strong>GLACADEMY_KL<\/strong><\/span>\n          <\/div>\n\n          <a href=\"tel:+60364612232\" class=\"adm-phone-link\">\n            <svg width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 10.8a19.79 19.79 0 01-3.07-8.7A2 2 0 012 0h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.09 7.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z\"\/><\/svg>\n            +603-6461-2232\n          <\/a>\n        <\/div>\n\n      <\/aside>\n\n      <!-- \u2500\u2500 RIGHT: Native Admission Form \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 -->\n      <div class=\"adm-form-col\">\n        <div class=\"adm-form-card\">\n\n          <!-- Success panel (hidden until submitted) -->\n          <div class=\"adm-done\" id=\"adm-done\" hidden>\n            <div class=\"adm-done__icon\">\n              <svg width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n            <\/div>\n            <h3 class=\"adm-done__title\">\u304a\u7533\u3057\u8fbc\u307f\u3092\u53d7\u3051\u4ed8\u3051\u307e\u3057\u305f<\/h3>\n            <p class=\"adm-done__text\">\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\u5165\u5b66\u62c5\u5f53\u30c1\u30fc\u30e0\u304c3\u55b6\u696d\u65e5\u4ee5\u5185\u306b\u3054\u9023\u7d61\u3044\u305f\u3057\u307e\u3059\u3002<\/p>\n            <p class=\"adm-done__ref\" id=\"adm-done-ref\"><\/p>\n            <button type=\"button\" class=\"adm-again\" id=\"adm-again\">\n              <svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg>\n              \u5225\u306e\u7533\u8fbc\u8005\u3092\u8ffd\u52a0\u3059\u308b\n            <\/button>\n          <\/div>\n\n          <form class=\"adm-form\" id=\"adm-form\" novalidate>\n            <p class=\"adm-note\">\u5f53\u6821\u306e\u8a18\u9332\u304c\u516c\u7684\u66f8\u985e\u3068\u4e00\u81f4\u3059\u308b\u3088\u3046\u3001\u3053\u306e\u30d5\u30a9\u30fc\u30e0\u306f<strong>\u82f1\u8a9e\u306e\u30a2\u30eb\u30d5\u30a1\u30d9\u30c3\u30c8<\/strong>\uff08\u30ed\u30fc\u30de\u5b57\uff09\u3067\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002<\/p>\n\n            <!-- Applicant -->\n            <p class=\"adm-section-lbl\">\u7533\u8fbc\u8005\u60c5\u5831<\/p>\n            <div class=\"adm-grid\">\n              <div class=\"adm-field adm-col-2\">\n                <label class=\"adm-label\" for=\"adm-name\">\u6c0f\u540d\uff08\u30d5\u30eb\u30cd\u30fc\u30e0\uff09 <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input\" id=\"adm-name\" name=\"full_name\" type=\"text\" required autocomplete=\"name\" placeholder=\"IC \/ \u30d1\u30b9\u30dd\u30fc\u30c8\u306e\u8868\u8a18\u3069\u304a\u308a\">\n                <span class=\"adm-hint\">\u82f1\u5b57\u306e\u307f\u3067\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002<\/span>\n                <span class=\"adm-hint adm-hint--err\" id=\"adm-name-err\" hidden>\u82f1\u8a9e\u306e\u30a2\u30eb\u30d5\u30a1\u30d9\u30c3\u30c8\uff08\u30ed\u30fc\u30de\u5b57\u306e\u307f\uff09\u3067\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002<\/span>\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-ic\">NRIC \/ \u30d1\u30b9\u30dd\u30fc\u30c8\u756a\u53f7 <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input\" id=\"adm-ic\" name=\"ic_passport\" type=\"text\" autocomplete=\"off\" placeholder=\"\u4f8b\uff1aA1234567\">\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-dob\">\u751f\u5e74\u6708\u65e5 <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input\" id=\"adm-dob\" name=\"date_of_birth\" type=\"date\">\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-email\">\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9 <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input\" id=\"adm-email\" name=\"email\" type=\"email\" required autocomplete=\"email\" placeholder=\"you@email.com\">\n                <span class=\"adm-hint adm-hint--err\" id=\"adm-email-err\" hidden>\u6709\u52b9\u306a\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/span>\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-phone\">\u96fb\u8a71\u756a\u53f7 <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input\" id=\"adm-phone\" name=\"phone\" type=\"tel\" required autocomplete=\"tel\" placeholder=\"+60 12-345 6789\">\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-nat\">\u56fd\u7c4d <span class=\"adm-req\">*<\/span><\/label>\n                <select class=\"adm-input adm-select\" id=\"adm-nat\" name=\"nationality\" required>\n                  <option value=\"Malaysia\" selected>Malaysia<\/option>\n                  <option value=\"Afghanistan\">Afghanistan<\/option>\n                  <option value=\"Albania\">Albania<\/option>\n                  <option value=\"Algeria\">Algeria<\/option>\n                  <option value=\"Andorra\">Andorra<\/option>\n                  <option value=\"Angola\">Angola<\/option>\n                  <option value=\"Antigua and Barbuda\">Antigua and Barbuda<\/option>\n                  <option value=\"Argentina\">Argentina<\/option>\n                  <option value=\"Armenia\">Armenia<\/option>\n                  <option value=\"Australia\">Australia<\/option>\n                  <option value=\"Austria\">Austria<\/option>\n                  <option value=\"Azerbaijan\">Azerbaijan<\/option>\n                  <option value=\"Bahamas\">Bahamas<\/option>\n                  <option value=\"Bahrain\">Bahrain<\/option>\n                  <option value=\"Bangladesh\">Bangladesh<\/option>\n                  <option value=\"Barbados\">Barbados<\/option>\n                  <option value=\"Belarus\">Belarus<\/option>\n                  <option value=\"Belgium\">Belgium<\/option>\n                  <option value=\"Belize\">Belize<\/option>\n                  <option value=\"Benin\">Benin<\/option>\n                  <option value=\"Bhutan\">Bhutan<\/option>\n                  <option value=\"Bolivia\">Bolivia<\/option>\n                  <option value=\"Bosnia and Herzegovina\">Bosnia and Herzegovina<\/option>\n                  <option value=\"Botswana\">Botswana<\/option>\n                  <option value=\"Brazil\">Brazil<\/option>\n                  <option value=\"Brunei\">Brunei<\/option>\n                  <option value=\"Bulgaria\">Bulgaria<\/option>\n                  <option value=\"Burkina Faso\">Burkina Faso<\/option>\n                  <option value=\"Burundi\">Burundi<\/option>\n                  <option value=\"Cabo Verde\">Cabo Verde<\/option>\n                  <option value=\"Cambodia\">Cambodia<\/option>\n                  <option value=\"Cameroon\">Cameroon<\/option>\n                  <option value=\"Canada\">Canada<\/option>\n                  <option value=\"Central African Republic\">Central African Republic<\/option>\n                  <option value=\"Chad\">Chad<\/option>\n                  <option value=\"Chile\">Chile<\/option>\n                  <option value=\"China\">China<\/option>\n                  <option value=\"Colombia\">Colombia<\/option>\n                  <option value=\"Comoros\">Comoros<\/option>\n                  <option value=\"Congo (Brazzaville)\">Congo (Brazzaville)<\/option>\n                  <option value=\"Congo (Kinshasa)\">Congo (Kinshasa)<\/option>\n                  <option value=\"Costa Rica\">Costa Rica<\/option>\n                  <option value=\"C\u00f4te d&#x27;Ivoire\">C\u00f4te d&#x27;Ivoire<\/option>\n                  <option value=\"Croatia\">Croatia<\/option>\n                  <option value=\"Cuba\">Cuba<\/option>\n                  <option value=\"Cyprus\">Cyprus<\/option>\n                  <option value=\"Czechia\">Czechia<\/option>\n                  <option value=\"Denmark\">Denmark<\/option>\n                  <option value=\"Djibouti\">Djibouti<\/option>\n                  <option value=\"Dominica\">Dominica<\/option>\n                  <option value=\"Dominican Republic\">Dominican Republic<\/option>\n                  <option value=\"Ecuador\">Ecuador<\/option>\n                  <option value=\"Egypt\">Egypt<\/option>\n                  <option value=\"El Salvador\">El Salvador<\/option>\n                  <option value=\"Equatorial Guinea\">Equatorial Guinea<\/option>\n                  <option value=\"Eritrea\">Eritrea<\/option>\n                  <option value=\"Estonia\">Estonia<\/option>\n                  <option value=\"Eswatini\">Eswatini<\/option>\n                  <option value=\"Ethiopia\">Ethiopia<\/option>\n                  <option value=\"Fiji\">Fiji<\/option>\n                  <option value=\"Finland\">Finland<\/option>\n                  <option value=\"France\">France<\/option>\n                  <option value=\"Gabon\">Gabon<\/option>\n                  <option value=\"Gambia\">Gambia<\/option>\n                  <option value=\"Georgia\">Georgia<\/option>\n                  <option value=\"Germany\">Germany<\/option>\n                  <option value=\"Ghana\">Ghana<\/option>\n                  <option value=\"Greece\">Greece<\/option>\n                  <option value=\"Grenada\">Grenada<\/option>\n                  <option value=\"Guatemala\">Guatemala<\/option>\n                  <option value=\"Guinea\">Guinea<\/option>\n                  <option value=\"Guinea-Bissau\">Guinea-Bissau<\/option>\n                  <option value=\"Guyana\">Guyana<\/option>\n                  <option value=\"Haiti\">Haiti<\/option>\n                  <option value=\"Honduras\">Honduras<\/option>\n                  <option value=\"Hungary\">Hungary<\/option>\n                  <option value=\"Iceland\">Iceland<\/option>\n                  <option value=\"India\">India<\/option>\n                  <option value=\"Indonesia\">Indonesia<\/option>\n                  <option value=\"Iran\">Iran<\/option>\n                  <option value=\"Iraq\">Iraq<\/option>\n                  <option value=\"Ireland\">Ireland<\/option>\n                  <option value=\"Israel\">Israel<\/option>\n                  <option value=\"Italy\">Italy<\/option>\n                  <option value=\"Jamaica\">Jamaica<\/option>\n                  <option value=\"Japan\">Japan<\/option>\n                  <option value=\"Jordan\">Jordan<\/option>\n                  <option value=\"Kazakhstan\">Kazakhstan<\/option>\n                  <option value=\"Kenya\">Kenya<\/option>\n                  <option value=\"Kiribati\">Kiribati<\/option>\n                  <option value=\"Kosovo\">Kosovo<\/option>\n                  <option value=\"Kuwait\">Kuwait<\/option>\n                  <option value=\"Kyrgyzstan\">Kyrgyzstan<\/option>\n                  <option value=\"Laos\">Laos<\/option>\n                  <option value=\"Latvia\">Latvia<\/option>\n                  <option value=\"Lebanon\">Lebanon<\/option>\n                  <option value=\"Lesotho\">Lesotho<\/option>\n                  <option value=\"Liberia\">Liberia<\/option>\n                  <option value=\"Libya\">Libya<\/option>\n                  <option value=\"Liechtenstein\">Liechtenstein<\/option>\n                  <option value=\"Lithuania\">Lithuania<\/option>\n                  <option value=\"Luxembourg\">Luxembourg<\/option>\n                  <option value=\"Madagascar\">Madagascar<\/option>\n                  <option value=\"Malawi\">Malawi<\/option>\n                  <option value=\"Maldives\">Maldives<\/option>\n                  <option value=\"Mali\">Mali<\/option>\n                  <option value=\"Malta\">Malta<\/option>\n                  <option value=\"Marshall Islands\">Marshall Islands<\/option>\n                  <option value=\"Mauritania\">Mauritania<\/option>\n                  <option value=\"Mauritius\">Mauritius<\/option>\n                  <option value=\"Mexico\">Mexico<\/option>\n                  <option value=\"Micronesia\">Micronesia<\/option>\n                  <option value=\"Moldova\">Moldova<\/option>\n                  <option value=\"Monaco\">Monaco<\/option>\n                  <option value=\"Mongolia\">Mongolia<\/option>\n                  <option value=\"Montenegro\">Montenegro<\/option>\n                  <option value=\"Morocco\">Morocco<\/option>\n                  <option value=\"Mozambique\">Mozambique<\/option>\n                  <option value=\"Myanmar\">Myanmar<\/option>\n                  <option value=\"Namibia\">Namibia<\/option>\n                  <option value=\"Nauru\">Nauru<\/option>\n                  <option value=\"Nepal\">Nepal<\/option>\n                  <option value=\"Netherlands\">Netherlands<\/option>\n                  <option value=\"New Zealand\">New Zealand<\/option>\n                  <option value=\"Nicaragua\">Nicaragua<\/option>\n                  <option value=\"Niger\">Niger<\/option>\n                  <option value=\"Nigeria\">Nigeria<\/option>\n                  <option value=\"North Korea\">North Korea<\/option>\n                  <option value=\"North Macedonia\">North Macedonia<\/option>\n                  <option value=\"Norway\">Norway<\/option>\n                  <option value=\"Oman\">Oman<\/option>\n                  <option value=\"Pakistan\">Pakistan<\/option>\n                  <option value=\"Palau\">Palau<\/option>\n                  <option value=\"Palestine\">Palestine<\/option>\n                  <option value=\"Panama\">Panama<\/option>\n                  <option value=\"Papua New Guinea\">Papua New Guinea<\/option>\n                  <option value=\"Paraguay\">Paraguay<\/option>\n                  <option value=\"Peru\">Peru<\/option>\n                  <option value=\"Philippines\">Philippines<\/option>\n                  <option value=\"Poland\">Poland<\/option>\n                  <option value=\"Portugal\">Portugal<\/option>\n                  <option value=\"Qatar\">Qatar<\/option>\n                  <option value=\"Romania\">Romania<\/option>\n                  <option value=\"Russia\">Russia<\/option>\n                  <option value=\"Rwanda\">Rwanda<\/option>\n                  <option value=\"Saint Kitts and Nevis\">Saint Kitts and Nevis<\/option>\n                  <option value=\"Saint Lucia\">Saint Lucia<\/option>\n                  <option value=\"Saint Vincent and the Grenadines\">Saint Vincent and the Grenadines<\/option>\n                  <option value=\"Samoa\">Samoa<\/option>\n                  <option value=\"San Marino\">San Marino<\/option>\n                  <option value=\"Sao Tome and Principe\">Sao Tome and Principe<\/option>\n                  <option value=\"Saudi Arabia\">Saudi Arabia<\/option>\n                  <option value=\"Senegal\">Senegal<\/option>\n                  <option value=\"Serbia\">Serbia<\/option>\n                  <option value=\"Seychelles\">Seychelles<\/option>\n                  <option value=\"Sierra Leone\">Sierra Leone<\/option>\n                  <option value=\"Singapore\">Singapore<\/option>\n                  <option value=\"Slovakia\">Slovakia<\/option>\n                  <option value=\"Slovenia\">Slovenia<\/option>\n                  <option value=\"Solomon Islands\">Solomon Islands<\/option>\n                  <option value=\"Somalia\">Somalia<\/option>\n                  <option value=\"South Africa\">South Africa<\/option>\n                  <option value=\"South Korea\">South Korea<\/option>\n                  <option value=\"South Sudan\">South Sudan<\/option>\n                  <option value=\"Spain\">Spain<\/option>\n                  <option value=\"Sri Lanka\">Sri Lanka<\/option>\n                  <option value=\"Sudan\">Sudan<\/option>\n                  <option value=\"Suriname\">Suriname<\/option>\n                  <option value=\"Sweden\">Sweden<\/option>\n                  <option value=\"Switzerland\">Switzerland<\/option>\n                  <option value=\"Syria\">Syria<\/option>\n                  <option value=\"Taiwan\">Taiwan<\/option>\n                  <option value=\"Tajikistan\">Tajikistan<\/option>\n                  <option value=\"Tanzania\">Tanzania<\/option>\n                  <option value=\"Thailand\">Thailand<\/option>\n                  <option value=\"Timor-Leste\">Timor-Leste<\/option>\n                  <option value=\"Togo\">Togo<\/option>\n                  <option value=\"Tonga\">Tonga<\/option>\n                  <option value=\"Trinidad and Tobago\">Trinidad and Tobago<\/option>\n                  <option value=\"Tunisia\">Tunisia<\/option>\n                  <option value=\"Turkey\">Turkey<\/option>\n                  <option value=\"Turkmenistan\">Turkmenistan<\/option>\n                  <option value=\"Tuvalu\">Tuvalu<\/option>\n                  <option value=\"Uganda\">Uganda<\/option>\n                  <option value=\"Ukraine\">Ukraine<\/option>\n                  <option value=\"United Arab Emirates\">United Arab Emirates<\/option>\n                  <option value=\"United Kingdom\">United Kingdom<\/option>\n                  <option value=\"United States\">United States<\/option>\n                  <option value=\"Uruguay\">Uruguay<\/option>\n                  <option value=\"Uzbekistan\">Uzbekistan<\/option>\n                  <option value=\"Vanuatu\">Vanuatu<\/option>\n                  <option value=\"Vatican City\">Vatican City<\/option>\n                  <option value=\"Venezuela\">Venezuela<\/option>\n                  <option value=\"Vietnam\">Vietnam<\/option>\n                  <option value=\"Yemen\">Yemen<\/option>\n                  <option value=\"Zambia\">Zambia<\/option>\n                  <option value=\"Zimbabwe\">Zimbabwe<\/option>\n                  <option value=\"Other\">Other<\/option>\n                <\/select>\n              <\/div>\n              <div class=\"adm-field adm-col-2\">\n                <label class=\"adm-label\" for=\"adm-address\">\u4f4f\u6240<\/label>\n                <input class=\"adm-input\" id=\"adm-address\" name=\"address\" type=\"text\" autocomplete=\"street-address\" placeholder=\"\u756a\u5730\u3001\u5e02\u533a\u753a\u6751\u3001\u90f5\u4fbf\u756a\u53f7\">\n              <\/div>\n              <div class=\"adm-field adm-col-2\">\n                <label class=\"adm-label\" for=\"adm-doc\">\u30d1\u30b9\u30dd\u30fc\u30c8 \/ NRIC \u306e\u30b3\u30d4\u30fc <span class=\"adm-req\">*<\/span><\/label>\n                <input class=\"adm-input adm-file\" id=\"adm-doc\" name=\"document\" type=\"file\" accept=\".pdf,.jpg,.jpeg,.png,.webp,.heic,image\/*,application\/pdf\" required>\n                <span class=\"adm-hint\">\u30d1\u30b9\u30dd\u30fc\u30c8\u307e\u305f\u306fIC\u306e\u9bae\u660e\u306a\u30b3\u30d4\u30fc\u3092\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044 \u2014 PDF\u307e\u305f\u306f\u5199\u771f\uff08JPG\/PNG\uff09\u3002\u6700\u592710MB\u3002<\/span>\n                <span class=\"adm-hint adm-hint--err\" id=\"adm-doc-err\" hidden>10MB\u4ee5\u4e0b\u306ePDF\u307e\u305f\u306f\u753b\u50cf\u30d5\u30a1\u30a4\u30eb\u3092\u6dfb\u4ed8\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/span>\n              <\/div>\n            <\/div>\n\n            <hr class=\"adm-divider\">\n\n            <!-- Programme -->\n            <p class=\"adm-section-lbl\">\u30d7\u30ed\u30b0\u30e9\u30e0<\/p>\n            <div class=\"adm-grid\">\n              <div class=\"adm-field adm-col-2\">\n                <label class=\"adm-label\" for=\"adm-course\">\u3054\u5e0c\u671b\u306e\u30d7\u30ed\u30b0\u30e9\u30e0 <span class=\"adm-req\">*<\/span><\/label>\n                <select class=\"adm-input adm-select\" id=\"adm-course\" name=\"course\" required>\n                  <option value=\"\" selected disabled>\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u2026<\/option>\n                  <optgroup label=\"\u8a9e\u5b66\u5b66\u6821\">\n                    <option>\u96c6\u4e2d\u82f1\u8a9e\u30d7\u30ed\u30b0\u30e9\u30e0\uff08IEP\uff09<\/option>\n                    <option>\u30b8\u30e5\u30cb\u30a2\u96c6\u4e2d\u82f1\u8a9e\u30d7\u30ed\u30b0\u30e9\u30e0\uff08JIEP\uff09<\/option>\n                    <option>\u30d3\u30b8\u30cd\u30b9\u82f1\u8a9e\u30d7\u30ed\u30b0\u30e9\u30e0<\/option>\n                    <option>IELTS \/ TOEFL iBT \u5bfe\u7b56<\/option>\n                    <option>\u65e5\u5e38\u4f1a\u8a71\u30af\u30e9\u30b9<\/option>\n                    <option>\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8VIP\u30af\u30e9\u30b9<\/option>\n                    <option>\u30b5\u30de\u30fc \/ \u30a6\u30a3\u30f3\u30bf\u30fc\u30ad\u30e3\u30f3\u30d7<\/option>\n                  <\/optgroup>\n                  <optgroup label=\"\u5b66\u7fd2\u652f\u63f4\">\n                    <option>\u5c0f\u5b66\u751f\u6307\u5c0e<\/option>\n                    <option>\u4e2d\u5b66\u524d\u671f\u6307\u5c0e<\/option>\n                    <option>IGCSE<\/option>\n                    <option>A-Level<\/option>\n                    <option>IB\u30c7\u30a3\u30d7\u30ed\u30de\uff08IBDP\uff09<\/option>\n                  <\/optgroup>\n                <\/select>\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-start\">\u3054\u5e0c\u671b\u306e\u958b\u59cb\u6642\u671f<\/label>\n                <input class=\"adm-input\" id=\"adm-start\" name=\"preferred_start\" type=\"text\" placeholder=\"\u4f8b\uff1a2026\u5e748\u6708\">\n              <\/div>\n              <div class=\"adm-field\">\n                <label class=\"adm-label\" for=\"adm-hear\">\u5f53\u6821\u3092\u4f55\u3067\u304a\u77e5\u308a\u306b\u306a\u308a\u307e\u3057\u305f\u304b\uff1f <span class=\"adm-req\">*<\/span><\/label>\n                <select class=\"adm-input adm-select\" id=\"adm-hear\" name=\"how_did_you_hear\" required>\n                  <option value=\"\" selected disabled>\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u2026<\/option>\n                  <option>Google\u691c\u7d22<\/option>\n                  <option>Instagram<\/option>\n                  <option>Facebook<\/option>\n                  <option>WeChat \/ RED<\/option>\n                  <option>Naver \/ KakaoTalk<\/option>\n                  <option>\u53cb\u4eba \/ \u7d39\u4ecb<\/option>\n                  <option>\u4ee3\u7406\u5e97<\/option>\n                  <option>\u98db\u3073\u8fbc\u307f\u6765\u6821<\/option>\n                  <option>\u305d\u306e\u4ed6<\/option>\n                <\/select>\n              <\/div>\n            <\/div>\n\n            <!-- Guardian (revealed for under-18 applicants) -->\n            <div class=\"adm-guardian\" id=\"adm-guardian\" hidden>\n              <hr class=\"adm-divider\">\n              <p class=\"adm-section-lbl\">\u89aa \/ \u4fdd\u8b77\u8005 <span class=\"adm-guardian-note\">\uff08\u7533\u8fbc\u8005\u304c18\u6b73\u672a\u6e80\u306e\u5834\u5408\uff09<\/span><\/p>\n              <div class=\"adm-grid\">\n                <div class=\"adm-field\">\n                  <label class=\"adm-label\" for=\"adm-gname\">\u4fdd\u8b77\u8005\u6c0f\u540d\uff08\u30d5\u30eb\u30cd\u30fc\u30e0\uff09 <span class=\"adm-req\">*<\/span><\/label>\n                  <input class=\"adm-input\" id=\"adm-gname\" name=\"guardian_name\" type=\"text\" placeholder=\"\u82f1\u5b57\u306e\u307f\">\n                <\/div>\n                <div class=\"adm-field\">\n                  <label class=\"adm-label\" for=\"adm-grel\">\u7d9a\u67c4<\/label>\n                  <select class=\"adm-input adm-select\" id=\"adm-grel\" name=\"guardian_relationship\">\n                    <option value=\"\" selected disabled>\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u2026<\/option>\n                    <option>\u7236<\/option>\n                    <option>\u6bcd<\/option>\n                    <option>\u6cd5\u5b9a\u4fdd\u8b77\u8005<\/option>\n                    <option>\u305d\u306e\u4ed6<\/option>\n                  <\/select>\n                <\/div>\n                <div class=\"adm-field\">\n                  <label class=\"adm-label\" for=\"adm-gemail\">\u4fdd\u8b77\u8005\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9 <span class=\"adm-req\">*<\/span><\/label>\n                  <input class=\"adm-input\" id=\"adm-gemail\" name=\"guardian_email\" type=\"email\" placeholder=\"guardian@email.com\">\n                <\/div>\n                <div class=\"adm-field\">\n                  <label class=\"adm-label\" for=\"adm-gphone\">\u4fdd\u8b77\u8005\u96fb\u8a71\u756a\u53f7 <span class=\"adm-req\">*<\/span><\/label>\n                  <input class=\"adm-input\" id=\"adm-gphone\" name=\"guardian_phone\" type=\"tel\" placeholder=\"+60 12-000 1111\">\n                <\/div>\n              <\/div>\n            <\/div>\n\n            <hr class=\"adm-divider\">\n\n            <!-- Notes -->\n            <div class=\"adm-field\">\n              <label class=\"adm-label\" for=\"adm-notes\">\u305d\u306e\u4ed6\u3001\u304a\u4f1d\u3048\u3044\u305f\u3060\u304d\u305f\u3044\u3053\u3068\u306f\u3042\u308a\u307e\u3059\u304b\uff1f<\/label>\n              <textarea class=\"adm-input adm-textarea\" id=\"adm-notes\" name=\"notes\" rows=\"3\" placeholder=\"\u4efb\u610f \u2014 \u76ee\u6a19\u3001\u3054\u8cea\u554f\u3001\u3054\u5e0c\u671b\u306e\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u306a\u3069\u2026\"><\/textarea>\n            <\/div>\n\n            <!-- Consent -->\n            <label class=\"adm-consent\">\n              <input type=\"checkbox\" id=\"adm-terms\" name=\"terms\" required>\n              <span><a href=\"https:\/\/glacademy.edu.my\/terms-of-enrolment\/\" target=\"_blank\" rel=\"noopener\">\u5165\u5b66\u898f\u7d04<\/a>\u3092\u8aad\u307f\u3001\u540c\u610f\u3057\u307e\u3059\u3002 <span class=\"adm-req\">*<\/span><\/span>\n            <\/label>\n            <label class=\"adm-consent\">\n              <input type=\"checkbox\" id=\"adm-consent\" name=\"consent\" required>\n              <span>GL\u30a2\u30ab\u30c7\u30df\u30fc\u304c<a href=\"https:\/\/glacademy.edu.my\/privacy-policy\/\" target=\"_blank\" rel=\"noopener\">\u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u30dd\u30ea\u30b7\u30fc\u53ca\u3073PDPA\u901a\u77e5<\/a>\u306b\u5f93\u3063\u3066\u79c1\u306e\u500b\u4eba\u60c5\u5831\u3092\u53d6\u308a\u6271\u3046\u3053\u3068\u306b\u540c\u610f\u3057\u307e\u3059\u3002 <span class=\"adm-req\">*<\/span><\/span>\n            <\/label>\n\n            <!-- Honeypot (anti-spam; leave empty) -->\n            <div class=\"adm-hp\" aria-hidden=\"true\">\n              <label>Website<input type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\"><\/label>\n            <\/div>\n\n            <div class=\"adm-form-error\" id=\"adm-error\" role=\"alert\"><\/div>\n\n            <button class=\"adm-submit\" id=\"adm-submit\" type=\"submit\">\n              <span class=\"adm-submit__label\">\u7533\u3057\u8fbc\u307f\u3092\u9001\u4fe1<\/span>\n              <svg class=\"adm-submit__arrow\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n            <\/button>\n            <p class=\"adm-privacy-line\">3\u55b6\u696d\u65e5\u4ee5\u5185\u306b\u3054\u8fd4\u7b54\u3044\u305f\u3057\u307e\u3059\u3002\u304a\u5ba2\u69d8\u306e\u60c5\u5831\u306f\u5b89\u5168\u306b\u4fdd\u7ba1\u3055\u308c\u307e\u3059\u3002<\/p>\n          <\/form>\n\n        <\/div>\n      <\/div>\n\n    <\/div><!-- .adm-layout -->\n  <\/div>\n<\/section>\n\n<script>\n(function(){\n  var form = document.getElementById('adm-form');\n  if (!form || form.dataset.admInit) return;\n  form.dataset.admInit = '1';\n\n  var API = '\/wp-json\/glacademy\/v1';\n  var elErr = document.getElementById('adm-error');\n  var elDone = document.getElementById('adm-done');\n  var elDoneRef = document.getElementById('adm-done-ref');\n  var elBtn = document.getElementById('adm-submit');\n  var elDob = document.getElementById('adm-dob');\n  var elGuardian = document.getElementById('adm-guardian');\n  var elGName = document.getElementById('adm-gname');\n  var elGPhone = document.getElementById('adm-gphone');\n  var elGEmail = document.getElementById('adm-gemail');\n  var elCourse = document.getElementById('adm-course');\n\n  \/* Latin-only text (letters, spaces, . , ' - \/ and digits) *\/\n  var LATIN = \/^[A-Za-z0-9 .,'\\\/()\\-]+$\/;\n\n  \/* 1) Load real ERP courses to map programme -> course_id *\/\n  var courseMap = {};\n  fetch(API + '\/erp-courses', { headers: { 'Accept': 'application\/json' } })\n    .then(function(r){ return r.ok ? r.json() : []; })\n    .then(function(list){\n      if (!Array.isArray(list) || !list.length) return;\n      elCourse.innerHTML = '<option value=\"\" selected disabled>\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u2026<\/option>';\n      list.forEach(function(c){\n        if (!c || !c.name) return;\n        courseMap[c.name] = c.id;\n        var o = document.createElement('option');\n        o.value = c.name; o.textContent = c.name;\n        elCourse.appendChild(o);\n      });\n    })\n    .catch(function(){ \/* keep static fallback options *\/ });\n\n  \/* 2) Reveal guardian section when applicant is under 18 *\/\n  function ageFrom(dob){\n    if (!dob) return null;\n    var d = new Date(dob); if (isNaN(d)) return null;\n    var t = new Date(), a = t.getFullYear() - d.getFullYear();\n    var m = t.getMonth() - d.getMonth();\n    if (m < 0 || (m === 0 && t.getDate() < d.getDate())) a--;\n    return a;\n  }\n  function syncGuardian(){\n    var a = ageFrom(elDob.value);\n    var minor = (a !== null && a < 18);\n    elGuardian.hidden = !minor;\n    if (elGName)  elGName.required  = minor;\n    if (elGPhone) elGPhone.required = minor;\n    if (elGEmail) elGEmail.required = minor;\n  }\n  elDob.addEventListener('change', syncGuardian);\n\n  \/* 3) Live validation \u2014 name (Latin) and email (format + Latin) *\/\n  var elName = document.getElementById('adm-name');\n  var elEmail = document.getElementById('adm-email');\n  var elDoc = document.getElementById('adm-doc');\n  var elNameErr = document.getElementById('adm-name-err');\n  var elEmailErr = document.getElementById('adm-email-err');\n  var elDocErr = document.getElementById('adm-doc-err');\n  var elAgain = document.getElementById('adm-again');\n  \/* Email: Latin letters\/digits + standard email symbols only *\/\n  var EMAIL = \/^[A-Za-z0-9._%+\\-]+@[A-Za-z0-9.\\-]+\\.[A-Za-z]{2,}$\/;\n\n  function mark(input, errEl, bad){\n    if (bad) { input.classList.add('adm-input--invalid'); if (errEl) errEl.hidden = false; }\n    else     { input.classList.remove('adm-input--invalid'); if (errEl) errEl.hidden = true; }\n  }\n  function checkName(){ var v = elName.value.trim(); mark(elName, elNameErr, v !== '' && !LATIN.test(v)); }\n  function checkEmail(){ var v = elEmail.value.trim(); mark(elEmail, elEmailErr, v !== '' && !EMAIL.test(v)); }\n  elName.addEventListener('input', checkName);\n  elEmail.addEventListener('input', checkEmail);\n\n  \/* File type\/size guard (PDF or image, \u2264 10 MB) *\/\n  var OKEXT = \/\\.(pdf|jpe?g|png|webp|heic)$\/i;\n  function docValid(){\n    if (!elDoc.files || !elDoc.files.length) return false;\n    var f = elDoc.files[0];\n    return OKEXT.test(f.name) && f.size <= 10 * 1024 * 1024;\n  }\n  elDoc.addEventListener('change', function(){ mark(elDoc, elDocErr, elDoc.files.length && !docValid()); });\n\n  \/* 4) \"Add another applicant\" \u2014 reset by reloading a clean form *\/\n  if (elAgain) elAgain.addEventListener('click', function(){ window.location.reload(); });\n\n  \/* 5) Submit *\/\n  form.addEventListener('submit', function(e){\n    e.preventDefault();\n    elErr.textContent = '';\n\n    var name = form.full_name.value.trim();\n    var email = form.email.value.trim();\n    var phone = form.phone.value.trim();\n    var course = form.course.value;\n    var nat = form.nationality.value;\n    var hear = form.how_did_you_hear.value;\n\n    var ic = form.ic_passport.value.trim();\n    var dob = form.date_of_birth.value;\n\n    \/* Point at the fields that need attention instead of only saying that something is\n       missing. The names are read from each field's own <label>, so this reads correctly\n       in every language without adding a single new string to translate. *\/\n    var required = [\n      [elName, !!name],\n      [document.getElementById('adm-ic'), !!ic],\n      [elDob, !!dob],\n      [elEmail, !!email],\n      [document.getElementById('adm-phone'), !!phone],\n      [document.getElementById('adm-nat'), !!nat],\n      [elCourse, !!course],\n      [document.getElementById('adm-hear'), !!hear],\n      [elDoc, docValid()]\n    ];\n    if (!elGuardian.hidden) {\n      required.push([elGName,  !!(elGName  && elGName.value.trim())]);\n      required.push([elGPhone, !!(elGPhone && elGPhone.value.trim())]);\n      required.push([elGEmail, !!(elGEmail && elGEmail.value.trim())]);\n    }\n\n    var missing = [];\n    required.forEach(function (r) {\n      if (!r[0]) return;\n      \/* No hint element: the inline hints say things like \"Latin letters only\", which would\n         be the wrong explanation for a field that is simply empty. Outline only. *\/\n      mark(r[0], null, !r[1]);\n      if (!r[1]) missing.push(r[0]);\n    });\n\n    if (missing.length) {\n      var names = missing.map(function (el) {\n        var l = el.id ? document.querySelector('label[for=\"' + el.id + '\"]') : null;\n        return l ? l.textContent.replace('*', '').replace(\/\\s+\/g, ' ').trim() : '';\n      }).filter(Boolean);\n      elErr.textContent = '\u5fc5\u9808\u9805\u76ee\uff08*\uff09\u3092\u3059\u3079\u3066\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002' + (names.length ? ' \\u2014 ' + names.join(', ') : '');\n      try { missing[0].focus({ preventScroll: true }); } catch (e) { missing[0].focus(); }\n      missing[0].scrollIntoView({ behavior: 'smooth', block: 'center' });\n      return;\n    }\n    if (!LATIN.test(name)) {\n      checkName(); elErr.textContent = '\u6c0f\u540d\u306f\u82f1\u8a9e\u306e\u30a2\u30eb\u30d5\u30a1\u30d9\u30c3\u30c8\uff08\u30ed\u30fc\u30de\u5b57\uff09\u3067\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002'; return;\n    }\n    if (!EMAIL.test(email)) {\n      checkEmail(); elErr.textContent = '\u6709\u52b9\u306a\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002'; return;\n    }\n    if (!docValid()) {\n      mark(elDoc, elDocErr, true); elErr.textContent = '\u30d1\u30b9\u30dd\u30fc\u30c8\u307e\u305f\u306fIC\u306e\u30b3\u30d4\u30fc\u3092\u6dfb\u4ed8\u3057\u3066\u304f\u3060\u3055\u3044\uff08PDF\u307e\u305f\u306f\u5199\u771f\u300110MB\u4ee5\u4e0b\uff09\u3002'; return;\n    }\n    var gName = elGName ? elGName.value.trim() : '';\n    if (!elGuardian.hidden) {\n      if (!gName || !elGPhone.value.trim()) { elErr.textContent = '\u4fdd\u8b77\u8005\u306e\u6c0f\u540d\u3068\u96fb\u8a71\u756a\u53f7\u3092\u3054\u5165\u529b\u304f\u3060\u3055\u3044\u3002'; return; }\n      if (gName && !LATIN.test(gName)) { elErr.textContent = '\u4fdd\u8b77\u8005\u306e\u6c0f\u540d\u306f\u82f1\u8a9e\u306e\u30a2\u30eb\u30d5\u30a1\u30d9\u30c3\u30c8\u3067\u3054\u8a18\u5165\u304f\u3060\u3055\u3044\u3002'; return; }\n    }\n    if (!form.terms.checked) { elErr.textContent = '\u5165\u5b66\u898f\u7d04\u306b\u3054\u540c\u610f\u304f\u3060\u3055\u3044\u3002'; return; }\n    if (!form.consent.checked) { elErr.textContent = '\u7d9a\u884c\u3059\u308b\u306b\u306f\u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u30dd\u30ea\u30b7\u30fc\u306b\u3054\u540c\u610f\u304f\u3060\u3055\u3044\u3002'; return; }\n    if (form.website && form.website.value) { return; } \/* honeypot *\/\n\n    \/* Build multipart form data (so the passport\/IC file is included) *\/\n    var fd = new FormData();\n    fd.append('full_name', name);\n    fd.append('ic_passport', form.ic_passport.value.trim());\n    fd.append('email', email);\n    fd.append('phone', phone);\n    fd.append('nationality', nat);\n    fd.append('date_of_birth', form.date_of_birth.value);\n    fd.append('address', form.address.value.trim());\n    fd.append('course', course);\n    fd.append('course_id', courseMap[course] || '');\n    fd.append('notes', form.notes.value.trim());\n    fd.append('how_did_you_hear', hear);\n    fd.append('preferred_start', form.preferred_start.value.trim());\n    fd.append('website', form.website ? form.website.value : '');\n    fd.append('document', elDoc.files[0]);\n    \/* CONSENT \u2014 the evidence, not just the gate.\n       Both boxes are validated above, but until now the answers were never sent, so the\n       ERP had to record every website application as \"inferred\" consent: agreement\n       assumed from the fact that the form was submitted, with no time and no IP. These\n       three fields are what turn that into \"captured\" \u2014 we witnessed the act. The version\n       string tells the ERP which wording was on this page, so re-wording it later cannot\n       change what a past applicant is recorded as having agreed to. *\/\n    fd.append('consent_terms',   form.terms.checked   ? '1' : '');\n    fd.append('consent_privacy', form.consent.checked ? '1' : '');\n    fd.append('consent_version', '2026-08-ja');   \/* the wording THIS page shows *\/\n    fd.append('consent_at', new Date().toISOString());\n    if (!elGuardian.hidden) {\n      fd.append('guardian_name', gName);\n      fd.append('guardian_relationship', form.guardian_relationship.value);\n      fd.append('guardian_email', form.guardian_email.value.trim());\n      fd.append('guardian_phone', form.guardian_phone.value.trim());\n    }\n\n    elBtn.disabled = true;\n    elBtn.querySelector('.adm-submit__label').textContent = '\u9001\u4fe1\u4e2d\u2026';\n\n    fetch(API + '\/erp-register', { method: 'POST', body: fd })\n    .then(function(r){ return r.json().then(function(j){ return { ok: r.ok, body: j }; }); })\n    .then(function(res){\n      if (res.ok && res.body && res.body.ok) {\n        form.hidden = true;\n        elDone.hidden = false;\n        if (res.body.ref) { elDoneRef.textContent = '\u53d7\u4ed8\u756a\u53f7: ' + String(res.body.ref).slice(0, 8).toUpperCase(); }\n        elDone.scrollIntoView({ behavior: 'smooth', block: 'center' });\n      } else {\n        var msg = (res.body && (res.body.message || res.body.error)) || '\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u3044\u305f\u3060\u304f\u304b\u3001WhatsApp\u3067\u304a\u554f\u3044\u5408\u308f\u305b\u304f\u3060\u3055\u3044\u3002';\n        elErr.textContent = msg;\n        elBtn.disabled = false;\n        elBtn.querySelector('.adm-submit__label').textContent = '\u7533\u3057\u8fbc\u307f\u3092\u9001\u4fe1';\n      }\n    })\n    .catch(function(){\n      elErr.textContent = '\u73fe\u5728\u9001\u4fe1\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3082\u3046\u4e00\u5ea6\u304a\u8a66\u3057\u3044\u305f\u3060\u304f\u304b\u3001WhatsApp\u3067\u304a\u554f\u3044\u5408\u308f\u305b\u304f\u3060\u3055\u3044\u3002';\n      elBtn.disabled = false;\n      elBtn.querySelector('.adm-submit__label').textContent = '\u7533\u3057\u8fbc\u307f\u3092\u9001\u4fe1';\n    });\n  });\n})();\n<\/script>\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":{"footnotes":""},"class_list":["post-5266","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/pages\/5266","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/comments?post=5266"}],"version-history":[{"count":0,"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/pages\/5266\/revisions"}],"wp:attachment":[{"href":"https:\/\/glacademy.edu.my\/ja\/wp-json\/wp\/v2\/media?parent=5266"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}