aboutsummaryrefslogtreecommitdiff
path: root/src/view/ViewDirector.php
blob: c1a38b8f4a748be52ab99538c9b48034d0f9f3c8 (plain)
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
<?php
// src/view/ViewDirector.php
//
// génère le HTML avec des Builder

declare(strict_types=1);

use App\Entity\Node;

class ViewDirector extends AbstractBuilder // ViewDirector est le premier Builder
{
    public Node $root_node;

    public function __construct(){} // surcharge celui de AbstractBuilder

    public function buildHTML(Node $root_node): string
    {
        $this->root_node = $root_node;
        $this->useChildrenBuilder($this->root_node);

        if(isset($_SESSION['flash_message'])){
            $this->html .= '<script>window.flash_message = "' . $_SESSION['flash_message'] . '";</script>';
            unset($_SESSION['flash_message']);
        }

        return $this->html;
    }
}