From 4ee40e3a4d37aff274b3171294feda19d38f65c5 Mon Sep 17 00:00:00 2001
From: filippo.bertilotti <filippobertilotti@gmail.com>
Date: Fri, 17 May 2024 11:32:35 +0200
Subject: [PATCH] spostata gestione delle exception nella classe apposita (parte 106)

---
 src/Framework/ErrorHandler.php |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/src/Framework/ErrorHandler.php b/src/Framework/ErrorHandler.php
index e24d8ff..b9ca0e1 100644
--- a/src/Framework/ErrorHandler.php
+++ b/src/Framework/ErrorHandler.php
@@ -5,6 +5,7 @@
 namespace Framework;
 
 use ErrorException;
+use Throwable;
 
 class ErrorHandler {
     public static function handleError(
@@ -16,4 +17,25 @@
         {
             throw new ErrorException($errstr,0, $errno, $errfile, $errline);
     }
+    public static function handleException(Throwable $exception) {
+        static $show_errors = true;
+    
+        if($exception instanceof Exceptions\PageNotFoundException) {
+            http_response_code(404);
+            $template = "404.php";
+        } else {
+            http_response_code(500);
+            $template = "500.php";
+        }
+    
+        if($show_errors) {
+            ini_set("display_errors", "1");
+        }else{
+            ini_set("display_errors","0");
+            ini_set("log_errors","1");
+            require "views/$template";
+        }
+    
+        throw $exception;
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0