From 5311271ae590460b986e3e09edcdc665b73710ca Mon Sep 17 00:00:00 2001 From: polo Date: Fri, 24 Oct 2025 02:27:19 +0200 Subject: =?UTF-8?q?entit=C3=A9=20pour=20table=20interm=C3=A9diaire=20?= =?UTF-8?q?=C3=A0=203=20champs=20entre=20NodeData=20et=20Asset,=20table=20?= =?UTF-8?q?Asset=20repens=C3=A9e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/view/FooterBuilder.php | 10 +++++++--- src/view/HeadBuilder.php | 15 +++------------ src/view/HeaderBuilder.php | 23 ++++++++++++----------- src/view/templates/footer.php | 2 +- src/view/templates/head.php | 4 ++-- src/view/templates/header.php | 2 +- 6 files changed, 26 insertions(+), 30 deletions(-) (limited to 'src/view') diff --git a/src/view/FooterBuilder.php b/src/view/FooterBuilder.php index 35df010..fcb78e0 100644 --- a/src/view/FooterBuilder.php +++ b/src/view/FooterBuilder.php @@ -4,6 +4,7 @@ declare(strict_types=1); use App\Entity\Node; +use App\Entity\Asset; class FooterBuilder extends AbstractBuilder { @@ -13,12 +14,15 @@ class FooterBuilder extends AbstractBuilder if(file_exists($viewFile)) { - // $adresses postale et e-mail - if(!empty($node->getNodeData()->getData())) + $node_data = $node->getNodeData(); + // nom du contact, adresse et e-mail + if(!empty($node_data->getData())) { - extract($node->getNodeData()->getData()); + extract($node_data->getData()); } + $footer_logo = Asset::USER_PATH . $node_data->getAssetByRole('footer_logo')?->getFileName() ?? ''; + $this->useChildrenBuilder($node); $breadcrumb = $this->html; diff --git a/src/view/HeadBuilder.php b/src/view/HeadBuilder.php index b3d78aa..fd7f751 100644 --- a/src/view/HeadBuilder.php +++ b/src/view/HeadBuilder.php @@ -49,18 +49,9 @@ class HeadBuilder extends AbstractBuilder $description = Model::$page_path->getLast()->getDescription(); // favicon - /*foreach($node->getNodeData()->getImages() as $image) - { - if(str_contains($image->getFileName(), 'favicon')) - { - $favicon = rtrim($image->getFilePathMini(), '/'); - $alt = $image->getAlt(); - } - }*/ - - // en dur temporairement - $favicon = Asset::USER_PATH . 'favicon48x48.png'; - $alt = 'favicon'; + // ?-> est l'opérateur de navigation sécurisée => LOVE! + $favicon = Asset::USER_PATH . ($favicon_object = $node->getNodeData()->getAssetByRole('head_favicon'))?->getFileName() ?? ''; + $favicon_type = $favicon_object?->getMimeType() ?? ''; ob_start(); require $viewFile; diff --git a/src/view/HeaderBuilder.php b/src/view/HeaderBuilder.php index 3b45a11..44e244d 100644 --- a/src/view/HeaderBuilder.php +++ b/src/view/HeaderBuilder.php @@ -3,8 +3,8 @@ declare(strict_types=1); -use App\Entity\Asset; use App\Entity\Node; +use App\Entity\Asset; class HeaderBuilder extends AbstractBuilder { @@ -35,18 +35,18 @@ class HeaderBuilder extends AbstractBuilder if(file_exists($viewFile)) { + $node_data = $node->getNodeData(); // titre et description - // => retourne $titre, $description et le tableau associatif: $social - if(!empty($node->getNodeData()->getData())) + if(!empty($node_data->getData())) { - extract($node->getNodeData()->getData()); + extract($node_data->getData()); } // réseaux sociaux + logo dans l'entête + $header_logo = Asset::USER_PATH . $node_data->getAssetByRole('header_logo')?->getFileName() ?? ''; + $header_background = Asset::USER_PATH . $node_data->getAssetByRole('header_background')?->getFileName() ?? ''; $keys = array_keys($social); $social_networks = ''; - //$header_logo; - //$header_background; // nécéssite des entrées dans la table node_asset /*foreach($node->getNodeData()->getAssets() as $asset) @@ -80,20 +80,21 @@ class HeaderBuilder extends AbstractBuilder // boutons mode admin if($_SESSION['admin']){ + // assets dans classe editing_zone $editing_zone_margin = '5px'; - $favicon = Asset::USER_PATH . 'favicon48x48.png'; // double le code dans HeadBuilder - $buttons_favicon = ' + $buttons_favicon = ' + '; - $background = Asset::USER_PATH . 'fond-piscine.jpg'; - $buttons_background = ' + $buttons_background = ' '; + // asset dans classe header_content $buttons_header_logo = ' '; - + // texte dans classe header_content $buttons_header_title = ' '; diff --git a/src/view/templates/footer.php b/src/view/templates/footer.php index 2bb5a9e..4db38ae 100644 --- a/src/view/templates/footer.php +++ b/src/view/templates/footer.php @@ -20,7 +20,7 @@ diff --git a/src/view/templates/head.php b/src/view/templates/head.php index 83a0e7c..bce0a19 100644 --- a/src/view/templates/head.php +++ b/src/view/templates/head.php @@ -2,12 +2,12 @@ + <?= $title ?> - + - \ No newline at end of file diff --git a/src/view/templates/header.php b/src/view/templates/header.php index b63aa84..ac8af7f 100644 --- a/src/view/templates/header.php +++ b/src/view/templates/header.php @@ -18,7 +18,7 @@
-- cgit v1.2.3