From 766451d7a969ca8b6b80d7da206ef76e3f376925 Mon Sep 17 00:00:00 2001
From: filippo.bertilotti <filippobertilotti@gmail.com>
Date: Tue, 21 May 2024 10:15:31 +0200
Subject: [PATCH] creazione di una base Model da applicare a tutti i modelli (parte 120)

---
 src/App/Controllers/products.php |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/src/App/Controllers/products.php b/src/App/Controllers/products.php
index db7d554..684e90c 100644
--- a/src/App/Controllers/products.php
+++ b/src/App/Controllers/products.php
@@ -1,17 +1,32 @@
 <?php
 namespace App\Controllers;
 use App\Models\Product;
+use Framework\Exceptions\PageNotFoundException;
+use Framework\Viewer;
 class Products {
+    public function __construct(private Viewer $viewer, private Product $model) { }
     public function index() {
+        
+        $products = $this->model->findAll();
 
-        $model = new Product;
-        $products = $model->getData();
-
-        require "views/products_index.php";
+        echo $this->viewer->render("shared/header.php");
+        echo $this->viewer->render("Products/index.php", [
+            "products"=> $products
+        ]);
     }
 
     public function show(string $id) {
-        var_dump($id);
-        require "views/products_show.php";
+        $product = $this->model->find($id);
+        if( $product == false ) {
+            throw new PageNotFoundException("Product not found");
+        }
+        echo $this->viewer->render("shared/header.php");
+        echo $this->viewer->render("Products/show.php", [
+            "product"=> $product
+        ]);
+    }
+
+    public function showPage(string $title, string $id, string $page) {
+        echo $title, " ", $id, " ", $page;
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0