From 0f5ae03b876f5eb10dcf0158538b83ff4945af24 Mon Sep 17 00:00:00 2001 From: Thomas Zilio Date: Fri, 16 Feb 2018 14:28:35 +0100 Subject: [PATCH] Rimozione controllo sui permessi per select (2.3.1) --- ajax_select.php | 491 +++++++++++++++++++++++------------------------- 1 file changed, 237 insertions(+), 254 deletions(-) diff --git a/ajax_select.php b/ajax_select.php index 77a288aae..19d70d317 100644 --- a/ajax_select.php +++ b/ajax_select.php @@ -56,141 +56,135 @@ if (!function_exists('completeResults')) { switch ($op) { case 'clienti': - if ((Modules::get('Anagrafiche')['permessi'] != '-') or (Modules::getAdditionalsQuery('Anagrafiche'))) { - //$citta_cliente = ", IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))"; + //$citta_cliente = ", IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))"; - $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale $citta_cliente) AS descrizione, idtipointervento_default, idzona FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; + $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale $citta_cliente) AS descrizione, idtipointervento_default, idzona FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; - foreach ($elements as $element) { - $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); - } - - if (empty($filter)) { - $where[] = "descrizione='Cliente'"; - $where[] = 'deleted=0'; - } - - if (!empty($search)) { - $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); - } - - $custom['idtipointervento'] = 'idtipointervento_default'; - $custom['idzona'] = 'idzona'; + foreach ($elements as $element) { + $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); } + if (empty($filter)) { + $where[] = "descrizione='Cliente'"; + $where[] = 'deleted=0'; + } + + if (!empty($search)) { + $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); + } + + $custom['idtipointervento'] = 'idtipointervento_default'; + $custom['idzona'] = 'idzona'; + break; case 'fornitori': - if ((Modules::get('Anagrafiche')['permessi'] != '-') or (Modules::getAdditionalsQuery('Anagrafiche'))) { - $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; + $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; - foreach ($elements as $element) { - $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); - } - - if (empty($filter)) { - $where[] = "descrizione='Fornitore'"; - $where[] = 'deleted=0'; - } - - if (!empty($search)) { - $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); - } - - $custom['idtipointervento'] = 'idtipointervento_default'; + foreach ($elements as $element) { + $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); } + + if (empty($filter)) { + $where[] = "descrizione='Fornitore'"; + $where[] = 'deleted=0'; + } + + if (!empty($search)) { + $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); + } + + $custom['idtipointervento'] = 'idtipointervento_default'; + break; case 'agenti': - if ((Modules::get('Anagrafiche')['permessi'] != '-') or (Modules::getAdditionalsQuery('Anagrafiche'))) { - $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; + $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; - foreach ($elements as $element) { - $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); - } - - if (empty($filter)) { - $where[] = "descrizione='Agente'"; - $where[] = 'deleted=0'; - } - - if (!empty($search)) { - $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); - } - - $results = completeResults($query, $where, $filter, $search, $custom); - - // Evidenzia l'agente di default - if ($superselect['idanagrafica']) { - $rsa = $dbo->fetchArray('SELECT idagente FROM an_anagrafiche WHERE idanagrafica='.prepare($superselect['idanagrafica'])); - $idagente_default = $rsa[0]['idagente']; - } else { - $idagente_default = 0; - } - - $ids = array_column($results, $id); - $pos = array_search($idagente_default, $ids); - if ($pos !== false) { - $results[$pos]['_bgcolor_'] = '#ff0'; - } + foreach ($elements as $element) { + $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); } + + if (empty($filter)) { + $where[] = "descrizione='Agente'"; + $where[] = 'deleted=0'; + } + + if (!empty($search)) { + $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); + } + + $results = completeResults($query, $where, $filter, $search, $custom); + + // Evidenzia l'agente di default + if ($superselect['idanagrafica']) { + $rsa = $dbo->fetchArray('SELECT idagente FROM an_anagrafiche WHERE idanagrafica='.prepare($superselect['idanagrafica'])); + $idagente_default = $rsa[0]['idagente']; + } else { + $idagente_default = 0; + } + + $ids = array_column($results, $id); + $pos = array_search($idagente_default, $ids); + if ($pos !== false) { + $results[$pos]['_bgcolor_'] = '#ff0'; + } + break; case 'tecnici': - if ((Modules::get('Anagrafiche')['permessi'] != '-') or (Modules::getAdditionalsQuery('Anagrafiche'))) { - $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; + $query = "SELECT an_anagrafiche.idanagrafica AS id, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')'))) AS descrizione, idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; - foreach ($elements as $element) { - $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); - } - - if (empty($filter)) { - $where[] = "descrizione='Tecnico'"; - $where[] = 'deleted=0'; - } - - if (!empty($search)) { - $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); - } - - // $custom['idtipointervento'] = 'idtipointervento_default'; + foreach ($elements as $element) { + $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); } + + if (empty($filter)) { + $where[] = "descrizione='Tecnico'"; + $where[] = 'deleted=0'; + } + + if (!empty($search)) { + $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); + } + + // $custom['idtipointervento'] = 'idtipointervento_default'; + break; // Nota Bene: nel campo id viene specificato idtipoanagrafica-idanagrafica -> modulo Utenti e permessi, creazione nuovo utente case 'anagrafiche': - if ((Modules::get('Anagrafiche')['permessi'] != '-') or (Modules::getAdditionalsQuery('Anagrafiche'))) { - $query = "SELECT CONCAT(an_tipianagrafiche.idtipoanagrafica, '-', an_anagrafiche.idanagrafica) AS id, CONCAT_WS('', ragione_sociale, ' (', citta, ' ', provincia, ')') AS descrizione idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; + $query = "SELECT CONCAT(an_tipianagrafiche.idtipoanagrafica, '-', an_anagrafiche.idanagrafica) AS id, CONCAT_WS('', ragione_sociale, ' (', citta, ' ', provincia, ')') AS descrizione idtipointervento_default FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica |where| ORDER BY ragione_sociale"; - foreach ($elements as $element) { - $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); - } - - if (empty($filter)) { - $where[] = 'deleted=0'; - } - - if (!empty($search)) { - $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); - $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); - } - - // $custom['idtipointervento'] = 'idtipointervento_default'; + foreach ($elements as $element) { + $filter[] = 'an_anagrafiche.idanagrafica='.prepare($element); } + + if (empty($filter)) { + $where[] = 'deleted=0'; + } + + if (!empty($search)) { + $search_fields[] = 'ragione_sociale LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); + $search_fields[] = 'provincia LIKE '.prepare('%'.$search.'%'); + } + + // $custom['idtipointervento'] = 'idtipointervento_default'; + break; case 'sedi': - if (Modules::get('Anagrafiche')['permessi'] != '-' && isset($superselect['idanagrafica'])) { - $query = "SELECT * FROM (SELECT 0 AS id, 'Sede legale' AS descrizione, (SELECT an_anagrafiche.idzona FROM an_anagrafiche WHERE an_anagrafiche.idanagrafica = ".prepare($superselect['idanagrafica']).") AS idzona UNION SELECT id, CONCAT_WS(' - ', nomesede, citta), idzona AS idzona FROM an_sedi |where|) AS tab |filter| ORDER BY id"; + if (isset($superselect['idanagrafica'])) { + $query = "SELECT * FROM (SELECT 0 AS id, 'Sede legale' AS descrizione, (SELECT an_anagrafiche.idzona FROM an_anagrafiche WHERE an_anagrafiche.idanagrafica = ".prepare($superselect['idanagrafica']).") AS idzona UNION SELECT id, CONCAT_WS(' - ', nomesede, citta), idzona AS idzona FROM an_sedi |where|) AS tab |filter| ORDER BY id"; foreach ($elements as $element) { $filter[] = 'id='.prepare($element); @@ -202,13 +196,13 @@ switch ($op) { $search_fields[] = 'nomesede LIKE '.prepare('%'.$search.'%'); $search_fields[] = 'citta LIKE '.prepare('%'.$search.'%'); } - - $custom['idzona'] = 'idzona'; + + $custom['idzona'] = 'idzona'; } break; case 'referenti': - if (Modules::get('Anagrafiche')['permessi'] != '-' && isset($superselect['idanagrafica'])) { + if (isset($superselect['idanagrafica'])) { $query = 'SELECT id, nome AS descrizione FROM an_referenti |where| ORDER BY id'; foreach ($elements as $element) { @@ -292,85 +286,82 @@ switch ($op) { break; case 'conti': - if (Modules::get('Piano dei conti')['permessi'] != '-') { - $query = 'SELECT * FROM co_pianodeiconti2'; + $query = 'SELECT * FROM co_pianodeiconti2'; - $rs = $dbo->fetchArray($query); - foreach ($rs as $r) { - $results[] = ['text' => $r['numero'].' '.$r['descrizione'], 'children' => []]; + $rs = $dbo->fetchArray($query); + foreach ($rs as $r) { + $results[] = ['text' => $r['numero'].' '.$r['descrizione'], 'children' => []]; - $subquery = 'SELECT * FROM co_pianodeiconti3 |where|'; + $subquery = 'SELECT * FROM co_pianodeiconti3 |where|'; - $where = []; - $filter = []; - $search_fields = []; + $where = []; + $filter = []; + $search_fields = []; - foreach ($elements as $element) { - $filter[] = 'id='.prepare($element); - } - if (!empty($filter)) { - $where[] = '('.implode(' OR ', $filter).')'; - } + foreach ($elements as $element) { + $filter[] = 'id='.prepare($element); + } + if (!empty($filter)) { + $where[] = '('.implode(' OR ', $filter).')'; + } - $where[] = 'idpianodeiconti2='.prepare($r['id']); + $where[] = 'idpianodeiconti2='.prepare($r['id']); - if (!empty($search)) { - $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); - } - if (!empty($search_fields)) { - $where[] = '('.implode(' OR ', $search_fields).')'; - } + if (!empty($search)) { + $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); + } + if (!empty($search_fields)) { + $where[] = '('.implode(' OR ', $search_fields).')'; + } - $wh = ''; - if (count($where) != 0) { - $wh = 'WHERE '.implode(' AND ', $where); - } - $subquery = str_replace('|where|', $wh, $subquery); + $wh = ''; + if (count($where) != 0) { + $wh = 'WHERE '.implode(' AND ', $where); + } + $subquery = str_replace('|where|', $wh, $subquery); - $rs2 = $dbo->fetchArray($subquery); - foreach ($rs2 as $r2) { - $results[count($results) - 1]['children'][] = ['id' => $r2['id'], 'text' => $r2['descrizione']]; - } + $rs2 = $dbo->fetchArray($subquery); + foreach ($rs2 as $r2) { + $results[count($results) - 1]['children'][] = ['id' => $r2['id'], 'text' => $r2['descrizione']]; } } + break; case 'conti-vendite': - if (Modules::get('Piano dei conti')['permessi'] != '-') { - $query = "SELECT co_pianodeiconti3.id, CONCAT_WS( ' ', co_pianodeiconti3.numero, co_pianodeiconti3.descrizione ) AS descrizione FROM co_pianodeiconti3 INNER JOIN (co_pianodeiconti2 INNER JOIN co_pianodeiconti1 ON co_pianodeiconti2.idpianodeiconti1=co_pianodeiconti1.id) ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id |where| ORDER BY co_pianodeiconti3.numero ASC"; + $query = "SELECT co_pianodeiconti3.id, CONCAT_WS( ' ', co_pianodeiconti3.numero, co_pianodeiconti3.descrizione ) AS descrizione FROM co_pianodeiconti3 INNER JOIN (co_pianodeiconti2 INNER JOIN co_pianodeiconti1 ON co_pianodeiconti2.idpianodeiconti1=co_pianodeiconti1.id) ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id |where| ORDER BY co_pianodeiconti3.numero ASC"; - foreach ($elements as $element) { - $filter[] = 'co_pianodeiconti3.id='.prepare($element); - } - - $where[] = "co_pianodeiconti1.descrizione='Economico'"; - $where[] = "co_pianodeiconti3.dir='entrata'"; - - if (!empty($search)) { - $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'co_pianodeiconti3.id='.prepare($element); } + + $where[] = "co_pianodeiconti1.descrizione='Economico'"; + $where[] = "co_pianodeiconti3.dir='entrata'"; + + if (!empty($search)) { + $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); + } + break; case 'conti-acquisti': - if (Modules::get('Piano dei conti')['permessi'] != '-') { - $query = "SELECT co_pianodeiconti3.id, CONCAT_WS( ' ', co_pianodeiconti3.numero, co_pianodeiconti3.descrizione ) AS descrizione FROM co_pianodeiconti3 INNER JOIN (co_pianodeiconti2 INNER JOIN co_pianodeiconti1 ON co_pianodeiconti2.idpianodeiconti1=co_pianodeiconti1.id) ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id |where| ORDER BY co_pianodeiconti3.numero ASC"; + $query = "SELECT co_pianodeiconti3.id, CONCAT_WS( ' ', co_pianodeiconti3.numero, co_pianodeiconti3.descrizione ) AS descrizione FROM co_pianodeiconti3 INNER JOIN (co_pianodeiconti2 INNER JOIN co_pianodeiconti1 ON co_pianodeiconti2.idpianodeiconti1=co_pianodeiconti1.id) ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id |where| ORDER BY co_pianodeiconti3.numero ASC"; - foreach ($elements as $element) { - $filter[] = 'co_pianodeiconti3.id='.prepare($element); - } - - $where[] = "co_pianodeiconti1.descrizione='Economico'"; - $where[] = "co_pianodeiconti3.dir='uscita'"; - - if (!empty($search)) { - $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'co_pianodeiconti3.id='.prepare($element); } + + $where[] = "co_pianodeiconti1.descrizione='Economico'"; + $where[] = "co_pianodeiconti3.dir='uscita'"; + + if (!empty($search)) { + $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); + } + break; case 'impianti': - if (Modules::get('MyImpianti')['permessi'] != '-' && isset($superselect['idanagrafica'])) { + if (isset($superselect['idanagrafica'])) { $query = 'SELECT id, CONCAT(matricola, " - ", nome) AS descrizione FROM my_impianti |where| ORDER BY idsede'; foreach ($elements as $element) { @@ -388,7 +379,7 @@ switch ($op) { break; case 'componenti': - if (Modules::get('Gestione componenti')['permessi'] != '-' && isset($superselect['marticola'])) { + if (isset($superselect['marticola'])) { $query = 'SELECT id, nome AS descrizione, contenuto FROM my_impianto_componenti |where| ORDER BY id'; foreach ($elements as $element) { @@ -421,23 +412,22 @@ switch ($op) { break; case 'categorie': - if (Modules::get('Magazzino')['permessi'] != '-') { - $query = 'SELECT id, nome AS descrizione FROM mg_categorie |where| ORDER BY id'; + $query = 'SELECT id, nome AS descrizione FROM mg_categorie |where| ORDER BY id'; - foreach ($elements as $element) { - $filter[] = 'id='.prepare($element); - } - - $where[] = '`parent` IS NULL'; - - if (!empty($search)) { - $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'id='.prepare($element); } + + $where[] = '`parent` IS NULL'; + + if (!empty($search)) { + $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); + } + break; case 'sottocategorie': - if (Modules::get('Magazzino')['permessi'] != '-' && isset($superselect['id_categoria'])) { + if (isset($superselect['id_categoria'])) { $query = 'SELECT id, nome AS descrizione FROM mg_categorie |where| ORDER BY id'; foreach ($elements as $element) { @@ -453,7 +443,7 @@ switch ($op) { break; case 'preventivi': - if (Modules::get('Preventivi')['permessi'] != '-' && isset($superselect['idanagrafica'])) { + if (isset($superselect['idanagrafica'])) { $query = 'SELECT co_preventivi.id AS id, an_anagrafiche.idanagrafica, CONCAT(numero, " ", nome) AS descrizione, co_preventivi.idtipointervento, (SELECT descrizione descrizione FROM in_tipiintervento WHERE in_tipiintervento.idtipointervento = co_preventivi.idtipointervento) AS idtipointervento_descrizione FROM co_preventivi INNER JOIN an_anagrafiche ON co_preventivi.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id'; foreach ($elements as $element) { @@ -473,115 +463,108 @@ switch ($op) { break; case 'preventivi_aperti': - if (Modules::get('Preventivi')['permessi'] != '-') { - $query = 'SELECT co_preventivi.id AS id, CONCAT(numero, " ", nome, " (", ragione_sociale, ")") AS descrizione FROM co_preventivi INNER JOIN an_anagrafiche ON co_preventivi.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id'; + $query = 'SELECT co_preventivi.id AS id, CONCAT(numero, " ", nome, " (", ragione_sociale, ")") AS descrizione FROM co_preventivi INNER JOIN an_anagrafiche ON co_preventivi.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id'; - foreach ($elements as $element) { - $filter[] = 'idpreventivo='.prepare($element); - } - $where[] = 'idstato IN (1)'; - if (!empty($search)) { - $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'idpreventivo='.prepare($element); } + $where[] = 'idstato IN (1)'; + if (!empty($search)) { + $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); + } + break; case 'contratti': - if (Modules::get('Contratti')['permessi'] != '-') { - $query = 'SELECT co_contratti.id AS id, CONCAT(numero, " ", nome) AS descrizione FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id'; + $query = 'SELECT co_contratti.id AS id, CONCAT(numero, " ", nome) AS descrizione FROM co_contratti INNER JOIN an_anagrafiche ON co_contratti.idanagrafica=an_anagrafiche.idanagrafica |where| ORDER BY id'; - foreach ($elements as $element) { - $filter[] = 'id='.prepare($element); - } - - $where[] = 'an_anagrafiche.idanagrafica='.prepare($superselect['idanagrafica']); - $where[] = 'idstato IN (SELECT `id` FROM co_staticontratti WHERE pianificabile = 1)'; - - if (!empty($search)) { - $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'id='.prepare($element); } + + $where[] = 'an_anagrafiche.idanagrafica='.prepare($superselect['idanagrafica']); + $where[] = 'idstato IN (SELECT `id` FROM co_staticontratti WHERE pianificabile = 1)'; + + if (!empty($search)) { + $search_fields[] = 'nome LIKE '.prepare('%'.$search.'%'); + } + break; case 'tipiintervento': - if (Modules::get('Interventi')['permessi'] != '-') { - $query = 'SELECT idtipointervento AS id, descrizione FROM in_tipiintervento |where| ORDER BY idtipointervento'; + $query = 'SELECT idtipointervento AS id, descrizione FROM in_tipiintervento |where| ORDER BY idtipointervento'; - foreach ($elements as $element) { - $filter[] = 'idtipointervento='.prepare($element); - } - if (!empty($search)) { - $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'idtipointervento='.prepare($element); } + if (!empty($search)) { + $search_fields[] = 'descrizione LIKE '.prepare('%'.$search.'%'); + } + break; case 'misure': - if (Modules::get('Magazzino')['permessi'] != '-') { - $query = 'SELECT valore AS id, valore AS descrizione FROM mg_unitamisura |where| ORDER BY valore'; + $query = 'SELECT valore AS id, valore AS descrizione FROM mg_unitamisura |where| ORDER BY valore'; - foreach ($elements as $element) { - $filter[] = 'valore='.prepare($element).''; - } - if (!empty($search)) { - $search_fields[] = 'valore LIKE '.prepare('%'.$search.'%'); - } + foreach ($elements as $element) { + $filter[] = 'valore='.prepare($element).''; } + if (!empty($search)) { + $search_fields[] = 'valore LIKE '.prepare('%'.$search.'%'); + } + break; case 'prodotti_lotti': - if (Modules::get('Magazzino')['permessi'] != '-') { - $query = 'SELECT DISTINCT lotto AS descrizione FROM mg_prodotti |where|'; + $query = 'SELECT DISTINCT lotto AS descrizione FROM mg_prodotti |where|'; - $where[] = 'idarticolo='.prepare($superselect['idarticolo']); + $where[] = 'idarticolo='.prepare($superselect['idarticolo']); - foreach ($elements as $element) { - $filter[] = 'lotto='.prepare($element).''; - } - - if (!empty($search)) { - $search_fields[] = 'lotto LIKE '.prepare('%'.$search.'%'); - } - - $custom['id'] = 'descrizione'; + foreach ($elements as $element) { + $filter[] = 'lotto='.prepare($element).''; } + + if (!empty($search)) { + $search_fields[] = 'lotto LIKE '.prepare('%'.$search.'%'); + } + + $custom['id'] = 'descrizione'; + break; case 'prodotti_serial': - if (Modules::get('Magazzino')['permessi'] != '-') { - $query = 'SELECT DISTINCT serial AS descrizione FROM mg_prodotti |where|'; + $query = 'SELECT DISTINCT serial AS descrizione FROM mg_prodotti |where|'; - $where[] = 'id_articolo='.prepare($superselect['idarticolo']); - $where[] = 'lotto='.prepare($superselect['lotto']); + $where[] = 'id_articolo='.prepare($superselect['idarticolo']); + $where[] = 'lotto='.prepare($superselect['lotto']); - foreach ($elements as $element) { - $filter[] = 'serial='.prepare($element).''; - } - if (!empty($search)) { - $search_fields[] = 'serial LIKE '.prepare('%'.$search.'%'); - } - - $custom['id'] = 'descrizione'; + foreach ($elements as $element) { + $filter[] = 'serial='.prepare($element).''; } + if (!empty($search)) { + $search_fields[] = 'serial LIKE '.prepare('%'.$search.'%'); + } + + $custom['id'] = 'descrizione'; + break; case 'prodotti_altro': - if (Modules::get('Magazzino')['permessi'] != '-') { - $query = 'SELECT DISTINCT altro AS descrizione FROM mg_prodotti |where|'; + $query = 'SELECT DISTINCT altro AS descrizione FROM mg_prodotti |where|'; - $where[] = 'id_articolo='.prepare($superselect['idarticolo']); - $where[] = 'lotto='.prepare($superselect['lotto']); - $where[] = 'serial='.prepare($superselect['serial']); + $where[] = 'id_articolo='.prepare($superselect['idarticolo']); + $where[] = 'lotto='.prepare($superselect['lotto']); + $where[] = 'serial='.prepare($superselect['serial']); - foreach ($elements as $element) { - $filter[] = 'altro='.prepare($element).''; - } - if (!empty($search)) { - $search_fields[] = 'altro LIKE '.prepare('%'.$search.'%'); - } - - $custom['id'] = 'descrizione'; + foreach ($elements as $element) { + $filter[] = 'altro='.prepare($element).''; } + if (!empty($search)) { + $search_fields[] = 'altro LIKE '.prepare('%'.$search.'%'); + } + + $custom['id'] = 'descrizione'; + break; }