{"id":5135,"date":"2023-04-21T07:38:32","date_gmt":"2023-04-21T00:38:32","guid":{"rendered":"https:\/\/inter.mut.ac.th\/?page_id=5135"},"modified":"2026-02-26T11:17:21","modified_gmt":"2026-02-26T04:17:21","slug":"news-and-events-academic-calendar","status":"publish","type":"page","link":"https:\/\/inter.mut.ac.th\/zh\/news-and-events-academic-calendar\/","title":{"rendered":"News and Events &#8211; Academic Calendar"},"content":{"rendered":"<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700&family=Kanit:wght@300;400;500;600&display=swap\" rel=\"stylesheet\">\r\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\r\n\r\n    <style>\r\n        \/* [\u0e04\u0e07 CSS \u0e40\u0e14\u0e34\u0e21\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e44\u0e27\u0e49\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14 \u0e44\u0e21\u0e48\u0e08\u0e33\u0e40\u0e1b\u0e47\u0e19\u0e15\u0e49\u0e2d\u0e07\u0e41\u0e01\u0e49\u0e44\u0e02 CSS \u0e40\u0e1e\u0e23\u0e32\u0e30\u0e40\u0e02\u0e35\u0e22\u0e19\u0e21\u0e32\u0e14\u0e35\u0e41\u0e25\u0e49\u0e27] *\/\r\n        #academic-calendar-widget-wrapper {\r\n            --ac-red: #8b1d29; \r\n            --ac-red-light: #fdf2f2;\r\n            --ac-red-hover: #7a1823;\r\n            --ac-bg: #f8fafc; \r\n            --ac-white: #ffffff;\r\n            --ac-text: #0f172a; \r\n            --ac-sub: #64748b;\r\n            --ac-border: #e2e8f0;\r\n            \r\n            --st-holiday-bg: #fee2e2; --st-holiday-txt: #ef4444;\r\n            --st-exam-bg: #fef3c7; --st-exam-txt: #d97706;\r\n            --st-aca-bg: #e0e7ff; --st-aca-txt: #4f46e5;\r\n\r\n            font-family: 'Inter', 'Kanit', sans-serif;\r\n            background-color: var(--ac-bg);\r\n            padding: 40px 20px;\r\n            color: var(--ac-text);\r\n            line-height: 1.5;\r\n            -webkit-font-smoothing: antialiased;\r\n        }\r\n        #academic-calendar-widget-wrapper * { box-sizing: border-box; }\r\n\r\n        .ac-layout { max-width: 1150px; margin: 0 auto; display: grid; grid-template-columns: 320px 1fr; gap: 30px; align-items: start; }\r\n\r\n        .ac-mini-cal { background: var(--ac-white); border-radius: 24px; padding: 28px; box-shadow: 0 4px 20px -5px rgba(0,0,0,0.05); border: 1px solid rgba(0,0,0,0.03); position: sticky; top: 20px; }\r\n        .mc-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; }\r\n        .mc-title { text-align: center; display: flex; flex-direction: column; }\r\n        .mc-m { font-size: 18px; font-weight: 700; color: var(--ac-text); }\r\n        .mc-y { font-size: 13px; color: var(--ac-sub); font-weight: 500; }\r\n        .mc-btn { cursor: pointer; width: 36px; height: 36px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: var(--ac-sub); background: var(--ac-bg); transition: 0.2s; }\r\n        .mc-btn:hover { background: var(--ac-red-light); color: var(--ac-red); }\r\n        \r\n        .mc-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; text-align: center; }\r\n        .mc-dn { font-size: 12px; font-weight: 600; color: #94a3b8; margin-bottom: 8px; }\r\n        .mc-dt { height: 38px; display: flex; align-items: center; justify-content: center; font-size: 14px; border-radius: 10px; cursor: default; transition: 0.2s; font-weight: 500; }\r\n        .mc-dt:not(.other):not(.event-academic):not(.event-exam):not(.event-holiday):not(.today):hover { background: #f1f5f9; }\r\n        .mc-dt.event-academic { background: var(--st-aca-bg); color: var(--st-aca-txt); font-weight: 700; }\r\n        .mc-dt.event-exam { background: var(--st-exam-bg); color: var(--st-exam-txt); font-weight: 700; }\r\n        .mc-dt.event-holiday { background: var(--st-holiday-bg); color: var(--st-holiday-txt); font-weight: 700; }\r\n        .mc-dt.event-academic:hover { background: #c7d2fe; }\r\n        .mc-dt.event-exam:hover { background: #fde68a; }\r\n        .mc-dt.event-holiday:hover { background: #fecaca; }\r\n        .mc-dt.today { background: var(--ac-red); color: white; font-weight: 700; box-shadow: 0 4px 10px rgba(139, 29, 41, 0.25); }\r\n        .mc-dt.today:hover { background: var(--ac-red-hover); }\r\n        .mc-dt.other { color: #cbd5e1; font-weight: 400; }\r\n\r\n        .ac-legend { margin-top: 30px; padding-top: 20px; border-top: 1px solid var(--ac-border); display: flex; flex-direction: column; gap: 12px; }\r\n        .ac-leg-item { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ac-sub); font-weight: 500; }\r\n        .ac-leg-dot { width: 10px; height: 10px; border-radius: 50%; }\r\n        .leg-aca { background: var(--st-aca-txt); }\r\n        .leg-hol { background: var(--st-holiday-txt); }\r\n        .leg-exm { background: var(--st-exam-txt); }\r\n\r\n        .ac-main { background: var(--ac-white); border-radius: 24px; box-shadow: 0 4px 25px -5px rgba(0,0,0,0.05); overflow: hidden; border: 1px solid rgba(0,0,0,0.03); display: flex; flex-direction: column; min-height: 600px; }\r\n        .ac-h-sec { padding: 35px 35px 25px; border-bottom: 1px solid var(--ac-border); }\r\n        .ac-top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 25px; gap: 20px; }\r\n        \r\n        .ac-header-text h2 { color: var(--ac-red); margin: 0; font-size: 28px; font-weight: 700; letter-spacing: -0.5px; }\r\n        .ac-header-text p { margin: 6px 0 0 0; color: var(--ac-sub); font-size: 14px; font-weight: 400; }\r\n        \r\n        .ac-dl-btn { display: inline-flex; align-items: center; gap: 8px; background: white; color: var(--ac-red); border: 1px solid var(--ac-border); text-decoration: none; padding: 10px 18px; border-radius: 12px; font-weight: 600; font-size: 14px; transition: 0.2s; box-shadow: 0 2px 5px rgba(0,0,0,0.02); }\r\n        .ac-dl-btn:hover { border-color: var(--ac-red); background: var(--ac-red-light); transform: translateY(-1px); }\r\n        \r\n        .ac-ctrls { display: flex; flex-wrap: wrap; gap: 15px; align-items: center; }\r\n        .ac-sel { padding: 10px 15px; border-radius: 12px; border: 1px solid var(--ac-border); min-width: 200px; font-size: 14px; font-family: inherit; font-weight: 500; color: var(--ac-text); outline: none; background: white; cursor: pointer; }\r\n        .ac-sel:focus { border-color: var(--ac-red); box-shadow: 0 0 0 3px var(--ac-red-light); }\r\n        \r\n        .ac-tabs { display: flex; background: var(--ac-bg); padding: 5px; border-radius: 14px; }\r\n        .ac-t-item { padding: 8px 20px; border: none; background: transparent; font-weight: 600; font-size: 13px; color: var(--ac-sub); cursor: pointer; border-radius: 10px; transition: 0.2s; font-family: inherit; }\r\n        .ac-t-item:hover { color: var(--ac-text); }\r\n        .ac-t-item.active { background: white; color: var(--ac-red); box-shadow: 0 2px 8px rgba(0,0,0,0.06); }\r\n\r\n        .ac-search { padding: 10px 15px 10px 35px; border-radius: 12px; border: 1px solid var(--ac-border); font-family: inherit; font-size: 14px; width: 100%; max-width: 240px; outline: none; transition: 0.2s; background: white url('data:image\/svg+xml;utf8,<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%2394a3b8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"11\" cy=\"11\" r=\"8\"><\/circle><line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\"><\/line><\/svg>') no-repeat 12px center; }\r\n        .ac-search:focus { border-color: var(--ac-red); box-shadow: 0 0 0 3px var(--ac-red-light); }\r\n\r\n        .ac-list { padding: 25px 35px 35px; flex-grow: 1; }\r\n        .ac-empty { text-align: center; padding: 60px 20px; color: var(--ac-sub); }\r\n        .ac-empty i { font-size: 40px; margin-bottom: 15px; color: #cbd5e1; }\r\n        .ac-empty p { font-size: 15px; font-weight: 500; }\r\n\r\n        .ac-card { display: flex; gap: 20px; align-items: center; padding: 18px 20px; border-radius: 16px; border: 1px solid var(--ac-border); margin-bottom: 12px; background: white; transition: all 0.2s ease; cursor: default; }\r\n        .ac-card:hover { border-color: #cbd5e1; transform: translateY(-2px); box-shadow: 0 10px 20px -10px rgba(0,0,0,0.05); }\r\n        \r\n        .ac-d-box { display: flex; flex-direction: column; align-items: center; justify-content: center; background: var(--ac-red-light); color: var(--ac-red);  border-radius: 12px; min-width: 70px; height: 70px; flex-shrink: 0; }\r\n        .ac-d-box.event-academic { background: var(--st-aca-bg); color: var(--st-aca-txt); }\r\n        .ac-d-box.event-exam { background: var(--st-exam-bg); color: var(--st-exam-txt); }\r\n        .ac-d-box.event-holiday { background: var(--st-holiday-bg); color: var(--st-holiday-txt); }\r\n        .ac-d-num { font-size: 22px; font-weight: 700; line-height: 1; }\r\n        .ac-d-mon { font-size: 11px; font-weight: 700; text-transform: uppercase; margin-top: 4px; letter-spacing: 0.5px; }\r\n\r\n        .ac-info { flex-grow: 1; min-width: 0; }\r\n        .ac-i-title { font-weight: 600; font-size: 16px; margin-bottom: 6px; color: var(--ac-text); line-height: 1.3; }\r\n        .ac-i-sub { font-size: 13px; color: var(--ac-sub); display: flex; align-items: center; gap: 6px; font-weight: 500; }\r\n\r\n        .ac-stat { flex-shrink: 0; display: flex; justify-content: flex-end; width: 130px; }\r\n        .ac-tag { display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 20px; font-size: 12px; font-weight: 600; text-transform: capitalize; }\r\n        .tag-holiday { background: var(--st-holiday-bg); color: var(--st-holiday-txt); }\r\n        .tag-exam { background: var(--st-exam-bg); color: var(--st-exam-txt); }\r\n        .tag-academic { background: var(--st-aca-bg); color: var(--st-aca-txt); }\r\n\r\n        @media (max-width: 900px) {\r\n            .ac-layout { grid-template-columns: 1fr; gap: 20px; }\r\n            .ac-mini-cal { display: block; position: relative; top: 0; border-radius: 20px; padding: 20px; }\r\n            .ac-main { min-height: 0; border-radius: 20px; }\r\n            .ac-h-sec { padding: 25px; }\r\n            .ac-list { padding: 20px 25px; }\r\n            .ac-card { gap: 15px; padding: 15px; border-radius: 14px; }\r\n            .ac-d-box { min-width: 60px; height: 60px; border-radius: 10px; }\r\n            .ac-d-num { font-size: 20px; }\r\n        }\r\n        @media (max-width: 600px) {\r\n            #academic-calendar-widget-wrapper { padding: 20px 10px; }\r\n            .ac-top { flex-direction: column; gap: 12px; margin-bottom: 20px; }\r\n            .ac-header-text h2 { font-size: 24px; }\r\n            .ac-dl-btn { width: 100%; justify-content: center; padding: 12px; }\r\n            .ac-ctrls { flex-direction: column; align-items: stretch; gap: 12px; }\r\n            .ac-sel { max-width: none; padding: 12px 15px; }\r\n            .ac-search { max-width: none; padding: 12px 15px 12px 35px; }\r\n            .ac-tabs { justify-content: space-between; padding: 4px; }\r\n            .ac-t-item { padding: 8px 5px; flex: 1; text-align: center; font-size: 12px; }\r\n            .ac-h-sec { padding: 20px 15px; }\r\n            .ac-list { padding: 15px; }\r\n            .ac-card { flex-direction: column; align-items: flex-start; gap: 12px; position: relative; padding: 16px; }\r\n            .ac-d-box { position: absolute; top: 16px; right: 16px; min-width: 55px; height: 55px; }\r\n            .ac-info { padding-right: 70px; width: 100%; } \r\n            .ac-i-title { font-size: 15px; }\r\n            .ac-stat { width: 100%; justify-content: flex-start; margin-top: 4px; }\r\n            .ac-tag { font-size: 11px; padding: 5px 12px; }\r\n        }\r\n    <\/style>\r\n\r\n    <div id=\"academic-calendar-widget-wrapper\">\r\n        <div class=\"ac-layout\">\r\n            <div class=\"ac-mini-cal\">\r\n                <div class=\"mc-head\">\r\n                    <div class=\"mc-btn\" onclick=\"changeMonth(-1)\"><i class=\"fa-solid fa-chevron-left\"><\/i><\/div>\r\n                    <div class=\"mc-title\">\r\n                        <span class=\"mc-m\" id=\"mc-month\">Month<\/span>\r\n                        <span class=\"mc-y\" id=\"mc-year\">Year<\/span>\r\n                    <\/div>\r\n                    <div class=\"mc-btn\" onclick=\"changeMonth(1)\"><i class=\"fa-solid fa-chevron-right\"><\/i><\/div>\r\n                <\/div>\r\n                <div class=\"mc-grid\" id=\"mc-grid\"><\/div>\r\n                \r\n                <div class=\"ac-legend\">\r\n                    <div class=\"ac-leg-item\"><div class=\"ac-leg-dot leg-aca\"><\/div> Academic Events<\/div>\r\n                    <div class=\"ac-leg-item\"><div class=\"ac-leg-dot leg-exm\"><\/div> Examination Period<\/div>\r\n                    <div class=\"ac-leg-item\"><div class=\"ac-leg-dot leg-hol\"><\/div> Holidays<\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"ac-main\">\r\n                <div class=\"ac-h-sec\">\r\n                    <div class=\"ac-top\">\r\n                        <div class=\"ac-header-text\">\r\n                            <h2>Academic Calendar<\/h2>\r\n                            <p>Plan your semester effectively<\/p>\r\n                        <\/div>\r\n                        <a href=\"#\" id=\"ac-dl\" target=\"_blank\" class=\"ac-dl-btn\"><i class=\"fa-solid fa-download\"><\/i> Download PDF<\/a>\r\n                    <\/div>\r\n                    <div class=\"ac-ctrls\">\r\n                        <select id=\"ac-sem\" class=\"ac-sel\" onchange=\"setSem(this.value)\">\r\n                            <option value=\"2025-2\" selected>Semester 2 \/ 2025<\/option>\r\n                            <option value=\"2025-3\">Semester 3 (Summer) \/ 2025<\/option>\r\n                        <\/select>\r\n                        <div class=\"ac-tabs\">\r\n                            <button class=\"ac-t-item active\" onclick=\"setDeg(this, 'bachelor')\">Bachelor<\/button>\r\n                            <button class=\"ac-t-item\" onclick=\"setDeg(this, 'master')\">Master<\/button>\r\n                            <button class=\"ac-t-item\" onclick=\"setDeg(this, 'doctoral')\">Doctoral<\/button>\r\n                        <\/div>\r\n                        <input type=\"text\" class=\"ac-search\" placeholder=\"Search events...\" oninput=\"handleSearch(this.value)\">\r\n                    <\/div>\r\n                <\/div>\r\n                <div class=\"ac-list\" id=\"ac-list\"><\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        let currDeg = 'bachelor';\r\n        let currSem = '2025-2';\r\n        let searchTerm = '';\r\n        let searchTimeout = null; \/\/ \u0e40\u0e1e\u0e34\u0e48\u0e21\u0e15\u0e31\u0e27\u0e41\u0e1b\u0e23\u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e17\u0e33 Debounce\r\n        \r\n        let currentDate = new Date();\r\n        let displayedMonth = currentDate.getMonth();\r\n        let displayedYear = currentDate.getFullYear();\r\n\r\n        const acData = {\r\n            \/\/ [\u0e04\u0e07\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 acData \u0e40\u0e14\u0e34\u0e21\u0e02\u0e2d\u0e07\u0e04\u0e38\u0e13\u0e44\u0e27\u0e49\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14]\r\n            \"2025-2\": { \r\n                pdf: { bachelor: \"https:\/\/drive.google.com\/uc?id=1xFppkrzUan8zmk-V_doCqvS68fUFD4N6&export=download\", master: \"https:\/\/drive.google.com\/uc?id=1TZUk3Jw3BD-3VJ7PRTPmdzvOQPXNjlP1&export=download\", doctoral: \"https:\/\/drive.google.com\/uc?id=1ad85woZRr2m_nJm82PxrMKuTyPk_FosQ&export=download\" },\r\n                bachelor: [\r\n                    {d:\"15\",m:\"Nov\",y:\"2025\",e:\"Start Date Lesson For All Programs (Semester 2)\",t:\"academic\"}, {d:\"05\",m:\"Dec\",y:\"2025\",e:\"Father's Day\",t:\"holiday\"}, {d:\"10\",m:\"Dec\",y:\"2025\",e:\"Constitution Day\",t:\"holiday\"}, {d:\"31\",m:\"Dec\",y:\"2025\",e:\"New Year's Eve\",t:\"holiday\"}, {d:\"01\",m:\"Jan\",y:\"2026\",e:\"New Year's Day\",t:\"holiday\"}, {d:\"10-18\",m:\"Jan\",y:\"2026\",e:\"Midterm Exams\",t:\"exam\"}, {d:\"03\",m:\"Mar\",y:\"2026\",e:\"Makha Bucha Day\",t:\"holiday\"}, {d:\"08\",m:\"Mar\",y:\"2026\",e:\"The last day of classes and Instruction for all programs\",t:\"academic\"}, {d:\"14-29\",m:\"Mar\",y:\"2026\",e:\"Final Examination\",t:\"exam\"}, {d:\"06\",m:\"Apr\",y:\"2026\",e:\"Chakri Memorial Day - King Buddha Yodfa Chulaloke the Great and the Establishment of the Chakri Dynasty (Public Holiday)\",t:\"holiday\"}, {d:\"10\",m:\"Apr\",y:\"2026\",e:\"Announcement of Examination Results For Semester 2 Year 2025\",t:\"academic\"}, {d:\"13-15\",m:\"Apr\",y:\"2026\",e:\"Songkran Festival (Public Holiday)\",t:\"holiday\"}, {d:\"18\",m:\"Apr\",y:\"2026\",e:\"Start Date Lesson For Programs Semester 3 Year 2025\",t:\"academic\"}\r\n                ], \r\n                master: [\r\n                    {d:\"15\",m:\"Nov\",y:\"2025\",e:\"Start Date Lesson For All Programs (Semester 2)\",t:\"academic\"}, {d:\"05\",m:\"Dec\",y:\"2025\",e:\"Father's Day\",t:\"holiday\"}, {d:\"10\",m:\"Dec\",y:\"2025\",e:\"Constitution Day\",t:\"holiday\"}, {d:\"31\",m:\"Dec\",y:\"2025\",e:\"New Year's Eve\",t:\"holiday\"}, {d:\"01\",m:\"Jan\",y:\"2026\",e:\"New Year's Day\",t:\"holiday\"}, {d:\"17-25\",m:\"Jan\",y:\"2026\",e:\"Midterm Exams\",t:\"exam\"}, {d:\"03\",m:\"Mar\",y:\"2026\",e:\"Makha Bucha Day\",t:\"holiday\"}, {d:\"08\",m:\"Mar\",y:\"2026\",e:\"The last day of classes and Instruction for all programs\",t:\"academic\"}, {d:\"14-29\",m:\"Mar\",y:\"2026\",e:\"Final Examination\",t:\"exam\"}, {d:\"06\",m:\"Apr\",y:\"2026\",e:\"Chakri Memorial Day - King Buddha Yodfa Chulaloke the Great and the Establishment of the Chakri Dynasty (Public Holiday)\",t:\"holiday\"}, {d:\"10\",m:\"Apr\",y:\"2026\",e:\"Announcement of Examination Results For Semester 2 Year 2025\",t:\"academic\"}, {d:\"13-15\",m:\"Apr\",y:\"2026\",e:\"Songkran Festival (Public Holiday)\",t:\"holiday\"}, {d:\"18\",m:\"Apr\",y:\"2026\",e:\"Start Date Lesson For Programs Semester 3 Year 2025\",t:\"academic\"}\r\n                ],\r\n                doctoral: [\r\n                    {d:\"15\",m:\"Nov\",y:\"2025\",e:\"Start Date Lesson For All Programs (Semester 2)\",t:\"academic\"}, {d:\"05\",m:\"Dec\",y:\"2025\",e:\"Father's Day\",t:\"holiday\"}, {d:\"10\",m:\"Dec\",y:\"2025\",e:\"Constitution Day\",t:\"holiday\"}, {d:\"31\",m:\"Dec\",y:\"2025\",e:\"New Year's Eve\",t:\"holiday\"}, {d:\"01\",m:\"Jan\",y:\"2026\",e:\"New Year's Day\",t:\"holiday\"}, {d:\"17-25\",m:\"Jan\",y:\"2026\",e:\"Midterm Exams\",t:\"exam\"}, {d:\"03\",m:\"Mar\",y:\"2026\",e:\"Makha Bucha Day\",t:\"holiday\"}, {d:\"08\",m:\"Mar\",y:\"2026\",e:\"The last day of classes and Instruction for all programs\",t:\"academic\"}, {d:\"14-29\",m:\"Mar\",y:\"2026\",e:\"Final Examination\",t:\"exam\"}, {d:\"06\",m:\"Apr\",y:\"2026\",e:\"Chakri Memorial Day - King Buddha Yodfa Chulaloke the Great and the Establishment of the Chakri Dynasty (Public Holiday)\",t:\"holiday\"}, {d:\"10\",m:\"Apr\",y:\"2026\",e:\"Announcement of Examination Results For Semester 2 Year 2025\",t:\"academic\"}, {d:\"13-15\",m:\"Apr\",y:\"2026\",e:\"Songkran Festival (Public Holiday)\",t:\"holiday\"}, {d:\"18\",m:\"Apr\",y:\"2026\",e:\"Start Date Lesson For Programs Semester 3 Year 2025\",t:\"academic\"}\r\n                ]\r\n            },\r\n            \"2025-3\": {\r\n                pdf: { bachelor: \"#\", master: \"#\", doctoral: \"#\" },\r\n                bachelor: [\r\n                    {d:\"18\",m:\"Apr\",y:\"2026\",e:\"Start Date Lesson For All Programs (Semester 3)\",t:\"academic\"}, {d:\"04\",m:\"May\",y:\"2026\",e:\"Coronation Day\",t:\"holiday\"}, {d:\"05\",m:\"May\",y:\"2026\",e:\"Royal Ploughing Ceremony Day\",t:\"holiday\"}, {d:\"29\",m:\"May\",y:\"2026\",e:\"The last day of classes and Instruction for all programs\",t:\"academic\"}, {d:\"30\",m:\"May\",y:\"2026\",e:\"Final Examinations\",t:\"exam\"}, {d:\"31\",m:\"May\",y:\"2026\",e:\"Visakha Bucha Day\",t:\"holiday\"}, {d:\"01\",m:\"June\",y:\"2026\",e:\"Final Examinations\",t:\"academic\"}, {d:\"03\",m:\"June\",y:\"2026\",e:\"Her Majesty Queen Suthida\u2019s Birthday (Public Holiday)\",t:\"holiday\"}\r\n                ], \r\n                master: [ \r\n                    {d:\"18\",m:\"Apr\",y:\"2026\",e:\"Start Date Lesson For All Programs (Semester 3)\",t:\"academic\"}, {d:\"04\",m:\"May\",y:\"2026\",e:\"Coronation Day\",t:\"holiday\"}, {d:\"05\",m:\"May\",y:\"2026\",e:\"Royal Ploughing Ceremony Day\",t:\"holiday\"}, {d:\"29\",m:\"May\",y:\"2026\",e:\"The last day of classes and Instruction for all programs\",t:\"academic\"}, {d:\"30\",m:\"May\",y:\"2026\",e:\"Final Examinations\",t:\"exam\"}, {d:\"31\",m:\"May\",y:\"2026\",e:\"Visakha Bucha Day\",t:\"holiday\"}, {d:\"01\",m:\"June\",y:\"2026\",e:\"Final Examinations\",t:\"academic\"}, {d:\"03\",m:\"June\",y:\"2026\",e:\"Her Majesty Queen Suthida\u2019s Birthday (Public Holiday)\",t:\"holiday\"}\r\n                ],\r\n                doctoral: [ {d:\"#\", m:\"#\", y:\"#\", e:\"#\", t:\"#\"} ]\r\n            }\r\n        };\r\n\r\n        const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\r\n        \r\n        \/\/ Dictionary \u0e41\u0e1a\u0e1a O(1) \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e2b\u0e32\u0e40\u0e14\u0e37\u0e2d\u0e19\u0e42\u0e14\u0e22\u0e44\u0e21\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e40\u0e0a\u0e47\u0e04 String \u0e43\u0e19\u0e25\u0e39\u0e1b\r\n        const monthIndexMap = {\r\n            \"jan\": 0, \"feb\": 1, \"mar\": 2, \"apr\": 3, \"may\": 4, \"jun\": 5, \"june\": 5, \r\n            \"jul\": 6, \"july\": 6, \"aug\": 7, \"sep\": 8, \"oct\": 9, \"nov\": 10, \"dec\": 11\r\n        };\r\n\r\n        function setSem(sem) {\r\n            currSem = sem;\r\n            renderCal(); \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\r\n            renderEvents(); \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e25\u0e34\u0e2a\u0e15\u0e4c\r\n        }\r\n\r\n        function setDeg(btn, deg) {\r\n            document.querySelectorAll('.ac-t-item').forEach(b => b.classList.remove('active'));\r\n            if(btn) btn.classList.add('active');\r\n            currDeg = deg;\r\n            renderCal(); \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e1b\u0e0f\u0e34\u0e17\u0e34\u0e19\r\n            renderEvents(); \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e25\u0e34\u0e2a\u0e15\u0e4c\r\n        }\r\n\r\n        function handleSearch(val) {\r\n            \/\/ [\u0e41\u0e01\u0e49\u0e44\u0e02\u0e41\u0e25\u0e49\u0e27] \u0e43\u0e2a\u0e48 Debounce \u0e1b\u0e49\u0e2d\u0e07\u0e01\u0e31\u0e19 CPU Spike \u0e15\u0e2d\u0e19\u0e1e\u0e34\u0e21\u0e1e\u0e4c\u0e23\u0e31\u0e27\u0e46\r\n            clearTimeout(searchTimeout);\r\n            searchTimeout = setTimeout(() => {\r\n                searchTerm = val.toLowerCase().trim();\r\n                renderEvents(); \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e40\u0e09\u0e1e\u0e32\u0e30\u0e25\u0e34\u0e2a\u0e15\u0e4c \u0e44\u0e21\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e23\u0e31\u0e19 renderCal() \u0e41\u0e25\u0e49\u0e27!\r\n            }, 250); \/\/ \u0e23\u0e2d 0.25 \u0e27\u0e34 \u0e04\u0e48\u0e2d\u0e22\u0e1b\u0e23\u0e30\u0e21\u0e27\u0e25\u0e1c\u0e25\r\n        }\r\n\r\n        function changeMonth(dir) {\r\n            displayedMonth += dir;\r\n            if (displayedMonth > 11) { displayedMonth = 0; displayedYear++; }\r\n            else if (displayedMonth < 0) { displayedMonth = 11; displayedYear--; }\r\n            renderCal();\r\n        }\r\n\r\n        function renderCal() {\r\n            document.getElementById('mc-month').textContent = monthNames[displayedMonth];\r\n            document.getElementById('mc-year').textContent = displayedYear;\r\n            \r\n            const firstDay = new Date(displayedYear, displayedMonth, 1).getDay();\r\n            const daysInMonth = new Date(displayedYear, displayedMonth + 1, 0).getDate();\r\n            const daysInPrevMonth = new Date(displayedYear, displayedMonth, 0).getDate();\r\n            \r\n            let html = '';\r\n            const days = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\r\n            days.forEach(d => { html += `<div class=\"mc-dn\">${d}<\/div>`; });\r\n            \r\n            const events = acData[currSem]?.[currDeg] || [];\r\n            const eventMap = new Map(); \r\n            \r\n            events.forEach(e => {\r\n                if(e.m === \"#\") return;\r\n                \/\/ [\u0e41\u0e01\u0e49\u0e44\u0e02\u0e41\u0e25\u0e49\u0e27] \u0e43\u0e0a\u0e49 Dictionary \u0e14\u0e36\u0e07 Index \u0e40\u0e14\u0e37\u0e2d\u0e19\u0e41\u0e17\u0e19\u0e01\u0e32\u0e23\u0e2b\u0e31\u0e48\u0e19 String\r\n                const eMonthString = e.m.toLowerCase().substring(0, 4); \r\n                const eMonthIndex = monthIndexMap[eMonthString] !== undefined ? monthIndexMap[eMonthString] : monthIndexMap[e.m.toLowerCase().substring(0, 3)];\r\n\r\n                if(eMonthIndex === displayedMonth && parseInt(e.y) === displayedYear) {\r\n                    if(e.d.includes('-')) {\r\n                        let parts = e.d.split('-');\r\n                        let start = parseInt(parts[0]);\r\n                        let end = parseInt(parts[1]);\r\n                        for(let i = start; i <= end; i++) {\r\n                            if(!eventMap.has(i) || e.t === 'exam' || (e.t === 'holiday' && eventMap.get(i) !== 'exam')) {\r\n                                eventMap.set(i, e.t);\r\n                            }\r\n                        }\r\n                    } else {\r\n                        let day = parseInt(e.d);\r\n                        if(!eventMap.has(day) || e.t === 'exam' || (e.t === 'holiday' && eventMap.get(day) !== 'exam')) {\r\n                            eventMap.set(day, e.t);\r\n                        }\r\n                    }\r\n                }\r\n            });\r\n\r\n            for (let i = firstDay - 1; i >= 0; i--) {\r\n                html += `<div class=\"mc-dt other\">${daysInPrevMonth - i}<\/div>`;\r\n            }\r\n            \r\n            const today = new Date();\r\n            const isCurrentMonth = today.getMonth() === displayedMonth && today.getFullYear() === displayedYear;\r\n            const todayDate = today.getDate();\r\n            \r\n            for (let i = 1; i <= daysInMonth; i++) {\r\n                let classes = 'mc-dt';\r\n                if (isCurrentMonth && i === todayDate) classes += ' today';\r\n                if (eventMap.has(i)) classes += ` event-${eventMap.get(i)}`;\r\n                html += `<div class=\"${classes}\">${i}<\/div>`;\r\n            }\r\n            \r\n            const totalCells = firstDay + daysInMonth;\r\n            let nextDays = 1;\r\n            while(totalCells + nextDays - 1 < 42) {\r\n                html += `<div class=\"mc-dt other\">${nextDays}<\/div>`;\r\n                nextDays++;\r\n            }\r\n            \r\n            document.getElementById('mc-grid').innerHTML = html;\r\n        }\r\n\r\n        function renderEvents() {\r\n            const data = acData[currSem]?.[currDeg] || [];\r\n            \r\n            \/\/ \u0e2d\u0e31\u0e1b\u0e40\u0e14\u0e15\u0e1b\u0e38\u0e48\u0e21 PDF\r\n            const btn = document.getElementById('ac-dl');\r\n            if(acData[currSem] && acData[currSem].pdf && acData[currSem].pdf[currDeg]) {\r\n                btn.href = acData[currSem].pdf[currDeg];\r\n                btn.style.display = btn.href === \"#\" ? \"none\" : \"inline-flex\"; \/\/ \u0e0b\u0e48\u0e2d\u0e19\u0e1b\u0e38\u0e48\u0e21\u0e16\u0e49\u0e32\u0e44\u0e21\u0e48\u0e21\u0e35\u0e44\u0e1f\u0e25\u0e4c\r\n            }\r\n            \r\n            let filteredData = data;\r\n            if (searchTerm) {\r\n                filteredData = data.filter(i => \r\n                    i.e !== \"#\" && \/\/ \u0e02\u0e49\u0e32\u0e21\u0e04\u0e48\u0e32 dummy\r\n                    (i.e.toLowerCase().includes(searchTerm) || \r\n                     i.m.toLowerCase().includes(searchTerm) || \r\n                     i.t.toLowerCase().includes(searchTerm))\r\n                );\r\n            }\r\n\r\n            const listEl = document.getElementById('ac-list');\r\n            \r\n            if(filteredData.length === 0 || filteredData[0].e === \"#\") {\r\n                listEl.innerHTML = `\r\n                    <div class=\"ac-empty\">\r\n                        <i class=\"fa-regular fa-calendar-xmark\"><\/i>\r\n                        <p>No events found<\/p>\r\n                    <\/div>`;\r\n            } else {\r\n                \/\/ \u0e2a\u0e23\u0e49\u0e32\u0e07 HTML \u0e41\u0e1a\u0e1a\u0e23\u0e27\u0e14\u0e40\u0e14\u0e35\u0e22\u0e27 \u0e44\u0e21\u0e48\u0e15\u0e49\u0e2d\u0e07\u0e1e\u0e36\u0e48\u0e07 DOM API \u0e2b\u0e25\u0e32\u0e22\u0e23\u0e2d\u0e1a\r\n                let listHtml = '';\r\n                filteredData.forEach(i => {\r\n                    const icon = i.t === 'holiday' ? 'fa-umbrella-beach' : (i.t === 'exam' ? 'fa-pen-to-square' : 'fa-graduation-cap');\r\n                    listHtml += `\r\n                        <div class=\"ac-card\">\r\n                            <div class=\"ac-d-box event-${i.t}\">\r\n                                <span class=\"ac-d-num\">${i.d}<\/span>\r\n                                <span class=\"ac-d-mon\">${i.m}<\/span>\r\n                            <\/div>\r\n                            <div class=\"ac-info\">\r\n                                <div class=\"ac-i-title\">${i.e}<\/div>\r\n                                <div class=\"ac-i-sub\"><i class=\"fa-regular fa-calendar\"><\/i> ${i.y}<\/div>\r\n                            <\/div>\r\n                            <div class=\"ac-stat\">\r\n                                <span class=\"ac-tag tag-${i.t}\">\r\n                                    <i class=\"fa-solid ${icon}\"><\/i> ${i.t}\r\n                                <\/span>\r\n                            <\/div>\r\n                        <\/div>\r\n                    `;\r\n                });\r\n                listEl.innerHTML = listHtml;\r\n            }\r\n            \r\n        }\r\n\r\n        document.addEventListener('DOMContentLoaded', () => {\r\n            renderCal();\r\n            renderEvents();\r\n        });\r\n    <\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":5,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"content-type":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"class_list":["post-5135","page","type-page","status-publish","hentry"],"featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","trp-custom-language-flag":"","menu-24x24":"","menu-36x36":"","menu-48x48":""},"post_excerpt_stackable_v2":"<p>Month Year Academic Events Examination Period Holidays Academic Calendar Plan your semester effectively Download PDF Semester 2 \/ 2025 Semester 3 (Summer) \/ 2025 Bachelor Master Doctoral<\/p>\n","category_list_v2":"","author_info_v2":{"name":"intermutadministrator","url":"https:\/\/inter.mut.ac.th\/zh\/author\/intermutadministrator\/"},"comments_num_v2":"0 \u6761\u8bc4\u8bba","yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>News and Events - Academic Calendar - International College<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/inter.mut.ac.th\/zh\/news-and-events-academic-calendar\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"News and Events - Academic Calendar - International College\" \/>\n<meta property=\"og:url\" content=\"https:\/\/inter.mut.ac.th\/zh\/news-and-events-academic-calendar\/\" \/>\n<meta property=\"og:site_name\" content=\"International College\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-26T04:17:21+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/news-and-events-academic-calendar\\\/\",\"url\":\"https:\\\/\\\/inter.mut.ac.th\\\/news-and-events-academic-calendar\\\/\",\"name\":\"News and Events - Academic Calendar - International College\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#website\"},\"datePublished\":\"2023-04-21T00:38:32+00:00\",\"dateModified\":\"2026-02-26T04:17:21+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/news-and-events-academic-calendar\\\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/inter.mut.ac.th\\\/news-and-events-academic-calendar\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/news-and-events-academic-calendar\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/inter.mut.ac.th\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"News and Events &#8211; Academic Calendar\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#website\",\"url\":\"https:\\\/\\\/inter.mut.ac.th\\\/\",\"name\":\"Mahanakorn University | International College\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/inter.mut.ac.th\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#organization\",\"name\":\"Mahanakorn University International College\",\"url\":\"https:\\\/\\\/inter.mut.ac.th\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mutic.mut.ac.th\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/logo_red.png\",\"contentUrl\":\"https:\\\/\\\/www.mutic.mut.ac.th\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/logo_red.png\",\"width\":1208,\"height\":250,\"caption\":\"Mahanakorn University International College\"},\"image\":{\"@id\":\"https:\\\/\\\/inter.mut.ac.th\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"News and Events - Academic Calendar - International College","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/inter.mut.ac.th\/zh\/news-and-events-academic-calendar\/","og_locale":"zh_CN","og_type":"article","og_title":"News and Events - Academic Calendar - International College","og_url":"https:\/\/inter.mut.ac.th\/zh\/news-and-events-academic-calendar\/","og_site_name":"International College","article_modified_time":"2026-02-26T04:17:21+00:00","twitter_card":"summary_large_image","twitter_misc":{"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"1 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/inter.mut.ac.th\/news-and-events-academic-calendar\/","url":"https:\/\/inter.mut.ac.th\/news-and-events-academic-calendar\/","name":"News and Events - Academic Calendar - International College","isPartOf":{"@id":"https:\/\/inter.mut.ac.th\/#website"},"datePublished":"2023-04-21T00:38:32+00:00","dateModified":"2026-02-26T04:17:21+00:00","breadcrumb":{"@id":"https:\/\/inter.mut.ac.th\/news-and-events-academic-calendar\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/inter.mut.ac.th\/news-and-events-academic-calendar\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/inter.mut.ac.th\/news-and-events-academic-calendar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/inter.mut.ac.th\/"},{"@type":"ListItem","position":2,"name":"News and Events &#8211; Academic Calendar"}]},{"@type":"WebSite","@id":"https:\/\/inter.mut.ac.th\/#website","url":"https:\/\/inter.mut.ac.th\/","name":"Mahanakorn University | International College","description":"","publisher":{"@id":"https:\/\/inter.mut.ac.th\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/inter.mut.ac.th\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-Hans"},{"@type":"Organization","@id":"https:\/\/inter.mut.ac.th\/#organization","name":"Mahanakorn University International College","url":"https:\/\/inter.mut.ac.th\/","logo":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/inter.mut.ac.th\/#\/schema\/logo\/image\/","url":"https:\/\/www.mutic.mut.ac.th\/wp-content\/uploads\/2021\/02\/logo_red.png","contentUrl":"https:\/\/www.mutic.mut.ac.th\/wp-content\/uploads\/2021\/02\/logo_red.png","width":1208,"height":250,"caption":"Mahanakorn University International College"},"image":{"@id":"https:\/\/inter.mut.ac.th\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/pages\/5135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/comments?post=5135"}],"version-history":[{"count":13,"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/pages\/5135\/revisions"}],"predecessor-version":[{"id":6443,"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/pages\/5135\/revisions\/6443"}],"wp:attachment":[{"href":"https:\/\/inter.mut.ac.th\/zh\/wp-json\/wp\/v2\/media?parent=5135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}