diff --git a/account/attivita.php b/account/attivita.php index f8767a4..70d6d0c 100644 --- a/account/attivita.php +++ b/account/attivita.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareAttivitaProprie']['stato']) + header('Location: /'); ?> @@ -88,4 +91,4 @@ include_once('../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/account/impostazioni.php b/account/impostazioni.php index 732e287..2ae3f01 100644 --- a/account/impostazioni.php +++ b/account/impostazioni.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareImpostazioniProprie']['stato']) + header('Location: /'); ?> diff --git a/account/notifiche.php b/account/notifiche.php index 42da2ff..125fb64 100644 --- a/account/notifiche.php +++ b/account/notifiche.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareNotificheProprie']['stato']) + header('Location: /'); ?> diff --git a/account/presenze.php b/account/presenze.php index f066687..2207712 100644 --- a/account/presenze.php +++ b/account/presenze.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzarePresenzeProprie']['stato']) + header('Location: /'); ?> diff --git a/account/social.php b/account/social.php index 751813a..b8333a7 100644 --- a/account/social.php +++ b/account/social.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['gestioneSocialProprie']['stato']) + header('Location: /'); ?> diff --git a/account/transazioni/fabcoin.php b/account/transazioni/fabcoin.php index 6494b86..867577e 100644 --- a/account/transazioni/fabcoin.php +++ b/account/transazioni/fabcoin.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareAttivitaProprie']['stato']) + header('Location: /'); ?> diff --git a/account/visualizzaAttivita.php b/account/visualizzaAttivita.php index 70efbe9..09835c1 100644 --- a/account/visualizzaAttivita.php +++ b/account/visualizzaAttivita.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareAttivitaProprie']['stato']) header('Location: /'); ?> @@ -17,8 +17,6 @@ ?>
real_escape_string(isset($_GET['id']) ? trim($_GET['id']) : ''); // Estraggo il profilo dell'utente @@ -57,4 +55,4 @@ include_once('../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/ajax/aggiungiMessaggioDashboard.php b/ajax/aggiungiMessaggioDashboard.php index 8b4f987..306f388 100644 --- a/ajax/aggiungiMessaggioDashboard.php +++ b/ajax/aggiungiMessaggioDashboard.php @@ -22,7 +22,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale!= 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['dashboard']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/attivita/aggiungi.php b/ajax/attivita/aggiungi.php index f2e9907..0613182 100644 --- a/ajax/attivita/aggiungi.php +++ b/ajax/attivita/aggiungi.php @@ -31,7 +31,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['aggiuntaAttivita']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -134,4 +134,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { } } } -?> \ No newline at end of file +?> diff --git a/ajax/attivita/elimina.php b/ajax/attivita/elimina.php index fc2d091..ae0a2af 100644 --- a/ajax/attivita/elimina.php +++ b/ajax/attivita/elimina.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['eliminaAttivita']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -79,4 +79,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { $notificheUtente -> noLink('Ti è stata eliminata un\'attività (ID: '.$attivita['id'].').'); } } -?> \ No newline at end of file +?> diff --git a/ajax/attivita/modifica.php b/ajax/attivita/modifica.php index fe503fd..f494573 100644 --- a/ajax/attivita/modifica.php +++ b/ajax/attivita/modifica.php @@ -31,7 +31,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['modificareAttivita']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -181,4 +181,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { } } } -?> \ No newline at end of file +?> diff --git a/ajax/badge/aggiungi.php b/ajax/badge/aggiungi.php index 8b12024..debfcd6 100644 --- a/ajax/badge/aggiungi.php +++ b/ajax/badge/aggiungi.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['aggiuntaBadge']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -75,4 +75,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { $console -> log('Aggiunto badge all\'utente '.$id.' (RFID: '.$rfid.')', $autenticazione -> id); } } -?> \ No newline at end of file +?> diff --git a/ajax/badge/revoca.php b/ajax/badge/revoca.php index df47e08..1547802 100644 --- a/ajax/badge/revoca.php +++ b/ajax/badge/revoca.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['revocaBadge']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -61,4 +61,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { $console -> warn('Revocato badge all\'utente '.$id.' (RFID: '.$rfid.')', $autenticazione -> id); } } -?> \ No newline at end of file +?> diff --git a/ajax/dizionario/aggiungi.php b/ajax/dizionario/aggiungi.php index c6ce202..af10551 100644 --- a/ajax/dizionario/aggiungi.php +++ b/ajax/dizionario/aggiungi.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['dizionario']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/dizionario/elimina.php b/ajax/dizionario/elimina.php index ad05d5b..03e96b3 100644 --- a/ajax/dizionario/elimina.php +++ b/ajax/dizionario/elimina.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['dizionario']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/dizionario/modifica.php b/ajax/dizionario/modifica.php index 08009ec..df4e38c 100644 --- a/ajax/dizionario/modifica.php +++ b/ajax/dizionario/modifica.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['dizionario']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/eliminaMessaggioDashboard.php b/ajax/eliminaMessaggioDashboard.php index ef80d06..5251e39 100644 --- a/ajax/eliminaMessaggioDashboard.php +++ b/ajax/eliminaMessaggioDashboard.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale!= 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['dashboard']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/gestione.categoriaUtente.php b/ajax/gestione.categoriaUtente.php index 02100ba..9b4ffaf 100644 --- a/ajax/gestione.categoriaUtente.php +++ b/ajax/gestione.categoriaUtente.php @@ -8,8 +8,6 @@ $id = $mysqli -> real_escape_string(isset($_POST['id']) ? trim($_POST['id']) : ''); $richiesta = $mysqli -> real_escape_string(isset($_POST['richiesta']) ? trim($_POST['richiesta']) : ''); $nome = $mysqli -> real_escape_string(isset($_POST['nome']) ? trim($_POST['nome']) : ''); - $portale = $mysqli -> real_escape_string(isset($_POST['portale']) ? trim($_POST['portale']) : ''); - $rete = $mysqli -> real_escape_string(isset($_POST['rete']) ? trim($_POST['rete']) : ''); $destinazione = $mysqli -> real_escape_string(isset($_POST['destinazione']) ? trim($_POST['destinazione']) : ''); @@ -25,7 +23,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale!= 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestioneGruppi']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -93,21 +91,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { // I valori vanno bene else { - // Potere di gestione della rete interna ai maker space - if($rete == 'true') - $rete = true; - - else - $rete = false; - - // Potere di gestione del portale - if($portale == 'true') - $portale = true; - - else - $portale = false; - - $sql = "INSERT INTO categorieUtenti (nome, gestionePortale, gestioneRete) VALUES ('{$nome}', '{$portale}', '{$rete}')"; + $sql = "INSERT INTO categorieUtenti (nome) VALUES ('{$nome}')"; if($query = $mysqli -> query($sql)) echo '{}'; diff --git a/ajax/gestione.modificaUtente.permessi.php b/ajax/gestione.modificaUtente.permessi.php index 7fe177b..3483b17 100644 --- a/ajax/gestione.modificaUtente.permessi.php +++ b/ajax/gestione.modificaUtente.permessi.php @@ -15,8 +15,6 @@ header('Content-Type: application/json'); $categoria = $mysqli -> real_escape_string(isset($_POST['categoria']) ? trim($_POST['categoria']) : ''); - $gestionePortale = $mysqli -> real_escape_string(isset($_POST['gestionePortale']) ? trim($_POST['gestionePortale']) : ''); - $gestioneRete = $mysqli -> real_escape_string(isset($_POST['gestioneRete']) ? trim($_POST['gestioneRete']) : ''); $sospensione = $mysqli -> real_escape_string(isset($_POST['sospensione']) ? trim($_POST['sospensione']) : ''); $confermaMail = $mysqli -> real_escape_string(isset($_POST['confermaMail']) ? trim($_POST['confermaMail']) : ''); $id = $mysqli -> real_escape_string(isset($_POST['id']) ? trim($_POST['id']) : ''); @@ -26,8 +24,6 @@ function stampaErrore($errore = 'Errore sconosciuto!') { exit(); } - $confermaMail = ($confermaMail == '1') ? '0' : '1'; - // Controllo che l'utente abbia effettuato l'accesso if(!$autenticazione -> isLogged()) @@ -35,7 +31,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestioneUtentiAvanzata']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -51,12 +47,6 @@ function stampaErrore($errore = 'Errore sconosciuto!') { else if($categoria == '') stampaErrore('Devi inserire una categoria!'); - else if($gestionePortale != '0' && $gestionePortale != '1' && $gestionePortale != '2') - stampaErrore('Devi inserire il permesso di gestione del portale!'); - - else if($gestioneRete != '0' && $gestioneRete != '1' && $gestioneRete != '2') - stampaErrore('Devi inserire il permesso di gestione della rete!'); - else if($sospensione != '1' && $sospensione != '0') stampaErrore('Devi indicare lo stato di sospensione dell\'account!'); @@ -84,12 +74,6 @@ function stampaErrore($errore = 'Errore sconosciuto!') { if($row['categoria'] != $categoria) $modificati = true; - if($row['gestionePortale'] != $gestionePortale) - $modificati = true; - - if($row['gestioneRete'] != $gestioneRete) - $modificati = true; - if($row['sospeso'] != $sospensione) $modificati = true; @@ -123,15 +107,15 @@ function stampaErrore($errore = 'Errore sconosciuto!') { if($row['codiceAttivazione'] == '0' && $confermaMail == '0') $codiceAttivazione = uniqid(); - $sql = "UPDATE utenti SET categoria = '{$categoria}', gestionePortale = '{$gestionePortale}', gestioneRete = '{$gestioneRete}', sospeso = '{$sospensione}', codiceAttivazione = '{$codiceAttivazione}' WHERE id = '{$id}'"; + $sql = "UPDATE utenti SET categoria = '{$categoria}', sospeso = '{$sospensione}', codiceAttivazione = '{$codiceAttivazione}' WHERE id = '{$id}'"; if($mysqli -> query($sql)) { // Se la conferma dell'indirizzo email è cambiata // Rinvio la mail - if($row['codiceAttivazione'] != $confermaMail) { + if($codiceAttivazione != '0') { - $linkVerifica = $dizioanario -> getValue('urlSito').'/confermaMail.php?token='.$codiceAttivazione; + $linkVerifica = $dizionario -> getValue('urlSito').'/confermaMail.php?token='.$codiceAttivazione; try { $replyTo = ($dizionario -> getValue('EMAIL_REPLY_TO') == false || $dizionario -> getValue('EMAIL_REPLY_TO') == null) ? $dizionario -> getValue('EMAIL_SOURCE') : $dizionario -> getValue('EMAIL_REPLY_TO'); @@ -146,7 +130,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { 'Source' => $dizionario -> getValue('EMAIL_SOURCE'), 'ReplyToAddresses' => array($replyTo), 'Destination' => array( - 'ToAddresses' => array($email) + 'ToAddresses' => array($row['email']) ), 'Message' => array( 'Subject' => array( diff --git a/ajax/gestione.modificaUtente.profilo.php b/ajax/gestione.modificaUtente.profilo.php index 5a1c7c1..3f06747 100644 --- a/ajax/gestione.modificaUtente.profilo.php +++ b/ajax/gestione.modificaUtente.profilo.php @@ -31,7 +31,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale!= 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestioneUtentiBase']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/makerspace/aggiungi.php b/ajax/makerspace/aggiungi.php index fcae74e..960af89 100644 --- a/ajax/makerspace/aggiungi.php +++ b/ajax/makerspace/aggiungi.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireMakerSpace']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/makerspace/elimina.php b/ajax/makerspace/elimina.php index 05ab5d7..02f4224 100644 --- a/ajax/makerspace/elimina.php +++ b/ajax/makerspace/elimina.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireMakerSpace']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/makerspace/modifica.php b/ajax/makerspace/modifica.php index 5c447ee..76a7f8b 100644 --- a/ajax/makerspace/modifica.php +++ b/ajax/makerspace/modifica.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireMakerSpace']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/modificaTemplate.php b/ajax/modificaTemplate.php index 39c4878..ef7553c 100644 --- a/ajax/modificaTemplate.php +++ b/ajax/modificaTemplate.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['modificaTemplate']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/permessi/gruppi.php b/ajax/permessi/gruppi.php new file mode 100644 index 0000000..a50dfaa --- /dev/null +++ b/ajax/permessi/gruppi.php @@ -0,0 +1,81 @@ + real_escape_string(isset($_POST['gruppo']) ? trim($_POST['gruppo']) : ''); + $permesso = $mysqli -> real_escape_string(isset($_POST['permesso']) ? trim($_POST['permesso']) : ''); + $valore = $mysqli -> real_escape_string(isset($_POST['valore']) ? trim($_POST['valore']) : ''); + + function stampaErrore($errore = 'Errore sconosciuto!') { + echo '{"errore":true,"msg":"'.$errore.'"}'; + exit(); + } + + // Controllo che l'utente abbia effettuato l'accesso + if(!$autenticazione -> isLogged()) + + // L'utente non ha effettuato l'accesso + stampaErrore('Non hai effettuato l\'accesso!'); + + // Controllo che l'utente abbia i permessi per effettuare la modifica + if(!$permessi -> whatCanHeDo($autenticazione -> id)['modificarePermessi']['stato']) + + // L'utente non ha i permessi + stampaErrore('Non sei autorizzato ad effettuare la modifica!'); + + // L'utente ha effettuato l'accesso ed è autorizzato + // Controllo i valori + if(!preg_match("/^[0-9]{1,11}+$/", $id)) + stampaErrore('Devi inserire un ID valido!'); + + // Controllo il valore, deve essere un intero + if(!preg_match("/^[0-1]{1}+$/", $valore)) + stampaErrore('Devi inserire un valore valido!'); + + if(!preg_match("/^[a-z]+$/i", $permesso)) + stampaErrore('Devi inserire un permesso valido!'); + + $sql = "SELECT * FROM elencoPermessi WHERE nome = '{$permesso}'"; + $query = $mysqli -> query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare l\'esistenza del permesso. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + if($query -> num_rows !== 1) + stampaErrore('Permesso non esistente!'); + + $sql = "SELECT * FROM categorieUtenti WHERE id = {$id}"; + $query = $mysqli -> query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare l\'esistenza del gruppo. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + if($query -> num_rows !== 1) + stampaErrore('Gruppo non esistente!'); + + // Elimino un eventuale risultato (nel caso fosse già presente il permesso) + $sql = "DELETE FROM permessi WHERE permesso = '{$permesso}' AND gruppo IS TRUE AND idGruppoUtente = {$id};"; + $sql .= "INSERT INTO permessi (gruppo, permesso, stato, idGruppoUtente) VALUES (TRUE, '{$permesso}', {$valore}, {$id})"; + $query = $mysqli -> multi_query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare inserire il permesso nel database. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + while($mysqli -> more_results()) { + $mysqli -> next_result(); + $mysqli -> use_result(); + } + + $console -> warn('Aggiornato permesso al gruppo '.$id.': '.$permesso.'='.$valore, $autenticazione -> id); + + echo '{}'; +?> diff --git a/ajax/permessi/utenti.php b/ajax/permessi/utenti.php new file mode 100644 index 0000000..3cb6cee --- /dev/null +++ b/ajax/permessi/utenti.php @@ -0,0 +1,84 @@ + real_escape_string(isset($_POST['gruppo']) ? trim($_POST['gruppo']) : ''); + $permesso = $mysqli -> real_escape_string(isset($_POST['permesso']) ? trim($_POST['permesso']) : ''); + $valore = $mysqli -> real_escape_string(isset($_POST['valore']) ? trim($_POST['valore']) : ''); + + function stampaErrore($errore = 'Errore sconosciuto!') { + echo '{"errore":true,"msg":"'.$errore.'"}'; + exit(); + } + + // Controllo che l'utente abbia effettuato l'accesso + if(!$autenticazione -> isLogged()) + + // L'utente non ha effettuato l'accesso + stampaErrore('Non hai effettuato l\'accesso!'); + + // Controllo che l'utente abbia i permessi per effettuare la modifica + if(!$permessi -> whatCanHeDo($autenticazione -> id)['modificarePermessi']['stato']) + + // L'utente non ha i permessi + stampaErrore('Non sei autorizzato ad effettuare la modifica!'); + + // L'utente ha effettuato l'accesso ed è autorizzato + // Controllo i valori + if(!preg_match("/^[0-9]{1,11}+$/", $id)) + stampaErrore('Devi inserire un ID valido!'); + + // Controllo il valore, deve essere un intero + if(!preg_match("/^[0-2]{1}+$/", $valore)) + stampaErrore('Devi inserire un valore valido!'); + + if(!preg_match("/^[a-z]+$/i", $permesso)) + stampaErrore('Devi inserire un permesso valido!'); + + $sql = "SELECT * FROM elencoPermessi WHERE nome = '{$permesso}'"; + $query = $mysqli -> query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare l\'esistenza del permesso. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + if($query -> num_rows !== 1) + stampaErrore('Permesso non esistente!'); + + $sql = "SELECT * FROM utenti WHERE id = {$id}"; + $query = $mysqli -> query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare l\'esistenza dell\'utente. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + if($query -> num_rows !== 1) + stampaErrore('Utente non esistente!'); + + if($valore == 2) + $valore = 'NULL'; + + // Elimino un eventuale risultato (nel caso fosse già presente il permesso) + $sql = "DELETE FROM permessi WHERE permesso = '{$permesso}' AND gruppo IS FALSE AND idGruppoUtente = {$id};"; + $sql .= "INSERT INTO permessi (gruppo, permesso, stato, idGruppoUtente) VALUES (FALSE, '{$permesso}', {$valore}, {$id})"; + $query = $mysqli -> multi_query($sql); + + if(!$query) { + $console -> alert('Impossibile controllare inserire il permesso nel database. '.$mysqli -> error, $autenticazione -> id); + stampaErrore('Impossibile completare la richiesta.'); + } + + while($mysqli -> more_results()) { + $mysqli -> next_result(); + $mysqli -> use_result(); + } + + $console -> warn('Aggiornato permesso all\'utente '.$id.': '.$permesso.'='.$valore, $autenticazione -> id); + + echo '{}'; +?> diff --git a/ajax/presenze/annulla.php b/ajax/presenze/annulla.php index 79ca3ff..60a1a06 100644 --- a/ajax/presenze/annulla.php +++ b/ajax/presenze/annulla.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestirePresenze']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); diff --git a/ajax/totem/presenze/aggiungi.php b/ajax/totem/presenze/aggiungi.php index 24c6658..1b66994 100644 --- a/ajax/totem/presenze/aggiungi.php +++ b/ajax/totem/presenze/aggiungi.php @@ -20,7 +20,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireTotem']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -60,4 +60,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { echo '{}'; $console -> log("Creato totem \"{$nome}\" (ID: {$mysqli -> insert_id }).", $autenticazione -> id); } -?> \ No newline at end of file +?> diff --git a/ajax/totem/presenze/elimina.php b/ajax/totem/presenze/elimina.php index 06b9f7a..92323f6 100644 --- a/ajax/totem/presenze/elimina.php +++ b/ajax/totem/presenze/elimina.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireTotem']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -57,4 +57,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { echo '{}'; $console -> warn("Eliminato il totem \"{$totem['nome']}\" (ID: {$id}).", $autenticazione -> id); } -?> \ No newline at end of file +?> diff --git a/ajax/totem/presenze/revoca.php b/ajax/totem/presenze/revoca.php index 510af37..efbaa0a 100644 --- a/ajax/totem/presenze/revoca.php +++ b/ajax/totem/presenze/revoca.php @@ -19,7 +19,7 @@ function stampaErrore($errore = 'Errore sconosciuto!') { stampaErrore('Non hai effettuato l\'accesso!'); // Controllo che l'utente abbia i permessi per effettuare la modifica - else if($autenticazione -> gestionePortale != 1) + else if(!$permessi -> whatCanHeDo($autenticazione -> id)['gestireTotem']['stato']) // L'utente non ha i permessi stampaErrore('Non sei autorizzato ad effettuare la modifica!'); @@ -57,4 +57,4 @@ function stampaErrore($errore = 'Errore sconosciuto!') { echo '{}'; $console -> warn("Revocato token del totem \"{$totem['nome']}\" (ID: {$id}).", $autenticazione -> id); } -?> \ No newline at end of file +?> diff --git a/class/gestioneAuth.class.php b/class/gestioneAuth.class.php index e89b462..1439f0f 100644 --- a/class/gestioneAuth.class.php +++ b/class/gestioneAuth.class.php @@ -52,8 +52,6 @@ public function isLogged() { $this -> email = $dati['email']; $this -> password = $dati['password']; $this -> sospeso = $dati['sospeso']; - $this -> gestionePortale = $dati['gestionePortale']; - $this -> gestioneRete = $dati['gestioneRete']; $this -> ipRegistrazione = $dati['ipRegistrazione']; $this -> id = $dati['id']; $this -> hashSessione = $hash; @@ -65,17 +63,8 @@ public function isLogged() { if($query = $this -> mysqli -> query($sql)) { - $gestionePortaleCategoria = 0; - $gestioneReteCategoria = 0; - while($key = $query -> fetch_array(MYSQLI_ASSOC)) { $categorieUtenti[$key['id']] = $key['nome']; - - // Memorizzo i permessi della categoria dell'utente - if($key['id'] == $dati['categoria']) { - $gestionePortaleCategoria = $key['gestionePortale']; - $gestioneReteCategoria = $key['gestioneRete']; - } } } else { @@ -86,21 +75,6 @@ public function isLogged() { // Memorizzo la categoria dell'utente $this -> categoria = array((int)$dati['categoria'], $categorieUtenti[(int)$dati['categoria']]); - // Ricavo i permessi dell'utente paragonando i permessi - // Singoli con quelli della categoria - if($this -> gestioneRete == 0 || ($this -> gestioneRete == 2 && $gestioneReteCategoria == 0)) - $this -> gestioneRete = 0; - - else - $this -> gestioneRete = 1; - - if($this -> gestionePortale == 0 || ($this -> gestionePortale== 2 && $gestionePortaleCategoria == 0)) - $this -> gestionePortale = 0; - - else - $this -> gestionePortale = 1; - - return true; // La sessione non esiste diff --git a/class/permessi.class.php b/class/permessi.class.php new file mode 100644 index 0000000..9295d9b --- /dev/null +++ b/class/permessi.class.php @@ -0,0 +1,101 @@ + mysqli = $mysqli; + } + + // Metodo per estrarre tutti i permessi di un utente + public function getUser($id) { + + $sql = "SELECT * FROM elencoPermessi A LEFT JOIN permessi B ON A.nome = B.permesso AND B.idGruppoUtente = {$id} AND B.gruppo IS FALSE"; + $query = $this -> mysqli -> query($sql); + + if(!$query) + return false; + + $res = array(); + + while($row = $query -> fetch_assoc()) { + if($row['stato'] != null) + $tmp = array( 'stato' => (bool)$row['stato'] ); + + else + $tmp = array( 'stato' => null ); + + $tmp['descrizione'] = $row['descrizione']; + $tmp['default'] = (bool)$row['valoreDefault']; + $tmp['bottoneGestione'] = (bool)$row['bottoneGestione']; + + $res[$row['nome']] = $tmp; + } + + return $res; + } + + // Metodo per estrarre tutti i permessi di un gruppo + public function getGroup($id) { + + $sql = "SELECT * FROM elencoPermessi A LEFT JOIN permessi B ON A.nome = B.permesso AND B.idGruppoUtente = {$id} AND B.gruppo IS TRUE ORDER BY A.nome ASC"; + $query = $this -> mysqli -> query($sql); + + if(!$query) + return false; + + $res = array(); + + while($row = $query -> fetch_assoc()) { + + if($row['stato'] != null) + $tmp = array( 'stato' => (bool)$row['stato'] ); + + else + $tmp = array( 'stato' => (bool)$row['valoreDefault'] ); + + $tmp['descrizione'] = $row['descrizione']; + $tmp['default'] = (bool)$row['valoreDefault']; + $tmp['bottoneGestione'] = (bool)$row['bottoneGestione']; + + $res[$row['nome']] = $tmp; + } + + return $res; + } + + // Metodo per vedere tutti i permessi di un utente + // Calcolati anche in base a quelli del gruppo a cui appartiene + public function whatCanHeDo($id) { + + $sql = "SELECT * FROM utenti WHERE id = {$id} LIMIT 0, 1"; + $query = $this -> mysqli -> query($sql); + + if(!$query) + return false; + + $gruppo = $query -> fetch_assoc()['categoria']; + + $permessiUtente = $this -> getUser($id); + $permessiGruppo = $this -> getGroup($gruppo); + + $bottoneGestione = false; + $tmp = array(); + + foreach ($permessiUtente as $key => $value) { + + $tmp[$key] = $value; + + if($value['stato'] === null) + $tmp[$key]['stato'] = $permessiGruppo[$key]['stato']; + + if($tmp[$key]['bottoneGestione'] && $tmp[$key]['stato']) + $bottoneGestione = true; + } + + $tmp['_bottoneGestione'] = $bottoneGestione; + + return $tmp; + } + } +?> diff --git a/gestione/attivita/aggiungi.php b/gestione/attivita/aggiungi.php index c6e6777..0b0483a 100644 --- a/gestione/attivita/aggiungi.php +++ b/gestione/attivita/aggiungi.php @@ -1,7 +1,7 @@ gestionePortale!= 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['aggiuntaAttivita']['stato']) header('Location: /'); ?> @@ -130,4 +130,4 @@ include_once('../../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/attivita/attivita.php b/gestione/attivita/attivita.php index ab618c0..194c8a9 100644 --- a/gestione/attivita/attivita.php +++ b/gestione/attivita/attivita.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareAttivita']['stato']) header('Location: /'); ?> @@ -39,7 +39,7 @@ $fabcoin = ($row['fabcoin'] === null) ? 'nessun FabCoin è stato assegnato': 'F'.$row['fabcoin']; echo '

