From df3612ed7e6691530503f79483d2fdbc032d01b8 Mon Sep 17 00:00:00 2001 From: polo-pc-greta Date: Thu, 27 Mar 2025 10:13:03 +0100 Subject: mise en ligne github --- src/view/HeaderBuilder.php | 64 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/view/HeaderBuilder.php (limited to 'src/view/HeaderBuilder.php') diff --git a/src/view/HeaderBuilder.php b/src/view/HeaderBuilder.php new file mode 100644 index 0000000..252958a --- /dev/null +++ b/src/view/HeaderBuilder.php @@ -0,0 +1,64 @@ +getChildren(); + foreach($children as $child) + { + if($child->getName() === 'nav') + { + $this->nav = $child; + $nav_builder = new NavBuilder($this->nav); + $nav = $nav_builder->render(); + } + } + + $viewFile = self::VIEWS_PATH . $node->getName() . '.php'; + + if(file_exists($viewFile)) + { + // titre et description + if(!empty($node->getNodeData()->getData())) + { + extract($node->getNodeData()->getData()); + } + + // attributs, aucun pour l'instant + if(!empty($node->getAttributes())) + { + extract($node->getAttributes()); + } + + // header logo + réseaux sociaux + $targets = ['logo', 'facebook', 'instagram', 'fond_piscine']; + $i = 0; + foreach($node->getNodeData()->getImages() as $image) + { + if(str_contains($image->getFileName(), $targets[$i])) + { + $var = $targets[$i]; + $$var = rtrim($image->getFilePathMini(), '/'); + $var .= '_alt'; // ex: logo_alt + $$var = $image->getAlt(); + } + $i++; + } + + // générer HTML réseaux sociaux + // + + ob_start(); + require $viewFile; + $this->html .= ob_get_clean(); + } + } +} \ No newline at end of file -- cgit v1.2.3