323 lines
20 KiB
HTML
323 lines
20 KiB
HTML
<!-- Modal de Editar Militante -->
|
|
<div class="modal fade" id="modalEditarMilitante" tabindex="-1">
|
|
<div class="modal-dialog modal-lg modal-dialog-centered">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h5 class="modal-title">
|
|
<i class="fas fa-user-edit me-2"></i>Editar Militante
|
|
</h5>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal"></button>
|
|
</div>
|
|
<form id="formEditarMilitante" method="POST">
|
|
<input type="hidden" id="edit_militante_id" name="militante_id">
|
|
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
|
|
|
|
<div class="modal-body">
|
|
<!-- Nav tabs -->
|
|
<ul class="nav nav-tabs nav-fill mb-3" role="tablist">
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link active" data-bs-toggle="tab" data-bs-target="#edit-dados-basicos" type="button">
|
|
<i class="fas fa-user me-2"></i>Dados Básicos
|
|
</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#edit-contato" type="button">
|
|
<i class="fas fa-address-book me-2"></i>Contato
|
|
</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#edit-profissional" type="button">
|
|
<i class="fas fa-briefcase me-2"></i>Profissional
|
|
</button>
|
|
</li>
|
|
<li class="nav-item" role="presentation">
|
|
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#edit-organizacao" type="button">
|
|
<i class="fas fa-users me-2"></i>Organização
|
|
</button>
|
|
</li>
|
|
</ul>
|
|
|
|
<!-- Tab content -->
|
|
<div class="tab-content">
|
|
<!-- Dados Básicos -->
|
|
<div class="tab-pane fade show active" id="edit-dados-basicos">
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_nome" class="form-label">Nome</label>
|
|
<input type="text" class="form-control" id="edit_nome" name="nome" required>
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_cpf" class="form-label">CPF</label>
|
|
<input type="text" class="form-control" id="edit_cpf" name="cpf" required>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_titulo_eleitoral" class="form-label">Título Eleitoral</label>
|
|
<input type="text" class="form-control" id="edit_titulo_eleitoral" name="titulo_eleitoral">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_data_nascimento" class="form-label">Data de Nascimento</label>
|
|
<input type="text" class="form-control date-mask" id="edit_data_nascimento" name="data_nascimento"
|
|
placeholder="DD/MM/AAAA" maxlength="10">
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_data_entrada" class="form-label">Data de Entrada OCI</label>
|
|
<input type="text" class="form-control date-mask" id="edit_data_entrada" name="data_entrada_oci"
|
|
placeholder="DD/MM/AAAA" maxlength="10">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_data_efetivacao" class="form-label">Data de Efetivação</label>
|
|
<input type="text" class="form-control date-mask" id="edit_data_efetivacao" name="data_efetivacao_oci"
|
|
placeholder="DD/MM/AAAA" maxlength="10">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Contato -->
|
|
<div class="tab-pane fade" id="edit-contato">
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_telefone1" class="form-label">Telefone Principal</label>
|
|
<input type="text" class="form-control" id="edit_telefone1" name="telefone1">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_telefone2" class="form-label">Telefone Alternativo</label>
|
|
<input type="text" class="form-control" id="edit_telefone2" name="telefone2">
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Email Principal -->
|
|
<div class="mb-3">
|
|
<label for="edit_email" class="form-label">Email Principal</label>
|
|
<input type="email" class="form-control" id="edit_email" name="email" required>
|
|
</div>
|
|
|
|
<!-- Endereço -->
|
|
<div class="endereco-container">
|
|
<div class="row">
|
|
<div class="col-md-4 mb-3">
|
|
<label for="edit_cep" class="form-label">CEP</label>
|
|
<input type="text" class="form-control" id="edit_cep" name="cep">
|
|
</div>
|
|
<div class="col-md-4 mb-3">
|
|
<label for="edit_estado" class="form-label">Estado</label>
|
|
<select class="form-select" id="edit_estado" name="estado">
|
|
<option value="">Selecione...</option>
|
|
<!-- Estados serão carregados via JavaScript -->
|
|
</select>
|
|
</div>
|
|
<div class="col-md-4 mb-3">
|
|
<label for="edit_cidade" class="form-label">Cidade</label>
|
|
<input type="text" class="form-control" id="edit_cidade" name="cidade">
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-4 mb-3">
|
|
<label for="edit_bairro" class="form-label">Bairro</label>
|
|
<input type="text" class="form-control" id="edit_bairro" name="bairro">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_rua" class="form-label">Rua</label>
|
|
<input type="text" class="form-control" id="edit_rua" name="rua">
|
|
</div>
|
|
<div class="col-md-2 mb-3">
|
|
<label for="edit_numero" class="form-label">Número</label>
|
|
<input type="text" class="form-control" id="edit_numero" name="numero">
|
|
</div>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="edit_complemento" class="form-label">Complemento</label>
|
|
<input type="text" class="form-control" id="edit_complemento" name="complemento">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Profissional -->
|
|
<div class="tab-pane fade" id="edit-profissional">
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_profissao" class="form-label">Profissão</label>
|
|
<input type="text" class="form-control" id="edit_profissao" name="profissao">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_regime_trabalho" class="form-label">Regime de Trabalho</label>
|
|
<select class="form-select" id="edit_regime_trabalho" name="regime_trabalho">
|
|
<option value="">Selecione...</option>
|
|
<option value="CLT">CLT</option>
|
|
<option value="Estatutário">Estatutário</option>
|
|
<option value="Terceirizado">Terceirizado</option>
|
|
<option value="Autônomo">Autônomo</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_empresa" class="form-label">Empresa</label>
|
|
<input type="text" class="form-control" id="edit_empresa" name="empresa">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_contratante" class="form-label">Contratante</label>
|
|
<input type="text" class="form-control" id="edit_contratante" name="contratante">
|
|
<small class="text-muted">Para terceirizados</small>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
<!-- Dados Acadêmicos -->
|
|
<div class="row">
|
|
<div class="col-md-8 mb-3">
|
|
<label for="edit_instituicao_ensino" class="form-label">Instituição de Ensino</label>
|
|
<input type="text" class="form-control" id="edit_instituicao_ensino" name="instituicao_ensino">
|
|
</div>
|
|
<div class="col-md-4 mb-3">
|
|
<label for="edit_tipo_instituicao" class="form-label">Tipo</label>
|
|
<select class="form-select" id="edit_tipo_instituicao" name="tipo_instituicao">
|
|
<option value="">Selecione...</option>
|
|
<option value="Federal">Federal</option>
|
|
<option value="Estadual">Estadual</option>
|
|
<option value="Municipal">Municipal</option>
|
|
<option value="Privada">Privada</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Organização -->
|
|
<div class="tab-pane fade" id="edit-organizacao">
|
|
<!-- Dados Sindicais -->
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_sindicato" class="form-label">Sindicato</label>
|
|
<input type="text" class="form-control" id="edit_sindicato" name="sindicato">
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_cargo_sindical" class="form-label">Cargo Sindical</label>
|
|
<input type="text" class="form-control" id="edit_cargo_sindical" name="cargo_sindical">
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_central_sindical" class="form-label">Central Sindical</label>
|
|
<input type="text" class="form-control" id="edit_central_sindical" name="central_sindical">
|
|
</div>
|
|
<div class="col-md-6 mb-3 d-flex align-items-center">
|
|
<div class="form-check">
|
|
<input type="checkbox" class="form-check-input" id="edit_dirigente_sindical" name="dirigente_sindical">
|
|
<label class="form-check-label" for="edit_dirigente_sindical">Dirigente Sindical</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<hr>
|
|
<!-- Estado na Organização -->
|
|
<div class="row">
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_estado_militante" class="form-label">Estado</label>
|
|
<select class="form-select" id="edit_estado_militante" name="estado">
|
|
<option value="ATIVO">Ativo</option>
|
|
<option value="LICENCIADO">Licenciado</option>
|
|
<option value="SUSPENSO">Suspenso</option>
|
|
<option value="DESLIGADO">Desligado</option>
|
|
</select>
|
|
</div>
|
|
<div class="col-md-6 mb-3">
|
|
<label for="edit_celula" class="form-label">Célula</label>
|
|
<select class="form-select" id="edit_celula" name="celula_id">
|
|
<option value="">Selecione...</option>
|
|
{% for celula in celulas %}
|
|
<option value="{{ celula.id }}">{{ celula.nome }}</option>
|
|
{% endfor %}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<!-- Responsabilidades -->
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<label class="form-label">Responsabilidades</label>
|
|
<div class="responsabilidades-container">
|
|
<input type="hidden" name="responsabilidades" id="responsabilidades_values" value="0">
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.SECRETARIO }}" data-original-class="bg-secondary" data-bs-toggle="tooltip" title="Clique para alternar">Secretário</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.RESPONSAVEL_IMPRENSA }}" data-original-class="bg-info" data-bs-toggle="tooltip" title="Clique para alternar">Responsável de Imprensa</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.IMPRENSA }}" data-original-class="bg-warning" data-bs-toggle="tooltip" title="Clique para alternar">Imprensa</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.MPS }}" data-original-class="bg-warning" data-bs-toggle="tooltip" title="Clique para alternar">MPS</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.QUADRO_ORIENTADOR }}" data-original-class="bg-success" data-bs-toggle="tooltip" title="Clique para alternar">Quadro-Orientador</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.RESPONSAVEL_FINANCAS }}" data-original-class="bg-primary" data-bs-toggle="tooltip" title="Clique para alternar">Responsável de Finanças</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.TESOUREIRO }}" data-original-class="bg-dark" data-bs-toggle="tooltip" title="Clique para alternar">Tesoureiro</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.MNS }}" data-original-class="bg-info" data-bs-toggle="tooltip" title="Clique para alternar">MNS</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.JUVENTUDE }}" data-original-class="bg-danger" data-bs-toggle="tooltip" title="Clique para alternar">Juventude</span>
|
|
|
|
<span class="badge badge-clickable" data-value="{{ Militante.ASPIRANTE }}" data-original-class="bg-light text-dark border" data-bs-toggle="tooltip" title="Clique para alternar">Aspirante</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancelar</button>
|
|
<button type="submit" class="btn btn-primary">
|
|
<i class="fas fa-save me-2"></i>Salvar
|
|
</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<style>
|
|
.badge-clickable {
|
|
font-size: 0.9rem;
|
|
padding: 0.5rem 1rem;
|
|
margin: 0.3rem;
|
|
cursor: pointer;
|
|
transition: all 0.2s ease;
|
|
opacity: 0.7;
|
|
user-select: none;
|
|
background-color: #e9ecef !important;
|
|
color: #6c757d !important;
|
|
border: 1px solid #dee2e6;
|
|
}
|
|
|
|
.badge-clickable:hover {
|
|
opacity: 0.9;
|
|
}
|
|
|
|
.badge-clickable.active {
|
|
opacity: 1;
|
|
color: white !important;
|
|
}
|
|
|
|
.responsabilidades-container {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.5rem;
|
|
padding: 1rem;
|
|
border: 1px solid #dee2e6;
|
|
border-radius: 0.375rem;
|
|
background-color: #f8f9fa;
|
|
}
|
|
|
|
/* Cores personalizadas para badges */
|
|
.bg-purple { background-color: #6f42c1 !important; color: white !important; }
|
|
.bg-teal { background-color: #20c997 !important; color: white !important; }
|
|
.bg-orange { background-color: #fd7e14 !important; color: white !important; }
|
|
.bg-indigo { background-color: #6610f2 !important; color: white !important; }
|
|
.bg-pink { background-color: #d63384 !important; color: white !important; }
|
|
|
|
/* Cores do Bootstrap que vamos usar */
|
|
.active.bg-primary { background-color: #0d6efd !important; color: white !important; }
|
|
.active.bg-success { background-color: #198754 !important; color: white !important; }
|
|
.active.bg-info { background-color: #0dcaf0 !important; color: white !important; }
|
|
.active.bg-danger { background-color: #dc3545 !important; color: white !important; }
|
|
.active.bg-dark { background-color: #212529 !important; color: white !important; }
|
|
</style> |