Riepilogo attività

'; - + echo "

ID attività: {$id}

"; echo "

Registrata il ".date("d/m/Y", $row['aggiuntoIl'])." alle ".date("H:i", $row['aggiuntoIl']).".

"; echo "

Iniziata il ".date("d/m/Y", $row['inizio'])." alle ".date("H:i", $row['inizio']).".

"; @@ -57,4 +57,4 @@ include_once('../../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/attivita/index.php b/gestione/attivita/index.php index 4b84853..c35efdb 100644 --- a/gestione/attivita/index.php +++ b/gestione/attivita/index.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareAttivita']['stato']) header('Location: /'); ?> @@ -122,4 +122,4 @@ function elimina(id) { include_once('../../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/attivita/modifica.php b/gestione/attivita/modifica.php index 7e95c13..8140f7c 100644 --- a/gestione/attivita/modifica.php +++ b/gestione/attivita/modifica.php @@ -1,7 +1,7 @@ gestionePortale!= 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['modificareAttivita']['stato']) header('Location: /'); ?> @@ -155,4 +155,4 @@ include_once('../../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/badge/index.php b/gestione/badge/index.php index 61346ca..727c90e 100644 --- a/gestione/badge/index.php +++ b/gestione/badge/index.php @@ -1,7 +1,7 @@ gestionePortale!= 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareBadge']['stato']) header('Location: /'); ?> @@ -122,4 +122,4 @@ include_once('../../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/badge/utente.php b/gestione/badge/utente.php index 35899af..9ee8e73 100644 --- a/gestione/badge/utente.php +++ b/gestione/badge/utente.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareBadge']['stato']) header('Location: /'); ?> diff --git a/gestione/generale/dashboard.php b/gestione/generale/dashboard.php index bd9b709..3bd5f23 100644 --- a/gestione/generale/dashboard.php +++ b/gestione/generale/dashboard.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['dashboard']['stato']) header('Location: /'); ?> diff --git a/gestione/generale/dizionario.php b/gestione/generale/dizionario.php index 7ea64f2..07c2374 100644 --- a/gestione/generale/dizionario.php +++ b/gestione/generale/dizionario.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['dizionario']['stato']) header('Location: /'); ?> diff --git a/gestione/generale/index.php b/gestione/generale/index.php index 8caab97..954fa22 100644 --- a/gestione/generale/index.php +++ b/gestione/generale/index.php @@ -1,8 +1,14 @@ gestionePortale != 1) + $permessiUtente = $permessi -> whatCanHeDo($autenticazione -> id); + $dashboard = $permessiUtente['dashboard']['stato']; + $templates = $permessiUtente['visualizzareTemplate']['stato']; + $dizionario = $permessiUtente['dizionario']['stato']; + + if(!$dizionario && !$templates && !$dashboard) header('Location: /'); + ?> @@ -19,6 +25,9 @@

