Download cliente.html from stadv/dev-dev: direct link, hf CLI and curl.
- Browser
- Download file 16.8 kB
-
https://huggingface.co/spaces/stadv/dev-dev/resolve/main/cliente.html
- Command line
-
hf download hf://spaces/stadv/dev-dev/cliente.html
-
curl -L -o cliente.html https://huggingface.co/spaces/stadv/dev-dev/resolve/main/cliente.html
16.8 kB
| <html lang="pt-BR"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>LegalData Manager - Portal do Cliente</title> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> | |
| <style> | |
| .drop-zone { border: 2px dashed #c7d2fe; transition: all 0.3s; } | |
| .drop-zone.dragover { border-color: #6366f1; background: #eef2ff; } | |
| .step-circle { transition: all 0.3s; } | |
| .step-circle.active { background: #4F46E5; color: white; } | |
| .step-circle.completed { background: #10B981; color: white; } | |
| .step-line.active { background: #4F46E5; } | |
| .toast { transform: translateX(120%); transition: transform 0.4s ease; } | |
| .toast.show { transform: translateX(0); } | |
| @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } | |
| .fade-in { animation: fadeIn 0.5s ease; } | |
| .file-item { animation: fadeIn 0.3s ease; } | |
| </style> | |
| </head> | |
| <body class="bg-gradient-to-br from-indigo-50 via-white to-purple-50 min-h-screen"> | |
| <!-- Toast Container --> | |
| <div id="toast-container" class="fixed top-4 right-4 z-50 space-y-2"></div> | |
| <div class="min-h-screen flex flex-col"> | |
| <!-- Header --> | |
| <header class="bg-white shadow-sm"> | |
| <div class="max-w-4xl mx-auto px-4 py-4 flex justify-between items-center"> | |
| <div class="flex items-center space-x-3"> | |
| <div class="w-10 h-10 bg-indigo-600 rounded-lg flex items-center justify-center"> | |
| <i class="fas fa-balance-scale text-white text-lg"></i> | |
| </div> | |
| <div> | |
| <h1 class="text-lg font-bold text-gray-800">LegalData Manager</h1> | |
| <p class="text-xs text-gray-500">Portal do Cliente</p> | |
| </div> | |
| </div> | |
| <a href="index.html" class="text-indigo-600 hover:text-indigo-800 text-sm font-medium flex items-center"> | |
| <i class="fas fa-arrow-left mr-1"></i> Área Administrativa | |
| </a> | |
| </div> | |
| </header> | |
| <!-- Main Content --> | |
| <main class="flex-1 max-w-4xl mx-auto w-full px-4 py-8"> | |
| <!-- Steps Indicator --> | |
| <div class="flex items-center justify-center mb-8"> | |
| <div class="flex items-center space-x-2"> | |
| <div class="step-circle active w-10 h-10 rounded-full flex items-center justify-center font-bold text-sm border-2 border-indigo-600" id="step-1">1</div> | |
| <div class="step-line w-16 h-1 bg-gray-200 rounded" id="line-1"></div> | |
| <div class="step-circle w-10 h-10 rounded-full flex items-center justify-center font-bold text-sm border-2 border-gray-300 text-gray-400" id="step-2">2</div> | |
| <div class="step-line w-16 h-1 bg-gray-200 rounded" id="line-2"></div> | |
| <div class="step-circle w-10 h-10 rounded-full flex items-center justify-center font-bold text-sm border-2 border-gray-300 text-gray-400" id="step-3">3</div> | |
| </div> | |
| </div> | |
| <!-- Step 1: Registration Form --> | |
| <div id="form-step-1" class="fade-in"> | |
| <div class="bg-white rounded-2xl shadow-lg p-6 md:p-8 mb-6"> | |
| <div class="text-center mb-6"> | |
| <div class="w-16 h-16 bg-indigo-100 rounded-full flex items-center justify-center mx-auto mb-4"> | |
| <i class="fas fa-user-plus text-2xl text-indigo-600"></i> | |
| </div> | |
| <h2 class="text-2xl font-bold text-gray-800">Cadastro de Cliente</h2> | |
| <p class="text-gray-500 mt-1">Preencha seus dados para se cadastrar no escritório</p> | |
| </div> | |
| <form id="client-form" onsubmit="return handleClientSubmit(event)"> | |
| <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Nome Completo *</label> | |
| <input type="text" id="reg-nome" required class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:border-transparent" placeholder="Seu nome completo"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Tipo de Pessoa *</label> | |
| <select id="reg-tipo" required class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500"> | |
| <option value="pf">Pessoa Física</option> | |
| <option value="pj">Pessoa Jurídica</option> | |
| </select> | |
| </div> | |
| </div> | |
| <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">CPF/CNPJ *</label> | |
| <input type="text" id="reg-cpfcnpj" required class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="000.000.000-00"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">RG/Inscrição Estadual</label> | |
| <input type="text" id="reg-rg" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="Opcional"> | |
| </div> | |
| </div> | |
| <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">E-mail *</label> | |
| <input type="email" id="reg-email" required class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="[email protected]"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Telefone *</label> | |
| <input type="text" id="reg-telefone" required class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="(00) 00000-0000"> | |
| </div> | |
| </div> | |
| <div class="mb-4"> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Endereço Completo</label> | |
| <input type="text" id="reg-endereco" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="Rua, número, complemento, bairro, cidade - UF"> | |
| </div> | |
| <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Profissão</label> | |
| <input type="text" id="reg-profissao" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="Sua profissão"> | |
| </div> | |
| <div> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Estado Civil</label> | |
| <select id="reg-estadocivil" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500"> | |
| <option value="">Selecione</option> | |
| <option>Solteiro(a)</option> | |
| <option>Casado(a)</option> | |
| <option>Divorciado(a)</option> | |
| <option>Viúvo(a)</option> | |
| <option>Separado(a)</option> | |
| <option>União Estável</option> | |
| </select> | |
| </div> | |
| </div> | |
| <div class="mb-4"> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Tipo de Processo</label> | |
| <select id="reg-tipo-processo" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500"> | |
| <option value="">Selecione</option> | |
| <option value="civel">Cível</option> | |
| <option value="trabalhista">Trabalhista</option> | |
| <option value="tributario">Tributário</option> | |
| <option value="criminal">Criminal</option> | |
| <option value="familia">Família</option> | |
| <option value="consumidor">Consumidor</option> | |
| <option value="previdenciario">Previdenciário</option> | |
| <option value="outro">Outro</option> | |
| </select> | |
| </div> | |
| <div class="mb-4"> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Descrição do Caso</label> | |
| <textarea id="reg-descricao" rows="4" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="Descreva brevemente sua situação..."></textarea> | |
| </div> | |
| <div class="mb-4"> | |
| <label class="flex items-start space-x-2"> | |
| <input type="checkbox" required class="rounded border-gray-300 text-indigo-600 focus:ring-indigo-500 mt-1"> | |
| <span class="text-sm text-gray-600">Declaro que as informações fornecidas são verdadeiras e autorizo o uso dos dados para fins de prestação de serviços jurídicos, conforme a LGPD.</span> | |
| </label> | |
| </div> | |
| <button type="submit" class="w-full bg-indigo-600 text-white py-3 rounded-lg hover:bg-indigo-700 transition font-semibold text-lg"> | |
| <i class="fas fa-arrow-right mr-2"></i> Próximo - Enviar Provas | |
| </button> | |
| </form> | |
| </div> | |
| </div> | |
| <!-- Step 2: Evidence Upload --> | |
| <div id="form-step-2" class="hidden fade-in"> | |
| <div class="bg-white rounded-2xl shadow-lg p-6 md:p-8 mb-6"> | |
| <div class="text-center mb-6"> | |
| <div class="w-16 h-16 bg-purple-100 rounded-full flex items-center justify-center mx-auto mb-4"> | |
| <i class="fas fa-cloud-upload-alt text-2xl text-purple-600"></i> | |
| </div> | |
| <h2 class="text-2xl font-bold text-gray-800">Envio de Provas</h2> | |
| <p class="text-gray-500 mt-1">Envie documentos, fotos, vídeos ou áudios relacionados ao seu caso</p> | |
| </div> | |
| <div id="drop-zone-client" class="drop-zone rounded-xl p-8 text-center cursor-pointer mb-4" onclick="document.getElementById('client-file-input').click()" ondragover="event.preventDefault();this.classList.add('dragover')" ondragleave="this.classList.remove('dragover')" ondrop="event.preventDefault();this.classList.remove('dragover');handleClientFileDrop(event)"> | |
| <i class="fas fa-cloud-upload-alt text-5xl text-indigo-300 mb-3"></i> | |
| <p class="text-lg text-gray-500 mb-1">Arraste arquivos aqui</p> | |
| <p class="text-sm text-gray-400">ou clique para selecionar</p> | |
| <p class="text-xs text-gray-400 mt-2">Imagens, PDFs, vídeos e áudios — até 10MB cada</p> | |
| <input type="file" id="client-file-input" class="hidden" multiple accept="image/*,.pdf,video/*,audio/*" onchange="handleClientFileSelect(event)"> | |
| </div> | |
| <div id="client-files-list" class="space-y-2 mb-4"></div> | |
| <div class="mb-4"> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Categoria das Provas</label> | |
| <select id="client-ev-category" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500"> | |
| <option value="documento">Documento</option> | |
| <option value="foto">Foto</option> | |
| <option value="video">Vídeo</option> | |
| <option value="audio">Áudio</option> | |
| <option value="outro">Outro</option> | |
| </select> | |
| </div> | |
| <div class="mb-4"> | |
| <label class="block text-sm font-medium text-gray-700 mb-1">Observações</label> | |
| <textarea id="client-ev-notes" rows="2" class="w-full px-4 py-2.5 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500" placeholder="Informações adicionais sobre as provas..."></textarea> | |
| </div> | |
| <div class="flex space-x-3"> | |
| <button onclick="goToStep(1)" class="flex-1 bg-gray-100 text-gray-700 py-3 rounded-lg hover:bg-gray-200 transition font-semibold"> | |
| <i class="fas fa-arrow-left mr-2"></i> Voltar | |
| </button> | |
| <button onclick="submitClientEvidence()" class="flex-1 bg-indigo-600 text-white py-3 rounded-lg hover:bg-indigo-700 transition font-semibold"> | |
| <i class="fas fa-paper-plane mr-2"></i> Enviar Provas | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| <!-- Step 3: Confirmation --> | |
| <div id="form-step-3" class="hidden fade-in"> | |
| <div class="bg-white rounded-2xl shadow-lg p-6 md:p-8 text-center"> | |
| <div class="w-20 h-20 bg-green-100 rounded-full flex items-center justify-center mx-auto mb-6"> | |
| <i class="fas fa-check-circle text-4xl text-green-600"></i> | |
| </div> | |
| <h2 class="text-2xl font-bold text-gray-800 mb-2">Cadastro Enviado!</h2> | |
| <p class="text-gray-500 mb-6">Suas informações e provas foram enviadas com sucesso. Nossa equipe entrará em contato em breve.</p> | |
| <div id="confirmation-details" class="bg-gray-50 rounded-xl p-6 mb-6 text-left"></div> | |
| <div class="flex flex-col space-y-3"> | |
| <button onclick="resetForm()" class="w-full bg-indigo-600 text-white py-3 rounded-lg hover:bg-indigo-700 transition font-semibold"> | |
| <i class="fas fa-plus mr-2"></i> Enviar Outro Cadastro | |
| </button> | |
| <a href="index.html" class="w-full bg-gray-100 text-gray-700 py-3 rounded-lg hover:bg-gray-200 transition font-semibold text-center"> | |
| <i class="fas fa-arrow-left mr-2"></i> Voltar à Área Administrativa | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| </main> | |
| <!-- Footer --> | |
| <footer class="bg-white border-t border-gray-200"> | |
| <div class="max-w-4xl mx-auto px-4 py-4 text-center text-sm text-gray-500"> | |
| <p>© 2024 LegalData Manager — Todos os direitos reservados</p> | |
| <p class="text-xs mt-1">Seus dados são protegidos conforme a LGPD</p> | |
| </div> | |
| </footer> | |
| </div> | |
| <script src="cliente.js"></script> | |
| </body> | |
| </html> |