  {"id":22238,"date":"2023-03-24T11:14:50","date_gmt":"2023-03-24T03:14:50","guid":{"rendered":"https:\/\/www.ukm.my\/pendaftar\/?page_id=22238"},"modified":"2026-04-08T16:56:23","modified_gmt":"2026-04-08T08:56:23","slug":"bakat-ukm","status":"publish","type":"page","link":"https:\/\/www.ukm.my\/pendaftar\/bakat-ukm\/","title":{"rendered":"Bahagian Pembangunan Bakat"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"22238\" class=\"elementor elementor-22238\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-25e972e elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default\" data-id=\"25e972e\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-no\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6106dd8\" data-id=\"6106dd8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-8cfb301 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"8cfb301\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-3804d29\" data-id=\"3804d29\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-edf4b4b elementor-widget elementor-widget-heading\" data-id=\"edf4b4b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><a href=\"#\">Bahagian Pembangunan Bakat<\/a><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d770d60 elementor-tabs-view-vertical elementor-widget elementor-widget-tabs\" data-id=\"d770d60\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"tabs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-tabs\">\n\t\t\t<div class=\"elementor-tabs-wrapper\" role=\"tablist\" >\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-2251\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"true\" data-tab=\"1\" role=\"tab\" tabindex=\"0\" aria-controls=\"elementor-tab-content-2251\" aria-expanded=\"false\">Ketua Bahagian<\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-2252\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"2\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2252\" aria-expanded=\"false\">Unit Pembangunan Kompetensi <\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-2253\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"3\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2253\" aria-expanded=\"false\">Unit Pembangunan Potensi <\/div>\n\t\t\t\t\t\t\t\t\t<div id=\"elementor-tab-title-2254\" class=\"elementor-tab-title elementor-tab-desktop-title\" aria-selected=\"false\" data-tab=\"4\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2254\" aria-expanded=\"false\">Unit Perkembangan Kerjaya <\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t<div class=\"elementor-tabs-content-wrapper\" role=\"tablist\" aria-orientation=\"vertical\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"true\" data-tab=\"1\" role=\"tab\" tabindex=\"0\" aria-controls=\"elementor-tab-content-2251\" aria-expanded=\"false\">Ketua Bahagian<\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-2251\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"1\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-2251\" tabindex=\"0\" hidden=\"false\"><style>\n    .directory-wrapper {\n        --text-color: #4E4E4E;\n        --primary-color: #35387A;\n        --button-hover: #969696;\n        --bg-color: #f9f9f9;\n        --card-bg: #ffffff;\n        --border-color: #eeeeee;\n        font-family: 'Poppins', sans-serif;\n        color: var(--text-color);\n        margin: 0 !important;\n        padding: 10px !important;\n        width: 100% !important;\n        display: block !important;\n        position: relative !important;\n        box-sizing: border-box;\n    }\n    .directory-wrapper * { box-sizing: border-box; }\n\n    .staff-grid {\n        display: grid;\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n        gap: 30px;\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .staff-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04); transition: transform 0.2s ease; }\n    .staff-image { width: 100%; aspect-ratio: 4 \/ 3; object-fit: cover; object-position: center top; display: block; border-bottom: 1px solid #f0f0f0; background-color: #f0f0f0; }\n    .staff-info { padding: 20px 20px 25px 20px; flex-grow: 1; display: flex; flex-direction: column; text-align: left; }\n    .staff-name { color: var(--primary-color); font-size: 14px; font-weight: 600; margin-bottom: 4px; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.5px; margin-top: 0; }\n    .staff-position { color: #888; font-size: 11px; font-weight: 500; margin-bottom: 20px; line-height: 1.4; letter-spacing: 0.5px; text-transform: capitalize; }\n    .contact-info { margin-bottom: 20px; flex-grow: 1; display: flex; flex-direction: column; align-items: flex-start; }\n    .contact-item { display: flex; align-items: flex-start; margin-bottom: 8px; color: var(--text-color); font-size: 11px; width: 100%; }\n    .contact-item svg { width: 14px; height: 14px; margin-right: 10px; fill: var(--primary-color); flex-shrink: 0; opacity: 0.9; margin-top: 2px; }\n    .contact-item a { color: var(--text-color); text-decoration: none; transition: color 0.2s ease; word-break: break-all; }\n    .contact-item a:hover { color: var(--primary-color); text-decoration: underline; }\n    .job-desc-btn { width: 100%; padding: 12px; background: var(--primary-color); color: white; border: none; border-radius: 4px; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 500; cursor: pointer; transition: background-color 0.3s ease; margin-top: auto; text-transform: capitalize; letter-spacing: 0.5px; }\n    .job-desc-btn:hover { background: var(--button-hover); }\n    .staff-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(2px); animation: fadeIn 0.2s ease; }\n    .staff-modal.active { display: flex; align-items: center; justify-content: center; }\n    .staff-modal-content { background: white; padding: 40px; border-radius: 8px; border: 1px solid var(--border-color); box-shadow: 0 10px 40px rgba(0,0,0,0.08); max-width: 600px; width: 90%; max-height: 85vh; overflow-y: auto; position: relative; animation: slideUp 0.3s ease; }\n    .staff-close-btn { position: absolute; top: 20px; right: 20px; width: 32px; height: 32px; background: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background-color 0.2s ease; padding: 0; }\n    .staff-close-btn svg { width: 24px; height: 24px; fill: #999; transition: fill 0.2s ease; }\n    .staff-close-btn:hover { background-color: rgba(0,0,0,0.05); }\n    .staff-close-btn:hover svg { fill: var(--primary-color); }\n    .modal-header { color: var(--primary-color); font-size: 1.6rem; font-weight: 600; margin-bottom: 5px; margin-top: 0; }\n    .modal-position { color: #888; font-size: 1.2rem; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--border-color); margin-top: 0; }\n    .modal-body { color: var(--text-color); line-height: 1.8; font-size: 1.2rem; }\n    .modal-body h3 { color: var(--primary-color); margin-top: 25px; margin-bottom: 15px; font-size: 1.2rem; font-weight: 500; }\n    .modal-body ul { margin-left: 20px; color: #666; }\n    .modal-body li { margin-bottom: 8px; }\n    \n    @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }\n    @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }\n<\/style>\n\n<div class=\"directory-wrapper\">\n    <div class=\"staff-grid dynamic-staff-grid\"><\/div>\n<\/div>\n\n<script>\n{\n    const uniqueTabId = 'tab_ketua_bahagian_bakat'; \n    \n    const staffData = [\n      {\n        \"Name\": \"ENCIK SAIDI ISMAIL\",\n        \"Position\": \"Timbalan Pendaftar N14\",\n        \"Email\": \"saidi.ismail@ukm.edu.my | tpbakat@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Saidi-Ismail_1.png\",\n        \"JobScope\": \"Merancang dan merangka Pelan Pembangunan Bakat, polisi atau garis panduan berdasarkan Pekeliling Kerajaan yang sedang berkuat kuasa | Memudah cara dan memantau aktiviti penjanaan serta jaringan dengan agensi luar berkaitan pembangunan bakat | Mengurus laporan data analitik latihan dan kompetensi melalui integrasi Sistem Maklumat Universiti (SMU) seperti Sistem Pembangunan Bakat 糖心原创 (UrusBakat), Pelantar Maya Pembestarian Bakat 糖心原创 (MayaBestari) dan Sistem Permohonan Aktiviti Rasmi (e-Aktiviti) | Mengurus dan melaksana hal ehwal pentadbiran Bahagian termasuk sumber manusia, kewangan dan kualiti\"\n      },\n      {\n        \"Name\": \"Puan Arni Ayuni Asngari\",\n        \"Position\": \"Pembantu Tadbir (S\/U) N1\",\n        \"Email\": \"arniayuni@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Arni-Ayuni.png\",\n        \"JobScope\": \"\"\n      }\n    ];\n\n    const currentScript = document.currentScript;\n    const wrapper = currentScript.previousElementSibling; \n    const gridContainer = wrapper.querySelector('.dynamic-staff-grid');\n    \n    gridContainer.id = `grid-${uniqueTabId}`;\n\n    let modalContainer = document.getElementById(`modals-${uniqueTabId}`);\n    if (!modalContainer) {\n        modalContainer = document.createElement('div');\n        modalContainer.id = `modals-${uniqueTabId}`;\n        document.body.appendChild(modalContainer);\n    }\n\n    staffData.forEach((staff, index) => {\n        const uniqueModalId = `modal-${uniqueTabId}-${index}`;\n        \n        \/\/ Process Job Scope\n        let taskList = [];\n        if(staff.JobScope) { taskList = staff.JobScope.split('|').map(item => item.trim()); }\n\n        \/\/ Process Emails\n        let emailHtml = '';\n        if (staff.Email) {\n            const emails = staff.Email.split('|');\n            emailHtml = emails.map(e => {\n                const mail = e.trim();\n                return `<a href=\"mailto:${mail}\" style=\"display:block; margin-bottom:2px;\">${mail}<\/a>`;\n            }).join('');\n        }\n\n        const phoneLink = staff.Phone ? staff.Phone.replace(\/\\s\/g, '') : '';\n\n        const cardHTML = `\n            <div class=\"staff-card\">\n                <img decoding=\"async\" src=\"${staff.Image}\" alt=\"${staff.Name}\" class=\"staff-image\" onerror=\"this.src='https:\/\/placehold.co\/400x300\/eee\/999?text=No+Image'\">\n                <div class=\"staff-info\">\n                    <h2 class=\"staff-name\">${staff.Name}<\/h2>\n                    <p class=\"staff-position\">${staff.Position || ''}<\/p>\n                    <div class=\"contact-info\">\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z\"\/><\/svg>\n                            <div style=\"flex-grow: 1; min-width: 0;\">${emailHtml}<\/div>\n                        <\/div>\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z\"\/><\/svg>\n                            <a href=\"tel:${phoneLink}\">${staff.Phone || ''}<\/a>\n                        <\/div>\n                    <\/div>\n                    <button class=\"job-desc-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.add('active'); document.body.style.overflow='hidden';\">Skop Tugas<\/button>\n                <\/div>\n            <\/div>`;\n        gridContainer.innerHTML += cardHTML;\n\n        const tasksHTML = taskList.map(task => {\n            if (task.startsWith('>>')) { \n                return `<li style=\"margin-left: 20px; list-style-type: circle;\">${task.replace('>>', '').trim()}<\/li>`; \n            }\n            return `<li>${task}<\/li>`;\n        }).join('');\n        \n        const modalHTML = `\n            <div id=\"${uniqueModalId}\" class=\"staff-modal\" onclick=\"if(event.target === this){this.classList.remove('active'); document.body.style.overflow='auto';}\">\n                <div class=\"staff-modal-content\">\n                    <button class=\"staff-close-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.remove('active'); document.body.style.overflow='auto';\">\n                         <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/><\/svg>\n                    <\/button>\n                    <h2 class=\"modal-header\">${staff.Name}<\/h2>\n                    <p class=\"modal-position\">${staff.Position || ''}<\/p>\n                    <div class=\"modal-body\">\n                        <h3>Skop Tugas:<\/h3>\n                        <ul>${tasksHTML}<\/ul>\n                    <\/div>\n                <\/div>\n            <\/div>`;\n        modalContainer.innerHTML += modalHTML;\n    });\n}\n<\/script><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"2\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2252\" aria-expanded=\"false\">Unit Pembangunan Kompetensi <\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-2252\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"2\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-2252\" tabindex=\"0\" hidden=\"hidden\"><style>\n    .directory-wrapper {\n        --text-color: #4E4E4E;\n        --primary-color: #35387A;\n        --button-hover: #969696;\n        --bg-color: #f9f9f9;\n        --card-bg: #ffffff;\n        --border-color: #eeeeee;\n        font-family: 'Poppins', sans-serif;\n        color: var(--text-color);\n        margin: 0 !important;\n        padding: 10px !important;\n        width: 100% !important;\n        display: block !important;\n        position: relative !important;\n        box-sizing: border-box;\n    }\n    .directory-wrapper * { box-sizing: border-box; }\n\n    .staff-grid {\n        display: grid;\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n        gap: 30px;\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .staff-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04); transition: transform 0.2s ease; }\n    .staff-image { width: 100%; aspect-ratio: 4 \/ 3; object-fit: cover; object-position: center top; display: block; border-bottom: 1px solid #f0f0f0; background-color: #f0f0f0; }\n    .staff-info { padding: 20px 20px 25px 20px; flex-grow: 1; display: flex; flex-direction: column; text-align: left; }\n    .staff-name { color: var(--primary-color); font-size: 14px; font-weight: 600; margin-bottom: 4px; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.5px; margin-top: 0; }\n    .staff-position { color: #888; font-size: 11px; font-weight: 500; margin-bottom: 20px; line-height: 1.4; letter-spacing: 0.5px; text-transform: capitalize; }\n    .contact-info { margin-bottom: 20px; flex-grow: 1; display: flex; flex-direction: column; align-items: flex-start; }\n    .contact-item { display: flex; align-items: flex-start; margin-bottom: 8px; color: var(--text-color); font-size: 11px; width: 100%; }\n    .contact-item svg { width: 14px; height: 14px; margin-right: 10px; fill: var(--primary-color); flex-shrink: 0; opacity: 0.9; margin-top: 2px; }\n    .contact-item a { color: var(--text-color); text-decoration: none; transition: color 0.2s ease; word-break: break-all; }\n    .contact-item a:hover { color: var(--primary-color); text-decoration: underline; }\n    .job-desc-btn { width: 100%; padding: 12px; background: var(--primary-color); color: white; border: none; border-radius: 4px; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 500; cursor: pointer; transition: background-color 0.3s ease; margin-top: auto; text-transform: capitalize; letter-spacing: 0.5px; }\n    .job-desc-btn:hover { background: var(--button-hover); }\n    .staff-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(2px); animation: fadeIn 0.2s ease; }\n    .staff-modal.active { display: flex; align-items: center; justify-content: center; }\n    .staff-modal-content { background: white; padding: 40px; border-radius: 8px; border: 1px solid var(--border-color); box-shadow: 0 10px 40px rgba(0,0,0,0.08); max-width: 600px; width: 90%; max-height: 85vh; overflow-y: auto; position: relative; animation: slideUp 0.3s ease; }\n    .staff-close-btn { position: absolute; top: 20px; right: 20px; width: 32px; height: 32px; background: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background-color 0.2s ease; padding: 0; }\n    .staff-close-btn svg { width: 24px; height: 24px; fill: #999; transition: fill 0.2s ease; }\n    .staff-close-btn:hover { background-color: rgba(0,0,0,0.05); }\n    .staff-close-btn:hover svg { fill: var(--primary-color); }\n    .modal-header { color: var(--primary-color); font-size: 1.6rem; font-weight: 600; margin-bottom: 5px; margin-top: 0; }\n    .modal-position { color: #888; font-size: 1.2rem; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--border-color); margin-top: 0; }\n    .modal-body { color: var(--text-color); line-height: 1.8; font-size: 1.2rem; }\n    .modal-body h3 { color: var(--primary-color); margin-top: 25px; margin-bottom: 15px; font-size: 1.2rem; font-weight: 500; }\n    .modal-body ul { margin-left: 20px; color: #666; }\n    .modal-body li { margin-bottom: 8px; }\n    \n    @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }\n    @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }\n<\/style>\n\n<div class=\"directory-wrapper\">\n    <div class=\"staff-grid dynamic-staff-grid\"><\/div>\n<\/div>\n\n<script>\n{\n    const uniqueTabId = 'tab_kompetensi'; \n    \n    const staffData = [\n      {\n        \"Name\": \"Ketua Unit\",\n        \"Position\": \"\",\n        \"Email\": \"\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2024\/09\/anonymous_male_v2.png\",\n        \"JobScope\": \"Menyelaras dan melaksana Program Pembangunan Bakat berdasarkan Pelan Pembangunan Kompetensi Generik dan Fungsian | Memeta dan menganalisis data pemprofilan serta keperluan Kompetensi Generik dan Fungsian | Membangun penilaian keberkesanan kompetensi Generik dan Fungsian terhadap individu dan jabatan | Mengurus dan menyelaras latihan dalam perkhidmatan seperti Program Transformasi Minda dan Sijil Profesional Pengajaran Pendidikan Tinggi (SPPPT) | Mengurus dan menyelaras program pementoran dan bimbingan seperti Program Pembayang serta Program Pementoran dan Penyeliaan Berkesan | Menyedia laporan strategik berkaitan pembangunan kompetensi yang ditetapkan\"\n      },\n      {\n        \"Name\": \"Puan Nastura Nasir\",\n        \"Position\": \"Penolong Pendaftar Kanan N10\",\n        \"Email\": \"nastura@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Nastura-Nasir.png\",\n        \"JobScope\": \"Latihan Fungsi Perkhidmatan | Rekod Latihan Jangka Panjang | Program Sangkutan 糖心原创 | Urusan Jawatankuasa Program Sangkutan 糖心原创 | Rekod Subject Matter Experts (SME) P&P dan Pelaksana | Urusan Perancangan Latihan Subject Matter Experts (SME) P&P dan Pelaksana | Urusan Perancangan Latihan Skim Perkhidmatan | Urusan Latihan Kepakaran 糖心原创\"\n      },\n      {\n        \"Name\": \"Encik Ridhuwan Rashidi\",\n        \"Position\": \"Penolong Pendaftar N9\",\n        \"Email\": \"ridhuwan@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Ridhwan-Rashidi.png\",\n        \"JobScope\": \"Program Transformasi Minda (PTM) >>Kakitangan Akademik, P&P >>Kakitangan Pelaksana | Urusan Jawatankuasa Program Transformasi Minda (PTM) | Program Sijil Profesional Pengajaran Pendidikan Tinggi (SPPPT) bagi Kakitangan Akademik | Urusan Jawatankuasa Sijil Profesional Pengajaran Pendidikan Tinggi (SPPPT) | Program Kursus Asas Penyelidikan dan Penerbitan Berimpak Tinggi bagi Kakitangan Akademik | Kursus Persediaan Cuti Belajar bagi kakitangan yang ingin cuti belajar | Program Persediaan Persaraan bagi kakitangan yang akan bersara | Urusan Program Jati Diri Watan 糖心原创 | Pengurusan Kewangan BAKAT-糖心原创\"\n      },\n      {\n        \"Name\": \"Encik Shahril Redza Shaharum\",\n        \"Position\": \"Pembantu Tadbir N2\",\n        \"Email\": \"sharedz@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Shahril-Redza.png\",\n        \"JobScope\": \"Program Transformasi Minda (PTM) >>Kakitangan Akademik, P&P >>Kakitangan Pelaksana | Urusan Jawatankuasa Program Transformasi Minda (PTM) | Kursus Persediaan Cuti Belajar bagi kakitangan yang ingin cuti belajar | Program Persediaan Persaraan bagi kakitangan yang akan bersara | Urusan Program Jati Diri Watan 糖心原创 | Pengurusan Aset BAKAT-糖心原创 | Sistem Pengurusan Kualiti dan Perkhidmatan Unit\"\n      },\n      {\n        \"Name\": \"Encik Azizan Azrul Abd Aziz\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"azizanazrulaziz@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Azizan-Azrul.png\",\n        \"JobScope\": \"Program Kursus Asas Penyelidikan dan Penerbitan Berimpak Tinggi bagi Kakitangan Akademik | Program Sijil Profesional Pengajaran Pendidikan Tinggi (SPPPT) bagi Kakitangan Akademik | Urusan Jawatankuasa Sijil Profesional Pengajaran Pendidikan Tinggi (SPPPT) | Urusan Program Jati Diri Watan 糖心原创 | Pengurusan Kewangan BAKAT-糖心原创 | Sistem Pengurusan Kualiti dan Perkhidmatan Unit\"\n      },\n      {\n        \"Name\": \"Encik Muhammad Hakim Mohd Haniff\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"hakimhaniff@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Hakim-Haniff.png\",\n        \"JobScope\": \"Program Sangkutan Industri bagi staf 糖心原创 | Urusan Jawatankuasa Program Sangkutan Industri | Ahli Jawatankuasa Sistem Pengurusan Kualiti SPKPPP Jabatan Pendaftar | Pengurusan Kewangan BAKAT-糖心原创 | Pengurusan Latihan Kepakaran 糖心原创\"\n      },\n    ];\n\n    const currentScript = document.currentScript;\n    const wrapper = currentScript.previousElementSibling; \n    const gridContainer = wrapper.querySelector('.dynamic-staff-grid');\n    \n    gridContainer.id = `grid-${uniqueTabId}`;\n\n    let modalContainer = document.getElementById(`modals-${uniqueTabId}`);\n    if (!modalContainer) {\n        modalContainer = document.createElement('div');\n        modalContainer.id = `modals-${uniqueTabId}`;\n        document.body.appendChild(modalContainer);\n    }\n\n    staffData.forEach((staff, index) => {\n        const uniqueModalId = `modal-${uniqueTabId}-${index}`;\n        \n        \/\/ Process Job Scope\n        let taskList = [];\n        if(staff.JobScope) { taskList = staff.JobScope.split('|').map(item => item.trim()); }\n\n        \/\/ Process Emails\n        let emailHtml = '';\n        if (staff.Email) {\n            const emails = staff.Email.split('|');\n            emailHtml = emails.map(e => {\n                const mail = e.trim();\n                return `<a href=\"mailto:${mail}\" style=\"display:block; margin-bottom:2px;\">${mail}<\/a>`;\n            }).join('');\n        }\n\n        const phoneLink = staff.Phone ? staff.Phone.replace(\/\\s\/g, '') : '';\n\n        const cardHTML = `\n            <div class=\"staff-card\">\n                <img decoding=\"async\" src=\"${staff.Image}\" alt=\"${staff.Name}\" class=\"staff-image\" onerror=\"this.src='https:\/\/placehold.co\/400x300\/eee\/999?text=No+Image'\">\n                <div class=\"staff-info\">\n                    <h2 class=\"staff-name\">${staff.Name}<\/h2>\n                    <p class=\"staff-position\">${staff.Position || ''}<\/p>\n                    <div class=\"contact-info\">\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z\"\/><\/svg>\n                            <div style=\"flex-grow: 1; min-width: 0;\">${emailHtml}<\/div>\n                        <\/div>\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z\"\/><\/svg>\n                            <a href=\"tel:${phoneLink}\">${staff.Phone || ''}<\/a>\n                        <\/div>\n                    <\/div>\n                    <button class=\"job-desc-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.add('active'); document.body.style.overflow='hidden';\">Skop Tugas<\/button>\n                <\/div>\n            <\/div>`;\n        gridContainer.innerHTML += cardHTML;\n\n        const tasksHTML = taskList.map(task => {\n            if (task.startsWith('>>')) { \n                return `<li style=\"margin-left: 20px; list-style-type: circle;\">${task.replace('>>', '').trim()}<\/li>`; \n            }\n            return `<li>${task}<\/li>`;\n        }).join('');\n        \n        const modalHTML = `\n            <div id=\"${uniqueModalId}\" class=\"staff-modal\" onclick=\"if(event.target === this){this.classList.remove('active'); document.body.style.overflow='auto';}\">\n                <div class=\"staff-modal-content\">\n                    <button class=\"staff-close-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.remove('active'); document.body.style.overflow='auto';\">\n                         <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/><\/svg>\n                    <\/button>\n                    <h2 class=\"modal-header\">${staff.Name}<\/h2>\n                    <p class=\"modal-position\">${staff.Position || ''}<\/p>\n                    <div class=\"modal-body\">\n                        <h3>Skop Tugas:<\/h3>\n                        <ul>${tasksHTML}<\/ul>\n                    <\/div>\n                <\/div>\n            <\/div>`;\n        modalContainer.innerHTML += modalHTML;\n    });\n}\n<\/script><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"3\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2253\" aria-expanded=\"false\">Unit Pembangunan Potensi <\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-2253\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"3\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-2253\" tabindex=\"0\" hidden=\"hidden\"><style>\n    .directory-wrapper {\n        --text-color: #4E4E4E;\n        --primary-color: #35387A;\n        --button-hover: #969696;\n        --bg-color: #f9f9f9;\n        --card-bg: #ffffff;\n        --border-color: #eeeeee;\n        font-family: 'Poppins', sans-serif;\n        color: var(--text-color);\n        margin: 0 !important;\n        padding: 10px !important;\n        width: 100% !important;\n        display: block !important;\n        position: relative !important;\n        box-sizing: border-box;\n    }\n    .directory-wrapper * { box-sizing: border-box; }\n\n    .staff-grid {\n        display: grid;\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n        gap: 30px;\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .staff-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04); transition: transform 0.2s ease; }\n    .staff-image { width: 100%; aspect-ratio: 4 \/ 3; object-fit: cover; object-position: center top; display: block; border-bottom: 1px solid #f0f0f0; background-color: #f0f0f0; }\n    .staff-info { padding: 20px 20px 25px 20px; flex-grow: 1; display: flex; flex-direction: column; text-align: left; }\n    .staff-name { color: var(--primary-color); font-size: 14px; font-weight: 600; margin-bottom: 4px; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.5px; margin-top: 0; }\n    .staff-position { color: #888; font-size: 11px; font-weight: 500; margin-bottom: 20px; line-height: 1.4; letter-spacing: 0.5px; text-transform: capitalize; }\n    .contact-info { margin-bottom: 20px; flex-grow: 1; display: flex; flex-direction: column; align-items: flex-start; }\n    .contact-item { display: flex; align-items: flex-start; margin-bottom: 8px; color: var(--text-color); font-size: 11px; width: 100%; }\n    .contact-item svg { width: 14px; height: 14px; margin-right: 10px; fill: var(--primary-color); flex-shrink: 0; opacity: 0.9; margin-top: 2px; }\n    .contact-item a { color: var(--text-color); text-decoration: none; transition: color 0.2s ease; word-break: break-all; }\n    .contact-item a:hover { color: var(--primary-color); text-decoration: underline; }\n    .job-desc-btn { width: 100%; padding: 12px; background: var(--primary-color); color: white; border: none; border-radius: 4px; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 500; cursor: pointer; transition: background-color 0.3s ease; margin-top: auto; text-transform: capitalize; letter-spacing: 0.5px; }\n    .job-desc-btn:hover { background: var(--button-hover); }\n    .staff-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(2px); animation: fadeIn 0.2s ease; }\n    .staff-modal.active { display: flex; align-items: center; justify-content: center; }\n    .staff-modal-content { background: white; padding: 40px; border-radius: 8px; border: 1px solid var(--border-color); box-shadow: 0 10px 40px rgba(0,0,0,0.08); max-width: 600px; width: 90%; max-height: 85vh; overflow-y: auto; position: relative; animation: slideUp 0.3s ease; }\n    .staff-close-btn { position: absolute; top: 20px; right: 20px; width: 32px; height: 32px; background: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background-color 0.2s ease; padding: 0; }\n    .staff-close-btn svg { width: 24px; height: 24px; fill: #999; transition: fill 0.2s ease; }\n    .staff-close-btn:hover { background-color: rgba(0,0,0,0.05); }\n    .staff-close-btn:hover svg { fill: var(--primary-color); }\n    .modal-header { color: var(--primary-color); font-size: 1.6rem; font-weight: 600; margin-bottom: 5px; margin-top: 0; }\n    .modal-position { color: #888; font-size: 1.2rem; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--border-color); margin-top: 0; }\n    .modal-body { color: var(--text-color); line-height: 1.8; font-size: 1.2rem; }\n    .modal-body h3 { color: var(--primary-color); margin-top: 25px; margin-bottom: 15px; font-size: 1.2rem; font-weight: 500; }\n    .modal-body ul { margin-left: 20px; color: #666; }\n    .modal-body li { margin-bottom: 8px; }\n    \n    @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }\n    @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }\n<\/style>\n\n<div class=\"directory-wrapper\">\n    <div class=\"staff-grid dynamic-staff-grid\"><\/div>\n<\/div>\n\n<script>\n{\n    const uniqueTabId = 'tab_potensi'; \n    \n    const staffData = [\n      {\n        \"Name\": \"ENCIK ZAIDI MOHD NOOR\",\n        \"Position\": \"Ketua Penolong Pendaftar Kanan N13\",\n        \"Email\": \"zaidi_mn@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Zaidi-Mohd-Noor.png\",\n        \"JobScope\": \"Menyelaras dan melaksana Program Pembangunan Bakat berdasarkan Pelan Pembangunan Kompetensi Kepimpinan kepada staf berpotensi di 糖心原创 serta agensi luar seperti Akademi Kepimpinan Pendidikan Tinggi (AKEPT) | Merancang dan menyelaras Perancangan Kerjaya dan Penggantian (Career and Succession Planning) | Memeta dan menganalisis data Pemprofilan Bakat Kepimpinan melalui Program PERANTIS, KARISMA, TERAJU dan MERCU | Membangun penilaian keberkesanan Kompetensi Kepimpinan terhadap individu dan jabatan berdasarkan kelompok bakat berprestasi tinggi 糖心原创 | Menyediakan laporan kesediaan kelompok bakat berpotensi bagi pelantikan jawatan kritikal dan strategik universiti.\"\n      },\n      {\n        \"Name\": \"Cik Nor Afiqah Najlaa' Abd Rahim\",\n        \"Position\": \"Penolong Pendaftar N9\",\n        \"Email\": \"najlaa@ukm.edu.my\",\n        \"Phone\": \"03-8921 4671\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Afiqah-Najlaa.png\",\n        \"JobScope\": \"Menyelaras program-program di bawah Akademi Kepimpinan Pendidikan Tinggi (AKEPT) dan agensi luar | Melaksanakan program kompetensi kepimpinan universiti | Menyelaras Pelan Pewarisan Universiti | Menyelaras dan menyediakan data Bakat 糖心原创 | Urus setia Sistem Pengurusan Pembangunan Bakat (UrusBakat) | Pengurusan Jawatankuasa Pembangunan Potensi Bakat 糖心原创 | Setiausaha Sistem Pengurusan Kualiti SPKPPP Jabatan Pendaftar.\"\n      },\n      {\n        \"Name\": \"Puan Aziha Jamal\",\n        \"Position\": \"Pembantu Tadbir N2\",\n        \"Email\": \"aziha@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Aziha-Jamal.png\",\n        \"JobScope\": \"Membantu menyelaras program-program di bawah Akademi Kepimpinan Pendidikan Tinggi (AKEPT) dan agensi luar | Membantu melaksanakan program kompetensi kepimpinan universiti | Membantu menganalisis data Pemprofilan Bakat Kepimpinan | Membantu menyediakan data Bakat 糖心原创 | Urus setia Sistem Pengurusan Pembangunan Bakat (UrusBakat) | Pengurusan Jawatankuasa Pembangunan Potensi Bakat 糖心原创.\"\n      },\n      {\n        \"Name\": \"Encik Mohd Fauzi Parmin\",\n        \"Position\": \"Pembantu Tadbir N2\",\n        \"Email\": \"poji07@ukm.edu.my\",\n        \"Phone\": \"03-8921 5386\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Fauzi-Parmin.png\",\n        \"JobScope\": \"Membantu menguruskan kursus berkaitan AI | Membantu urusan kursus pembangunan kompetensi generic | Membantu urusan kompetensi pembangunan kepimpinan universiti | Urusan Sistem Pengurusan Pembangunan Bakat (UrusBakat) | Urusan Sistem eMohon Aktiviti Rasmi (eAktiviti) | Pegawai Insiden, Bahagian Pembangunan Bakat (Bakat-糖心原创).\"\n      },\n      {\n        \"Name\": \"Puan Filza Fazasha Suhni\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"filzafazasha@ukm.edu.my\",\n        \"Phone\": \"03-8921 4695\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Filza-Fazasha.png\",\n        \"JobScope\": \"Membantu menyelaras program-program di bawah Akademi Kepimpinan Pendidikan Tinggi (AKEPT) dan agensi luar | Membantu melaksanakan program kompetensi kepimpinan universiti | Membantu menyediakan data Bakat 糖心原创 | Urus setia Sistem Pengurusan Pembangunan Bakat (UrusBakat).\"\n      }\n    ];\n\n    const currentScript = document.currentScript;\n    const wrapper = currentScript.previousElementSibling; \n    const gridContainer = wrapper.querySelector('.dynamic-staff-grid');\n    \n    gridContainer.id = `grid-${uniqueTabId}`;\n\n    let modalContainer = document.getElementById(`modals-${uniqueTabId}`);\n    if (!modalContainer) {\n        modalContainer = document.createElement('div');\n        modalContainer.id = `modals-${uniqueTabId}`;\n        document.body.appendChild(modalContainer);\n    }\n\n    staffData.forEach((staff, index) => {\n        const uniqueModalId = `modal-${uniqueTabId}-${index}`;\n        \n        \/\/ Process Job Scope\n        let taskList = [];\n        if(staff.JobScope) { taskList = staff.JobScope.split('|').map(item => item.trim()); }\n\n        \/\/ Process Emails\n        let emailHtml = '';\n        if (staff.Email) {\n            const emails = staff.Email.split('|');\n            emailHtml = emails.map(e => {\n                const mail = e.trim();\n                return `<a href=\"mailto:${mail}\" style=\"display:block; margin-bottom:2px;\">${mail}<\/a>`;\n            }).join('');\n        }\n\n        const phoneLink = staff.Phone ? staff.Phone.replace(\/\\s\/g, '') : '';\n\n        const cardHTML = `\n            <div class=\"staff-card\">\n                <img decoding=\"async\" src=\"${staff.Image}\" alt=\"${staff.Name}\" class=\"staff-image\" onerror=\"this.src='https:\/\/placehold.co\/400x300\/eee\/999?text=No+Image'\">\n                <div class=\"staff-info\">\n                    <h2 class=\"staff-name\">${staff.Name}<\/h2>\n                    <p class=\"staff-position\">${staff.Position || ''}<\/p>\n                    <div class=\"contact-info\">\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z\"\/><\/svg>\n                            <div style=\"flex-grow: 1; min-width: 0;\">${emailHtml}<\/div>\n                        <\/div>\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z\"\/><\/svg>\n                            <a href=\"tel:${phoneLink}\">${staff.Phone || ''}<\/a>\n                        <\/div>\n                    <\/div>\n                    <button class=\"job-desc-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.add('active'); document.body.style.overflow='hidden';\">Skop Tugas<\/button>\n                <\/div>\n            <\/div>`;\n        gridContainer.innerHTML += cardHTML;\n\n        const tasksHTML = taskList.map(task => {\n            if (task.startsWith('>>')) { \n                return `<li style=\"margin-left: 20px; list-style-type: circle;\">${task.replace('>>', '').trim()}<\/li>`; \n            }\n            return `<li>${task}<\/li>`;\n        }).join('');\n        \n        const modalHTML = `\n            <div id=\"${uniqueModalId}\" class=\"staff-modal\" onclick=\"if(event.target === this){this.classList.remove('active'); document.body.style.overflow='auto';}\">\n                <div class=\"staff-modal-content\">\n                    <button class=\"staff-close-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.remove('active'); document.body.style.overflow='auto';\">\n                         <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/><\/svg>\n                    <\/button>\n                    <h2 class=\"modal-header\">${staff.Name}<\/h2>\n                    <p class=\"modal-position\">${staff.Position || ''}<\/p>\n                    <div class=\"modal-body\">\n                        <h3>Skop Tugas:<\/h3>\n                        <ul>${tasksHTML}<\/ul>\n                    <\/div>\n                <\/div>\n            <\/div>`;\n        modalContainer.innerHTML += modalHTML;\n    });\n}\n<\/script><\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-tab-title elementor-tab-mobile-title\" aria-selected=\"false\" data-tab=\"4\" role=\"tab\" tabindex=\"-1\" aria-controls=\"elementor-tab-content-2254\" aria-expanded=\"false\">Unit Perkembangan Kerjaya <\/div>\n\t\t\t\t\t<div id=\"elementor-tab-content-2254\" class=\"elementor-tab-content elementor-clearfix\" data-tab=\"4\" role=\"tabpanel\" aria-labelledby=\"elementor-tab-title-2254\" tabindex=\"0\" hidden=\"hidden\"><style>\n    .directory-wrapper {\n        --text-color: #4E4E4E;\n        --primary-color: #35387A;\n        --button-hover: #969696;\n        --bg-color: #f9f9f9;\n        --card-bg: #ffffff;\n        --border-color: #eeeeee;\n        font-family: 'Poppins', sans-serif;\n        color: var(--text-color);\n        margin: 0 !important;\n        padding: 10px !important;\n        width: 100% !important;\n        display: block !important;\n        position: relative !important;\n        box-sizing: border-box;\n    }\n    .directory-wrapper * { box-sizing: border-box; }\n\n    .staff-grid {\n        display: grid;\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\n        gap: 30px;\n        margin-top: 0 !important;\n        padding-top: 0 !important;\n    }\n    .staff-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.04); transition: transform 0.2s ease; }\n    .staff-image { width: 100%; aspect-ratio: 4 \/ 3; object-fit: cover; object-position: center top; display: block; border-bottom: 1px solid #f0f0f0; background-color: #f0f0f0; }\n    .staff-info { padding: 20px 20px 25px 20px; flex-grow: 1; display: flex; flex-direction: column; text-align: left; }\n    .staff-name { color: var(--primary-color); font-size: 14px; font-weight: 600; margin-bottom: 4px; line-height: 1.4; text-transform: uppercase; letter-spacing: 0.5px; margin-top: 0; }\n    .staff-position { color: #888; font-size: 11px; font-weight: 500; margin-bottom: 20px; line-height: 1.4; letter-spacing: 0.5px; text-transform: capitalize; }\n    .contact-info { margin-bottom: 20px; flex-grow: 1; display: flex; flex-direction: column; align-items: flex-start; }\n    .contact-item { display: flex; align-items: flex-start; margin-bottom: 8px; color: var(--text-color); font-size: 11px; width: 100%; }\n    .contact-item svg { width: 14px; height: 14px; margin-right: 10px; fill: var(--primary-color); flex-shrink: 0; opacity: 0.9; margin-top: 2px; }\n    .contact-item a { color: var(--text-color); text-decoration: none; transition: color 0.2s ease; word-break: break-all; }\n    .contact-item a:hover { color: var(--primary-color); text-decoration: underline; }\n    .job-desc-btn { width: 100%; padding: 12px; background: var(--primary-color); color: white; border: none; border-radius: 4px; font-family: 'Poppins', sans-serif; font-size: 12px; font-weight: 500; cursor: pointer; transition: background-color 0.3s ease; margin-top: auto; text-transform: capitalize; letter-spacing: 0.5px; }\n    .job-desc-btn:hover { background: var(--button-hover); }\n    .staff-modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(2px); animation: fadeIn 0.2s ease; }\n    .staff-modal.active { display: flex; align-items: center; justify-content: center; }\n    .staff-modal-content { background: white; padding: 40px; border-radius: 8px; border: 1px solid var(--border-color); box-shadow: 0 10px 40px rgba(0,0,0,0.08); max-width: 600px; width: 90%; max-height: 85vh; overflow-y: auto; position: relative; animation: slideUp 0.3s ease; }\n    .staff-close-btn { position: absolute; top: 20px; right: 20px; width: 32px; height: 32px; background: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background-color 0.2s ease; padding: 0; }\n    .staff-close-btn svg { width: 24px; height: 24px; fill: #999; transition: fill 0.2s ease; }\n    .staff-close-btn:hover { background-color: rgba(0,0,0,0.05); }\n    .staff-close-btn:hover svg { fill: var(--primary-color); }\n    .modal-header { color: var(--primary-color); font-size: 1.6rem; font-weight: 600; margin-bottom: 5px; margin-top: 0; }\n    .modal-position { color: #888; font-size: 1.2rem; margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid var(--border-color); margin-top: 0; }\n    .modal-body { color: var(--text-color); line-height: 1.8; font-size: 1.2rem; }\n    .modal-body h3 { color: var(--primary-color); margin-top: 25px; margin-bottom: 15px; font-size: 1.2rem; font-weight: 500; }\n    .modal-body ul { margin-left: 20px; color: #666; }\n    .modal-body li { margin-bottom: 8px; }\n    \n    @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }\n    @keyframes slideUp { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }\n<\/style>\n\n<div class=\"directory-wrapper\">\n    <div class=\"staff-grid dynamic-staff-grid\"><\/div>\n<\/div>\n\n<script>\n{\n    const uniqueTabId = 'tab_kerjaya'; \n    \n    const staffData = [\n      {\n        \"Name\": \"PUAN SITI SALWA AHMAD ZUR\",\n        \"Position\": \"Ketua Penolong Pendaftar N12\",\n        \"Email\": \"ctsalwa@ukm.edu.my\",\n        \"Phone\": \"03-8921 4658\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Siti-Salwa.png\",\n        \"JobScope\": \"Merancang keperluan kemudahan yang melibatkan perkembangan kerjaya merangkumi keperluan kuota, kewangan dan penajaan biasiswa dalam dan luar 糖心原创 | Mengurus permohonan kemudahan cuti belajar, pengajian sambilan dan latihan kepakaran seperti Pasca Kedoktoran, Subkepakaran, Pos Basik dan Sijil Profesional | Mengurus permohonan cuti sabatikal dan program sangkutan (penempatan silang) yang melibatkan penempatan di agensi luar dalam dan luar negara | Memantau prestasi staf dalam tempoh pengajian atau latihan berdasarkan pengukuran hasil yang telah ditetapkan | Menyedia laporan strategik berkaitan perkembangan kerjaya yang ditetapkan\"\n      },\n      {\n        \"Name\": \"Cik Sitinor Waheda Damri\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"waheda@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Sitinor-Waheda.png\",\n        \"JobScope\": \"Urusan Cuti Belajar \/ Latihan Kepakaran \/ Urusan Cuti Sabatikal, Pemantauan Cuti Belajar dan Skim Fellowship bagi | >> Fakulti Perubatan | >> Fakulti Pergigian | >> UMBI | Penajaan \/ Biasiswa KPT (Sistem e-SP) | Sistem Pengurusan Kualiti dan Perkhidmatan Unit | Kursus Kenegaraan\"\n      },\n      {\n        \"Name\": \"Encik Mohd Fikri Khairuddin Abu Bakar\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"fiqry@ukm.edu.my\",\n        \"Phone\": \"03-8921 4686\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2026\/01\/Fikri-Khairuddin.png\",\n        \"JobScope\": \"Program Sangkutan Industri bagi staf 糖心原创 | Urusan Jawatankuasa Program Sangkutan Industri | Pengurusan Kewangan Unit Perkembangan Kerjaya | Pengurusan Latihan Kepakaran 糖心原创 | Ahli Jawatankuasa Sistem Pengurusan Kualiti SPKPPP Jabatan Pendaftar\"\n      },\n      {\n        \"Name\": \"Encik Ahmad Zhafran A Rahman\",\n        \"Position\": \"Pembantu Tadbir N1\",\n        \"Email\": \"zhafran@ukm.edu.my\",\n        \"Phone\": \"\",\n        \"Image\": \"https:\/\/www.ukm.my\/pendaftar\/wp-content\/uploads\/2024\/09\/anonymous_male_v2.png\",\n        \"JobScope\": \"Urusan Cuti Belajar \/ Latihan Kepakaran \/ Urusan Cuti Sabatikal, Pemantauan Cuti Belajar dan Skim Fellowship | >> Fakulti Ekonomi dan Pengurusan | >>Fakulti Sains Sosial dan Kemanusiaan | >> Fakulti Undang-undang | >> Fakulti Pendidikan | >> Fakulti Pengajian Islam | >> HADHARI,  CITRA 糖心原创, KITA, ATMA, IKMAS, PUSAT PERMATA@PINTAR NEGARA , 糖心原创-GSB,  CANSELORI (Pusat Perkhidmatan) |  Urusan Jawatankuasa Pemilih Cuti Belajar Staf P&P dan Pelaksana | Urusan Jawatankuasa Penyiasatan Kegagalan Staf P&P dan Pelaksana | Penajaan \/ Biasiswa KPT (Sistem e-SP) | Sistem Pengurusan Kualiti dan Perkhidmatan Unit | Kursus Kenegaraan\"\n      }\n    ];\n\n    const currentScript = document.currentScript;\n    const wrapper = currentScript.previousElementSibling; \n    const gridContainer = wrapper.querySelector('.dynamic-staff-grid');\n    \n    gridContainer.id = `grid-${uniqueTabId}`;\n\n    let modalContainer = document.getElementById(`modals-${uniqueTabId}`);\n    if (!modalContainer) {\n        modalContainer = document.createElement('div');\n        modalContainer.id = `modals-${uniqueTabId}`;\n        document.body.appendChild(modalContainer);\n    }\n\n    staffData.forEach((staff, index) => {\n        const uniqueModalId = `modal-${uniqueTabId}-${index}`;\n        \n        \/\/ Process Job Scope\n        let taskList = [];\n        if(staff.JobScope) { taskList = staff.JobScope.split('|').map(item => item.trim()); }\n\n        \/\/ Process Emails\n        let emailHtml = '';\n        if (staff.Email) {\n            const emails = staff.Email.split('|');\n            emailHtml = emails.map(e => {\n                const mail = e.trim();\n                return `<a href=\"mailto:${mail}\" style=\"display:block; margin-bottom:2px;\">${mail}<\/a>`;\n            }).join('');\n        }\n\n        const phoneLink = staff.Phone ? staff.Phone.replace(\/\\s\/g, '') : '';\n\n        const cardHTML = `\n            <div class=\"staff-card\">\n                <img decoding=\"async\" src=\"${staff.Image}\" alt=\"${staff.Name}\" class=\"staff-image\" onerror=\"this.src='https:\/\/placehold.co\/400x300\/eee\/999?text=No+Image'\">\n                <div class=\"staff-info\">\n                    <h2 class=\"staff-name\">${staff.Name}<\/h2>\n                    <p class=\"staff-position\">${staff.Position || ''}<\/p>\n                    <div class=\"contact-info\">\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z\"\/><\/svg>\n                            <div style=\"flex-grow: 1; min-width: 0;\">${emailHtml}<\/div>\n                        <\/div>\n                        <div class=\"contact-item\">\n                            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z\"\/><\/svg>\n                            <a href=\"tel:${phoneLink}\">${staff.Phone || ''}<\/a>\n                        <\/div>\n                    <\/div>\n                    <button class=\"job-desc-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.add('active'); document.body.style.overflow='hidden';\">Skop Tugas<\/button>\n                <\/div>\n            <\/div>`;\n        gridContainer.innerHTML += cardHTML;\n\n        const tasksHTML = taskList.map(task => {\n            if (task.startsWith('>>')) { \n                return `<li style=\"margin-left: 20px; list-style-type: circle;\">${task.replace('>>', '').trim()}<\/li>`; \n            }\n            return `<li>${task}<\/li>`;\n        }).join('');\n        \n        const modalHTML = `\n            <div id=\"${uniqueModalId}\" class=\"staff-modal\" onclick=\"if(event.target === this){this.classList.remove('active'); document.body.style.overflow='auto';}\">\n                <div class=\"staff-modal-content\">\n                    <button class=\"staff-close-btn\" onclick=\"document.getElementById('${uniqueModalId}').classList.remove('active'); document.body.style.overflow='auto';\">\n                         <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 24 24\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"\/><\/svg>\n                    <\/button>\n                    <h2 class=\"modal-header\">${staff.Name}<\/h2>\n                    <p class=\"modal-position\">${staff.Position || ''}<\/p>\n                    <div class=\"modal-body\">\n                        <h3>Skop Tugas:<\/h3>\n                        <ul>${tasksHTML}<\/ul>\n                    <\/div>\n                <\/div>\n            <\/div>`;\n        modalContainer.innerHTML += modalHTML;\n    });\n}\n<\/script><\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Bahagian Pembangunan Bakat Ketua Bahagian Unit Pembangunan Kompetensi Unit Pembangunan Potensi Unit Perkembangan Kerjaya Ketua Bahagian Unit Pembangunan Kompetensi Unit Pembangunan Potensi Unit Perkembangan Kerjaya<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ocean_post_layout":"","ocean_both_sidebars_style":"","ocean_both_sidebars_content_width":0,"ocean_both_sidebars_sidebars_width":0,"ocean_sidebar":"0","ocean_second_sidebar":"0","ocean_disable_margins":"enable","ocean_add_body_class":"","ocean_shortcode_before_top_bar":"","ocean_shortcode_after_top_bar":"","ocean_shortcode_before_header":"","ocean_shortcode_after_header":"","ocean_has_shortcode":"","ocean_shortcode_after_title":"","ocean_shortcode_before_footer_widgets":"","ocean_shortcode_after_footer_widgets":"","ocean_shortcode_before_footer_bottom":"","ocean_shortcode_after_footer_bottom":"","ocean_display_top_bar":"default","ocean_display_header":"default","ocean_header_style":"","ocean_center_header_left_menu":"0","ocean_custom_header_template":"0","ocean_custom_logo":0,"ocean_custom_retina_logo":0,"ocean_custom_logo_max_width":0,"ocean_custom_logo_tablet_max_width":0,"ocean_custom_logo_mobile_max_width":0,"ocean_custom_logo_max_height":0,"ocean_custom_logo_tablet_max_height":0,"ocean_custom_logo_mobile_max_height":0,"ocean_header_custom_menu":"0","ocean_menu_typo_font_family":"0","ocean_menu_typo_font_subset":"","ocean_menu_typo_font_size":0,"ocean_menu_typo_font_size_tablet":0,"ocean_menu_typo_font_size_mobile":0,"ocean_menu_typo_font_size_unit":"px","ocean_menu_typo_font_weight":"","ocean_menu_typo_font_weight_tablet":"","ocean_menu_typo_font_weight_mobile":"","ocean_menu_typo_transform":"","ocean_menu_typo_transform_tablet":"","ocean_menu_typo_transform_mobile":"","ocean_menu_typo_line_height":0,"ocean_menu_typo_line_height_tablet":0,"ocean_menu_typo_line_height_mobile":0,"ocean_menu_typo_line_height_unit":"","ocean_menu_typo_spacing":0,"ocean_menu_typo_spacing_tablet":0,"ocean_menu_typo_spacing_mobile":0,"ocean_menu_typo_spacing_unit":"","ocean_menu_link_color":"","ocean_menu_link_color_hover":"","ocean_menu_link_color_active":"","ocean_menu_link_background":"","ocean_menu_link_hover_background":"","ocean_menu_link_active_background":"","ocean_menu_social_links_bg":"","ocean_menu_social_hover_links_bg":"","ocean_menu_social_links_color":"","ocean_menu_social_hover_links_color":"","ocean_disable_title":"default","ocean_disable_heading":"default","ocean_post_title":"","ocean_post_subheading":"","ocean_post_title_style":"","ocean_post_title_background_color":"","ocean_post_title_background":0,"ocean_post_title_bg_image_position":"","ocean_post_title_bg_image_attachment":"","ocean_post_title_bg_image_repeat":"","ocean_post_title_bg_image_size":"","ocean_post_title_height":0,"ocean_post_title_bg_overlay":0.5,"ocean_post_title_bg_overlay_color":"","ocean_disable_breadcrumbs":"default","ocean_breadcrumbs_color":"","ocean_breadcrumbs_separator_color":"","ocean_breadcrumbs_links_color":"","ocean_breadcrumbs_links_hover_color":"","ocean_display_footer_widgets":"default","ocean_display_footer_bottom":"default","ocean_custom_footer_template":"0","footnotes":""},"class_list":["post-22238","page","type-page","status-publish","hentry","entry"],"aioseo_notices":[],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"pendaftar_v2","author_link":"https:\/\/www.ukm.my\/pendaftar\/author\/pendaftar_v2\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":"Bahagian Pembangunan Bakat Ketua Bahagian Unit Pembangunan Kompetensi Unit Pembangunan Potensi Unit Perkembangan Kerjaya Ketua Bahagian Unit Pembangunan Kompetensi Unit Pembangunan Potensi Unit Perkembangan Kerjaya","_links":{"self":[{"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/pages\/22238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/comments?post=22238"}],"version-history":[{"count":274,"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/pages\/22238\/revisions"}],"predecessor-version":[{"id":32616,"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/pages\/22238\/revisions\/32616"}],"wp:attachment":[{"href":"https:\/\/www.ukm.my\/pendaftar\/wp-json\/wp\/v2\/media?parent=22238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}