Gestione generale

+

Messaggi sulla dashboard

@@ -28,6 +37,11 @@ Apri Messaggi sulla dashboard
+

Templates

@@ -37,6 +51,11 @@ Apri Templates
+

Dizionario

@@ -47,6 +66,9 @@ Apri Dizionario
+
gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareTemplate']['stato']) header('Location: /'); ?> diff --git a/gestione/generale/templates/modifica.php b/gestione/generale/templates/modifica.php index 3bf7d75..144414b 100644 --- a/gestione/generale/templates/modifica.php +++ b/gestione/generale/templates/modifica.php @@ -1,7 +1,7 @@ gestionePortale!= 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareTemplate']['stato']) header('Location: /'); ?> diff --git a/gestione/index.php b/gestione/index.php index f9511db..5406b82 100644 --- a/gestione/index.php +++ b/gestione/index.php @@ -1,7 +1,17 @@ gestionePortale != 1) + $permessiUtente = $permessi -> whatCanHeDo($autenticazione -> id); + $dashboard = $permessiUtente['dashboard']['stato']; + $templates = $permessiUtente['visualizzareTemplate']['stato']; + $dizionario = $permessiUtente['dizionario']['stato']; + $makerspace = $permessiUtente['visualizzareMakerSpace']['stato']; + $log = $permessiUtente['visualizzareLog']['stato']; + $ricerca = $permessiUtente['visualizzareUtenti']['stato']; + $gruppi = $permessiUtente['visualizzareGruppi']['stato']; + $badge = $permessiUtente['visualizzareBadge']['stato']; + + if(!$ricerca && !$gruppi && !$badge && !$makerspace && !$log && !$dizionario && !$templates && !$dashboard) header('Location: /'); ?> @@ -28,6 +38,9 @@ Apri Gestione Utenti
+

