{"id":999038,"date":"2026-02-19T09:10:55","date_gmt":"2026-02-19T09:10:55","guid":{"rendered":"https:\/\/linkvista.me\/painel\/"},"modified":"2026-02-19T20:06:22","modified_gmt":"2026-02-19T20:06:22","slug":"painel","status":"publish","type":"page","link":"https:\/\/linkvista.me\/pt-br\/painel\/","title":{"rendered":"Painel"},"content":{"rendered":"<div class=\"et_d4_element et_pb_section et_pb_section_0  et_pb_css_mix_blend_mode et_section_regular et_block_section\" >\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<div class=\"et_d4_element et_pb_row et_pb_row_0  et_pb_css_mix_blend_mode et_block_row\">\n\t\t\t\t\t\t\t\t<div class=\"et_d4_element et_pb_column_4_4 et_pb_column et_pb_column_0  et_pb_css_mix_blend_mode et-last-child et_block_column\">\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<div class=\"et_pb_module et_d4_element et_pb_text et_pb_text_0  et_pb_text_align_left et_pb_bg_layout_light\">\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<div class=\"et_pb_text_inner\"><p>        <div id=\"lv-auth-wrap\">\n            <style>\n                #lv-auth-wrap {\n                    max-width: 460px;\n                    margin: 40px auto;\n                    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n                }\n                #lv-auth-wrap .lv-auth-box {\n                    background: #ffffff;\n                    border: 1px solid #e2e8f0;\n                    border-radius: 20px;\n                    padding: 40px;\n                    box-shadow: 0 4px 32px rgba(0,0,0,0.07);\n                }\n                #lv-auth-wrap .lv-auth-logo {\n                    text-align: center;\n                    font-size: 24px;\n                    font-weight: 800;\n                    color: #0f172a;\n                    margin-bottom: 6px;\n                    letter-spacing: -0.5px;\n                }\n                #lv-auth-wrap .lv-auth-logo span {\n                    background: linear-gradient(135deg, #7c3aed, #6366f1);\n                    -webkit-background-clip: text;\n                    -webkit-text-fill-color: transparent;\n                    background-clip: text;\n                }\n                #lv-auth-wrap .lv-auth-subtitle {\n                    text-align: center;\n                    color: #64748b;\n                    font-size: 14px;\n                    margin-bottom: 32px;\n                }\n                #lv-auth-wrap .lv-tab-nav {\n                    display: flex;\n                    background: #f1f5f9;\n                    border-radius: 10px;\n                    padding: 4px;\n                    margin-bottom: 28px;\n                    gap: 4px;\n                }\n                #lv-auth-wrap .lv-tab-btn {\n                    flex: 1;\n                    padding: 9px;\n                    border: none;\n                    background: transparent;\n                    border-radius: 8px;\n                    font-size: 14px;\n                    font-weight: 600;\n                    color: #64748b;\n                    cursor: pointer;\n                    transition: all 0.2s;\n                }\n                #lv-auth-wrap .lv-tab-btn.active {\n                    background: #ffffff;\n                    color: #0f172a;\n                    box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n                }\n                #lv-auth-wrap .lv-auth-form { display: none; }\n                #lv-auth-wrap .lv-auth-form.active { display: block; }\n                #lv-auth-wrap .lv-field {\n                    margin-bottom: 18px;\n                }\n                #lv-auth-wrap .lv-field label {\n                    display: block;\n                    font-size: 13px;\n                    font-weight: 600;\n                    color: #374151;\n                    margin-bottom: 6px;\n                }\n                #lv-auth-wrap .lv-field input {\n                    width: 100%;\n                    padding: 12px 14px;\n                    border: 1px solid #e2e8f0;\n                    border-radius: 10px;\n                    font-size: 15px;\n                    color: #0f172a;\n                    background: #f8fafc;\n                    transition: border 0.2s, box-shadow 0.2s;\n                    box-sizing: border-box;\n                    outline: none;\n                }\n                #lv-auth-wrap .lv-field input:focus {\n                    border-color: #7c3aed;\n                    box-shadow: 0 0 0 3px rgba(124,58,237,0.12);\n                    background: #fff;\n                }\n                #lv-auth-wrap .lv-auth-submit {\n                    width: 100%;\n                    padding: 14px;\n                    background: linear-gradient(135deg, #7c3aed, #6366f1);\n                    color: #fff;\n                    border: none;\n                    border-radius: 10px;\n                    font-size: 16px;\n                    font-weight: 700;\n                    cursor: pointer;\n                    margin-top: 8px;\n                    transition: opacity 0.2s, transform 0.1s;\n                    letter-spacing: 0.01em;\n                }\n                #lv-auth-wrap .lv-auth-submit:hover { opacity: 0.9; }\n                #lv-auth-wrap .lv-auth-submit:active { transform: scale(0.99); }\n                #lv-auth-wrap .lv-auth-submit:disabled { opacity: 0.6; cursor: default; }\n                #lv-auth-wrap .lv-auth-msg {\n                    margin-top: 16px;\n                    padding: 12px 16px;\n                    border-radius: 10px;\n                    font-size: 14px;\n                    display: none;\n                    text-align: center;\n                }\n                #lv-auth-wrap .lv-auth-msg.success {\n                    background: #f0fdf4;\n                    color: #16a34a;\n                    border: 1px solid #bbf7d0;\n                }\n                #lv-auth-wrap .lv-auth-msg.error {\n                    background: #fef2f2;\n                    color: #dc2626;\n                    border: 1px solid #fecaca;\n                }\n                #lv-auth-wrap .lv-auth-footer {\n                    text-align: center;\n                    font-size: 13px;\n                    color: #94a3b8;\n                    margin-top: 20px;\n                }\n                #lv-auth-wrap .lv-auth-footer a {\n                    color: #7c3aed;\n                    text-decoration: none;\n                    font-weight: 600;\n                }\n            <\/style>\n\n            <div class=\"lv-auth-box\">\n                <div class=\"lv-auth-logo\">Link<span>Vista<\/span><\/div>\n                <p class=\"lv-auth-subtitle\">Sua p\u00e1gina de links personalizada<\/p>\n\n                <div class=\"lv-tab-nav\">\n                    <button class=\"lv-tab-btn active\" data-tab=\"register\">Criar uma conta<\/button>\n                    <button class=\"lv-tab-btn\" data-tab=\"login\">Entrar<\/button>\n                <\/div>\n\n                <!-- Formulaire inscription -->\n                <div class=\"lv-auth-form active\" id=\"lv-form-register\">\n                    <div class=\"lv-field\">\n                        <label for=\"lv-reg-username\">Nome de usu\u00e1rio <small style=\"color:#94a3b8;\">(aparece na sua URL)<\/small><\/label>\n                        <input type=\"text\" id=\"lv-reg-username\" placeholder=\"ex : meunome\" autocomplete=\"username\" \/>\n                    <\/div>\n                    <div class=\"lv-field\">\n                        <label for=\"lv-reg-email\">Endere\u00e7o de email<\/label>\n                        <input type=\"email\" id=\"lv-reg-email\" placeholder=\"you@example.com\" autocomplete=\"email\" \/>\n                    <\/div>\n                    <div class=\"lv-field\">\n                        <label for=\"lv-reg-password\">Senha<\/label>\n                        <input type=\"password\" id=\"lv-reg-password\" placeholder=\"8 caracteres m\u00ednimo\" autocomplete=\"new-password\" \/>\n                    <\/div>\n                    <button class=\"lv-auth-submit\" id=\"lv-reg-submit\">Criar minha conta gratuita<\/button>\n                    <div class=\"lv-auth-msg\" id=\"lv-reg-msg\"><\/div>\n                <\/div>\n\n                <!-- Formulaire connexion -->\n                <div class=\"lv-auth-form\" id=\"lv-form-login\">\n                    <div class=\"lv-field\">\n                        <label for=\"lv-log-username\">Nome de usu\u00e1rio ou email<\/label>\n                        <input type=\"text\" id=\"lv-log-username\" placeholder=\"johndoe\" autocomplete=\"username\" \/>\n                    <\/div>\n                    <div class=\"lv-field\">\n                        <label for=\"lv-log-password\">Senha<\/label>\n                        <input type=\"password\" id=\"lv-log-password\" placeholder=\"Sua senha\" autocomplete=\"current-password\" \/>\n                    <\/div>\n                    <div style=\"text-align:right;margin-bottom:18px;\">\n                        <a href=\"https:\/\/linkvista.me\/pt-br\/wp-login.php?action=lostpassword\" style=\"font-size:13px;color:#7c3aed;text-decoration:none;\">Esqueceu a senha?<\/a>\n                    <\/div>\n                    <button class=\"lv-auth-submit\" id=\"lv-log-submit\">Entrar<\/button>\n                    <div class=\"lv-auth-msg\" id=\"lv-log-msg\"><\/div>\n                <\/div>\n            <\/div>\n\n            <p class=\"lv-auth-footer\">\n                Ao criar a conta, voc\u00ea aceita nossos <a href=\"#\">Termos<\/a> e <a href=\"#\">Privacy Policy<\/a>.            <\/p>\n        <\/div>\n\n        <script>\n        jQuery(function($) {\n            var ajax    = 'https:\/\/linkvista.me\/wp-admin\/admin-ajax.php';\n            var nonce   = 'f90cb310ef';\n            var dashUrl = 'https:\/\/linkvista.me\/dashboard';\n\n            \/\/ Cha\u00eenes traduites pass\u00e9es depuis PHP vers JS\n            var i18n = {\n                fillFields:    'Por favor, preencha todos os campos.',\n                passMin:       'A senha deve ter pelo menos 8 caracteres.',\n                registering:   'Cadastrando\u2026',\n                registered:    'Conta criada! Redirecionando\u2026',\n                btnCreate:     'Criar minha conta gratuita',\n                serverError:   'Erro do servidor.',\n                networkError:  'Erro de rede. Verifique sua conex\u00e3o.',\n                unknownError:  'Erro desconhecido.',\n                connecting:    'Entrando\u2026',\n                connected:     'Login realizado! Redirecionando\u2026',\n                btnLogin:      'Entrar',\n                wrongCreds:    'Credenciais incorretas.',\n            };\n\n            \/\/ Tabs\n            $('.lv-tab-btn').on('click', function() {\n                $('.lv-tab-btn').removeClass('active');\n                $('.lv-auth-form').removeClass('active');\n                $(this).addClass('active');\n                $('#lv-form-' + $(this).data('tab')).addClass('active');\n            });\n\n            \/\/ Inscription\n            $('#lv-reg-submit').on('click', function() {\n                var $btn  = $(this);\n                var $msg  = $('#lv-reg-msg');\n                var user  = $('#lv-reg-username').val().trim();\n                var email = $('#lv-reg-email').val().trim();\n                var pass  = $('#lv-reg-password').val();\n\n                if (!user || !email || !pass) {\n                    $msg.text(i18n.fillFields).removeClass('success').addClass('error').show();\n                    return;\n                }\n                if (pass.length < 8) {\n                    $msg.text(i18n.passMin).removeClass('success').addClass('error').show();\n                    return;\n                }\n\n                $btn.prop('disabled', true).text(i18n.registering);\n                $.post(ajax, { action: 'lv_register_user', nonce: nonce, username: user, email: email, password: pass })\n                    .done(function(res) {\n                        if (typeof res === 'string') {\n                            try { res = JSON.parse(res); } catch(e) {\n                                $msg.text(i18n.serverError).removeClass('success').addClass('error').show();\n                                $btn.prop('disabled', false).text(i18n.btnCreate);\n                                return;\n                            }\n                        }\n                        if (res.success) {\n                            $msg.text(i18n.registered).removeClass('error').addClass('success').show();\n                            setTimeout(function() { window.location.href = dashUrl; }, 1200);\n                        } else {\n                            $msg.text(res.data || i18n.unknownError).removeClass('success').addClass('error').show();\n                            $btn.prop('disabled', false).text(i18n.btnCreate);\n                        }\n                    })\n                    .fail(function() {\n                        $msg.text(i18n.networkError).removeClass('success').addClass('error').show();\n                        $btn.prop('disabled', false).text(i18n.btnCreate);\n                    });\n            });\n\n            \/\/ Connexion\n            $('#lv-log-submit').on('click', function() {\n                var $btn  = $(this);\n                var $msg  = $('#lv-log-msg');\n                var user  = $('#lv-log-username').val().trim();\n                var pass  = $('#lv-log-password').val();\n\n                if (!user || !pass) {\n                    $msg.text(i18n.fillFields).removeClass('success').addClass('error').show();\n                    return;\n                }\n\n                $btn.prop('disabled', true).text(i18n.connecting);\n                $.post(ajax, { action: 'lv_login_user', nonce: nonce, username: user, password: pass })\n                    .done(function(res) {\n                        if (typeof res === 'string') {\n                            try { res = JSON.parse(res); } catch(e) {\n                                $msg.text(i18n.serverError).removeClass('success').addClass('error').show();\n                                $btn.prop('disabled', false).text(i18n.btnLogin);\n                                return;\n                            }\n                        }\n                        if (res.success) {\n                            $msg.text(i18n.connected).removeClass('error').addClass('success').show();\n                            setTimeout(function() { window.location.href = dashUrl; }, 1000);\n                        } else {\n                            $msg.text(res.data || i18n.wrongCreds).removeClass('success').addClass('error').show();\n                            $btn.prop('disabled', false).text(i18n.btnLogin);\n                        }\n                    })\n                    .fail(function() {\n                        $msg.text(i18n.networkError).removeClass('success').addClass('error').show();\n                        $btn.prop('disabled', false).text(i18n.btnLogin);\n                    });\n            });\n\n            \/\/ Enter sur les champs\n            $('#lv-reg-password').on('keydown', function(e) { if(e.key==='Enter') $('#lv-reg-submit').click(); });\n            $('#lv-log-password').on('keydown', function(e) { if(e.key==='Enter') $('#lv-log-submit').click(); });\n        });\n        <\/script>\n<\/p><\/div>\n\t\t\t<\/div>\n\t\t\t<\/div>\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t<\/div>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-999038","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/pages\/999038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/comments?post=999038"}],"version-history":[{"count":3,"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/pages\/999038\/revisions"}],"predecessor-version":[{"id":999041,"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/pages\/999038\/revisions\/999041"}],"wp:attachment":[{"href":"https:\/\/linkvista.me\/pt-br\/wp-json\/wp\/v2\/media?parent=999038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}