Non puoi selezionare più di 25 argomenti
Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
196 righe
12 KiB
196 righe
12 KiB
<?php |
|
|
|
use App\WGS\Utils\Dto\ProvinceDistrictCellDto\DistrictCellDto; |
|
use App\WGS\Utils\Dto\ProvinceDistrictCellDto\ProvinceCellDto; |
|
use App\WGS\Utils\Enum\InputFieldType; |
|
|
|
$applicant = isset($districtProvinceApplicant) |
|
? (is_array($districtProvinceApplicant) && !empty($districtProvinceApplicant) |
|
? (isset($districtProvinceApplicant[0]) ? $districtProvinceApplicant[0] : null) |
|
: (is_object($districtProvinceApplicant) ? $districtProvinceApplicant : null)) |
|
: null; |
|
$province = $applicant ? ($applicant->province ?? null) : null; |
|
$district = $applicant ? ($applicant->district ?? null) : null; |
|
?> |
|
<div class="applicant_item_block" data-id="<?= $applicant_item_block ?>"> |
|
<div class="row"> |
|
<div class="col-md-12"> |
|
<h3><?= $applicant_item_block == 0 ? __("Concessionario principale") : __("Concessionario aggiuntivo") ?></h3> |
|
</div> |
|
<?php |
|
if (!isset($is_view)) : |
|
?> |
|
<div class="col-md-11" id="select2-applicant-div-<?= $applicant_item_block ?>"> |
|
<?= $this->Form->control('select2applicants-' . $applicant_item_block, ['id' => 'select2applicants-' . $applicant_item_block, 'label' => __('Ricerca concessionario'), 'type' => 'select', 'options' => (isset($applicant) ? [$applicant->id => $applicant->tax_code . ' - ' . $applicant->name . ' ' . $applicant->surname] : []), 'empty' => true, 'style' => 'width:50%;']) ?> |
|
</div> |
|
<div class="col-md-1"> |
|
<a onclick="resetFields(<?= $applicant_item_block ?>)" style="margin-top:2rem" id="remove-selection-<?= $applicant_item_block ?>" class="btn btn-danger">RESET</a> |
|
</div> |
|
<?php |
|
endif; |
|
?> |
|
<?= $this->Form->hidden('applicants.' . $applicant_item_block . '.id', ['id' => 'applicants-' . $applicant_item_block . '-id', 'readonly' => true, 'disabled' => (!isset($applicant)), 'type' => 'number']) ?> |
|
<?= $this->Form->hidden('applicants.' . $applicant_item_block . '._joinData.is_primary_applicant', ['value' => ($applicant_item_block == 0 ? 1 : 0)]) ?> |
|
<?php |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): ?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->hidden('applicants.' . $applicant_item_block . '.id', ['id' => 'applicants-' . $applicant_item_block . '-id', 'readonly' => true, 'disabled' => (!isset($applicant)), 'type' => 'number']) ?> |
|
<?= $this->Form->hidden('applicants.' . $applicant_item_block . '._joinData.is_primary_applicant', ['value' => ($applicant_item_block == 0 ? 1 : 0)]) ?> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.name', ['label' => __('Nome'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden'), 'required' => true]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.surname', ['label' => __('Cognome'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden'), 'required' => true]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.tax_code', ['label' => __('Codice fiscale'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => 'text', 'required' => true]) ?> |
|
</div> |
|
<?php |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?><div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.company_name', ['label' => __('Ragione sociale'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden')]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.vat_number', ['label' => __('Partita IVA'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => 'text']) ?> |
|
</div> |
|
<?php |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.address', ['label' => __('Indirizzo'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden'), 'required' => true]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?> |
|
<?= $this->Cell("DistrictProvince", [ |
|
new ProvinceCellDto( |
|
fieldId: 'applicants-' . $applicant_item_block . '-province', |
|
fieldName: 'applicants.' . $applicant_item_block . '.province', |
|
formContext: $formContext ?? null, |
|
fieldRequired: true, |
|
disabled: (isset($is_view) || isset($applicant->id)), |
|
fieldType: ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? InputFieldType::SELECT : InputFieldType::HIDDEN), |
|
fieldValue: $province |
|
), |
|
new DistrictCellDto( |
|
fieldId: 'applicants-' . $applicant_item_block . '-district', |
|
fieldName: 'applicants.' . $applicant_item_block . '.district', |
|
provinceFieldId: 'applicants-' . $applicant_item_block . '-province', |
|
fieldRequired: true, |
|
disabled: (isset($is_view) || isset($applicant->id)), |
|
fieldType: ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? InputFieldType::SELECT : InputFieldType::HIDDEN), |
|
fieldValue: $district, |
|
entity: $applicant |
|
) |
|
] |
|
) ?> |
|
<?php |
|
endif; |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.pec_address', ['label' => __('Indirizzo PEC'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden')]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
if (!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5): |
|
?> |
|
<div class="col-md-6"> |
|
<?= $this->Form->control('applicants.' . $applicant_item_block . '.email_address', ['label' => __('Indirizzo email'), 'disabled' => (isset($is_view) || isset($applicant->id)), 'type' => ((!isset($water_drawing_paperwork_status_id) || $water_drawing_paperwork_status_id > 5) ? 'text' : 'hidden')]) ?> |
|
</div> |
|
<?php |
|
endif; |
|
?> |
|
<div class="col-sm-12"> |
|
<?php if ($applicant_item_block > 0 && !(isset($is_view))) : ?> |
|
<a style="float: right;" onclick="confirm('<?= __('Rimuovere questo elemento ?') ?>') && this.parentNode.parentNode.parentNode.remove() && resetFields(<?= $applicant_item_block ?>)" class="btn btn-danger"><i class="fa fa-times" aria-hidden="true"></i></a> |
|
<?php endif; ?> |
|
<a class="btn btn-info" onclick="editApplicant(<?= $applicant_item_block ?>)" id="edit-applicant-<?= $applicant_item_block ?>" style="<?= isset($applicant->id) ? 'float: right;margin-right: 1rem;' : 'float: right;margin-right: 1rem;display:none' ?>" target="_blank">Modifica</a> |
|
</div> |
|
</div> |
|
</div> |
|
<script> |
|
window.addEventListener('DOMContentLoaded', function() { |
|
$("#select2applicants-<?= $applicant_item_block ?>").select2({ |
|
minimumInputLength: 3, |
|
width: '100%', |
|
language: { |
|
inputTooShort: function(input_params) { |
|
return (input_params.input.length === 0 ? 'Digitare almeno ' : 'Digitare altri ') + (input_params.minimum - input_params.input.length) + ' caratteri'; |
|
}, |
|
noResults: function() { |
|
return 'Nessun risultato!'; |
|
}, |
|
searching: function() { |
|
return 'Caricamento...'; |
|
}, |
|
}, |
|
ajax: { |
|
url: '/applicants/search_applicants', |
|
dataType: 'json', |
|
delay: 500, |
|
data: function(params) { |
|
return params; |
|
}, |
|
processResults: function(data) { |
|
var result = Object.keys(data['applicants']).map((key) => data['applicants'][key]); |
|
return { |
|
results: result, |
|
}; |
|
}, |
|
}, |
|
}); |
|
if ($('#applicants-<?= $applicant_item_block ?>-tax-code').val() != '') { |
|
const xhr = new XMLHttpRequest(); |
|
|
|
// Imposta l'handler per la risposta della chiamata AJAX |
|
xhr.onreadystatechange = function() { |
|
if (xhr.readyState === XMLHttpRequest.DONE) { |
|
if (xhr.status === 200) { |
|
// La risposta è stata ricevuta correttamente |
|
const data = JSON.parse(xhr.responseText); // Parsa la risposta come JSON |
|
var result = Object.keys(data['applicants']).map((key) => data['applicants'][key]); |
|
var newOption = new Option(result[0].text, result[0].id, false, false); |
|
$("#select2applicants-<?= $applicant_item_block ?>").append(newOption).trigger('change'); |
|
$("#select2applicants-<?= $applicant_item_block ?>").val(result[0].id); |
|
$("#select2applicants-<?= $applicant_item_block ?>").trigger('change'); |
|
} else { |
|
console.error("Errore nella chiamata AJAX:", xhr.status); |
|
} |
|
} |
|
}; |
|
|
|
// Definisci l'URL della chiamata AJAX con il parametro (se necessario) |
|
const parametro1 = "valore1"; |
|
const url = '/applicants/search_applicants?term=' + $('#applicants-<?= $applicant_item_block ?>-tax-code').val() + '&_type=query'; |
|
|
|
// Effettua la chiamata AJAX GET |
|
xhr.open("GET", url, true); |
|
xhr.setRequestHeader("Accept", "application/json"); // Imposta l'header per ricevere la risposta come JSON |
|
xhr.send(); |
|
} |
|
$('#select2applicants-<?= $applicant_item_block ?>').on('select2:select', function(e) { |
|
if (($('#select2applicants-<?= $applicant_item_block ?>').val())) { |
|
searchApplicant(<?= $applicant_item_block ?>); |
|
} |
|
}); |
|
|
|
}); |
|
|
|
function editApplicant(id) { |
|
if (document.getElementById("applicants-" + id + "-id").value != '') { |
|
window.open('/applicants/edit/' + document.getElementById("applicants-" + id + "-id").value + <?= isset($water_drawing_paperwork_id) ? "'/ $water_drawing_paperwork_id'" : "''" ?>, '_blank'); |
|
resetFields(id); |
|
} |
|
} |
|
</script>
|
|
|