Generale

@@ -37,6 +50,11 @@ Apri Gestione Generale
+

Maker Space

@@ -46,6 +64,11 @@ Apri Gestione Maker Space
+

Log

@@ -55,6 +78,9 @@ Vai a Log
+ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareLog']['stato']) header('Location: /'); ?> @@ -80,4 +80,4 @@ include_once('../inc/footer.inc.php'); ?> - \ No newline at end of file + diff --git a/gestione/logs.php b/gestione/logs.php index 2d5badd..25db5a8 100644 --- a/gestione/logs.php +++ b/gestione/logs.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareLog']['stato']) header('Location: /'); ?> diff --git a/gestione/makerspace/index.php b/gestione/makerspace/index.php index 207e3c0..dbb3bcc 100644 --- a/gestione/makerspace/index.php +++ b/gestione/makerspace/index.php @@ -1,7 +1,7 @@ gestionePortale != 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareMakerSpace']['stato']) header('Location: /'); ?> diff --git a/gestione/makerspace/makerspace.php b/gestione/makerspace/makerspace.php index c8f0e6a..6ec343d 100644 --- a/gestione/makerspace/makerspace.php +++ b/gestione/makerspace/makerspace.php @@ -1,8 +1,12 @@ gestionePortale != 1) + $permessiUtente = $permessi -> whatCanHeDo($autenticazione -> id); + if(!$permessiUtente['visualizzareMakerSpace']['stato']) header('Location: /'); + + $visualizzareTotem = $permessiUtente['visualizzareTotem']['stato']; + $gestireTotem = $permessiUtente['gestireTotem']['stato']; ?> @@ -22,10 +26,14 @@ #elencoTotem { margin-top: 10px; padding-top: 10px; border-top: 1px solid #cecece; } + + + + +
Gestione totem
+
+
"; echo "{$row['id']}"; echo "

