PageSourceSearch

https://camaraaguasdesaopedro.sp.gov.br/Admin/Login?ReturnUrl=%2FAdmin

html camaraaguasdesaopedro.sp.gov.br collected 2026-09-29 22:40:20 UTC 22,697 bytes, 331 lines download raw bytes

1
2<!DOCTYPE html>
3<html lang="pt-br">
4<head>
5    <meta charset="utf-8" />
6    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7    <link rel="preconnect" href="https://fonts.googleapis.com">
8    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9    <link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
10    <title>Sino.Sistema - Login</title>
11    
12    <link rel="preconnect" href="https://fonts.googleapis.com">
13<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
14<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
15<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" integrity="sha256-2FMn2Zx6PuH5tdBQDRNwrOo60ts5wWPC9R8jK67b3t4=" crossorigin="anonymous">
16<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/[email protected]/css/all.min.css" integrity="sha256-MVopmdyC2tYTiJ8wlktf0uh0v4NgT+vNdyVFepi7Q0c=" crossorigin="anonymous">
17<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" integrity="sha256-zaSoHBhwFdle0scfGEFUCwggPN7F+ip9XRglo8IWb4w=" crossorigin="anonymous">
18<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/select2-bootstrap-5-theme.min.css" integrity="sha256-XLNUEfzPGHBeStES2DbLUURZ3e793BablwzJlYj6W2Q=" crossorigin="anonymous">
19<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@eonasdan/[email protected]/dist/css/tempus-dominus.min.css" integrity="sha256-CnrhpfYrXdEi7tt7MaXkXnjHOtTw2WUF/ZtHsRYTd9o=" crossorigin="anonymous">
20
21    <link rel="stylesheet" href="/Sistema/css/login.css?v=lsmYBwzchuc4fb2eD5Q7BK54jMu6Odt0l1ms5FrNLN0" />
22    
22<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 22
22
23<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.validate.min.js" integrity="sha256-1IuP7k/g+d98/r5+D1I2X2w+xhBVJJ+shT7D1kXXiYs=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 23
23
24<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jquery.validate.unobtrusive.min.js" integrity="sha256-RFWFWIIPsjB4DucR4jqwxTWw13ZmtI+s6tVR2LJmZXk=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 24
24
25<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.js" integrity="sha256-aVZjRM9XIr5RrLyQ/bJsJOsBzBwVP3OLFrL6h8zTtRA=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 25
25
26<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" integrity="sha256-9yRP/2EFlblE92vzCA10469Ctd0jT48HnmmMw5rJZrA=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 26
26
27<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/i18n/pt-BR.js" integrity="sha256-T3di9eT0sWzn9Lwps0x4A8zcJj3oviBEW35PTXjk/JQ=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 27
27
28<script src="https://cdn.jsdelivr.net/npm/[email protected]/moment.js" integrity="sha256-fcClHDLa4UPy6t4jUUXf1qd1Y4jA8L9An6Nz3WwjNik=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 28
28
29<script src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js" integrity="sha256-whL0tQWoY1Ku1iskqPFvmZ+CHsvmRWx/PIoEvIeWh4I=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 29
29
30<script src="https://cdn.jsdelivr.net/npm/@eonasdan/[email protected]/dist/js/tempus-dominus.min.js" integrity="sha256-+cy8d0TTJWbhNA4t2Sm/memoDXO2+3cK2YU3pfuBFrs=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 30
30
31<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/imask.min.js" integrity="sha256-f817BCjkRsuPwQqazeY4OKKvWhz14dkFluMmQx5IlhA=" crossorigin="anonymous"></script>
31
32
33    
34</head>
35<body>
36    <div class="aurora-bg" aria-hidden="true">
37        <div class="aurora-blob aurora-blob-1"></div>
38        <div class="aurora-blob aurora-blob-2"></div>
39        <div class="aurora-blob aurora-blob-3"></div>
40        <div class="aurora-blob aurora-blob-4"></div>
41    </div>
42
43    <div class="particles-container">
44        <div class="particle" style="width: 100px; height: 100px; left: 10%; bottom: -100px; animation-duration: 25s;"></div>
45        <div class="particle" style="width: 150px; height: 150px; left: 30%; bottom: -150px; animation-duration: 35s; animation-delay: 1s;"></div>
46        <div class="particle" style="width: 80px; height: 80px; left: 70%; bottom: -80px; animation-duration: 30s; animation-delay: 2.5s;"></div>
47        <div class="particle" style="width: 120px; height: 120px; left: 85%; bottom: -120px; animation-duration: 40s; animation-delay: 4s;"></div>
48        <div class="particle" style="width: 60px; height: 60px; left: 50%; bottom: -60px; animation-duration: 22s; animation-delay: 6s;"></div>
49    </div>
50
51    <div class="login-page-wrapper">
52        <div class="login-visual-section">
53            <div class="circular-container">
54                <div class="center-glow"></div>
55                <div class="connector-container">
56                    <div class="line" style="transform: rotate(-90deg)"></div>
57                    <div class="line" style="transform: rotate(-45deg)"></div>
58                    <div class="line" style="transform: rotate(0deg)"></div>
59                    <div class="line" style="transform: rotate(45deg)"></div>
60                    <div class="line" style="transform: rotate(90deg)"></div>
61                    <div class="line" style="transform: rotate(135deg)"></div>
62                    <div class="line" style="transform: rotate(180deg)"></div>
63                    <div class="line" style="transform: rotate(225deg)"></div>
64                </div>
65
66                <div class="icon-card center-icon">
67                    <img src="/Sistema/images/login/shield.png" alt="Segurança" />
68                </div>
69
70                <div class="icon-card pos-1" title="Equipe">
71                    <img src="/Sistema/images/login/people.png" alt="Equipe" />
72                </div>
73                <div class="icon-card pos-2" title="Processos">
74                    <img src="/Sistema/images/login/fluxogram.png" alt="Processos" />
75                </div>
76                <div class="icon-card pos-3" title="Análise">
77                    <img src="/Sistema/images/login/glass.png" alt="Análise" />
78                </div>
79                <div class="icon-card pos-4" title="Gráficos">
80                    <img src="/Sistema/images/login/graphics.png" alt="Gráficos" />
81                </div>
82                <div class="icon-card pos-5" title="Institucional">
83                    <img src="/Sistema/images/login/cousin.png" alt="Institucional" />
84                </div>
85                <div class="icon-card pos-6" title="Usuários">
86                    <img src="/Sistema/images/login/users.png" alt="Usuários" />
87                </div>
88                <div class="icon-card pos-7" title="Busca">
89                    <img src="/Sistema/images/login/search.png" alt="Busca" />
90                </div>
91                <div class="icon-card pos-8" title="Arquivos">
92                    <img src="/Sistema/images/login/files.png" alt="Arquivos" />
93                </div>
94            </div>
95        </div>
96
97        <div class="login-container">
98            <div class="login-card-modern">
99                <div class="text-center mb-5">
100                    <div class="login-welcome-text">
101                        <div class="brand-mark" aria-hidden="true">
102                            <img src="/Sistema/images/brasao.png" alt="" />
103                        </div>
104                        <p>Bem-vindo ao Sino.Sistema</p>
105                    </div>
106                </div>
107
108                
109
110                <form method="post">
111                    <div class="mb-4">
112                        <div class="input-group-modern">
113                            <i class="fa fa-envelope input-icon"></i>
114                            <input class="form-control" autocomplete="username" aria-required="true" placeholder=" " required type="text" data-val="true" data-val-required="O campo &#x27;Login ou E-mail&#x27; &#xE9; obrigat&#xF3;rio." id="Input_LoginEmail" name="Input.LoginEmail" value="" />
115                            <label class="floating-label" for="Input_LoginEmail">Login ou E-mail</label>
116                        </div>
117                        <span class="text-danger small field-validation-valid" data-valmsg-for="Input.LoginEmail" data-valmsg-replace="true"></span>
118                    </div>
119
120                    <div class="mb-3">
121                        <div class="input-group-modern">
122                            <i class="fa fa-lock input-icon"></i>
123                            <input class="form-control" id="input-password" autocomplete="current-password" aria-required="true" placeholder=" " required type="password" data-val="true" data-val-required="O campo &#x27;Senha&#x27; &#xE9; obrigat&#xF3;rio." name="Input.Password" />
124                            <label class="floating-label" for="Input_Password">Senha</label>
125                            <button type="button" id="toggle-password" title="Mostrar/Ocultar senha" tabindex="-1">
126                                <i class="fa fa-eye" aria-hidden="true"></i>
127                            </button>
128                        </div>
129                        <div class="d-flex justify-content-between align-items-start mt-1 px-1">
130                            <span class="text-danger field-validation-valid" data-valmsg-for="Input.Password" data-valmsg-replace="true"></span>
131                            <a class="forgot-password-link ms-auto" style="margin-top: 0.35rem;" href="/Admin/ForgotPassword">Esqueceu a senha?</a>
132                        </div>
133                    </div>
134
135                    <div class="mb-2 d-flex align-items-center">
136                        <div class="form-check">
137                            <input class="form-check-input" id="remember-me" type="checkbox" data-val="true" data-val-required="The Lembrar-me? field is required." name="Input.RememberMe" value="true" />
138                            <label class="form-check-label small text-secondary" for="remember-me">
139                                Mantenha-me conectado
140                            </label>
141                        </div>
142                    </div>
143
144                    <div class="recaptcha-wrapper">
145                        <div class="g-recaptcha" data-sitekey="6Lc2h3IqAAAAAHOcTJVNRVIB4I70gecaQfZ9wNkx" data-callback="recaptchaValidated"></div>
146<div class="text-danger" id="gRecaptchaResponse"></div>
vendor: 83 bytes, lines 146-148
146
147
148<script src="https://www.google.com/recaptcha/api.js" async="" defer=""></script>
148<script>var recaptchaValidated=function(e){var r=$('#gRecaptchaResponse');r.length&&r.hide()};$.validator.setDefaults({submitHandler:function(){var e=this,r=''!==grecaptcha.getResponse(),a='Valide que você não é um robô.',t=$('#gRecaptchaResponse', e.currentForm);if(t.length===0)return !0;return a&&(r?t.length&&t.hide():(e.errorList.push({message:a}),$(e.currentForm).triggerHandler('invalid-form',[e]),t.length&&(t.html(a),t.show()))),r}});</script>
148
149
150                    </div>
151
152                    <p class="recaptcha-disclaimer">
153                        Este site é protegido pelo reCAPTCHA e a 
154                        <a href="https://policies.google.com/privacy" target="_blank">Política de Privacidade</a> e os 
155                        <a href="https://policies.google.com/terms" target="_blank">Termos de Serviço</a> do Google se aplicam.
156                    </p>
157
158                    <div class="d-grid gap-2">
159                        <div class="d-flex justify-content-center">
160                            <button type="submit" class="btn btn-premium w-100" id="login-submit">
161                                <span class="btn-text">Entrar na conta <i class="fa fa-arrow-right ms-2"></i></span>
162                                <span class="btn-spinner" aria-hidden="true"></span>
163                            </button>
164                        </div>
165                        
166                        <a class="btn btn-outline-premium" href="/Admin/ChangePassword">
167                            Alterar minha senha
168                        </a>
169                    </div>
170                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /><input name="Input.RememberMe" type="hidden" value="false" /></form>
171
172                    <div class="external-logins-title">
173                        <span>ou continue com</span>
174                    </div>
175                    <div class="external-logins-container">
176                                <form method="post" title="Entrar com Google" action="/Admin/ExternalLogin?returnUrl=%2FAdmin">
177                                    <button type="submit" class="btn btn-external-icon" name="provider" value="Google">
178                                            <i class="fa-brands fa-google btn-google"></i>
179                                    </button>
180                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
181                                <form method="post" title="Entrar com Facebook" action="/Admin/ExternalLogin?returnUrl=%2FAdmin">
182                                    <button type="submit" class="btn btn-external-icon" name="provider" value="Facebook">
183                                            <i class="fa-brands fa-facebook btn-facebook"></i>
184                                    </button>
185                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
186                                <form method="post" title="Entrar com Twitter" action="/Admin/ExternalLogin?returnUrl=%2FAdmin">
187                                    <button type="submit" class="btn btn-external-icon" name="provider" value="Twitter">
188                                            <i class="fa-brands fa-twitter btn-twitter"></i>
189                                    </button>
190                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
191                                <form method="post" title="Entrar com Microsoft" action="/Admin/ExternalLogin?returnUrl=%2FAdmin">
192                                    <button type="submit" class="btn btn-external-icon" name="provider" value="Microsoft">
193                                            <i class="fa-brands fa-microsoft btn-microsoft"></i>
194                                    </button>
195                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
196                                <form method="post" title="Entrar c
196om GOV.BR" action="/Admin/ExternalLogin?returnUrl=%2FAdmin">
197                                    <button type="submit" class="btn btn-external-icon" name="provider" value="GovBr">
198                                            <span>gov</span>
199                                    </button>
200                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
201
202                            <div class="d-none" id="cert-panel">
203                                <form id="external-cert" method="post" title="Certificado Digital" action="/Admin/ExternalLogin?handler=CertLogin&amp;returnUrl=%2FAdmin">
204                                    <input type="hidden" id="external-cert-base64" name="base64" />
205                                    <button type="submit" id="external-cert-button" class="btn btn-external-icon btn-cert">
206                                        <i class="fa-solid fa-certificate"></i>
207                                    </button>
208                                <input name="__RequestVerificationToken" type="hidden" value="CfDJ8M-GdmdBCbdKoIjRxaVAgJBMkYffrtwEuI4athiBRYq9_nlEvO5wyfsocVXtL4am7nOPEHjLuMp883xri8HneByLyU9jYaNuwSkA4Ce9SV9BHMSQC2SF1UFF8zTwDhchoWbhLN0EEPxGSKNxWhOgoZU" /></form>
209                            </div>
210                    </div>
211            </div>
212        </div>
213    </div>
214
215    
215<script>
216        (function () {
217            const toggle = document.getElementById('toggle-password');
218            const input = document.getElementById('input-password');
219            if (toggle && input) {
220                toggle.addEventListener('click', function () {
221                    const isPassword = input.type === 'password';
222                    input.type = isPassword ? 'text' : 'password';
223                    this.querySelector('i').className = isPassword ? 'fa fa-eye-slash' : 'fa fa-eye';
224                });
225            }
226
227            // Spotlight: gradiente que segue o cursor sobre o card
228            const card = document.querySelector('.login-card-modern');
229            if (card) {
230                card.addEventListener('mousemove', (e) => {
231                    const rect = card.getBoundingClientRect();
232                    card.style.setProperty('--mouse-x', (e.clientX - rect.left) + 'px');
233                    card.style.setProperty('--mouse-y', (e.clientY - rect.top) + 'px');
234                });
235            }
236
237            // Loading state + ripple no botão Entrar
238            const submitBtn = document.getElementById('login-submit');
239            if (submitBtn) {
240                submitBtn.addEventListener('click', function (e) {
241                    const rect = this.getBoundingClientRect();
242                    const size = Math.max(rect.width, rect.height);
243                    const ripple = document.createElement('span');
244                    ripple.className = 'btn-ripple';
245                    ripple.style.width = ripple.style.height = size + 'px';
246                    ripple.style.left = (e.clientX - rect.left - size / 2) + 'px';
247                    ripple.style.top = (e.clientY - rect.top - size / 2) + 'px';
248                    this.appendChild(ripple);
249                    setTimeout(() => ripple.remove(), 650);
250                });
251
252                const form = submitBtn.closest('form');
253                if (form) {
254                    form.addEventListener('submit', function (e) {
255                        // 1. Verifica validade nativa (HTML5)
256                        if (!form.checkValidity()) {
257                            return;
258                        }
259
260                        // 2. Verifica validade do jQuery (se carregado)
261                        if (window.jQuery && window.jQuery.fn.valid && !window.jQuery(form).valid()) {
262                            return;
263                        }
264
265                        // A execução do recaptcha invisible fica por conta do componente
266                        // Recaptcha (submitHandler do jquery-validate); aqui só cuidamos do loading
267                        submitBtn.classList.remove('w-100');
268                        submitBtn.classList.add('is-loading');
269
270                        // Se o envio não acontecer (desafio cancelado/erro), desbloqueia o botão
271                        setTimeout(() => {
272                            submitBtn.classList.add('w-100');
273                            submitBtn.classList.remove('is-loading');
274                        }, 15000);
275                    });
276                }
277            }
278
279            // Connection Lines Interaction
280            const icons = document.querySelectorAll('.icon-card:not(.center-icon)');
281            const lines = document.querySelectorAll('.connector-container .line');
282            const centerIconNode = document.querySelector('.center-icon');
283
284            icons.forEach((icon, index) => {
285                icon.addEventListener('mouseenter', () => {
286                    if(lines[index]) lines[index].classList.add('active-connection');
287                    if(centerIconNode) centerIconNode.classList.add('active-pulse');
288                });
289                icon.addEventListener('mouseleave', () => {
290                    if(lines[index]) lines[index].classList.remove('active-connection');
291                    if(centerIconNode) centerIconNode.classList.remove('active-pulse');
292                });
293            });
294
295            // Interop for certificate login
296            document.addEventListener('interop:on', e => {
297                const certPanel = document.querySelector('#cert-panel');
298                if (certPanel) {
299                    certPanel.classList.remove('d-none');
300                    const certButton = document.querySelector('#external-cert-button');
301                    certButton.addEventListener('click', function(e) {
302                        e.preventDefault();
303                        interop('Signer/Certificate')
304                            .then((response) => response.json())
305                            .then(data => {
306                                document.querySelector('#external-cert-base64').value = data.RawData;
307                                document.querySelector('#external-cert').submit();
308                            });
309                    });
310                }
311            });
312        })();
313    </script>
313
314
315    
315<script>
316    function interop(url, options) {
317        return fetch('https://localhost:1989/' + url, Object.assign({ mode: 'cors' }, options || {}));
318    }
319
320    document.addEventListener("DOMContentLoaded", () => {
321        interop('', { method: 'GET' }).then(tb => tb.json()).catch(() => false).then(result => {
322            if (result) {
323                const event = new CustomEvent("interop:on", { detail: result });
324                document.dispatchEvent(event);
325            }
326        });
327    });
328</script>
328
329</body>
330</html>
331

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.