progetto fatto precedentemente adattato al framework creato con il corso
filippo.bertilotti
2024-06-10 3e685fa675e58af50c45a2c1f8a3f35ff5f16ddf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
 
declare(strict_types= 1);
 
namespace Framework;
abstract class Controller {
    protected Request $request;
 
    protected Response $response;
 
    protected TemplateViewerInterface $viewer;
 
    public function setResponse(Response $response) : void {
        $this->response = $response;
    }
 
    public function setRequest(Request $request): void {
        $this->request = $request;
    }
 
    public function setViewer(TemplateViewerInterface $viewer): void {
        $this->viewer = $viewer;
    }
 
    protected function view(string $template, array $data = []) : Response {
        $this->response->setBody($this->viewer->render($template, $data));
 
        return $this->response;
 
    }
 
    protected function redirect(string $url): Response {
        $this->response->redirect($url);
        return $this->response;
    }
}