|
@@ -436,7 +436,30 @@
|
|
|
Livewire.on('load-select-modal', () => {
|
|
Livewire.on('load-select-modal', () => {
|
|
|
|
|
|
|
|
initializeSelect2Controls();
|
|
initializeSelect2Controls();
|
|
|
|
|
+ @this.cleanPolizzaData();
|
|
|
|
|
+ const initSelect2Field = (selector, url) => {
|
|
|
|
|
+ const $field = $(selector);
|
|
|
|
|
+ if ($field.data('select2')) {
|
|
|
|
|
+ $field.select2('destroy');
|
|
|
|
|
+ }
|
|
|
|
|
+ $field.empty().select2({
|
|
|
|
|
+ dropdownParent: document.body,
|
|
|
|
|
+ theme: 'bootstrap4',
|
|
|
|
|
+ ajax: {
|
|
|
|
|
+ url: url,
|
|
|
|
|
+ dataType: 'json'
|
|
|
|
|
+ },
|
|
|
|
|
+ width: '100%'
|
|
|
|
|
+ });
|
|
|
|
|
+ };
|
|
|
|
|
|
|
|
|
|
+ initSelect2Field('.anagrafica_id', '/anagrafica');
|
|
|
|
|
+ initSelect2Field('.compagnia_id', '/compagnie');
|
|
|
|
|
+ initSelect2Field('.agenzia', '/polizze/agenzie');
|
|
|
|
|
+
|
|
|
|
|
+ $('.polizza_num').val('');
|
|
|
|
|
+ $('.valida_dal').val('');
|
|
|
|
|
+ $('.valida_al').val('');
|
|
|
const modals = [
|
|
const modals = [
|
|
|
"data_proprietari", "data_coproprietari", "data_conducenti",
|
|
"data_proprietari", "data_coproprietari", "data_conducenti",
|
|
|
"data_passeggero_0", "data_passeggero_1", "data_passeggero_2", "data_passeggero_3",
|
|
"data_passeggero_0", "data_passeggero_1", "data_passeggero_2", "data_passeggero_3",
|
|
@@ -591,73 +614,37 @@
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
Livewire.on('updatePolizzaSelects', data => {
|
|
Livewire.on('updatePolizzaSelects', data => {
|
|
|
- // Initialize anagrafica_id select2
|
|
|
|
|
- const $anagrafica = $('.anagrafica_id');
|
|
|
|
|
- if ($anagrafica.data('select2')) {
|
|
|
|
|
- $anagrafica.select2('destroy');
|
|
|
|
|
- }
|
|
|
|
|
- $anagrafica.select2({
|
|
|
|
|
- dropdownParent: document.body,
|
|
|
|
|
- theme: 'bootstrap4',
|
|
|
|
|
- ajax: {
|
|
|
|
|
- url: '/anagrafica',
|
|
|
|
|
- dataType: 'json'
|
|
|
|
|
- },
|
|
|
|
|
- width: '100%'
|
|
|
|
|
- }).on('change', function(e) {
|
|
|
|
|
- @this.set('anagrafica_id', $(this).val());
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ console.log('Updating polizza selects with data:', data);
|
|
|
|
|
|
|
|
- // Set anagrafica value if exists
|
|
|
|
|
if (data.anagrafica) {
|
|
if (data.anagrafica) {
|
|
|
- const option = new Option(data.anagrafica.text, data.anagrafica.id, true, true);
|
|
|
|
|
- $anagrafica.append(option).trigger('change');
|
|
|
|
|
|
|
+ const $anagrafica = $('.anagrafica_id');
|
|
|
|
|
+ const anagOption = new Option(data.anagrafica.text, data.anagrafica.id, true, true);
|
|
|
|
|
+ $anagrafica.append(anagOption).trigger('change');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // Initialize compagnia_id select2
|
|
|
|
|
- const $compagnia = $('.compagnia_id');
|
|
|
|
|
- if ($compagnia.data('select2')) {
|
|
|
|
|
- $compagnia.select2('destroy');
|
|
|
|
|
- }
|
|
|
|
|
- $compagnia.select2({
|
|
|
|
|
- dropdownParent: document.body,
|
|
|
|
|
- theme: 'bootstrap4',
|
|
|
|
|
- ajax: {
|
|
|
|
|
- url: '/compagnie',
|
|
|
|
|
- dataType: 'json'
|
|
|
|
|
- },
|
|
|
|
|
- width: '100%'
|
|
|
|
|
- }).on('change', function(e) {
|
|
|
|
|
- @this.set('compagnia_id', $(this).val());
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- // Set compagnia value if exists
|
|
|
|
|
if (data.compagnia) {
|
|
if (data.compagnia) {
|
|
|
- const option = new Option(data.compagnia.text, data.compagnia.id, true, true);
|
|
|
|
|
- $compagnia.append(option).trigger('change');
|
|
|
|
|
|
|
+ const $compagnia = $('.compagnia_id');
|
|
|
|
|
+ const compOption = new Option(data.compagnia.text, data.compagnia.id, true, true);
|
|
|
|
|
+ $compagnia.append(compOption).trigger('change');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // Initialize agenzia select2
|
|
|
|
|
- const $agenzia = $('.agenzia');
|
|
|
|
|
- if ($agenzia.data('select2')) {
|
|
|
|
|
- $agenzia.select2('destroy');
|
|
|
|
|
|
|
+ if (data.agenzia) {
|
|
|
|
|
+ const $agenzia = $('.agenzia');
|
|
|
|
|
+ const agOption = new Option(data.agenzia, data.agenzia, true, true);
|
|
|
|
|
+ $agenzia.append(agOption).trigger('change');
|
|
|
}
|
|
}
|
|
|
- $agenzia.select2({
|
|
|
|
|
- dropdownParent: document.body,
|
|
|
|
|
- theme: 'bootstrap4',
|
|
|
|
|
- ajax: {
|
|
|
|
|
- url: '/polizze/agenzie',
|
|
|
|
|
- dataType: 'json'
|
|
|
|
|
- },
|
|
|
|
|
- width: '100%'
|
|
|
|
|
- }).on('change', function(e) {
|
|
|
|
|
- @this.set('agenzia', $(this).val());
|
|
|
|
|
- });
|
|
|
|
|
|
|
|
|
|
- // Set agenzia value if exists
|
|
|
|
|
- if (data.agenzia) {
|
|
|
|
|
- const option = new Option(data.agenzia, data.agenzia, true, true);
|
|
|
|
|
- $agenzia.append(option).trigger('change');
|
|
|
|
|
|
|
+ if (data.polizza_num) {
|
|
|
|
|
+ $('.polizza_num').val(data.polizza_num);
|
|
|
|
|
+ @this.set('polizza_num', data.polizza_num);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (data.valida_dal) {
|
|
|
|
|
+ $('.valida_dal').val(data.valida_dal);
|
|
|
|
|
+ @this.set('valida_dal', data.valida_dal);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (data.valida_al) {
|
|
|
|
|
+ $('.valida_al').val(data.valida_al);
|
|
|
|
|
+ @this.set('valida_al', data.valida_al);
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
|
|
@@ -809,5 +796,31 @@
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ $('.anagrafica_id').on('change', function(e) {
|
|
|
|
|
+ @this.set('anagrafica_id', $(this).val());
|
|
|
|
|
+ updateAnagraficaButtons($(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ $('.compagnia_id').on('change', function(e) {
|
|
|
|
|
+ @this.set('compagnia_id', $(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ $('.agenzia').on('change', function(e) {
|
|
|
|
|
+ @this.set('agenzia', $(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ // Regular form field handlers
|
|
|
|
|
+ $('.polizza_num').on('input', function(e) {
|
|
|
|
|
+ @this.set('polizza_num', $(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ $('.valida_dal').on('change', function(e) {
|
|
|
|
|
+ @this.set('valida_dal', $(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
|
|
+ $('.valida_al').on('change', function(e) {
|
|
|
|
|
+ @this.set('valida_al', $(this).val());
|
|
|
|
|
+ });
|
|
|
|
|
+
|
|
|
</script>
|
|
</script>
|
|
|
@endpush
|
|
@endpush
|