{$row['nome']}

Token: {$row['token']}

"; - echo "Revoca token
Elimina"; + + if($gestireTotem) + echo "Revoca token
Elimina"; + + else + echo ''; + echo ""; } ?> @@ -111,6 +128,7 @@
diff --git a/gestione/permessi/gruppo/index.php b/gestione/permessi/gruppo/index.php new file mode 100644 index 0000000..7bb9fb4 --- /dev/null +++ b/gestione/permessi/gruppo/index.php @@ -0,0 +1,71 @@ + whatCanHeDo($autenticazione -> id)['visualizzarePermessi']['stato']) + header('Location: /'); +?> + + + + + + + + + +
+

Permessi del gruppo

+ real_escape_string(isset($_GET['id']) ? trim($_GET['id']) : ''); + + if(!preg_match("/^[0-9]+$/", $id)) + echo '

Impossibile completare la richiesta.

'; + + else { + + $permessiGruppo = $permessi -> getGroup((int)$id); + + if($permessiGruppo === false) { + $console -> alert('Impossibile richiedere i permessi del gruppo. '.$permessi -> mysqli -> error, $autenticazione -> id); + echo '

Impossibile completare la richiesta.

'; + + } else if(count($permessiGruppo) === 0) + echo '

Non sono presenti i permessi nel sistema.

