{"id":7603,"date":"2026-04-15T13:29:56","date_gmt":"2026-04-15T16:29:56","guid":{"rendered":"https:\/\/saudecajati.com.br\/?page_id=7603"},"modified":"2026-04-15T17:21:12","modified_gmt":"2026-04-15T20:21:12","slug":"ramais-da-prefeitura","status":"publish","type":"page","link":"https:\/\/saudecajati.com.br\/index.php\/ramais-da-prefeitura\/","title":{"rendered":"Ramais da Prefeitura"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"7603\" class=\"elementor elementor-7603\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c5a85fc e-flex e-con-boxed e-con e-parent\" data-id=\"c5a85fc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fe9b81a elementor-align-center elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-invisible elementor-widget elementor-widget-icon-list\" data-id=\"fe9b81a\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_animation&quot;:&quot;slideInDown&quot;}\" data-widget_type=\"icon-list.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<ul class=\"elementor-icon-list-items\">\n\t\t\t\t\t\t\t<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Ramais da Prefeitura<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c2b6914 e-flex e-con-boxed e-con e-parent\" data-id=\"c2b6914\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-275b45f elementor-widget elementor-widget-html\" data-id=\"275b45f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"lista-telefonica-app\">\r\n    <div class=\"card-config\" style=\"position: sticky; top: 10px; z-index: 100; box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important;\">\r\n        <label class=\"label-instrucao\">PESQUISAR NOME, RAMAL OU SETOR<\/label>\r\n        <input type=\"text\" id=\"searchInput\" class=\"afd-input\" placeholder=\"Ex: Cl\u00e1udia, 8705, Gabinete...\" autocomplete=\"off\">\r\n    <\/div>\r\n\r\n    <div id=\"status-busca\" class=\"afd-status\" style=\"display: none; margin-bottom: 15px;\"><\/div>\r\n\r\n    <div id=\"phonebook-list\">&nbsp;<\/div>\r\n\r\n    <div style=\"text-align: center; margin-top: 20px; font-size: 12px; color: #64748b; border-top: 1px dashed #e2e8f0; padding-top: 15px;\">\r\n        <strong>*<\/strong> Ramal virtual (n\u00e3o aceita liga\u00e7\u00f5es de fora diretamente).\r\n    <\/div>\r\n<\/div>\r\n\r\n<style>\r\n    \/* IMPORTANDO FONTE DO PADR\u00c3O AFD *\/\r\n    @import url('https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;600;700;800&display=swap');\r\n\r\n    \/* CONFIGURA\u00c7\u00c3O GLOBAL - PADR\u00c3O AFD CAJATI *\/\r\n    #lista-telefonica-app {\r\n        font-family: 'Inter', sans-serif !important;\r\n        background-color: transparent !important;\r\n        padding: 10px !important;\r\n        color: #2c3e50 !important;\r\n        max-width: 1300px !important; \r\n        margin: 0 auto !important;\r\n        box-sizing: border-box !important;\r\n    }\r\n\r\n    #lista-telefonica-app * {\r\n        box-sizing: border-box !important;\r\n    }\r\n\r\n    \/* GRID DE 3 COLUNAS *\/\r\n    #lista-telefonica-app #phonebook-list {\r\n        display: grid;\r\n        grid-template-columns: repeat(3, 1fr);\r\n        gap: 15px;\r\n        align-items: start; \r\n    }\r\n\r\n    \/* CARDS *\/\r\n    #lista-telefonica-app .card-config {\r\n        background: #ffffff !important;\r\n        padding: 14px !important; \r\n        border-radius: 10px !important;\r\n        border: 1px solid #edf2f7 !important;\r\n        box-shadow: 0 4px 10px rgba(0,0,0,0.02) !important;\r\n        transition: all 0.3s ease;\r\n    }\r\n\r\n    \/* LABELS *\/\r\n    #lista-telefonica-app .label-instrucao {\r\n        display: block !important;\r\n        font-weight: 800 !important;\r\n        margin-bottom: 6px !important;\r\n        color: #00A09A !important;\r\n        font-size: 12px !important;\r\n        text-transform: uppercase !important;\r\n        letter-spacing: 0.5px;\r\n    }\r\n\r\n    \/* INPUTS *\/\r\n    #lista-telefonica-app .afd-input {\r\n        width: 100% !important;\r\n        padding: 12px !important;\r\n        border: 2px solid #edf2f7 !important;\r\n        border-radius: 8px !important;\r\n        font-size: 14px !important;\r\n        font-family: 'Inter', sans-serif !important;\r\n        outline: none !important;\r\n        color: #1e293b !important;\r\n        transition: border-color 0.2s !important;\r\n        background: #f8fafc !important;\r\n    }\r\n\r\n    #lista-telefonica-app .afd-input:focus { \r\n        border-color: #00A09A !important; \r\n        background: #ffffff !important;\r\n    }\r\n\r\n    \/* ACCORDION (CABE\u00c7ALHO DO SETOR) *\/\r\n    #lista-telefonica-app .dept-trigger {\r\n        width: 100%;\r\n        display: flex;\r\n        justify-content: flex-start;\r\n        align-items: center;\r\n        background: none;\r\n        border: none;\r\n        cursor: pointer;\r\n        padding: 4px 0;\r\n        text-align: left;\r\n    }\r\n\r\n    #lista-telefonica-app .dept-title {\r\n        font-size: 14px;\r\n        font-weight: 700;\r\n        color: #1e293b;\r\n        margin: 0;\r\n    }\r\n\r\n    \/* SETA DO ACCORDION *\/\r\n    #lista-telefonica-app .icon-arrow {\r\n        width: 8px;\r\n        height: 8px;\r\n        border-right: 2px solid #00A09A;\r\n        border-bottom: 2px solid #00A09A;\r\n        transform: rotate(45deg);\r\n        transition: transform 0.3s;\r\n        margin-right: 10px;\r\n    }\r\n\r\n    \/* CONTE\u00daDO DA TABELA *\/\r\n    #lista-telefonica-app .dept-content {\r\n        max-height: 0;\r\n        overflow: hidden;\r\n        transition: max-height 0.3s ease-out;\r\n    }\r\n\r\n    #lista-telefonica-app .card-config.is-open .dept-content {\r\n        max-height: 2000px; \r\n        margin-top: 10px;\r\n    }\r\n\r\n    #lista-telefonica-app .card-config.is-open .icon-arrow {\r\n        transform: rotate(-135deg);\r\n    }\r\n\r\n    \/* TABELAS COMPACTAS *\/\r\n    #lista-telefonica-app .tabela-preview { \r\n        width: 100%; \r\n        border-collapse: collapse; \r\n        font-size: 12px;\r\n        border-radius: 6px;\r\n        overflow: hidden;\r\n        border: 1px solid #edf2f7;\r\n    }\r\n    #lista-telefonica-app .tabela-preview th { \r\n        background-color: #00A09A; \r\n        color: white; \r\n        padding: 6px 8px; \r\n        text-align: left; \r\n        font-weight: 600;\r\n        font-size: 11px;\r\n    }\r\n    #lista-telefonica-app .tabela-preview td { \r\n        padding: 6px 8px; \r\n        text-align: left; \r\n        border-bottom: 1px solid #edf2f7; \r\n        vertical-align: middle; \r\n        color: #334155;\r\n    }\r\n    #lista-telefonica-app .tabela-preview tr:last-child td { border-bottom: none; }\r\n    #lista-telefonica-app .tabela-preview tr:hover td { background-color: #f8fafc; }\r\n\r\n    #lista-telefonica-app .ramal-destaque {\r\n        font-weight: 800;\r\n        color: #00A09A;\r\n        font-size: 13px;\r\n        text-align: right !important; \r\n    }\r\n\r\n    #lista-telefonica-app .uni-tag { \r\n        font-size: 9px; \r\n        color: #64748b; \r\n        background: #f1f5f9;\r\n        padding: 2px 4px;\r\n        border-radius: 4px;\r\n        margin-left: 4px;\r\n        font-weight: 600; \r\n        text-transform: uppercase; \r\n    }\r\n\r\n    #lista-telefonica-app .is-hidden { display: none !important; }\r\n    #lista-telefonica-app .afd-status { text-align: center !important; font-size: 13px !important; font-weight: 600 !important; color: #00A09A; }\r\n\r\n    \/* RESPONSIVIDADE *\/\r\n    @media (max-width: 1024px) {\r\n        #lista-telefonica-app #phonebook-list {\r\n            grid-template-columns: repeat(2, 1fr); \r\n        }\r\n    }\r\n    @media (max-width: 768px) {\r\n        #lista-telefonica-app #phonebook-list {\r\n            grid-template-columns: 1fr; \r\n        }\r\n    }\r\n<\/style>\r\n\r\n<script>\r\n\/\/ A fun\u00e7\u00e3o principal que s\u00f3 ser\u00e1 acionada quando o WordPress estiver pronto\r\nfunction iniciarListaTelefonica() {\r\n    const phoneData = [\r\n        { setor: \"ADMINISTRA\u00c7\u00c3O\", contatos: [{ r: \"8705\", n: \"CL\u00c1UDIA\" }, { r: \"8693\", n: \"GABRIEL ORBELI\" }, { r: \"8679\", n: \"HOTTON\" }, { r: \"8689\", n: \"STHEPHANIE\" }, { r: \"8700\", n: \"VANIA-TELEFONISTA\" }, { r: \"8718\", n: \"RODRIGO\" }, { r: \"8681\", n: \"MARCOS\" }, { r: \"8662\", n: \"PHILIPPE-ALMOXARIFADO\" }] },\r\n        { setor: \"COMPRAS\", contatos: [{ r: \"8702\", n: \"ROSE\" }, { r: \"8708\", n: \"LUCIELEN\" }, { r: \"8675\", n: \"LEANDRO\" }, { r: \"8654\", n: \"FRANCIELLI\" }, { r: \"8655\", n: \"JAILTON\" }, { r: \"8663\", n: \"HANNA\" }, { r: \"8719\", n: \"THIERRY\" }, { r: \"8657\", n: \"MARIA IZABEL\" }] },\r\n        { setor: \"CONTABILIDADE\", contatos: [{ r: \"8701\", n: \"SOLANGE\" }, { r: \"8683\", n: \"AMANDA\" }, { r: \"8684\", n: \"ELAINE\" }, { r: \"8685\", n: \"WALKIRIA\" }, { r: \"8677\", n: \"HANNAH\" }] },\r\n        { setor: \"RECURSOS HUMANOS\", contatos: [{ r: \"8651\", n: \"SILVANA\" }, { r: \"8710\", n: \"ONEIDA\" }, { r: \"8671\", n: \"JO\u00c3O\" }, { r: \"8664\", n: \"CAIO\" }, { r: \"8669\", n: \"ALISON\" }] },\r\n        { setor: \"TRIBUTOS\", contatos: [{ r: \"8652\", n: \"PAULO NOVAES\" }, { r: \"8673\", n: \"CATIRA\" }, { r: \"8674\", n: \"SANDRA\" }, { r: \"8712\", n: \"LUCIANO\" }, { r: \"8665\", n: \"WILSON CAPOEIRA\" }, { r: \"8688\", n: \"VINICIUS\" }] },\r\n        { setor: \"TESOURARIA\", contatos: [{ r: \"8709\", n: \"NEMIAS\" }, { r: \"8653\", n: \"MATHEUS\" }] },\r\n        { setor: \"TR\u00c2NSITO\", contatos: [{ r: \"8650\", n: \"MILTON\" }, { r: \"8676\", n: \"MAYRA\" }] },\r\n        { setor: \"TECNOLOGIA DA INFORMA\u00c7\u00c3O\", contatos: [{ r: \"8714\", n: \"DIOGO\" }, { r: \"8686\", n: \"MARCELO\" }] },\r\n        { setor: \"IMPRENSA\", contatos: [{ r: \"8682\", n: \"LUCICL\u00c9A\" }] },\r\n        { setor: \"JUR\u00cdDICO\", contatos: [{ r: \"8666\", n: \"CAMILA\" }, { r: \"8667\", n: \"DANIELE\" }, { r: \"8672\", n: \"\u00c1DINA\" }, { r: \"8713\", n: \"THAIS\" }, { r: \"8717\", n: \"CIRINEU\" }, { r: \"8658\", n: \"VANIA\" }, { r: \"8659\", n: \"ALANDELON\" }, { r: \"8678\", n: \"FERNANDO ANT\u00d4NIO\" }] },\r\n        { setor: \"PLANEJAMENTO URBANO\", contatos: [{ r: \"8660\", n: \"PAULA\" }, { r: \"8661\", n: \"ZIANE\" }, { r: \"8703\", n: \"SILVERIO\" }, { r: \"8707\", n: \"JAISON\" }, { r: \"8687\", n: \"JONATAS\" }, { r: \"8668\", n: \"\u0391\u039d\u03a4\u039f\u039d\u0399\u0391\" }] },\r\n        { setor: \"DES. ECON\u00d4MICO E MEIO AMBIENTE\", contatos: [{ r: \"8698\", n: \"KATHLEEN\" }, { r: \"8695\", n: \"FABIANO\/LARISSA\" }, { r: \"8696\", n: \"REINALDO\" }, { r: \"4545*\", n: \"MARCELO BARBOSA\" }] },\r\n        { setor: \"SECRETARIA DE GOVERNO\", contatos: [{ r: \"8282\", n: \"DANNIELLE CASTRO\" }, { r: \"8680\", n: \"CLAUDIA MATTOS\" }, { r: \"8720*\", n: \"JACKSON\" }, { r: \"8721*\", n: \"D\u00c9BORA ROSA\" }] },\r\n        { setor: \"GABINETE\", contatos: [{ r: \"8656\", n: \"GIOVANA\" }, { r: \"8704\", n: \"LEANDRO ANTUNES\" }, { r: \"8670\", n: \"PREFEITO\" }] },\r\n        { setor: \"VIGIL\u00c2NCIA PATRIMONIAL\", contatos: [{ r: \"8706\", n: \"MISAEL\" }, { r: \"8690\", n: \"GUARITA DO VIGIA\" }] },\r\n        { setor: \"CONTROLE INTERNO\", contatos: [{ r: \"8716\", n: \"ERICK\" }] },\r\n        { setor: \"DEFESA CIVIL\", contatos: [{ r: \"8691\", n: \"LEONISE\" }, { r: \"8692\", n: \"CELIO\" }, { r: \"8699\", n: \"BOMBEIROS\" }] }\r\n    ];\r\n\r\n    const listContainer = document.getElementById('phonebook-list');\r\n    const searchInput = document.getElementById('searchInput');\r\n    const statusBusca = document.getElementById('status-busca');\r\n\r\n    \/\/ Se o elemento n\u00e3o existir ainda (Construtor de p\u00e1gina lento), tenta novamente em meio segundo\r\n    if (!listContainer) {\r\n        setTimeout(iniciarListaTelefonica, 500);\r\n        return;\r\n    }\r\n\r\n    \/\/ Desenha o HTML na tela\r\n    listContainer.innerHTML = phoneData.map((dept, index) => `\r\n      <div class=\"card-config dept-card\" id=\"dept-${index}\">\r\n        <button class=\"dept-trigger\" type=\"button\">\r\n          <div class=\"icon-arrow\"><\/div>\r\n          <h2 class=\"dept-title\">${dept.setor}<\/h2>\r\n        <\/button>\r\n        <div class=\"dept-content\">\r\n          <table class=\"tabela-preview\">\r\n            <thead>\r\n              <tr>\r\n                <th width=\"75%\">SERVIDOR<\/th>\r\n                <th width=\"25%\" style=\"text-align: right;\">RAMAL<\/th>\r\n              <\/tr>\r\n            <\/thead>\r\n            <tbody>\r\n              ${dept.contatos.map(c => `\r\n                <tr class=\"row-item\">\r\n                  <td>\r\n                    <strong>${c.n}<\/strong> \r\n                    ${c.r.includes('*') ? '<span class=\"uni-tag\">Virtual<\/span>' : ''}\r\n                  <\/td>\r\n                  <td class=\"ramal-destaque\">${c.r.replace('*', '')}<\/td>\r\n                <\/tr>\r\n              `).join('')}\r\n            <\/tbody>\r\n          <\/table>\r\n        <\/div>\r\n      <\/div>\r\n    `).join('');\r\n\r\n    \/\/ Adiciona a fun\u00e7\u00e3o de clique direto no elemento pai (\u00c0 prova do WordPress)\r\n    listContainer.addEventListener('click', function(e) {\r\n        const triggerBtn = e.target.closest('.dept-trigger');\r\n        if (!triggerBtn) return; \r\n        \r\n        const card = triggerBtn.closest('.card-config');\r\n        if (card) {\r\n            card.classList.toggle('is-open');\r\n        }\r\n    });\r\n\r\n    \/\/ Motor de Pesquisa\r\n    searchInput.addEventListener('input', (e) => {\r\n        const term = e.target.value.toLowerCase();\r\n        let totalEncontrados = 0;\r\n        \r\n        phoneData.forEach((dept, index) => {\r\n            const card = document.getElementById(`dept-${index}`);\r\n            const rows = card.querySelectorAll('.row-item');\r\n            let deptMatch = dept.setor.toLowerCase().includes(term);\r\n            let contactFound = false;\r\n\r\n            rows.forEach(row => {\r\n                const text = row.textContent.toLowerCase();\r\n                if (text.includes(term)) {\r\n                    row.classList.remove('is-hidden');\r\n                    contactFound = true;\r\n                    totalEncontrados++;\r\n                } else {\r\n                    row.classList.add('is-hidden');\r\n                }\r\n            });\r\n\r\n            if (term.length > 0) {\r\n                if (deptMatch || contactFound) {\r\n                    card.classList.remove('is-hidden');\r\n                    card.classList.add('is-open'); \r\n                    if (deptMatch) {\r\n                        rows.forEach(r => {\r\n                            if(r.classList.contains('is-hidden')){\r\n                                r.classList.remove('is-hidden');\r\n                                totalEncontrados++;\r\n                            }\r\n                        });\r\n                    }\r\n                } else {\r\n                    card.classList.add('is-hidden');\r\n                }\r\n            } else {\r\n                card.classList.remove('is-hidden', 'is-open');\r\n                rows.forEach(r => r.classList.remove('is-hidden'));\r\n            }\r\n        });\r\n\r\n        if (term.length > 0) {\r\n            statusBusca.style.display = \"block\";\r\n            if (totalEncontrados === 0) {\r\n                statusBusca.textContent = \"Nenhum ramal ou setor encontrado.\";\r\n                statusBusca.style.color = \"#e11d48\"; \r\n            } else {\r\n                statusBusca.textContent = `${totalEncontrados} resultado(s) encontrado(s).`;\r\n                statusBusca.style.color = \"#00A09A\"; \r\n            }\r\n        } else {\r\n            statusBusca.style.display = \"none\";\r\n        }\r\n    });\r\n}\r\n\r\n\/\/ Garante que a p\u00e1gina do WordPress carregou antes de rodar o Script\r\nif (document.readyState === 'loading') {\r\n    document.addEventListener('DOMContentLoaded', iniciarListaTelefonica);\r\n} else {\r\n    iniciarListaTelefonica();\r\n}\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Ramais da Prefeitura PESQUISAR NOME, RAMAL OU SETOR &nbsp; * Ramal virtual (n\u00e3o aceita liga\u00e7\u00f5es de fora diretamente).<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"inline_featured_image":false,"footnotes":""},"class_list":["post-7603","page","type-page","status-publish","hentry"],"_hostinger_reach_plugin_has_subscription_block":false,"_hostinger_reach_plugin_is_elementor":false,"_links":{"self":[{"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/pages\/7603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=7603"}],"version-history":[{"count":10,"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/pages\/7603\/revisions"}],"predecessor-version":[{"id":7617,"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/pages\/7603\/revisions\/7617"}],"wp:attachment":[{"href":"https:\/\/saudecajati.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=7603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}