{"id":2011,"date":"2026-04-23T21:55:20","date_gmt":"2026-04-23T21:55:20","guid":{"rendered":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/?page_id=2011"},"modified":"2026-04-23T21:56:27","modified_gmt":"2026-04-23T21:56:27","slug":"job-portal","status":"publish","type":"page","link":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/job-portal\/","title":{"rendered":"Job Portal"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><p>[vc_row][vc_column][vc_column_text css=&#8221;.vc_custom_1776981384131{margin-bottom: 0px !important;}&#8221; woodmart_inline=&#8221;no&#8221; text_larger=&#8221;no&#8221;]    <div class=\"job-wrapper\">\n    <!-- Filters UI -->\n    <div id=\"job-filters\" style=\"margin-bottom:24px;max-width:340px;background:#fff;box-shadow:0 2px 16px rgba(10,58,89,.07);border-radius:18px;padding:22px 18px;\">\n        <div style=\"display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;\">\n            <span style=\"font-size:18px;font-weight:600;letter-spacing:-0.02em;\">&#9776; Filters<\/span>\n            <button type=\"button\" id=\"filter-reset-btn\" style=\"background:none;border:none;color:#1698eb;font-size:14px;text-decoration:underline;cursor:pointer;padding:0;\">Clear Filters<\/button>\n        <\/div>\n        <div style=\"margin-bottom:18px;\">\n            <input type=\"text\" id=\"filter-keyword\" placeholder=\"Keyword Search\" style=\"width:100%;padding:8px 11px;border:1px solid #e5e7eb;border-radius:7px;font-size:15px;\">\n        <\/div>\n\n        <!-- SHIFT FILTER -->\n        <div style=\"margin-bottom:16px;\">\n            <details open>\n                <summary style=\"margin-bottom:6px;font-size:15px;font-weight:500;cursor:pointer;\">Shift<\/summary>\n                <div style=\"padding-left:3px;display:flex;flex-direction:column;gap:7px;padding-top:8px;\">\n                                            <label style=\"display:flex;align-items:center;gap:7px;\">\n                            <input type=\"checkbox\" class=\"filter-shift\" value=\"days\"> Days                        <\/label>\n                                            <label style=\"display:flex;align-items:center;gap:7px;\">\n                            <input type=\"checkbox\" class=\"filter-shift\" value=\"evenings\"> Evenings                        <\/label>\n                                            <label style=\"display:flex;align-items:center;gap:7px;\">\n                            <input type=\"checkbox\" class=\"filter-shift\" value=\"nights\"> Nights                        <\/label>\n                                            <label style=\"display:flex;align-items:center;gap:7px;\">\n                            <input type=\"checkbox\" class=\"filter-shift\" value=\"other\"> Other                        <\/label>\n                                            <label style=\"display:flex;align-items:center;gap:7px;\">\n                            <input type=\"checkbox\" class=\"filter-shift\" value=\"rotating\"> Rotating                        <\/label>\n                                    <\/div>\n            <\/details>\n        <\/div>\n\n        <!-- DURATION FILTER -->\n        <div style=\"margin-bottom:16px;\">\n            <details open>\n                <summary style=\"margin-bottom:6px;font-size:15px;font-weight:500;cursor:pointer;\">Duration<\/summary>\n                <div style=\"padding-left:3px;display:flex;flex-direction:column;gap:7px;padding-top:8px;\">\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-duration\" value=\"1_8_weeks\"> 1-8 weeks\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-duration\" value=\"9_16_weeks\"> 9-16 weeks\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-duration\" value=\"17_24_weeks\"> 17-24 weeks\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-duration\" value=\"24plus_weeks\"> 24+ weeks\n                    <\/label>\n                <\/div>\n            <\/details>\n        <\/div>\n        <!-- PAY RATE FILTER -->\n        <div style=\"margin-bottom:16px;\">\n            <details>\n                <summary style=\"margin-bottom:6px;font-size:15px;font-weight:500;cursor:pointer;\">Pay Rate<\/summary>\n                <div style=\"padding:8px 0 0 3px;display:flex;gap:8px;align-items:center;\">\n                    <input type=\"number\" step=\"1\" min=\"0\" id=\"filter-wage-min\" placeholder=\"Min\" style=\"padding:4px 10px;border:1px solid #d1d5db;border-radius:5px;font-size:14px;width:88px;\">\n                    <span style=\"font-size:16px;color:#aaa;\">-<\/span>\n                    <input type=\"number\" step=\"1\" min=\"0\" id=\"filter-wage-max\" placeholder=\"Max\" style=\"padding:4px 10px;border:1px solid #d1d5db;border-radius:5px;font-size:14px;width:88px;\">\n                <\/div>\n            <\/details>\n        <\/div>\n        <!-- START DATE FILTER -->\n        <div style=\"margin-bottom:8px;\">\n            <details open>\n                <summary style=\"margin-bottom:6px;font-size:15px;font-weight:500;cursor:pointer;\">Start Date<\/summary>\n                <div style=\"padding-left:3px;display:flex;flex-direction:column;gap:7px;padding-top:8px;\">\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-start-date\" value=\"lt_2w\"> &lt; 2 Weeks\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-start-date\" value=\"15_30d\"> 15-30 Days\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-start-date\" value=\"31_60d\"> 31-60 Days\n                    <\/label>\n                    <label style=\"display:flex;align-items:center;gap:7px;\">\n                        <input type=\"checkbox\" class=\"filter-start-date\" value=\"60plus_d\"> 60+ Days\n                    <\/label>\n                <\/div>\n            <\/details>\n        <\/div>\n    <\/div>\n\n    <div id=\"job-listings-ajax\"><\/div>\n    <script>\n    jQuery(document).ready(function($){\n        \/\/ Function to collect filters dynamically\n        function collectFilters() {\n            let shifts = [];\n            $('.filter-shift:checked').each(function(){ shifts.push($(this).val()); });\n\n            let durations = [];\n            $('.filter-duration:checked').each(function(){ durations.push($(this).val()); });\n\n            let start_dates = [];\n            $('.filter-start-date:checked').each(function(){ start_dates.push($(this).val()); });\n\n            return {\n                keyword: $('#filter-keyword').val(),\n                shifts: shifts,\n                durations: durations,\n                wage_min: $('#filter-wage-min').val(),\n                wage_max: $('#filter-wage-max').val(),\n                start_dates: start_dates\n            };\n        }\n\n        function fetchJobs() {\n            $(\"#job-listings-ajax\").html('<div style=\"padding:40px;text-align:center;color:#788;\">Loading...<\/div>');\n            $.ajax({\n                type: 'POST',\n                url: 'https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-admin\/admin-ajax.php',\n                data: Object.assign({\n                    action: 'job_listing_detail_filter'\n                }, collectFilters()),\n                dataType: 'html',\n                success: function(response) {\n                    $('#job-listings-ajax').html(response);\n                },\n                error: function() {\n                    $(\"#job-listings-ajax\").html('<div class=\"alert alert-danger\">Sorry, failed to load results.<\/div>');\n                }\n            });\n        }\n\n        \/\/ Filter change: trigger fetch immediately\n        $(document).on('input change', '#filter-keyword, #filter-wage-min, #filter-wage-max, .filter-shift, .filter-duration, .filter-start-date', function(){\n            fetchJobs();\n        });\n\n        \/\/ Clear filter button\n        $('#filter-reset-btn').on('click', function(){\n            $('#filter-keyword,#filter-wage-min,#filter-wage-max').val('');\n            $('.filter-shift, .filter-duration, .filter-start-date').prop('checked', false);\n            fetchJobs();\n        });\n\n        \/\/ Initial fetch\n        fetchJobs();\n    });\n    <\/script>\n\n    [\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>[vc_row][vc_column][vc_column_text css=&#8221;.vc_custom_1776981384131{margin-bottom: 0px !important;}&#8221; woodmart_inline=&#8221;no&#8221; text_larger=&#8221;no&#8221;][\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2011","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/pages\/2011","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/comments?post=2011"}],"version-history":[{"count":3,"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/pages\/2011\/revisions"}],"predecessor-version":[{"id":2014,"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/pages\/2011\/revisions\/2014"}],"wp:attachment":[{"href":"https:\/\/stage.projects-delivery.com\/wp\/voca_healthcare\/wp-json\/wp\/v2\/media?parent=2011"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}