analises.php — leitura técnica completa

sistema/painel/paginas/analises.php
Tela principal do módulo de análise capilar com formulário, upload, listagem e acionamento do processamento IA.

AnálisesArquivo PHP759 linhas

Responsabilidade do arquivo

Tela principal do módulo de análise capilar com formulário, upload, listagem e acionamento do processamento IA.

Dependências observadas:
Conexão PDO / configurações globaisValidação de sessão do painelFormulário HTMLBanco de dados

Tipo

Arquivo PHP

Grupo

Análises

Total de linhas

759

Código completo

1<?php 2@session_start(); 3require_once("verificar.php"); 4require_once("../conexao.php"); 5 6$pag = 'analises'; 7 8//verificar se ele tem a permissão de estar nessa página 9if(@$analises == 'ocultar'){ 10 echo "<script>window.location='./index.php'</script>"; 11 exit(); 12} 13 14?> 15 16<style type="text/css"> 17 .card-apoio-analise{ 18 background: #f8fbff; 19 border: 1px solid #d9ecff; 20 border-radius: 8px; 21 padding: 14px 16px; 22 margin-bottom: 15px; 23 font-size: 14px; 24 line-height: 22px; 25 color: #35516b; 26 } 27 28 .card-apoio-analise strong{ 29 color: #1f4e79; 30 } 31 32 .bloco-preview-analise{ 33 background: #fbfbfb; 34 border: 1px solid #e5e5e5; 35 border-radius: 8px; 36 padding: 12px; 37 min-height: 245px; 38 } 39 40 .titulo-preview{ 41 font-size: 14px; 42 font-weight: 600; 43 color: #444; 44 margin-bottom: 8px; 45 } 46 47 .preview-box{ 48 background: #fff; 49 border: 1px solid #ddd; 50 border-radius: 8px; 51 padding: 10px; 52 text-align: center; 53 min-height: 190px; 54 display: flex; 55 align-items: center; 56 justify-content: center; 57 } 58 59 .preview-box img{ 60 max-width: 100%; 61 max-height: 170px; 62 border-radius: 4px; 63 } 64 65 .box-resultado-analise{ 66 background: #fcfcfc; 67 border: 1px solid #ececec; 68 border-radius: 8px; 69 padding: 12px; 70 margin-top: 10px; 71 } 72 73 .box-resultado-analise .titulo-box{ 74 font-size: 14px; 75 font-weight: 600; 76 color: #555; 77 margin-bottom: 10px; 78 } 79 80 .linha-fluxo-analise{ 81 background: #fff8e8; 82 border: 1px solid #ffe3a6; 83 border-radius: 8px; 84 padding: 10px 14px; 85 margin-top: 10px; 86 font-size: 13px; 87 color: #7a5a16; 88 line-height: 21px; 89 } 90 91 .badge-status-analise{ 92 display: inline-block; 93 padding: 4px 10px; 94 border-radius: 20px; 95 font-size: 12px; 96 font-weight: 600; 97 background: #eef5ff; 98 color: #2f6fad; 99 margin-top: 6px; 100 } 101 102 .modal-ficha-ia .bloco-foto-ia{ 103 background:#fbfbfb; 104 border:1px solid #e8e8e8; 105 border-radius:10px; 106 padding:14px; 107 text-align:center; 108 height:100%; 109 } 110 111 .modal-ficha-ia .bloco-foto-ia img{ 112 max-width:100%; 113 max-height:320px; 114 border-radius:8px; 115 border:1px solid #ddd; 116 padding:3px; 117 background:#fff; 118 } 119 120 .modal-ficha-ia .titulo-secao-ia{ 121 font-size:15px; 122 font-weight:700; 123 color:#334e68; 124 margin-bottom:12px; 125 } 126 127 .modal-ficha-ia .painel-ia{ 128 background:#f8fbff; 129 border:1px solid #d9ecff; 130 border-radius:10px; 131 padding:14px; 132 margin-bottom:12px; 133 } 134 135 .modal-ficha-ia .painel-ia-topo{ 136 font-size:14px; 137 font-weight:700; 138 color:#1f4e79; 139 margin-bottom:10px; 140 } 141 142 .modal-ficha-ia .grid-ia{ 143 display:grid; 144 grid-template-columns: repeat(2, minmax(180px, 1fr)); 145 gap:10px; 146 } 147 148 .modal-ficha-ia .card-ia{ 149 background:#fff; 150 border:1px solid #e9eef3; 151 border-radius:8px; 152 padding:12px; 153 } 154 155 .modal-ficha-ia .card-ia .rotulo{ 156 display:block; 157 font-size:12px; 158 font-weight:700; 159 color:#7a8b99; 160 text-transform:uppercase; 161 letter-spacing:.3px; 162 margin-bottom:5px; 163 } 164 165 .modal-ficha-ia .card-ia .valor{ 166 display:block; 167 font-size:22px; 168 font-weight:700; 169 color:#2d3436; 170 line-height:1.2; 171 } 172 173 .modal-ficha-ia .resumo-ia{ 174 background:#fff8e8; 175 border:1px solid #ffe3a6; 176 border-radius:10px; 177 padding:14px; 178 color:#7a5a16; 179 font-size:14px; 180 line-height:22px; 181 } 182 183 .modal-ficha-ia .bloco-obs{ 184 background:#fcfcfc; 185 border:1px solid #ececec; 186 border-radius:10px; 187 padding:12px; 188 margin-top:12px; 189 font-size:14px; 190 color:#555; 191 } 192 193 .modal-ficha-ia .badge-data-ia{ 194 display:inline-block; 195 background:#eef5ff; 196 color:#2f6fad; 197 padding:5px 12px; 198 border-radius:20px; 199 font-size:12px; 200 font-weight:700; 201 } 202 203 @media (max-width: 768px){ 204 .bloco-preview-analise{ 205 min-height: auto; 206 margin-bottom: 15px; 207 } 208 209 .preview-box{ 210 min-height: 180px; 211 } 212 213 .card-apoio-analise{ 214 font-size: 13px; 215 line-height: 21px; 216 } 217 218 .modal-ficha-ia .grid-ia{ 219 grid-template-columns: 1fr; 220 } 221 222 .modal-ficha-ia .card-ia .valor{ 223 font-size:18px; 224 } 225 } 226</style> 227 228<div class="row top-50"> 229 <div class="col-md-8 float-esq"> 230 <a class="btn btn-primary btn-flat btn-pri" onclick="inserir()"> 231 <i class="fa fa-plus" aria-hidden="true"></i> <span class="esc">Nova Análise</span> 232 </a> 233 </div> 234 <div class="col-md-3 float-esq"> 235 <input onkeyup="listarAnalises()" class="form-control" type="text" name="buscar" id="buscar" placeholder="Buscar por Cliente ou Sugestão" style="border-radius: 5px"> 236 <input type="hidden" id="pagina"> 237 </div> 238 <div class="col-md-1 float-esq"> 239 <button onclick="listarAnalises()" id="btn-buscar" class="btn btn-primary"><i class="fa fa-search"></i></button> 240 </div> 241</div> 242 243<div class="bs-example widget-shadow" style="padding:15px" id="listar"> 244 245</div> 246 247<div class="modal fade" id="modalForm" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> 248 <div class="modal-dialog modal-xl" role="document"> 249 <div class="modal-content"> 250 <div class="modal-header"> 251 <h4 class="modal-title"><span id="titulo_inserir"></span></h4> 252 <button id="btn-fechar" type="button" class="close" data-dismiss="modal" aria-label="Close" style="margin-top: -20px"> 253 <span aria-hidden="true">&times;</span> 254 </button> 255 </div> 256 257 <form id="form_analise" method="post" enctype="multipart/form-data"> 258 <div class="modal-body"> 259 260 <div class="card-apoio-analise"> 261 <strong>Análise Técnica Capilar</strong><br> 262 Este módulo funciona como <strong>apoio técnico ao profissional</strong>. A imagem é analisada para auxiliar na identificação de cor capilar, percentual de fios brancos, densidade e grau de falha. 263 <br><br> 264 O resultado da análise <strong>não substitui a decisão do profissional</strong>. Ele serve como base para escolha da prótese, que deve ser confirmada no cadastro de prótese e depois apresentada ao cliente na simulação visual. 265 <br> 266 <span class="badge-status-analise">Fluxo: análise técnica → definição da prótese → simulação visual</span> 267 </div> 268 269 <div class="row"> 270 <div class="col-md-6"> 271 <div class="form-group"> 272 <label>Cliente</label> 273 <select class="form-control sel2" name="cliente" id="cliente" style="width:100%" required> 274 <option value="">Selecione um Cliente</option> 275 <?php 276 $query = $pdo->query("SELECT * FROM clientes order by nome asc"); 277 $res = $query->fetchAll(PDO::FETCH_ASSOC); 278 $linhas = @count($res); 279 if($linhas > 0){ 280 for($i=0; $i<$linhas; $i++){ 281 ?> 282 <option value="<?php echo $res[$i]['id'] ?>"><?php echo $res[$i]['nome'] ?></option> 283 <?php } } ?> 284 </select> 285 </div> 286 </div> 287 288 <div class="col-md-6"> 289 <div class="form-group"> 290 <label>Data da Análise</label> 291 <input type="date" class="form-control" id="data_analise" name="data_analise" value="<?php echo date('Y-m-d') ?>" required> 292 </div> 293 </div> 294 </div> 295 296 <div class="row"> 297 <div class="col-md-6"> 298 <div class="bloco-preview-analise"> 299 <div class="titulo-preview">Imagem Original do Cliente</div> 300 <div class="form-group"> 301 <label>Foto</label> 302 <input type="file" class="form-control" id="foto" name="foto" onchange="carregarPreviewFoto()"> 303 </div> 304 305 <div class="preview-box"> 306 <img src="images/analises/sem-foto.jpg" id="target"> 307 </div> 308 </div> 309 </div> 310 311 <div class="col-md-6"> 312 <div class="bloco-preview-analise"> 313 <div class="titulo-preview">Painel de Resultado Técnico</div> 314 315 <div class="box-resultado-analise"> 316 <div class="titulo-box">Dados identificados na análise</div> 317 318 <div class="row"> 319 <div class="col-md-6"> 320 <div class="form-group"> 321 <label>Cor Detectada</label> 322 <input type="text" class="form-control" id="cor_detectada" name="cor_detectada" placeholder="Ex: #1B30"> 323 </div> 324 </div> 325 326 <div class="col-md-6"> 327 <div class="form-group"> 328 <label>Densidade</label> 329 <input type="text" class="form-control" id="densidade_detectada" name="densidade_detectada" placeholder="Ex: 80%"> 330 </div> 331 </div> 332 </div> 333 334 <div class="row"> 335 <div class="col-md-6"> 336 <div class="form-group"> 337 <label>Grau de Falha</label> 338 <input type="text" class="form-control" id="grau_falha" name="grau_falha" placeholder="Ex: 15 X 24"> 339 </div> 340 </div> 341 342 <div class="col-md-6"> 343 <div class="form-group"> 344 <label>Sugestão de Prótese</label> 345 <input type="text" class="form-control" id="sugestao_protese" name="sugestao_protese" placeholder="Ex: Micropele 0.08"> 346 </div> 347 </div> 348 </div> 349 350 <div class="linha-fluxo-analise"> 351 Após validar estes dados, o profissional deve confirmar a prótese no módulo apropriado e utilizar o simulador para mostrar o resultado final ao cliente. 352 </div> 353 </div> 354 </div> 355 </div> 356 </div> 357 358 <hr> 359 360 <div class="row"> 361 <div class="col-md-12"> 362 <button id="btnProcessarAnalise" type="button" class="btn btn-warning btn-block" onclick="processarAnalise()"> 363 <i id="iconProcessarAnalise" class="fa fa-cogs"></i> Analisar Imagem 364 </button> 365 </div> 366 </div> 367 368 <br> 369 <small><div id="mensagem_ia" align="center"></div></small> 370 371 <div class="row"> 372 <div class="col-md-12"> 373 <div class="form-group"> 374 <label>Observações</label> 375 <input type="text" class="form-control" id="observacoes" name="observacoes" placeholder="Observações"> 376 </div> 377 </div> 378 </div> 379 380 <input type="hidden" name="id" id="id"> 381 <input type="hidden" name="foto_atual" id="foto_atual"> 382 383 <br> 384 <small><div id="mensagem" align="center"></div></small> 385 </div> 386 387 <div class="modal-footer"> 388 <button type="submit" class="btn btn-primary">Salvar</button> 389 </div> 390 </form> 391 392 </div> 393 </div> 394</div> 395 396<div class="modal fade modal-ficha-ia" id="modalDados" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> 397 <div class="modal-dialog modal-xl" role="document"> 398 <div class="modal-content"> 399 <div class="modal-header"> 400 <h4 class="modal-title" id="exampleModalLabel"><span id="nome_dados"></span></h4> 401 <button id="btn-fechar-perfil" type="button" class="close" data-dismiss="modal" aria-label="Close" style="margin-top: -20px"> 402 <span aria-hidden="true">&times;</span> 403 </button> 404 </div> 405 406 <div class="modal-body"> 407 408 <div class="row"> 409 <div class="col-md-5"> 410 <div class="bloco-foto-ia"> 411 <div class="titulo-secao-ia">Imagem Analisada</div> 412 <img id="foto_dados" src=""> 413 </div> 414 </div> 415 416 <div class="col-md-7"> 417 <div class="painel-ia"> 418 <div class="painel-ia-topo">Resultado Técnico Gerado pela IA</div> 419 420 <div class="row" style="margin-bottom:10px"> 421 <div class="col-md-7"> 422 <div><strong>Cliente:</strong> <span id="cliente_dados"></span></div> 423 </div> 424 <div class="col-md-5" align="right"> 425 <span class="badge-data-ia">Análise: <span id="data_analise_dados"></span></span> 426 </div> 427 </div> 428 429 <div class="grid-ia"> 430 <div class="card-ia"> 431 <span class="rotulo">Cor Detectada</span> 432 <span class="valor" id="cor_dados"></span> 433 </div> 434 435 <div class="card-ia"> 436 <span class="rotulo">Densidade</span> 437 <span class="valor" id="densidade_dados"></span> 438 </div> 439 440 <div class="card-ia"> 441 <span class="rotulo">Grau de Falha</span> 442 <span class="valor" id="grau_dados"></span> 443 </div> 444 445 <div class="card-ia"> 446 <span class="rotulo">Sugestão de Prótese</span> 447 <span class="valor" id="sugestao_dados"></span> 448 </div> 449 </div> 450 </div> 451 452 <div class="resumo-ia"> 453 <strong>Leitura rápida para atendimento:</strong><br> 454 A IA identificou a cor <strong id="cor_resumo"></strong>, com densidade estimada em <strong id="densidade_resumo"></strong>, grau de falha <strong id="grau_resumo"></strong> e sugestão técnica de prótese <strong id="sugestao_resumo"></strong>. 455 </div> 456 457 <div class="bloco-obs"> 458 <strong>Observações:</strong><br> 459 <span id="observacoes_dados"></span> 460 </div> 461 </div> 462 </div> 463 464 </div> 465 </div> 466 </div> 467</div> 468 469<script type="text/javascript">var pag = "<?=$pag?>"</script> 470<script src="js/ajax.js"></script> 471 472<script type="text/javascript"> 473$(document).ready(function () { 474 listarAnalises(); 475 476 $('.sel2').select2({ 477 dropdownParent: $('#modalForm') 478 }); 479 480 $('#cliente').on('change', function(){ 481 buscarDadosProtese(); 482 }); 483}); 484</script> 485 486<script type="text/javascript"> 487function listarAnalises(pagina){ 488 489 $("#pagina").val(pagina); 490 491 var busca = $("#buscar").val(); 492 $.ajax({ 493 url: 'paginas/' + pag + "/listar.php", 494 method: 'POST', 495 data: {busca, pagina}, 496 dataType: "html", 497 498 success:function(result){ 499 $("#listar").html(result); 500 } 501 }); 502} 503</script> 504 505<script type="text/javascript"> 506function limparCampos(){ 507 $('#id').val(''); 508 $('#cliente').val('').change(); 509 $('#data_analise').val('<?php echo date('Y-m-d') ?>'); 510 $('#foto').val(''); 511 $('#foto_atual').val(''); 512 $('#cor_detectada').val(''); 513 $('#densidade_detectada').val(''); 514 $('#grau_falha').val(''); 515 $('#sugestao_protese').val(''); 516 $('#observacoes').val(''); 517 $('#mensagem').text(''); 518 $('#mensagem').removeClass(); 519 $('#mensagem_ia').text(''); 520 $('#mensagem_ia').removeClass(); 521 $('#target').attr('src', 'images/analises/sem-foto.jpg'); 522 523 $('#btnProcessarAnalise').data('processando', false); 524 $('#btnProcessarAnalise').prop('disabled', false); 525 $('#iconProcessarAnalise').removeClass(); 526 $('#iconProcessarAnalise').addClass('fa fa-cogs'); 527} 528</script> 529 530<script type="text/javascript"> 531function inserir(){ 532 limparCampos(); 533 $('#titulo_inserir').text('Análise Técnica Capilar'); 534 $('#mensagem_ia').text('Salve o registro para habilitar a análise técnica da imagem.'); 535 $('#mensagem_ia').removeClass(); 536 $('#mensagem_ia').addClass('text-danger'); 537 $('#modalForm').modal('show'); 538} 539</script> 540 541<script type="text/javascript"> 542function buscarDadosProtese(){ 543 var cliente = $('#cliente').val(); 544 545 if(cliente == ""){ 546 $('#cor_detectada').val(''); 547 $('#densidade_detectada').val(''); 548 $('#grau_falha').val(''); 549 $('#sugestao_protese').val(''); 550 $('#observacoes').val(''); 551 return; 552 } 553 554 $.ajax({ 555 url: 'paginas/' + pag + "/buscar_protese.php", 556 method: 'POST', 557 data: {cliente: cliente}, 558 dataType: "json", 559 560 success: function(dados){ 561 if(dados.status == 'Sucesso'){ 562 $('#cor_detectada').val(dados.cor); 563 $('#densidade_detectada').val(dados.densidade); 564 $('#grau_falha').val(dados.tamanho); 565 $('#sugestao_protese').val(dados.modelo); 566 $('#observacoes').val(dados.observacoes); 567 }else{ 568 $('#cor_detectada').val(''); 569 $('#densidade_detectada').val(''); 570 $('#grau_falha').val(''); 571 $('#sugestao_protese').val(''); 572 $('#observacoes').val(''); 573 } 574 } 575 }); 576} 577</script> 578 579<script type="text/javascript"> 580$("#form_analise").submit(function () { 581 582 event.preventDefault(); 583 var formData = new FormData(this); 584 585 $.ajax({ 586 url: 'paginas/' + pag + "/salvar.php", 587 type: 'POST', 588 data: formData, 589 590 success: function (mensagem) { 591 $('#mensagem').text(''); 592 $('#mensagem').removeClass(); 593 if (mensagem.trim() == "Salvo com Sucesso") { 594 595 $('#btn-fechar').click(); 596 597 var pagina = $("#pagina").val(); 598 listarAnalises(pagina); 599 600 } else { 601 $('#mensagem').addClass('text-danger'); 602 $('#mensagem').text(mensagem); 603 } 604 605 }, 606 607 cache: false, 608 contentType: false, 609 processData: false, 610 611 }); 612 613}); 614</script> 615 616<script type="text/javascript"> 617function excluir(id){ 618 $.ajax({ 619 url: 'paginas/' + pag + "/excluir.php", 620 method: 'POST', 621 data: {id}, 622 dataType: "text", 623 624 success: function (mensagem) { 625 if (mensagem.trim() == "Excluído com Sucesso") { 626 var pagina = $("#pagina").val(); 627 listarAnalises(pagina); 628 } else { 629 $('#mensagem-excluir').addClass('text-danger'); 630 $('#mensagem-excluir').text(mensagem); 631 } 632 633 } 634 }); 635} 636</script> 637 638<script type="text/javascript"> 639function carregarPreviewFoto(){ 640 const file = document.getElementById('foto').files[0]; 641 642 if(file){ 643 const reader = new FileReader(); 644 reader.onload = function(e){ 645 $('#target').attr('src', e.target.result); 646 } 647 reader.readAsDataURL(file); 648 }else{ 649 $('#target').attr('src', 'images/analises/sem-foto.jpg'); 650 } 651} 652</script> 653 654<script type="text/javascript"> 655function processarAnalise(){ 656 var id = $('#id').val(); 657 var botao = $('#btnProcessarAnalise'); 658 var icone = $('#iconProcessarAnalise'); 659 660 $('#mensagem_ia').text(''); 661 $('#mensagem_ia').removeClass(); 662 663 if(id == ""){ 664 $('#mensagem_ia').addClass('text-danger'); 665 $('#mensagem_ia').text('Salve o registro para habilitar a análise técnica da imagem.'); 666 return; 667 } 668 669 if(botao.data('processando') == true){ 670 return; 671 } 672 673 botao.data('processando', true); 674 botao.prop('disabled', true); 675 676 icone.removeClass(); 677 icone.addClass('fa fa-spinner fa-spin'); 678 679 $('#mensagem_ia').addClass('text-info'); 680 $('#mensagem_ia').text('Processando análise técnica.'); 681 682 $.ajax({ 683 url: 'paginas/analises/processar.php', 684 method: 'POST', 685 data: {id}, 686 dataType: "json", 687 688 success: function (dados) { 689 690 botao.data('processando', false); 691 botao.prop('disabled', false); 692 693 icone.removeClass(); 694 icone.addClass('fa fa-cogs'); 695 696 $('#mensagem_ia').removeClass(); 697 698 if(dados.status == 'Sucesso'){ 699 $('#cor_detectada').val(dados.cor_detectada); 700 $('#densidade_detectada').val(dados.densidade_detectada); 701 $('#grau_falha').val(dados.grau_falha); 702 $('#sugestao_protese').val(dados.sugestao_protese); 703 704 $('#mensagem_ia').addClass('text-success'); 705 $('#mensagem_ia').text('Análise técnica processada com sucesso'); 706 }else{ 707 $('#mensagem_ia').addClass('text-danger'); 708 $('#mensagem_ia').text(dados.mensagem); 709 } 710 }, 711 712 error: function () { 713 714 botao.data('processando', false); 715 botao.prop('disabled', false); 716 717 icone.removeClass(); 718 icone.addClass('fa fa-cogs'); 719 720 $('#mensagem_ia').removeClass(); 721 $('#mensagem_ia').addClass('text-danger'); 722 $('#mensagem_ia').text('Erro ao processar análise'); 723 } 724 }); 725} 726</script> 727 728<script type="text/javascript"> 729function mostrar(nome_cliente, data_analise, foto, foto_ajustada, cor_detectada, densidade_detectada, grau_falha, sugestao_protese, observacoes){ 730 $('#nome_dados').text('Ficha Técnica da Análise'); 731 $('#cliente_dados').text(nome_cliente); 732 $('#data_analise_dados').text(data_analise); 733 $('#cor_dados').text(cor_detectada); 734 $('#densidade_dados').text(densidade_detectada); 735 $('#grau_dados').text(grau_falha); 736 $('#sugestao_dados').text(sugestao_protese); 737 738 $('#cor_resumo').text(cor_detectada); 739 $('#densidade_resumo').text(densidade_detectada); 740 $('#grau_resumo').text(grau_falha); 741 $('#sugestao_resumo').text(sugestao_protese); 742 743 if(observacoes == ""){ 744 observacoes = 'Sem observações informadas.'; 745 } 746 747 $('#observacoes_dados').text(observacoes); 748 749 if(foto_ajustada != ""){ 750 $('#foto_dados').attr('src', 'images/analises/' + foto_ajustada + '?v=' + new Date().getTime()); 751 }else if(foto != ""){ 752 $('#foto_dados').attr('src', 'images/analises/' + foto + '?v=' + new Date().getTime()); 753 }else{ 754 $('#foto_dados').attr('src', 'images/analises/sem-foto.jpg'); 755 } 756 757 $('#modalDados').modal('show'); 758} 759</script>

