. */ use Carbon\Carbon; use Models\Module; include_once __DIR__.'/../../core.php'; // Individuazione dati selezionabili // Stati interventi $stati_intervento = $dbo->fetchArray('SELECT `in_statiintervento`.`id`, `name` as descrizione, `colore` FROM `in_statiintervento` LEFT JOIN `in_statiintervento_lang` ON (`in_statiintervento_lang`.`id_record` = `in_statiintervento`.`id` AND `in_statiintervento_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).') WHERE `deleted_at` IS NULL ORDER BY `name` ASC'); // Tipi intervento $tipi_intervento = $dbo->fetchArray('SELECT `in_tipiintervento`.`id`, `in_tipiintervento_lang`.`name` AS descrizione FROM `in_tipiintervento` LEFT JOIN `in_tipiintervento_lang` ON (`in_tipiintervento_lang`.`id_record` = `in_tipiintervento`.`id` AND `in_tipiintervento_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).') WHERE `deleted_at` IS NULL ORDER BY `name` ASC'); // Tecnici disponibili $tecnici_disponibili = $dbo->fetchArray('SELECT `an_anagrafiche`.`idanagrafica` AS id, `ragione_sociale`, `colore` FROM `an_anagrafiche` INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_anagrafiche`.`idanagrafica`=`an_tipianagrafiche_anagrafiche`.`idanagrafica` INNER JOIN `an_tipianagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idtipoanagrafica`=`an_tipianagrafiche`.`id` LEFT JOIN `an_tipianagrafiche_lang` ON (`an_tipianagrafiche`.`id`=`an_tipianagrafiche_lang`.`id_record` AND `an_tipianagrafiche_lang`.`id_lang`='.prepare(\Models\Locale::getDefault()->id).") LEFT JOIN `in_interventi_tecnici` ON `in_interventi_tecnici`.`idtecnico` = `an_anagrafiche`.`idanagrafica` INNER JOIN `in_interventi` ON `in_interventi_tecnici`.`idintervento`=`in_interventi`.`id` WHERE `an_anagrafiche`.`deleted_at` IS NULL AND `an_tipianagrafiche_lang`.`name`='Tecnico' ".Modules::getAdditionalsQuery('Interventi', null, false).' GROUP BY `an_anagrafiche`.`idanagrafica` ORDER BY `ragione_sociale` ASC'); // Zone $zone = $dbo->fetchArray('(SELECT 0 AS ordine, \'0\' AS id, \'Nessuna zona\' AS descrizione) UNION (SELECT 1 AS ordine, id, descrizione FROM an_zone) ORDER BY ordine, descrizione ASC'); // Prima selezione globale per tutti i filtri if (!isset($_SESSION['dashboard']['idtecnici'])) { $_SESSION['dashboard']['idtecnici'] = ["'-1'"]; foreach ($tecnici_disponibili as $tecnico) { if (($user['gruppo'] == 'Tecnici' && $user['idanagrafica'] == $tecnico['id']) || $user['gruppo'] != 'Tecnici') { $_SESSION['dashboard']['idtecnici'][] = "'".$tecnico['id']."'"; } } } if (!isset($_SESSION['dashboard']['idstatiintervento'])) { $_SESSION['dashboard']['idstatiintervento'] = ["'-1'"]; foreach ($stati_intervento as $stato) { $_SESSION['dashboard']['idstatiintervento'][] = "'".$stato['id']."'"; } } if (!isset($_SESSION['dashboard']['idtipiintervento'])) { $_SESSION['dashboard']['idtipiintervento'] = ["'-1'"]; foreach ($tipi_intervento as $tipo) { $_SESSION['dashboard']['idtipiintervento'][] = "'".$tipo['id']."'"; } } if (!isset($_SESSION['dashboard']['idzone'])) { $_SESSION['dashboard']['idzone'] = ["'-1'"]; foreach ($zone as $zona) { $_SESSION['dashboard']['idzone'][] = "'".$zona['id']."'"; } } echo '