'; + + else { + foreach($permessiGruppo as $key => $value) { + $default = ($value['default']) ? 'Abilitato' : 'Non abilitato'; + + echo '
'; + echo '
'; + echo '

'.$key.'

'; + echo '

'.$value['descrizione'].'
Default: '.$default.'

'; + echo '
'; + ?> + + '; + echo '
'; + } + } + } + ?> +
+ + + diff --git a/gestione/permessi/utente/index.php b/gestione/permessi/utente/index.php new file mode 100644 index 0000000..5d3c62c --- /dev/null +++ b/gestione/permessi/utente/index.php @@ -0,0 +1,73 @@ + whatCanHeDo($autenticazione -> id)['visualizzarePermessi']['stato']) + header('Location: /'); +?> + + + + + + + + + +
+

Permessi dell'utente

+

Tutti i permessi di default vengono ereditati dal gruppo di appartenenza.

+ real_escape_string(isset($_GET['id']) ? trim($_GET['id']) : ''); + + if(!preg_match("/^[0-9]+$/", $id)) + echo '

Impossibile completare la richiesta.

'; + + else { + + $permessiGruppo = $permessi -> getUser((int)$id); + + if($permessiGruppo === false) { + $console -> alert('Impossibile richiedere i permessi del gruppo. '.$permessi -> mysqli -> error, $autenticazione -> id); + echo '

