fetchArray('SELECT * FROM my_impianti_interventi WHERE idintervento='.prepare($id_record)); $matricole_old = array_column($matricole_old, 'idimpianto'); // Individuazione delle matricole mancanti foreach ($matricole_old as $matricola) { if (!in_array($matricola, $matricole)) { $dbo->query('DELETE FROM my_impianti_interventi WHERE idintervento='.prepare($id_record).' AND idimpianto = '.prepare($matricola)); $components = $dbo->fetchArray('SELECT * FROM my_impianto_componenti WHERE idimpianto = '.prepare($matricola)); if (!empty($components)) { foreach ($components as $component) { $dbo->query('DELETE FROM my_componenti_interventi WHERE id_componente = '.prepare($component['id']).' AND id_intervento = '.prepare($id_record)); } } } } foreach ($matricole as $matricola) { if (!in_array($matricola, $matricole_old)) { $dbo->query('INSERT INTO my_impianti_interventi(idimpianto, idintervento) VALUES('.prepare($matricola).', '.prepare($id_record).')'); } } App::flash()->info(tr('Informazioni impianti salvate!')); } elseif (filter('op') == 'link_componenti') { $components = (array) post('componenti'); $list = (!empty(post('list'))) ? explode(',', post('list')) : []; foreach ($list as $delete) { if (!in_array($delete, $components)) { $dbo->query('DELETE FROM my_componenti_interventi WHERE id_componente = '.prepare($delete).' AND id_intervento = '.prepare($id_record)); } } foreach ($components as $component) { if (!in_array($component, $list)) { $dbo->query('INSERT INTO my_componenti_interventi(id_componente, id_intervento) VALUES('.prepare($component).', '.prepare($id_record).')'); } } App::flash()->info(tr('Informazioni componenti salvate!')); } //Blocco della modifica impianti se l'intervento è completato $rss = $dbo->fetchArray('SELECT in_statiintervento.completato FROM in_statiintervento INNER JOIN in_interventi ON in_statiintervento.idstatointervento=in_interventi.idstatointervento WHERE in_interventi.id='.prepare($id_record)); $flg_completato = $rss[0]['completato']; if ($flg_completato) { $readonly = 'readonly'; $disabled = 'disabled'; } else { $readonly = ''; $disabled = ''; } // IMPIANTI echo '

'.tr("Impianti dell'intervento").'

'.tr("Impianti su cui è stato effettuato l'intervento").'

'; $query = 'SELECT * FROM my_impianti_interventi INNER JOIN my_impianti ON my_impianti_interventi.idimpianto=my_impianti.id WHERE idintervento='.prepare($id_record); $rs = $dbo->fetchArray($query); echo '
'; foreach ($rs as $r) { echo '
'; // MATRICOLA echo ' '; // NOME echo ' '; // DATA echo ' '; // DESCRIZIONE echo ' '; echo '
'.tr('Matricola').': '.$r['matricola'].'
'.tr('Nome').': '.Modules::link('MyImpianti', $r['id'], $r['nome']).'
'.tr('Data').': '.Translator::dateToLocale($r['data']).'
'.tr('Descrizione').': '.$r['descrizione'].'
'.tr("Componenti soggetti all'intervento").'


'; } echo '
'; /* Aggiunta impianti all'intervento */ // Elenco impianti collegati all'intervento $impianti = $dbo->fetchArray('SELECT idimpianto FROM my_impianti_interventi WHERE idintervento='.prepare($id_record)); $impianti = !empty($impianti) ? array_column($impianti, 'idimpianto') : []; // Elenco sedi $sedi = $dbo->fetchArray('SELECT id, nomesede, citta FROM an_sedi WHERE idanagrafica='.prepare($record['idanagrafica'])." UNION SELECT 0, 'Sede legale', '' ORDER BY id"); echo '

'.tr('Impianti disponibili').'

{[ "type": "select", "name": "matricole[]", "multiple": 1, "value": "'.implode(',', $impianti).'", "values": "query=SELECT my_impianti.id, CONCAT(matricola, \' - \', nome) AS descrizione, CONCAT(nomesede, IF(citta IS NULL OR citta = \'\', \'\', CONCAT(\' (\', citta, \')\'))) AS optgroup FROM my_impianti JOIN (SELECT id, nomesede, citta FROM an_sedi UNION SELECT 0 AS id, \'Sede legale\' AS nomesede, \'\' AS citta) AS t ON t.id = my_impianti.idsede WHERE idanagrafica='.prepare($record['idanagrafica']).' ORDER BY idsede ASC, matricola ASC", "extra": "'.$readonly.'" ]}


'; echo '
';