|
225 | 225 | <input type="hidden" name="id_scadenza['.$i.']" value="'.$scadenza['id'].'"> |
226 | 226 | <td> |
227 | 227 | '.($dir == 'entrata' ? |
228 | | - '{[ "type": "select", "name": "id_banca_azienda['.$i.']", "ajax-source": "banche", "select-options": '.json_encode(['id_anagrafica' => $anagrafica_azienda->id]).', "value": "'.$scadenza['id_banca_azienda'].'", "icon-after": "add|'.$id_modulo_banche.'|id_anagrafica='.$anagrafica_azienda->id.'" ]}' |
| 228 | + '{[ "type": "select", "name": "id_banca_azienda['.$i.']", "ajax-source": "banche", "select-options": '.json_encode(['id_anagrafica' => $anagrafica_azienda->id]).', "value": "'.$scadenza['id_banca_azienda'].'", "icon-after": "add|'.$id_modulo_banche.'|id_anagrafica='.$anagrafica_azienda->id.'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')" ]}' |
229 | 229 | : |
230 | | - '{[ "type": "select", "name": "id_banca_controparte['.$i.']", "ajax-source": "banche", "select-options":'.json_encode(['id_anagrafica' => $scadenza['idanagrafica']]).', "value": "'.$scadenza['id_banca_controparte'].'", "icon-after": "add|'.$id_modulo_banche.'|idanagrafica='.$record['idanagrafica'].'"]} |
| 230 | + '{[ "type": "select", "name": "id_banca_controparte['.$i.']", "ajax-source": "banche", "select-options":'.json_encode(['id_anagrafica' => $scadenza['idanagrafica']]).', "value": "'.$scadenza['id_banca_controparte'].'", "icon-after": "add|'.$id_modulo_banche.'|idanagrafica='.$record['idanagrafica'].'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')"]} |
231 | 231 | ').' |
232 | 232 | </td> |
233 | 233 |
|
234 | 234 | <td> |
235 | 235 | '.($dir == 'entrata' ? |
236 | | - '{[ "type": "select", "name": "id_banca_controparte['.$i.']", "ajax-source": "banche", "select-options":'.json_encode(['id_anagrafica' => $scadenza['idanagrafica']]).', "value": "'.$scadenza['id_banca_controparte'].'", "icon-after": "add|'.$id_modulo_banche.'|idanagrafica='.$record['idanagrafica'].'"]}' |
| 236 | + '{[ "type": "select", "name": "id_banca_controparte['.$i.']", "ajax-source": "banche", "select-options":'.json_encode(['id_anagrafica' => $scadenza['idanagrafica']]).', "value": "'.$scadenza['id_banca_controparte'].'", "icon-after": "add|'.$id_modulo_banche.'|idanagrafica='.$record['idanagrafica'].'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')"]}' |
237 | 237 | : |
238 | | - '{[ "type": "select", "name": "id_banca_azienda['.$i.']", "ajax-source": "banche", "select-options": '.json_encode(['id_anagrafica' => $anagrafica_azienda->id]).', "value": "'.$scadenza['id_banca_azienda'].'", "icon-after": "add|'.$id_modulo_banche.'|id_anagrafica='.$anagrafica_azienda->id.'" ]}' |
| 238 | + '{[ "type": "select", "name": "id_banca_azienda['.$i.']", "ajax-source": "banche", "select-options": '.json_encode(['id_anagrafica' => $anagrafica_azienda->id]).', "value": "'.$scadenza['id_banca_azienda'].'", "icon-after": "add|'.$id_modulo_banche.'|id_anagrafica='.$anagrafica_azienda->id.'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')" ]}' |
239 | 239 | ).' |
240 | 240 | </td> |
241 | 241 |
|
242 | 242 | <td> |
243 | | - {[ "type": "select", "name": "id_pagamento['.$i.']", "values": "query=SELECT `co_pagamenti`.`id`, `fe_modalita_pagamento_lang`.`title` as descrizione FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record` = `fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang` = '.Models\Locale::getDefault()->id.') INNER JOIN `co_pagamenti` ON `fe_modalita_pagamento`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` GROUP BY title", "value": "'.$pagamento.'" ]} |
| 243 | + {[ "type": "select", "name": "id_pagamento['.$i.']", "values": "query=SELECT `co_pagamenti`.`id`, `fe_modalita_pagamento_lang`.`title` as descrizione FROM `fe_modalita_pagamento` LEFT JOIN `fe_modalita_pagamento_lang` ON (`fe_modalita_pagamento_lang`.`id_record` = `fe_modalita_pagamento`.`codice` AND `fe_modalita_pagamento_lang`.`id_lang` = '.Models\Locale::getDefault()->id.') INNER JOIN `co_pagamenti` ON `fe_modalita_pagamento`.`codice` = `co_pagamenti`.`codice_modalita_pagamento_fe` GROUP BY title", "value": "'.$pagamento.'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')" ]} |
244 | 244 | </td> |
245 | 245 |
|
246 | 246 | <td> |
247 | 247 | {[ "type": "date", "name": "scadenza['.$i.']", "value": "'.$scadenza['scadenza'].'", "readonly": 1 ]} |
248 | 248 | </td> |
249 | 249 |
|
250 | 250 | <td> |
251 | | - {[ "type": "date", "name": "data_concordata['.$i.']", "value": "'.$scadenza['data_concordata'].'" ]} |
| 251 | + {[ "type": "date", "name": "data_concordata['.$i.']", "value": "'.$scadenza['data_concordata'].'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')" ]} |
252 | 252 | </td> |
253 | 253 |
|
254 | 254 | <td class="text-right"> |
255 | | - {[ "type": "number", "name": "da_pagare['.$i.']", "decimals": 2, "value": "'.numberFormat($scadenza['da_pagare'], 2).'", "onchange": "controlloTotale()" ]} |
| 255 | + {[ "type": "number", "name": "da_pagare['.$i.']", "decimals": 2, "value": "'.numberFormat($scadenza['da_pagare'], 2).'", "onchange": "controlloTotale(); aggiornaScadenzaInline('.$scadenza['id'].')" ]} |
256 | 256 | </td> |
257 | 257 |
|
258 | 258 | <td class="text-right"> |
259 | | - {[ "type": "number", "name": "pagato['.$i.']", "decimals": 2, "value": "'.numberFormat($scadenza['pagato']).'" ]} |
| 259 | + {[ "type": "number", "name": "pagato['.$i.']", "decimals": 2, "value": "'.numberFormat($scadenza['pagato']).'", "onchange": "aggiornaScadenzaInline('.$scadenza['id'].')" ]} |
260 | 260 | </td> |
261 | 261 |
|
262 | 262 | <td> |
@@ -441,5 +441,58 @@ function controlloTotale() { |
441 | 441 | $("#diff").html(diff.toLocale()); |
442 | 442 | $("#totale_utente").html(totale_utente.toLocale()); |
443 | 443 | } |
| 444 | +
|
| 445 | + function aggiornaScadenzaInline(id_scadenza) { |
| 446 | + content_was_modified = false; |
| 447 | +
|
| 448 | + // Trova la riga della scadenza e l indice |
| 449 | + var $row = $("input[name*=\"id_scadenza\"][value=\"" + id_scadenza + "\"]").closest("tr"); |
| 450 | + var index = null; |
| 451 | +
|
| 452 | + // Trova l indice corretto dal nome del campo |
| 453 | + $row.find("input[name*=\"id_scadenza\"]").each(function() { |
| 454 | + var name = $(this).attr("name"); |
| 455 | + var match = name.match(/\[(\d+)\]/); |
| 456 | + if (match) { |
| 457 | + index = match[1]; |
| 458 | + } |
| 459 | + }); |
| 460 | +
|
| 461 | + if (index === null) { |
| 462 | + console.error("Impossibile trovare l indice della scadenza"); |
| 463 | + return; |
| 464 | + } |
| 465 | +
|
| 466 | + // Recupera i valori dai campi |
| 467 | + var id_banca_azienda = input("id_banca_azienda[" + index + "]").get(); |
| 468 | + var id_banca_controparte = input("id_banca_controparte[" + index + "]").get(); |
| 469 | + var id_pagamento = input("id_pagamento[" + index + "]").get(); |
| 470 | + var data_concordata = input("data_concordata[" + index + "]").get(); |
| 471 | + var da_pagare = input("da_pagare[" + index + "]").get(); |
| 472 | + var pagato = input("pagato[" + index + "]").get(); |
| 473 | +
|
| 474 | + $.ajax({ |
| 475 | + url: globals.rootdir + "/actions.php", |
| 476 | + type: "POST", |
| 477 | + data: { |
| 478 | + id_module: globals.id_module, |
| 479 | + id_record: globals.id_record, |
| 480 | + op: "update_inline_scadenza", |
| 481 | + id_scadenza: id_scadenza, |
| 482 | + id_banca_azienda: id_banca_azienda, |
| 483 | + id_banca_controparte: id_banca_controparte, |
| 484 | + id_pagamento: id_pagamento, |
| 485 | + data_concordata: data_concordata, |
| 486 | + da_pagare: da_pagare, |
| 487 | + pagato: pagato |
| 488 | + }, |
| 489 | + success: function (response) { |
| 490 | + renderMessages(); |
| 491 | + }, |
| 492 | + error: function() { |
| 493 | + console.error("Errore durante il salvataggio della scadenza"); |
| 494 | + } |
| 495 | + }); |
| 496 | + } |
444 | 497 | </script>'; |
445 | 498 | } |
0 commit comments