Impossibile completare la richiesta.

'; + + } else if(count($permessiGruppo) === 0) + echo '

Non sono presenti i permessi nel sistema.

'; + + else { + foreach($permessiGruppo as $key => $value) { + $default = ($value['default']) ? 'Abilitato' : 'Non abilitato'; + + echo '
'; + echo '
'; + echo '

'.$key.'

'; + echo '

'.$value['descrizione'].'

'; + echo '
'; + ?> + + '; + echo '
'; + } + } + } + ?> +
+ + + diff --git a/gestione/presenze/presenze.php b/gestione/presenze/presenze.php index 7108d11..02193b2 100644 --- a/gestione/presenze/presenze.php +++ b/gestione/presenze/presenze.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzarePresenze']['stato']) + header('Location: /'); ?> @@ -7,7 +10,7 @@ - + diff --git a/gestione/transazioni/utenteFabCoin.php b/gestione/transazioni/utenteFabCoin.php index 4b9859b..90a44a4 100644 --- a/gestione/transazioni/utenteFabCoin.php +++ b/gestione/transazioni/utenteFabCoin.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareTransazioniFabCoin']['stato']) + header('Location: /'); ?> diff --git a/gestione/utenti/categorie.php b/gestione/utenti/categorie.php index 1e16543..43e8e5d 100644 --- a/gestione/utenti/categorie.php +++ b/gestione/utenti/categorie.php @@ -1,7 +1,8 @@ gestionePortale != 1) + $permessiTmp = $permessi -> whatCanHeDo($autenticazione -> id); + if(!$permessiTmp['visualizzareGruppi']['stato']) header('Location: /'); ?> @@ -19,12 +20,12 @@ ?>

