From 35ff83d1d050bc64ecbf18b4fc4335601000a296 Mon Sep 17 00:00:00 2001 From: Vichingo455 Date: Fri, 3 Oct 2025 10:15:25 +0200 Subject: [PATCH] Introduzione modalita' sviluppatore e vari change --- docker/php/config.php | 3 +++ htdocs/admin/classes.php | 5 +++++ htdocs/admin/index.php | 6 ++++++ htdocs/admin/login.php | 29 ++++++++++++++++++++++------- htdocs/admin/subjects.php | 5 +++++ htdocs/admin/timetable.php | 5 +++++ htdocs/config/config.php | 3 +++ htdocs/lib/db.php | 5 ++++- 8 files changed, 53 insertions(+), 8 deletions(-) diff --git a/docker/php/config.php b/docker/php/config.php index 5999ea6..eaf47cf 100644 --- a/docker/php/config.php +++ b/docker/php/config.php @@ -19,6 +19,9 @@ if (!defined('APP_NAME')) { if (!defined('YEAR')) { define('YEAR', '2025/26'); } +if (!defined('DEV_MODE')) { + define('DEV_MODE', false); // Modalita' di sviluppo +} // Impostazioni autenticazione dashboard amministrativa if (!defined('AUTH_TYPE')) { define('AUTH_TYPE','local'); // Può essere local (integrata), keycloak, google diff --git a/htdocs/admin/classes.php b/htdocs/admin/classes.php index f55808e..6fa6cc5 100644 --- a/htdocs/admin/classes.php +++ b/htdocs/admin/classes.php @@ -58,6 +58,11 @@ if (isset($_GET['delete'])) { Nota: Questa pagina si vede meglio da computer desktop. Se sei da computer, puoi ignorare questo messaggio.

Copyright (C) 2025 EmmeV. - Released under GNU AGPL 3.0 License.

+ [DEBUG] Tipo di autenticazione: " . $_SESSION['auth_type'] . "

"; + } + ?> diff --git a/htdocs/admin/index.php b/htdocs/admin/index.php index 3e96888..ff73e3c 100644 --- a/htdocs/admin/index.php +++ b/htdocs/admin/index.php @@ -1,4 +1,5 @@

Copyright (C) 2025 EmmeV. - Released under GNU AGPL 3.0 License.

+ [DEBUG] Tipo di autenticazione: " . $_SESSION['auth_type'] . "

"; + } + ?> diff --git a/htdocs/admin/login.php b/htdocs/admin/login.php index de984f7..8f519e2 100644 --- a/htdocs/admin/login.php +++ b/htdocs/admin/login.php @@ -16,13 +16,20 @@ if ($_SERVER["REQUEST_METHOD"] == "POST" && AUTH_TYPE == 'local') { if (password_verify($password, $row['password'])) { $_SESSION['admin'] = $row['username']; $_SESSION['auth_type'] = 'local'; - header("Location: index.php"); + if (DEV_MODE) { + echo "[DEBUG] Password " . $password . " trovata con l'hash " . $row['password'] . '. Vai al panello amministrativo'; + } + else { + header("Location: index.php"); + } exit; + } else if (DEV_MODE) { + echo "[DEBUG] Password " . $password . " non trovata nel database."; } } $error = "Credenziali non valide"; - } catch { - $error = "Errore durante l'autenticazione. Potrebbe essere un problema con PHP oppure col database."; + } catch (Exception $e) { + $error = "Errore durante l'autenticazione. Potrebbe essere un problema con PHP oppure col database. Ulteriori dettagli: " . $e; } } if (AUTH_TYPE == 'local') { @@ -76,7 +83,7 @@ else if (AUTH_TYPE === 'keycloak') { $_SESSION['auth_type'] = 'keycloak'; header("Location: index.php"); exit; - } catch { + } catch (Exception $e) { http_response_code(500); echo << @@ -99,7 +106,11 @@ else if (AUTH_TYPE === 'keycloak') {

Login Admin

HTML; -echo "
Errore durante l'autenticazione con Keycloak. Assicurati di avere impostato i vari parametri correttamente.
"; +if (DEV_MODE) { + echo "
Errore durante l'autenticazione con Keycloak. Assicurati di avere impostato i vari parametri correttamente. Ulteriori dettagli: " . $e . "
"; +} else { + echo "
Errore durante l'autenticazione con Keycloak. Contatta l'amministratore del sito.
"; +} echo <<

Copyright (C) 2025 EmmeV. - Released under GNU AGPL 3.0 License.

@@ -165,7 +176,7 @@ HTML; exit; } } - } catch { + } catch (Exception $e) { http_response_code(500); echo << @@ -188,7 +199,11 @@ HTML; diff --git a/htdocs/admin/timetable.php b/htdocs/admin/timetable.php index ae2bd64..cc756ca 100644 --- a/htdocs/admin/timetable.php +++ b/htdocs/admin/timetable.php @@ -156,6 +156,11 @@ if ($class_id > 0) { Nota: Questa pagina si vede meglio da computer desktop. Se sei da computer, puoi ignorare questo messaggio.

Copyright (C) 2025 EmmeV. - Released under GNU AGPL 3.0 License.

+ [DEBUG] Tipo di autenticazione: " . $_SESSION['auth_type'] . "

"; + } + ?>