Leitura linha por linha

LinhaCódigoExplicação técnica
1<?php Abre um bloco PHP. A partir daqui o arquivo passa a executar lógica no servidor.
2@session_start();Inicia ou reaproveita a sessão do usuário logado, permitindo ler permissões e dados de autenticação.
3require_once("verificar.php");Importa `verificar.php` para disponibilizar conexão, sessão, funções utilitárias ou validações necessárias ao restante do fluxo.
4require_once("../conexao.php");Importa `../conexao.php` para disponibilizar conexão, sessão, funções utilitárias ou validações necessárias ao restante do fluxo.
5 Linha em branco usada para separar blocos e melhorar a leitura.
6$pag = 'analises';Guarda o identificador interno da página, normalmente usado pelo painel para permissões, destaque de menu ou callbacks.
7 Linha em branco usada para separar blocos e melhorar a leitura.
8//verificar se ele tem a permissão de estar nessa páginaComentário do código. Serve para contextualizar o bloco seguinte para quem fizer manutenção.
9if(@$analises == 'ocultar'){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
10 echo "<script>window.location='./index.php'</script>";Envia saída para o navegador ou para o AJAX. O conteúdo retornado aqui precisa respeitar o contrato esperado pela tela.
11 exit();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
12}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
13 Linha em branco usada para separar blocos e melhorar a leitura.
14?>Fecha o bloco PHP atual para voltar à saída HTML.
15 Linha em branco usada para separar blocos e melhorar a leitura.
16<style type="text/css">Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
17 .card-apoio-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
18 background: #f8fbff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
19 border: 1px solid #d9ecff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
20 border-radius: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
21 padding: 14px 16px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
22 margin-bottom: 15px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
23 font-size: 14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
24 line-height: 22px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
25 color: #35516b;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
26 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
27 Linha em branco usada para separar blocos e melhorar a leitura.
28 .card-apoio-analise strong{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
29 color: #1f4e79;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
30 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
31 Linha em branco usada para separar blocos e melhorar a leitura.
32 .bloco-preview-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
33 background: #fbfbfb;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
34 border: 1px solid #e5e5e5;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
35 border-radius: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
36 padding: 12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
37 min-height: 245px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
38 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
39 Linha em branco usada para separar blocos e melhorar a leitura.
40 .titulo-preview{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
41 font-size: 14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
42 font-weight: 600;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
43 color: #444;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
44 margin-bottom: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
45 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
46 Linha em branco usada para separar blocos e melhorar a leitura.
47 .preview-box{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
48 background: #fff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
49 border: 1px solid #ddd;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
50 border-radius: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
51 padding: 10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
52 text-align: center;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
53 min-height: 190px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
54 display: flex;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
55 align-items: center;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
56 justify-content: center;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
57 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
58 Linha em branco usada para separar blocos e melhorar a leitura.
59 .preview-box img{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
60 max-width: 100%;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
61 max-height: 170px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
62 border-radius: 4px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
63 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
64 Linha em branco usada para separar blocos e melhorar a leitura.
65 .box-resultado-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
66 background: #fcfcfc;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
67 border: 1px solid #ececec;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
68 border-radius: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
69 padding: 12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
70 margin-top: 10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
71 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
72 Linha em branco usada para separar blocos e melhorar a leitura.
73 .box-resultado-analise .titulo-box{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
74 font-size: 14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
75 font-weight: 600;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
76 color: #555;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
77 margin-bottom: 10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
78 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
79 Linha em branco usada para separar blocos e melhorar a leitura.
80 .linha-fluxo-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
81 background: #fff8e8;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
82 border: 1px solid #ffe3a6;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
83 border-radius: 8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
84 padding: 10px 14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
85 margin-top: 10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
86 font-size: 13px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
87 color: #7a5a16;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
88 line-height: 21px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
89 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
90 Linha em branco usada para separar blocos e melhorar a leitura.
91 .badge-status-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
92 display: inline-block;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
93 padding: 4px 10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
94 border-radius: 20px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
95 font-size: 12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
96 font-weight: 600;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
97 background: #eef5ff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
98 color: #2f6fad;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
99 margin-top: 6px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
100 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
101 Linha em branco usada para separar blocos e melhorar a leitura.
102 .modal-ficha-ia .bloco-foto-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
103 background:#fbfbfb;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
104 border:1px solid #e8e8e8;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
105 border-radius:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
106 padding:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
107 text-align:center;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
108 height:100%;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
109 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
110 Linha em branco usada para separar blocos e melhorar a leitura.
111 .modal-ficha-ia .bloco-foto-ia img{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
112 max-width:100%;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
113 max-height:320px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
114 border-radius:8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
115 border:1px solid #ddd;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
116 padding:3px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
117 background:#fff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
118 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
119 Linha em branco usada para separar blocos e melhorar a leitura.
120 .modal-ficha-ia .titulo-secao-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
121 font-size:15px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
122 font-weight:700;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
123 color:#334e68;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
124 margin-bottom:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
125 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
126 Linha em branco usada para separar blocos e melhorar a leitura.
127 .modal-ficha-ia .painel-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
128 background:#f8fbff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
129 border:1px solid #d9ecff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
130 border-radius:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
131 padding:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
132 margin-bottom:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
133 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
134 Linha em branco usada para separar blocos e melhorar a leitura.
135 .modal-ficha-ia .painel-ia-topo{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
136 font-size:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
137 font-weight:700;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
138 color:#1f4e79;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
139 margin-bottom:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
140 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
141 Linha em branco usada para separar blocos e melhorar a leitura.
142 .modal-ficha-ia .grid-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
143 display:grid;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
144 grid-template-columns: repeat(2, minmax(180px, 1fr));Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
145 gap:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
146 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
147 Linha em branco usada para separar blocos e melhorar a leitura.
148 .modal-ficha-ia .card-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
149 background:#fff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
150 border:1px solid #e9eef3;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
151 border-radius:8px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
152 padding:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
153 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
154 Linha em branco usada para separar blocos e melhorar a leitura.
155 .modal-ficha-ia .card-ia .rotulo{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
156 display:block;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
157 font-size:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
158 font-weight:700;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
159 color:#7a8b99;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
160 text-transform:uppercase;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
161 letter-spacing:.3px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
162 margin-bottom:5px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
163 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
164 Linha em branco usada para separar blocos e melhorar a leitura.
165 .modal-ficha-ia .card-ia .valor{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
166 display:block;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
167 font-size:22px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
168 font-weight:700;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
169 color:#2d3436;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
170 line-height:1.2;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
171 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
172 Linha em branco usada para separar blocos e melhorar a leitura.
173 .modal-ficha-ia .resumo-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
174 background:#fff8e8;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
175 border:1px solid #ffe3a6;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
176 border-radius:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
177 padding:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
178 color:#7a5a16;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
179 font-size:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
180 line-height:22px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
181 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
182 Linha em branco usada para separar blocos e melhorar a leitura.
183 .modal-ficha-ia .bloco-obs{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
184 background:#fcfcfc;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
185 border:1px solid #ececec;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
186 border-radius:10px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
187 padding:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
188 margin-top:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
189 font-size:14px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
190 color:#555;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
191 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
192 Linha em branco usada para separar blocos e melhorar a leitura.
193 .modal-ficha-ia .badge-data-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
194 display:inline-block;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
195 background:#eef5ff;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
196 color:#2f6fad;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
197 padding:5px 12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
198 border-radius:20px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
199 font-size:12px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
200 font-weight:700;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
201 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
202 Linha em branco usada para separar blocos e melhorar a leitura.
203 @media (max-width: 768px){Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
204 .bloco-preview-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
205 min-height: auto;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
206 margin-bottom: 15px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
207 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
208 Linha em branco usada para separar blocos e melhorar a leitura.
209 .preview-box{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
210 min-height: 180px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
211 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
212 Linha em branco usada para separar blocos e melhorar a leitura.
213 .card-apoio-analise{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
214 font-size: 13px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
215 line-height: 21px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
216 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
217 Linha em branco usada para separar blocos e melhorar a leitura.
218 .modal-ficha-ia .grid-ia{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
219 grid-template-columns: 1fr;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
220 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
221 Linha em branco usada para separar blocos e melhorar a leitura.
222 .modal-ficha-ia .card-ia .valor{Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
223 font-size:18px;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
224 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
225 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
226</style>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
227 Linha em branco usada para separar blocos e melhorar a leitura.
228<div class="row top-50">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
229 <div class="col-md-8 float-esq"> Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
230 <a class="btn btn-primary btn-flat btn-pri" onclick="inserir()">Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
231 <i class="fa fa-plus" aria-hidden="true"></i> <span class="esc">Nova Análise</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
232 </a>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
233 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
234 <div class="col-md-3 float-esq">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
235 <input onkeyup="listarAnalises()" class="form-control" type="text" name="buscar" id="buscar" placeholder="Buscar por Cliente ou Sugestão" style="border-radius: 5px">Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
236 <input type="hidden" id="pagina">Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
237 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
238 <div class="col-md-1 float-esq">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
239 <button onclick="listarAnalises()" id="btn-buscar" class="btn btn-primary"><i class="fa fa-search"></i></button>Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
240 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
241</div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
242 Linha em branco usada para separar blocos e melhorar a leitura.
243<div class="bs-example widget-shadow" style="padding:15px" id="listar">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
244 Linha em branco usada para separar blocos e melhorar a leitura.
245</div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
246 Linha em branco usada para separar blocos e melhorar a leitura.
247<div class="modal fade" id="modalForm" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
248 <div class="modal-dialog modal-xl" role="document">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
249 <div class="modal-content">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
250 <div class="modal-header">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
251 <h4 class="modal-title"><span id="titulo_inserir"></span></h4>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
252 <button id="btn-fechar" type="button" class="close" data-dismiss="modal" aria-label="Close" style="margin-top: -20px">Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
253 <span aria-hidden="true">&times;</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
254 </button>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
255 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
256 Linha em branco usada para separar blocos e melhorar a leitura.
257 <form id="form_analise" method="post" enctype="multipart/form-data">Abre o formulário que agrupa os campos enviados ao backend.
258 <div class="modal-body">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
259 Linha em branco usada para separar blocos e melhorar a leitura.
260 <div class="card-apoio-analise">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
261 <strong>Análise Técnica Capilar</strong><br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
262 Este módulo funciona como <strong>apoio técnico ao profissional</strong>. A imagem é analisada para auxiliar na identificação de cor capilar, percentual de fios brancos, densidade e grau de falha.Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
263 <br><br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
264 O resultado da análise <strong>não substitui a decisão do profissional</strong>. Ele serve como base para escolha da prótese, que deve ser confirmada no cadastro de prótese e depois apresentada ao cliente na simulação visual.Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
265 <br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
266 <span class="badge-status-analise">Fluxo: análise técnica → definição da prótese → simulação visual</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
267 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
268 Linha em branco usada para separar blocos e melhorar a leitura.
269 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
270 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
271 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
272 <label>Cliente</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
273 <select class="form-control sel2" name="cliente" id="cliente" style="width:100%" required>Renderiza um campo de seleção. Normalmente ele é preenchido por dados do banco ou controla dependências na tela.
274 <option value="">Selecione um Cliente</option>Cria uma opção disponível dentro do `select`.
275 <?php Abre um bloco PHP. A partir daqui o arquivo passa a executar lógica no servidor.
276 $query = $pdo->query("SELECT * FROM clientes order by nome asc");Executa uma consulta direta no banco. É um ponto que merece atenção extra quando houver dados vindos do usuário.
277 $res = $query->fetchAll(PDO::FETCH_ASSOC);Lê o resultado retornado pelo banco e o converte para uma estrutura PHP que o restante do arquivo consegue consumir.
278 $linhas = @count($res);Define a variável `$linhas`, que será usada pelo restante do arquivo para controlar dados, estado ou resposta.
279 if($linhas > 0){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
280 for($i=0; $i<$linhas; $i++){Inicia um laço de repetição para percorrer registros, opções ou elementos da interface.
281 ?>Fecha o bloco PHP atual para voltar à saída HTML.
282 <option value="<?php echo $res[$i]['id'] ?>"><?php echo $res[$i]['nome'] ?></option>Cria uma opção disponível dentro do `select`.
283 <?php } } ?>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
284 </select>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
285 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
286 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
287 Linha em branco usada para separar blocos e melhorar a leitura.
288 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
289 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
290 <label>Data da Análise</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
291 <input type="date" class="form-control" id="data_analise" name="data_analise" value="<?php echo date('Y-m-d') ?>" required> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
292 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
293 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
294 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
295 Linha em branco usada para separar blocos e melhorar a leitura.
296 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
297 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
298 <div class="bloco-preview-analise">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
299 <div class="titulo-preview">Imagem Original do Cliente</div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
300 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
301 <label>Foto</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
302 <input type="file" class="form-control" id="foto" name="foto" onchange="carregarPreviewFoto()">Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
303 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
304 Linha em branco usada para separar blocos e melhorar a leitura.
305 <div class="preview-box">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
306 <img src="images/analises/sem-foto.jpg" id="target">Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
307 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
308 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
309 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
310 Linha em branco usada para separar blocos e melhorar a leitura.
311 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
312 <div class="bloco-preview-analise">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
313 <div class="titulo-preview">Painel de Resultado Técnico</div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
314 Linha em branco usada para separar blocos e melhorar a leitura.
315 <div class="box-resultado-analise">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
316 <div class="titulo-box">Dados identificados na análise</div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
317 Linha em branco usada para separar blocos e melhorar a leitura.
318 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
319 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
320 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
321 <label>Cor Detectada</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
322 <input type="text" class="form-control" id="cor_detectada" name="cor_detectada" placeholder="Ex: #1B30"> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
323 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
324 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
325 Linha em branco usada para separar blocos e melhorar a leitura.
326 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
327 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
328 <label>Densidade</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
329 <input type="text" class="form-control" id="densidade_detectada" name="densidade_detectada" placeholder="Ex: 80%"> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
330 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
331 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
332 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
333 Linha em branco usada para separar blocos e melhorar a leitura.
334 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
335 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
336 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
337 <label>Grau de Falha</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
338 <input type="text" class="form-control" id="grau_falha" name="grau_falha" placeholder="Ex: 15 X 24"> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
339 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
340 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
341 Linha em branco usada para separar blocos e melhorar a leitura.
342 <div class="col-md-6">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
343 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
344 <label>Sugestão de Prótese</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
345 <input type="text" class="form-control" id="sugestao_protese" name="sugestao_protese" placeholder="Ex: Micropele 0.08"> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
346 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
347 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
348 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
349 Linha em branco usada para separar blocos e melhorar a leitura.
350 <div class="linha-fluxo-analise">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
351 Após validar estes dados, o profissional deve confirmar a prótese no módulo apropriado e utilizar o simulador para mostrar o resultado final ao cliente.Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
352 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
353 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
354 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
355 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
356 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
357 Linha em branco usada para separar blocos e melhorar a leitura.
358 <hr>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
359 Linha em branco usada para separar blocos e melhorar a leitura.
360 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
361 <div class="col-md-12">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
362 <button id="btnProcessarAnalise" type="button" class="btn btn-warning btn-block" onclick="processarAnalise()">Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
363 <i id="iconProcessarAnalise" class="fa fa-cogs"></i> Analisar ImagemLinha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
364 </button>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
365 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
366 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
367 Linha em branco usada para separar blocos e melhorar a leitura.
368 <br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
369 <small><div id="mensagem_ia" align="center"></div></small>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
370 Linha em branco usada para separar blocos e melhorar a leitura.
371 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
372 <div class="col-md-12">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
373 <div class="form-group">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
374 <label>Observações</label>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
375 <input type="text" class="form-control" id="observacoes" name="observacoes" placeholder="Observações"> Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
376 </div> Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
377 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
378 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
379 Linha em branco usada para separar blocos e melhorar a leitura.
380 <input type="hidden" name="id" id="id">Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
381 <input type="hidden" name="foto_atual" id="foto_atual">Renderiza um campo de entrada no HTML. O nome/id deste campo precisa bater com o JavaScript e com o backend.
382 Linha em branco usada para separar blocos e melhorar a leitura.
383 <br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
384 <small><div id="mensagem" align="center"></div></small>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
385 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
386 Linha em branco usada para separar blocos e melhorar a leitura.
387 <div class="modal-footer"> Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
388 <button type="submit" class="btn btn-primary">Salvar</button>Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
389 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
390 </form>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
391 Linha em branco usada para separar blocos e melhorar a leitura.
392 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
393 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
394</div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
395 Linha em branco usada para separar blocos e melhorar a leitura.
396<div class="modal fade modal-ficha-ia" id="modalDados" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
397 <div class="modal-dialog modal-xl" role="document">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
398 <div class="modal-content">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
399 <div class="modal-header">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
400 <h4 class="modal-title" id="exampleModalLabel"><span id="nome_dados"></span></h4>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
401 <button id="btn-fechar-perfil" type="button" class="close" data-dismiss="modal" aria-label="Close" style="margin-top: -20px">Renderiza um elemento de ação da interface, normalmente ligado a evento JavaScript ou navegação.
402 <span aria-hidden="true">&times;</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
403 </button>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
404 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
405 Linha em branco usada para separar blocos e melhorar a leitura.
406 <div class="modal-body">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
407 Linha em branco usada para separar blocos e melhorar a leitura.
408 <div class="row">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
409 <div class="col-md-5">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
410 <div class="bloco-foto-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
411 <div class="titulo-secao-ia">Imagem Analisada</div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
412 <img id="foto_dados" src="">Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
413 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
414 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
415 Linha em branco usada para separar blocos e melhorar a leitura.
416 <div class="col-md-7">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
417 <div class="painel-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
418 <div class="painel-ia-topo">Resultado Técnico Gerado pela IA</div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
419 Linha em branco usada para separar blocos e melhorar a leitura.
420 <div class="row" style="margin-bottom:10px">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
421 <div class="col-md-7">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
422 <div><strong>Cliente:</strong> <span id="cliente_dados"></span></div>Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
423 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
424 <div class="col-md-5" align="right">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
425 <span class="badge-data-ia">Análise: <span id="data_analise_dados"></span></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
426 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
427 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
428 Linha em branco usada para separar blocos e melhorar a leitura.
429 <div class="grid-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
430 <div class="card-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
431 <span class="rotulo">Cor Detectada</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
432 <span class="valor" id="cor_dados"></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
433 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
434 Linha em branco usada para separar blocos e melhorar a leitura.
435 <div class="card-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
436 <span class="rotulo">Densidade</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
437 <span class="valor" id="densidade_dados"></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
438 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
439 Linha em branco usada para separar blocos e melhorar a leitura.
440 <div class="card-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
441 <span class="rotulo">Grau de Falha</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
442 <span class="valor" id="grau_dados"></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
443 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
444 Linha em branco usada para separar blocos e melhorar a leitura.
445 <div class="card-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
446 <span class="rotulo">Sugestão de Prótese</span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
447 <span class="valor" id="sugestao_dados"></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
448 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
449 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
450 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
451 Linha em branco usada para separar blocos e melhorar a leitura.
452 <div class="resumo-ia">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
453 <strong>Leitura rápida para atendimento:</strong><br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
454 A IA identificou a cor <strong id="cor_resumo"></strong>, com densidade estimada em <strong id="densidade_resumo"></strong>, grau de falha <strong id="grau_resumo"></strong> e sugestão técnica de prótese <strong id="sugestao_resumo"></strong>.Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
455 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
456 Linha em branco usada para separar blocos e melhorar a leitura.
457 <div class="bloco-obs">Estrutura o layout HTML da página, modal ou tabela mostrada ao usuário.
458 <strong>Observações:</strong><br>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
459 <span id="observacoes_dados"></span>Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
460 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
461 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
462 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
463 Linha em branco usada para separar blocos e melhorar a leitura.
464 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
465 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
466 </div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
467</div>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
468 Linha em branco usada para separar blocos e melhorar a leitura.
469<script type="text/javascript">var pag = "<?=$pag?>"</script>Guarda o identificador interno da página, normalmente usado pelo painel para permissões, destaque de menu ou callbacks.
470<script src="js/ajax.js"></script>Abre um bloco JavaScript usado para interações do front-end.
471 Linha em branco usada para separar blocos e melhorar a leitura.
472<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
473$(document).ready(function () {Manipula uma variável PHP usada na construção do fluxo.
474 listarAnalises();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
475 Linha em branco usada para separar blocos e melhorar a leitura.
476 $('.sel2').select2({Manipula uma variável PHP usada na construção do fluxo.
477 dropdownParent: $('#modalForm')Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
478 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
479 Linha em branco usada para separar blocos e melhorar a leitura.
480 $('#cliente').on('change', function(){Manipula uma variável PHP usada na construção do fluxo.
481 buscarDadosProtese();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
482 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
483});Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
484</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
485 Linha em branco usada para separar blocos e melhorar a leitura.
486<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
487function listarAnalises(pagina){Declara a função `listarAnalises`, responsável por uma parte específica do comportamento da página.
488 Linha em branco usada para separar blocos e melhorar a leitura.
489 $("#pagina").val(pagina);Manipula uma variável PHP usada na construção do fluxo.
490 Linha em branco usada para separar blocos e melhorar a leitura.
491 var busca = $("#buscar").val();Declara uma variável JavaScript usada pelo comportamento do front-end.
492 $.ajax({Manipula uma variável PHP usada na construção do fluxo.
493 url: 'paginas/' + pag + "/listar.php",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
494 method: 'POST',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
495 data: {busca, pagina},Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
496 dataType: "html",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
497 Linha em branco usada para separar blocos e melhorar a leitura.
498 success:function(result){Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
499 $("#listar").html(result);Manipula uma variável PHP usada na construção do fluxo.
500 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
501 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
502}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
503</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
504 Linha em branco usada para separar blocos e melhorar a leitura.
505<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
506function limparCampos(){Declara a função `limparCampos`, responsável por uma parte específica do comportamento da página.
507 $('#id').val('');Manipula uma variável PHP usada na construção do fluxo.
508 $('#cliente').val('').change();Manipula uma variável PHP usada na construção do fluxo.
509 $('#data_analise').val('<?php echo date('Y-m-d') ?>');Manipula uma variável PHP usada na construção do fluxo.
510 $('#foto').val('');Manipula uma variável PHP usada na construção do fluxo.
511 $('#foto_atual').val('');Manipula uma variável PHP usada na construção do fluxo.
512 $('#cor_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
513 $('#densidade_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
514 $('#grau_falha').val('');Manipula uma variável PHP usada na construção do fluxo.
515 $('#sugestao_protese').val('');Manipula uma variável PHP usada na construção do fluxo.
516 $('#observacoes').val('');Manipula uma variável PHP usada na construção do fluxo.
517 $('#mensagem').text('');Manipula uma variável PHP usada na construção do fluxo.
518 $('#mensagem').removeClass();Manipula uma variável PHP usada na construção do fluxo.
519 $('#mensagem_ia').text('');Manipula uma variável PHP usada na construção do fluxo.
520 $('#mensagem_ia').removeClass();Manipula uma variável PHP usada na construção do fluxo.
521 $('#target').attr('src', 'images/analises/sem-foto.jpg');Manipula uma variável PHP usada na construção do fluxo.
522 Linha em branco usada para separar blocos e melhorar a leitura.
523 $('#btnProcessarAnalise').data('processando', false);Manipula uma variável PHP usada na construção do fluxo.
524 $('#btnProcessarAnalise').prop('disabled', false);Manipula uma variável PHP usada na construção do fluxo.
525 $('#iconProcessarAnalise').removeClass();Manipula uma variável PHP usada na construção do fluxo.
526 $('#iconProcessarAnalise').addClass('fa fa-cogs');Manipula uma variável PHP usada na construção do fluxo.
527}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
528</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
529 Linha em branco usada para separar blocos e melhorar a leitura.
530<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
531function inserir(){Declara a função `inserir`, responsável por uma parte específica do comportamento da página.
532 limparCampos();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
533 $('#titulo_inserir').text('Análise Técnica Capilar');Manipula uma variável PHP usada na construção do fluxo.
534 $('#mensagem_ia').text('Salve o registro para habilitar a análise técnica da imagem.');Manipula uma variável PHP usada na construção do fluxo.
535 $('#mensagem_ia').removeClass();Manipula uma variável PHP usada na construção do fluxo.
536 $('#mensagem_ia').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
537 $('#modalForm').modal('show');Manipula uma variável PHP usada na construção do fluxo.
538}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
539</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
540 Linha em branco usada para separar blocos e melhorar a leitura.
541<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
542function buscarDadosProtese(){Declara a função `buscarDadosProtese`, responsável por uma parte específica do comportamento da página.
543 var cliente = $('#cliente').val();Declara uma variável JavaScript usada pelo comportamento do front-end.
544 Linha em branco usada para separar blocos e melhorar a leitura.
545 if(cliente == ""){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
546 $('#cor_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
547 $('#densidade_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
548 $('#grau_falha').val('');Manipula uma variável PHP usada na construção do fluxo.
549 $('#sugestao_protese').val('');Manipula uma variável PHP usada na construção do fluxo.
550 $('#observacoes').val('');Manipula uma variável PHP usada na construção do fluxo.
551 return;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
552 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
553 Linha em branco usada para separar blocos e melhorar a leitura.
554 $.ajax({Manipula uma variável PHP usada na construção do fluxo.
555 url: 'paginas/' + pag + "/buscar_protese.php",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
556 method: 'POST',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
557 data: {cliente: cliente},Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
558 dataType: "json",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
559 Linha em branco usada para separar blocos e melhorar a leitura.
560 success: function(dados){Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
561 if(dados.status == 'Sucesso'){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
562 $('#cor_detectada').val(dados.cor);Manipula uma variável PHP usada na construção do fluxo.
563 $('#densidade_detectada').val(dados.densidade);Manipula uma variável PHP usada na construção do fluxo.
564 $('#grau_falha').val(dados.tamanho);Manipula uma variável PHP usada na construção do fluxo.
565 $('#sugestao_protese').val(dados.modelo);Manipula uma variável PHP usada na construção do fluxo.
566 $('#observacoes').val(dados.observacoes);Manipula uma variável PHP usada na construção do fluxo.
567 }else{Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
568 $('#cor_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
569 $('#densidade_detectada').val('');Manipula uma variável PHP usada na construção do fluxo.
570 $('#grau_falha').val('');Manipula uma variável PHP usada na construção do fluxo.
571 $('#sugestao_protese').val('');Manipula uma variável PHP usada na construção do fluxo.
572 $('#observacoes').val('');Manipula uma variável PHP usada na construção do fluxo.
573 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
574 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
575 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
576}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
577</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
578 Linha em branco usada para separar blocos e melhorar a leitura.
579<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
580$("#form_analise").submit(function () {Manipula uma variável PHP usada na construção do fluxo.
581 Linha em branco usada para separar blocos e melhorar a leitura.
582 event.preventDefault();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
583 var formData = new FormData(this);Declara uma variável JavaScript usada pelo comportamento do front-end.
584 Linha em branco usada para separar blocos e melhorar a leitura.
585 $.ajax({Manipula uma variável PHP usada na construção do fluxo.
586 url: 'paginas/' + pag + "/salvar.php",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
587 type: 'POST',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
588 data: formData,Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
589 Linha em branco usada para separar blocos e melhorar a leitura.
590 success: function (mensagem) {Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
591 $('#mensagem').text('');Manipula uma variável PHP usada na construção do fluxo.
592 $('#mensagem').removeClass();Manipula uma variável PHP usada na construção do fluxo.
593 if (mensagem.trim() == "Salvo com Sucesso") {Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
594 Linha em branco usada para separar blocos e melhorar a leitura.
595 $('#btn-fechar').click();Manipula uma variável PHP usada na construção do fluxo.
596 Linha em branco usada para separar blocos e melhorar a leitura.
597 var pagina = $("#pagina").val();Declara uma variável JavaScript usada pelo comportamento do front-end.
598 listarAnalises(pagina);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
599 Linha em branco usada para separar blocos e melhorar a leitura.
600 } else {Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
601 $('#mensagem').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
602 $('#mensagem').text(mensagem);Manipula uma variável PHP usada na construção do fluxo.
603 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
604 Linha em branco usada para separar blocos e melhorar a leitura.
605 },Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
606 Linha em branco usada para separar blocos e melhorar a leitura.
607 cache: false,Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
608 contentType: false,Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
609 processData: false,Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
610 Linha em branco usada para separar blocos e melhorar a leitura.
611 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
612 Linha em branco usada para separar blocos e melhorar a leitura.
613});Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
614</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
615 Linha em branco usada para separar blocos e melhorar a leitura.
616<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
617function excluir(id){Declara a função `excluir`, responsável por uma parte específica do comportamento da página.
618 $.ajax({Manipula uma variável PHP usada na construção do fluxo.
619 url: 'paginas/' + pag + "/excluir.php",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
620 method: 'POST',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
621 data: {id},Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
622 dataType: "text",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
623 Linha em branco usada para separar blocos e melhorar a leitura.
624 success: function (mensagem) { Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
625 if (mensagem.trim() == "Excluído com Sucesso") { Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
626 var pagina = $("#pagina").val();Declara uma variável JavaScript usada pelo comportamento do front-end.
627 listarAnalises(pagina);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
628 } else {Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
629 $('#mensagem-excluir').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
630 $('#mensagem-excluir').text(mensagem);Manipula uma variável PHP usada na construção do fluxo.
631 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
632 Linha em branco usada para separar blocos e melhorar a leitura.
633 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
634 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
635}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
636</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
637 Linha em branco usada para separar blocos e melhorar a leitura.
638<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
639function carregarPreviewFoto(){Declara a função `carregarPreviewFoto`, responsável por uma parte específica do comportamento da página.
640 const file = document.getElementById('foto').files[0];Declara uma variável JavaScript usada pelo comportamento do front-end.
641 Linha em branco usada para separar blocos e melhorar a leitura.
642 if(file){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
643 const reader = new FileReader();Declara uma variável JavaScript usada pelo comportamento do front-end.
644 reader.onload = function(e){Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
645 $('#target').attr('src', e.target.result);Manipula uma variável PHP usada na construção do fluxo.
646 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
647 reader.readAsDataURL(file);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
648 }else{Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
649 $('#target').attr('src', 'images/analises/sem-foto.jpg');Manipula uma variável PHP usada na construção do fluxo.
650 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
651}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
652</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
653 Linha em branco usada para separar blocos e melhorar a leitura.
654<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
655function processarAnalise(){Declara a função `processarAnalise`, responsável por uma parte específica do comportamento da página.
656 var id = $('#id').val();Declara uma variável JavaScript usada pelo comportamento do front-end.
657 var botao = $('#btnProcessarAnalise');Declara uma variável JavaScript usada pelo comportamento do front-end.
658 var icone = $('#iconProcessarAnalise');Declara uma variável JavaScript usada pelo comportamento do front-end.
659 Linha em branco usada para separar blocos e melhorar a leitura.
660 $('#mensagem_ia').text('');Manipula uma variável PHP usada na construção do fluxo.
661 $('#mensagem_ia').removeClass();Manipula uma variável PHP usada na construção do fluxo.
662 Linha em branco usada para separar blocos e melhorar a leitura.
663 if(id == ""){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
664 $('#mensagem_ia').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
665 $('#mensagem_ia').text('Salve o registro para habilitar a análise técnica da imagem.');Manipula uma variável PHP usada na construção do fluxo.
666 return;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
667 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
668 Linha em branco usada para separar blocos e melhorar a leitura.
669 if(botao.data('processando') == true){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
670 return;Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
671 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
672 Linha em branco usada para separar blocos e melhorar a leitura.
673 botao.data('processando', true);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
674 botao.prop('disabled', true);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
675 Linha em branco usada para separar blocos e melhorar a leitura.
676 icone.removeClass();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
677 icone.addClass('fa fa-spinner fa-spin');Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
678 Linha em branco usada para separar blocos e melhorar a leitura.
679 $('#mensagem_ia').addClass('text-info');Manipula uma variável PHP usada na construção do fluxo.
680 $('#mensagem_ia').text('Processando análise técnica.');Manipula uma variável PHP usada na construção do fluxo.
681 Linha em branco usada para separar blocos e melhorar a leitura.
682 $.ajax({Manipula uma variável PHP usada na construção do fluxo.
683 url: 'paginas/analises/processar.php',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
684 method: 'POST',Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
685 data: {id},Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
686 dataType: "json",Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
687 Linha em branco usada para separar blocos e melhorar a leitura.
688 success: function (dados) {Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
689 Linha em branco usada para separar blocos e melhorar a leitura.
690 botao.data('processando', false);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
691 botao.prop('disabled', false);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
692 Linha em branco usada para separar blocos e melhorar a leitura.
693 icone.removeClass();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
694 icone.addClass('fa fa-cogs');Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
695 Linha em branco usada para separar blocos e melhorar a leitura.
696 $('#mensagem_ia').removeClass();Manipula uma variável PHP usada na construção do fluxo.
697 Linha em branco usada para separar blocos e melhorar a leitura.
698 if(dados.status == 'Sucesso'){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
699 $('#cor_detectada').val(dados.cor_detectada);Manipula uma variável PHP usada na construção do fluxo.
700 $('#densidade_detectada').val(dados.densidade_detectada);Manipula uma variável PHP usada na construção do fluxo.
701 $('#grau_falha').val(dados.grau_falha);Manipula uma variável PHP usada na construção do fluxo.
702 $('#sugestao_protese').val(dados.sugestao_protese);Manipula uma variável PHP usada na construção do fluxo.
703 Linha em branco usada para separar blocos e melhorar a leitura.
704 $('#mensagem_ia').addClass('text-success');Manipula uma variável PHP usada na construção do fluxo.
705 $('#mensagem_ia').text('Análise técnica processada com sucesso');Manipula uma variável PHP usada na construção do fluxo.
706 }else{Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
707 $('#mensagem_ia').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
708 $('#mensagem_ia').text(dados.mensagem);Manipula uma variável PHP usada na construção do fluxo.
709 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
710 },Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
711 Linha em branco usada para separar blocos e melhorar a leitura.
712 error: function () {Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
713 Linha em branco usada para separar blocos e melhorar a leitura.
714 botao.data('processando', false);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
715 botao.prop('disabled', false);Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
716 Linha em branco usada para separar blocos e melhorar a leitura.
717 icone.removeClass();Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
718 icone.addClass('fa fa-cogs');Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
719 Linha em branco usada para separar blocos e melhorar a leitura.
720 $('#mensagem_ia').removeClass();Manipula uma variável PHP usada na construção do fluxo.
721 $('#mensagem_ia').addClass('text-danger');Manipula uma variável PHP usada na construção do fluxo.
722 $('#mensagem_ia').text('Erro ao processar análise');Manipula uma variável PHP usada na construção do fluxo.
723 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
724 });Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
725}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
726</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.
727 Linha em branco usada para separar blocos e melhorar a leitura.
728<script type="text/javascript">Abre um bloco JavaScript usado para interações do front-end.
729function mostrar(nome_cliente, data_analise, foto, foto_ajustada, cor_detectada, densidade_detectada, grau_falha, sugestao_protese, observacoes){Declara a função `mostrar`, responsável por uma parte específica do comportamento da página.
730 $('#nome_dados').text('Ficha Técnica da Análise');Manipula uma variável PHP usada na construção do fluxo.
731 $('#cliente_dados').text(nome_cliente);Manipula uma variável PHP usada na construção do fluxo.
732 $('#data_analise_dados').text(data_analise);Manipula uma variável PHP usada na construção do fluxo.
733 $('#cor_dados').text(cor_detectada);Manipula uma variável PHP usada na construção do fluxo.
734 $('#densidade_dados').text(densidade_detectada);Manipula uma variável PHP usada na construção do fluxo.
735 $('#grau_dados').text(grau_falha);Manipula uma variável PHP usada na construção do fluxo.
736 $('#sugestao_dados').text(sugestao_protese);Manipula uma variável PHP usada na construção do fluxo.
737 Linha em branco usada para separar blocos e melhorar a leitura.
738 $('#cor_resumo').text(cor_detectada);Manipula uma variável PHP usada na construção do fluxo.
739 $('#densidade_resumo').text(densidade_detectada);Manipula uma variável PHP usada na construção do fluxo.
740 $('#grau_resumo').text(grau_falha);Manipula uma variável PHP usada na construção do fluxo.
741 $('#sugestao_resumo').text(sugestao_protese);Manipula uma variável PHP usada na construção do fluxo.
742 Linha em branco usada para separar blocos e melhorar a leitura.
743 if(observacoes == ""){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
744 observacoes = 'Sem observações informadas.';Linha de implementação que compõe a lógica normal do arquivo e deve ser lida em conjunto com o bloco onde está inserida.
745 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
746 Linha em branco usada para separar blocos e melhorar a leitura.
747 $('#observacoes_dados').text(observacoes);Manipula uma variável PHP usada na construção do fluxo.
748 Linha em branco usada para separar blocos e melhorar a leitura.
749 if(foto_ajustada != ""){Abre uma condição para validar pré-requisitos ou desviar o fluxo conforme os dados recebidos.
750 $('#foto_dados').attr('src', 'images/analises/' + foto_ajustada + '?v=' + new Date().getTime());Manipula uma variável PHP usada na construção do fluxo.
751 }else if(foto != ""){Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
752 $('#foto_dados').attr('src', 'images/analises/' + foto + '?v=' + new Date().getTime());Manipula uma variável PHP usada na construção do fluxo.
753 }else{Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
754 $('#foto_dados').attr('src', 'images/analises/sem-foto.jpg');Manipula uma variável PHP usada na construção do fluxo.
755 }Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
756 Linha em branco usada para separar blocos e melhorar a leitura.
757 $('#modalDados').modal('show');Manipula uma variável PHP usada na construção do fluxo.
758}Marca abertura/fechamento de bloco de código, objeto, array ou estrutura de controle.
759</script>Fecha a estrutura HTML aberta anteriormente, mantendo o documento bem formado.

Navegação entre arquivos do grupo