Categorie utenti

+
-

Gestione portale

-

Gestione rete

+
ID Nome - Gestione portale - Gestione rete + Permessi Azioni @@ -54,29 +54,25 @@ // Stampo gli utenti while($row = $query -> result -> fetch_assoc()) { - if($row['gestioneRete'] == false) - $row['gestioneRete'] = 'Non abilitato'; - - else - $row['gestioneRete'] = 'Abilitato'; - - if($row['gestionePortale'] == false) - $row['gestionePortale'] = 'Non abilitato'; - - else - $row['gestionePortale'] = 'Abilitato'; - echo ""; echo "{$row['id']}"; echo "{$row['nome']}"; - echo "{$row['gestionePortale']}"; - echo "{$row['gestioneRete']}"; - if($row['id'] != 1) - echo "Elimina
Modifica nome
Sposta utenti"; + if($permessiTmp['visualizzarePermessi']['stato']) + echo "Apri"; else - echo "Modifica nome
Sposta utenti"; + echo ''; + + if($permessiTmp['gestioneGruppi']['stato']) { + if($row['id'] != 1) + echo "Elimina
Modifica nome
Sposta utenti"; + + else + echo "Modifica nome
Sposta utenti"; + + } else + echo ''; echo ""; } diff --git a/gestione/utenti/index.php b/gestione/utenti/index.php index 1f0d519..ac365bd 100644 --- a/gestione/utenti/index.php +++ b/gestione/utenti/index.php @@ -1,7 +1,12 @@ gestionePortale != 1) + $permessiUtente = $permessi -> whatCanHeDo($autenticazione -> id); + $ricerca = $permessiUtente['visualizzareUtenti']['stato']; + $gruppi = $permessiUtente['visualizzareGruppi']['stato']; + $badge = $permessiUtente['visualizzareBadge']['stato']; + + if(!$ricerca && !$gruppi && !$badge) header('Location: /'); ?> @@ -19,6 +24,7 @@

Gestione utenti

+

Ricerca utenti

@@ -28,6 +34,11 @@ Vai a Ricerca utenti
+

Categorie utenti

@@ -37,6 +48,11 @@ Vai a Categorie utenti
+

Ricerca badge

@@ -46,10 +62,11 @@ Vai a Ricerca Badge
+
- \ No newline at end of file + diff --git a/gestione/utenti/ricerca.php b/gestione/utenti/ricerca.php index cb5eb66..bdfa52e 100644 --- a/gestione/utenti/ricerca.php +++ b/gestione/utenti/ricerca.php @@ -1,7 +1,7 @@ gestionePortale!= 1) + if(!$permessi -> whatCanHeDo($autenticazione -> id)['visualizzareUtenti']['stato']) header('Location: /'); ?> diff --git a/gestione/utenti/social.php b/gestione/utenti/social.php index e0ff47e..eb42957 100644 --- a/gestione/utenti/social.php +++ b/gestione/utenti/social.php @@ -1,5 +1,8 @@ whatCanHeDo($autenticazione -> id)['visualizzareUtenti']['stato']) + header('Location: /'); ?> diff --git a/gestione/utenti/utente.php b/gestione/utenti/utente.php index 933adf7..77638f2 100644 --- a/gestione/utenti/utente.php +++ b/gestione/utenti/utente.php @@ -1,7 +1,8 @@ gestionePortale != 1) + $permessiTmp = $permessi -> whatCanHeDo($autenticazione -> id); + if(!$permessiTmp['visualizzareUtenti']['stato']) header('Location: /'); ?> @@ -68,11 +69,12 @@ ?>

Profilo di

- - - + + + - + +
Profilo
@@ -96,22 +98,6 @@
-
- - -
-
- - -