Commit 77bcd053 authored by carlvercosaa's avatar carlvercosaa
Browse files

Adicionando script do form dinamico da ODS

parent cfbf6feb
...@@ -72,7 +72,6 @@ ...@@ -72,7 +72,6 @@
</div> </div>
@endif @endif
@if($edital->natureza_id ==3 )
<div class="form-group col-md-4"> <div class="form-group col-md-4">
<label for="areaTematica" class="col-form-label" style="font-weight: bold">{{ __('Área Temática') }} <span style="color: red; font-weight:bold">*</span></label> <label for="areaTematica" class="col-form-label" style="font-weight: bold">{{ __('Área Temática') }} <span style="color: red; font-weight:bold">*</span></label>
<select class="form-control @error('area_tematica_id') is-invalid @enderror" id="areaTematica" name="area_tematica_id"> <select class="form-control @error('area_tematica_id') is-invalid @enderror" id="areaTematica" name="area_tematica_id">
...@@ -109,7 +108,6 @@ ...@@ -109,7 +108,6 @@
@enderror @enderror
</div> </div>
</div> </div>
@endif
</div> </div>
</div> </div>
</div> </div>
......
...@@ -802,5 +802,68 @@ ...@@ -802,5 +802,68 @@
displayCurso.style.display = "none"; displayCurso.style.display = "none";
} }
} }
// Form dinâmico da ODS
$(document).ready(function(){
var selectedOds = [];
$('.form-check-input').change(function(){
selectedOds = [];
$('#metas-container').empty();
$('.form-check-input:checked').each(function(){
selectedOds.push($(this).val());
});
if(selectedOds.length > 3){
alert('Você só pode selecionar até 3 ODS.');
$(this).prop('checked', false);
selectedOds.pop()
}
selectedOds.forEach(function(odsId){
$.ajax({
url: 'metas/' + odsId,
method: 'GET',
success: function(response){
var metaOptions = '<hr><div class="col-12"><div class="row subtitulo"><div class="col-sm-12"><p>Metas para ' + response.ods + '</p></div></div></div></div>' + '<div class="form-group">';
response.metas.forEach(function(meta){
metaOptions += '<div class=" card form-check meta-item" style="margin-bottom : 1 rem "><div class="card-body">' +
'<input type="checkbox" name="metas[' + odsId + '][]" value="' + meta.id + '" class="form-check-input meta-checkbox" id="meta' + meta.id + '">' +
'<label class="form-check-label" for="meta' + meta.id + '">' + meta.nome + '</label>' +
'<p class="form-text text-muted">' + meta.descricao + '</p>' +
'</div></div>';
});
metaOptions += '</div>'
$('#metas-container').append(metaOptions);
},
error: function(jqXHR, textStatus, errorThrown){
console.error('Erro ao carregar as metas:', textStatus, errorThrown);
alert('Erro ao carregar as metas.');
}
});
});
});
$(document).on('change', '.form-check-input', function(){
var metaCheckboxes = $('input[name^="metas"]');
var selectedMetas = {};
metaCheckboxes.each(function(){
var odsId = $(this).attr('name').match(/metas\[(\d+)\]/)[1];
if(!selectedMetas[odsId]) selectedMetas[odsId] = [];
if($(this).prop('checked')) selectedMetas[odsId].push($(this).val());
});
for(var odsId in selectedMetas){
if(selectedMetas[odsId].length > 3){
alert('Você só pode selecionar até 3 metas por ODS.');
$(this).prop('checked', false);
return;
}
}
});
});
</script> </script>
@endsection @endsection
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment