{"id":1703,"date":"2026-07-21T18:51:58","date_gmt":"2026-07-21T18:51:58","guid":{"rendered":"https:\/\/shipforge.com.br\/home\/?page_id=1703"},"modified":"2026-07-22T21:27:30","modified_gmt":"2026-07-22T21:27:30","slug":"leonardo-barreto","status":"publish","type":"page","link":"https:\/\/shipforge.com.br\/home\/?page_id=1703","title":{"rendered":"Leonardo Barreto"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"pt-BR\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Olho M\u00e1gico Smart &#8211; Leonardo Barreto Rodrigues<\/title>\n    <!-- Tailwind CSS CDN -->\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <!-- FontAwesome Icons -->\n    <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\">\n    <style>\n        @import url('https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700&display=swap');\n        body { font-family: 'Inter', sans-serif; }\n    <\/style>\n<\/head>\n<body class=\"bg-black text-emerald-400 flex justify-center items-center min-h-screen p-0 sm:p-4\">\n\n    <!-- Container Principal Mobile-First -->\n    <div class=\"w-full sm:max-w-md bg-black sm:rounded-3xl shadow-[0_0_50px_rgba(16,185,129,0.15)] overflow-hidden min-h-screen sm:min-h-[750px] flex flex-col border border-emerald-500\/35 relative\">\n\n        <!-- HEADER -->\n        <header class=\"bg-black border-b border-emerald-500\/20 p-4 flex items-center justify-between z-10\">\n            <div class=\"flex items-center space-x-2\">\n                <div class=\"bg-emerald-500 text-black p-2 rounded-xl font-bold flex items-center justify-center w-9 h-9 shadow-lg shadow-emerald-500\/20\">\n                    <i class=\"fa-solid fa-eye\"><\/i>\n                <\/div>\n                <div>\n                    <h1 class=\"font-bold text-sm leading-tight text-emerald-400\">Olho M\u00e1gico Smart<\/h1>\n                    <span class=\"text-xs text-emerald-600\">Interfone Pessoal<\/span>\n                <\/div>\n            <\/div>\n            <div class=\"flex items-center gap-2\">\n                <!-- Bot\u00e3o de Acesso Admin -->\n                <button onclick=\"openAdminModal()\" class=\"text-xs bg-emerald-500\/10 hover:bg-emerald-500\/20 text-emerald-400 p-2 rounded-lg transition border border-emerald-500\/30 flex items-center justify-center\" title=\"Painel Administrador\">\n                    <i class=\"fa-solid fa-lock text-xs\"><\/i>\n                <\/button>\n                <span class=\"text-[10px] uppercase font-bold tracking-widest text-emerald-400 bg-emerald-500\/10 px-2.5 py-1 rounded-full border border-emerald-500\/20 flex items-center gap-1\">\n                    <i class=\"fa-solid fa-circle text-[6px] text-emerald-500 animate-pulse\"><\/i> Online\n                <\/span>\n            <\/div>\n        <\/header>\n\n        <!-- CONTE\u00daDO PRINCIPAL (P\u00c1GINA \u00daNICA) -->\n        <main class=\"flex-1 p-6 flex flex-col justify-center items-center text-center space-y-6 my-auto\">\n\n            <!-- Cart\u00e3o do Morador -->\n            <div class=\"w-full bg-black border border-emerald-500\/30 rounded-3xl p-6 space-y-5 shadow-xl relative\">\n                \n                <!-- Foto com Efeito de Anima\u00e7\u00e3o de Campainha -->\n                <div class=\"relative w-28 h-28 mx-auto\">\n                    <img decoding=\"async\" id=\"view-foto\" src=\"https:\/\/images.unsplash.com\/photo-1535713875002-d1d0cf377fde?auto=format&#038;fit=crop&#038;w=300&#038;q=80\" alt=\"Morador\" class=\"w-28 h-28 rounded-full object-cover border-4 border-emerald-500 shadow-lg bg-black\">\n                    <span class=\"absolute bottom-0 right-0 bg-emerald-500 text-black p-2 rounded-full text-xs shadow-lg animate-bounce\">\n                        <i class=\"fa-solid fa-bell\"><\/i>\n                    <\/span>\n                <\/div>\n\n                <!-- Identifica\u00e7\u00e3o -->\n                <div class=\"space-y-1.5\">\n                    <span id=\"view-bloco-ap\" class=\"text-xs font-semibold px-3 py-1 bg-emerald-500\/10 text-emerald-400 rounded-full border border-emerald-500\/20\">Bloco 3 &#8211; Apt 307<\/span>\n                    <h2 id=\"view-nome\" class=\"text-xl font-bold text-emerald-400 mt-2\">Leonardo Barreto Rodrigues<\/h2>\n                    <p class=\"text-xs text-emerald-600 leading-relaxed\">Voc\u00ea acionou o <strong>Olho M\u00e1gico Smart<\/strong>. Toque abaixo para falar diretamente no WhatsApp.<\/p>\n                <\/div>\n\n                <!-- Bot\u00f5es de A\u00e7\u00e3o -->\n                <div class=\"pt-3 space-y-3\">\n                    <a id=\"view-whatsapp-btn\" href=\"https:\/\/wa.me\/5521959052170?text=Ol\u00e1%20Leonardo,%20estou%20na%20porta%20do%20Bloco%203%20Apt%20307.\" target=\"_blank\" onclick=\"playDoorbellSound()\" class=\"w-full bg-emerald-500 hover:bg-emerald-400 text-black font-bold py-4 px-4 rounded-xl text-sm transition flex items-center justify-center gap-2 shadow-lg shadow-emerald-500\/25\">\n                        <i class=\"fa-brands fa-whatsapp text-lg\"><\/i> <span id=\"view-whatsapp-text\">Chamar no WhatsApp (21 95905-2170)<\/span>\n                    <\/a>\n                    \n                    <button onclick=\"playDoorbellSound()\" class=\"w-full bg-emerald-500\/10 hover:bg-emerald-500\/20 text-emerald-400 font-medium py-3 px-4 rounded-xl text-xs transition flex items-center justify-center gap-1.5 border border-emerald-500\/30\">\n                        <i class=\"fa-solid fa-bell\"><\/i> Tocar Campainha Novamente\n                    <\/button>\n                <\/div>\n\n            <\/div>\n\n        <\/main>\n\n        <!-- FOOTER -->\n        <footer class=\"bg-black border-t border-emerald-500\/20 p-3 text-center text-[10px] text-emerald-600\">\n            Olho M\u00e1gico Smart &bull; Todos os direitos reservados\n        <\/footer>\n\n    <\/div>\n\n    <!-- MODAL DE SENHA DO ADMIN -->\n    <div id=\"admin-modal\" class=\"fixed inset-0 bg-black\/80 backdrop-blur-sm z-50 hidden flex justify-center items-center p-4\">\n        <div class=\"bg-black border border-emerald-500\/40 rounded-3xl p-6 w-full max-w-sm space-y-4 shadow-[0_0_50px_rgba(16,185,129,0.2)]\">\n            <div class=\"flex justify-between items-center border-b border-emerald-500\/20 pb-3\">\n                <h3 class=\"text-sm font-bold text-emerald-400 flex items-center gap-2\">\n                    <i class=\"fa-solid fa-lock text-emerald-500\"><\/i> Acesso Restrito Admin\n                <\/h3>\n                <button onclick=\"closeAdminModal()\" class=\"text-emerald-600 hover:text-emerald-400 text-xs\">\n                    <i class=\"fa-solid fa-xmark text-sm\"><\/i>\n                <\/button>\n            <\/div>\n            <form onsubmit=\"handleAdminLogin(event)\" class=\"space-y-3\">\n                <div>\n                    <label class=\"block text-xs font-medium text-emerald-500 mb-1\">Digite a senha (1234)<\/label>\n                    <input type=\"password\" id=\"admin-pass\" placeholder=\"\u2022\u2022\u2022\u2022\" required class=\"w-full bg-black border border-emerald-500\/30 rounded-xl px-4 py-2.5 text-sm text-emerald-400 focus:outline-none focus:border-emerald-400 tracking-widest text-center\">\n                <\/div>\n                <button type=\"submit\" class=\"w-full bg-emerald-500 hover:bg-emerald-400 text-black font-semibold py-2.5 rounded-xl text-xs transition shadow-lg shadow-emerald-500\/20\">Entrar<\/button>\n            <\/form>\n        <\/div>\n    <\/div>\n\n    <!-- MODAL DE EDI\u00c7\u00c3O DO ADMIN -->\n    <div id=\"admin-edit-modal\" class=\"fixed inset-0 bg-black\/80 backdrop-blur-sm z-50 hidden flex justify-center items-center p-4\">\n        <div class=\"bg-black border border-emerald-500\/40 rounded-3xl p-6 w-full max-w-md space-y-4 shadow-[0_0_50px_rgba(16,185,129,0.2)] max-h-[90vh] overflow-y-auto\">\n            <div class=\"flex justify-between items-center border-b border-emerald-500\/20 pb-3\">\n                <h3 class=\"text-sm font-bold text-emerald-400 flex items-center gap-2\">\n                    <i class=\"fa-solid fa-sliders text-emerald-500\"><\/i> Painel Editor Admin\n                <\/h3>\n                <button onclick=\"closeAdminEditModal()\" class=\"text-emerald-600 hover:text-emerald-400 text-xs\">\n                    <i class=\"fa-solid fa-xmark text-sm\"><\/i>\n                <\/button>\n            <\/div>\n            <form id=\"form-edit-admin\" onsubmit=\"handleSaveAdmin(event)\" class=\"space-y-3 text-xs\">\n                <div>\n                    <label class=\"block font-medium text-emerald-500 mb-1\">Bloco e Apartamento<\/label>\n                    <input type=\"text\" id=\"adm-bloco\" required class=\"w-full bg-black border border-emerald-500\/30 rounded-xl px-3 py-2 text-emerald-400 focus:outline-none focus:border-emerald-400\">\n                <\/div>\n                <div>\n                    <label class=\"block font-medium text-emerald-500 mb-1\">Nome Completo<\/label>\n                    <input type=\"text\" id=\"adm-nome\" required class=\"w-full bg-black border border-emerald-500\/30 rounded-xl px-3 py-2 text-emerald-400 focus:outline-none focus:border-emerald-400\">\n                <\/div>\n                <div>\n                    <label class=\"block font-medium text-emerald-500 mb-1\">N\u00famero do WhatsApp (Apenas n\u00fameros com DDD)<\/label>\n                    <input type=\"text\" id=\"adm-whatsapp\" required class=\"w-full bg-black border border-emerald-500\/30 rounded-xl px-3 py-2 text-emerald-400 focus:outline-none focus:border-emerald-400\" placeholder=\"21959052170\">\n                <\/div>\n                <div>\n                    <label class=\"block font-medium text-emerald-500 mb-1\">Enviar Foto por Arquivo<\/label>\n                    <input type=\"file\" id=\"adm-foto\" accept=\"image\/*\" class=\"w-full bg-black border border-emerald-500\/30 rounded-xl px-3 py-2 text-xs text-emerald-600 file:mr-4 file:py-1.5 file:px-3 file:rounded-lg file:border-0 file:text-xs file:font-semibold file:bg-emerald-500\/10 file:text-emerald-400 hover:file:bg-emerald-500\/20\">\n                <\/div>\n                <div class=\"pt-2 flex flex-col gap-2\">\n                    <button type=\"submit\" class=\"w-full bg-emerald-500 hover:bg-emerald-400 text-black font-semibold py-2.5 rounded-xl transition shadow\">Salvar Altera\u00e7\u00f5es<\/button>\n                    <button type=\"button\" onclick=\"handleResetData()\" class=\"w-full bg-red-500\/10 hover:bg-red-500\/20 text-red-400 border border-red-500\/20 font-semibold py-2.5 rounded-xl transition\">Excluir \/ Restaurar Padr\u00e3o<\/button>\n                <\/div>\n            <\/form>\n        <\/div>\n    <\/div>\n\n    <!-- SCRIPT DE GERENCIAMENTO E SOM -->\n    <script>\n        const DB_KEY = 'olho_magico_morador_v1';\n        let profileData = JSON.parse(localStorage.getItem(DB_KEY)) || {\n            blocoAp: 'Bloco 3 - Apt 307',\n            nome: 'Leonardo Barreto Rodrigues',\n            whatsapp: '21959052170',\n            foto: 'https:\/\/images.unsplash.com\/photo-1535713875002-d1d0cf377fde?auto=format&fit=crop&w=300&q=80'\n        };\n\n        function updateUI() {\n            document.getElementById('view-bloco-ap').innerText = profileData.blocoAp;\n            document.getElementById('view-nome').innerText = profileData.nome;\n            document.getElementById('view-foto').src = profileData.foto;\n            \n            \/\/ Formatar n\u00famero para exibi\u00e7\u00e3o amig\u00e1vel se tiver 11 d\u00edgitos\n            let fmtWp = profileData.whatsapp;\n            if(fmtWp.length >= 10) {\n                const ddd = fmtWp.substring(0, 2);\n                const parte1 = fmtWp.substring(2, fmtWp.length - 4);\n                const parte2 = fmtWp.substring(fmtWp.length - 4);\n                fmtWp = `(${ddd}) ${parte1}-${parte2}`;\n            }\n\n            document.getElementById('view-whatsapp-text').innerText = `Chamar no WhatsApp (${fmtWp})`;\n            const msg = encodeURIComponent(`Ol\u00e1 ${profileData.nome}, estou na porta do ${profileData.blocoAp}.`);\n            document.getElementById('view-whatsapp-btn').href = `https:\/\/wa.me\/55${profileData.whatsapp}?text=${msg}`;\n        }\n\n        function playDoorbellSound() {\n            try {\n                const audioCtx = new (window.AudioContext || window.webkitAudioContext)();\n                if (audioCtx.state === 'suspended') audioCtx.resume();\n                \n                const osc1 = audioCtx.createOscillator();\n                const gain1 = audioCtx.createGain();\n                osc1.type = 'sine';\n                osc1.frequency.setValueAtTime(659.25, audioCtx.currentTime);\n                gain1.gain.setValueAtTime(0.3, audioCtx.currentTime);\n                gain1.gain.exponentialRampToValueAtTime(0.001, audioCtx.currentTime + 1.2);\n                osc1.connect(gain1);\n                gain1.connect(audioCtx.destination);\n                osc1.start();\n                osc1.stop(audioCtx.currentTime + 1.2);\n\n                setTimeout(() => {\n                    const osc2 = audioCtx.createOscillator();\n                    const gain2 = audioCtx.createGain();\n                    osc2.type = 'sine';\n                    osc2.frequency.setValueAtTime(523.25, audioCtx.currentTime);\n                    gain2.gain.setValueAtTime(0.3, audioCtx.currentTime);\n                    gain2.gain.exponentialRampToValueAtTime(0.001, audioCtx.currentTime + 1.5);\n                    osc2.connect(gain2);\n                    gain2.connect(audioCtx.destination);\n                    osc2.start();\n                    osc2.stop(audioCtx.currentTime + 1.5);\n                }, 350);\n            } catch(e) { console.log('\u00c1udio restrito.', e); }\n        }\n\n        document.addEventListener('DOMContentLoaded', () => {\n            updateUI();\n            playDoorbellSound();\n        });\n\n        \/\/ Controles do Admin Modal\n        function openAdminModal() {\n            document.getElementById('admin-pass').value = '';\n            document.getElementById('admin-modal').classList.remove('hidden');\n        }\n\n        function closeAdminModal() {\n            document.getElementById('admin-modal').classList.add('hidden');\n        }\n\n        function handleAdminLogin(event) {\n            event.preventDefault();\n            const pass = document.getElementById('admin-pass').value;\n            if (pass === '1234') {\n                closeAdminModal();\n                openAdminEditModal();\n            } else {\n                alert('Senha incorreta! (Senha padr\u00e3o: 1234)');\n            }\n        }\n\n        function openAdminEditModal() {\n            document.getElementById('adm-bloco').value = profileData.blocoAp;\n            document.getElementById('adm-nome').value = profileData.nome;\n            document.getElementById('adm-whatsapp').value = profileData.whatsapp;\n            document.getElementById('admin-edit-modal').classList.remove('hidden');\n        }\n\n        function closeAdminEditModal() {\n            document.getElementById('admin-edit-modal').classList.add('hidden');\n        }\n\n        function handleSaveAdmin(event) {\n            event.preventDefault();\n            const blocoAp = document.getElementById('adm-bloco').value.trim();\n            const nome = document.getElementById('adm-nome').value.trim();\n            const whatsapp = document.getElementById('adm-whatsapp').value.trim();\n            const fotoInput = document.getElementById('adm-foto');\n\n            const saveChanges = (newFoto) => {\n                profileData = { blocoAp, nome, whatsapp, foto: newFoto };\n                localStorage.setItem(DB_KEY, JSON.stringify(profileData));\n                updateUI();\n                closeAdminEditModal();\n                alert('Altera\u00e7\u00f5es salvas com sucesso!');\n            };\n\n            if (fotoInput.files && fotoInput.files[0]) {\n                const reader = new FileReader();\n                reader.onload = e => saveChanges(e.target.result);\n                reader.readAsDataURL(fotoInput.files[0]);\n            } else {\n                saveChanges(profileData.foto);\n            }\n        }\n\n        function handleResetData() {\n            if (confirm('Deseja excluir as altera\u00e7\u00f5es e restaurar os dados originais (Leonardo \/ Bloco 3 Apt 307)?')) {\n                localStorage.removeItem(DB_KEY);\n                profileData = {\n                    blocoAp: 'Bloco 3 - Apt 307',\n                    nome: 'Leonardo Barreto Rodrigues',\n                    whatsapp: '21959052170',\n                    foto: 'https:\/\/images.unsplash.com\/photo-1535713875002-d1d0cf377fde?auto=format&fit=crop&w=300&q=80'\n                };\n                updateUI();\n                closeAdminEditModal();\n                alert('Dados restaurados com sucesso!');\n            }\n        }\n    <\/script>\n<\/body>\n<\/html>\n\n","protected":false},"excerpt":{"rendered":"<p>Olho M\u00e1gico Smart &#8211; Leonardo Barreto Rodrigues Olho M\u00e1gico Smart Interfone Pessoal Online Bloco 3 &#8211; Apt 307 Leonardo Barreto [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-1703","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/pages\/1703","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1703"}],"version-history":[{"count":6,"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/pages\/1703\/revisions"}],"predecessor-version":[{"id":1709,"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=\/wp\/v2\/pages\/1703\/revisions\/1709"}],"wp:attachment":[{"href":"https:\/\/shipforge.com.br\/home\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1703"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}