From f653506421ee8e2c46c78e93d28ee2418a1d399d Mon Sep 17 00:00:00 2001 From: polo Date: Tue, 28 Oct 2025 23:23:03 +0100 Subject: =?UTF-8?q?modification=20liens=20r=C3=A9seaux=20sociaux,=20placeh?= =?UTF-8?q?older=20input=20text,=20correction=20erreurs=20CSS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/controller/HeadFootController.php | 11 ++++++++- src/model/entities/NodeData.php | 2 +- src/view/FooterBuilder.php | 6 ++--- src/view/HeaderBuilder.php | 43 +++++++++++++++++++++-------------- src/view/templates/header.php | 12 ++++++---- 5 files changed, 48 insertions(+), 26 deletions(-) (limited to 'src') diff --git a/src/controller/HeadFootController.php b/src/controller/HeadFootController.php index d3e75ee..ffa33bc 100644 --- a/src/controller/HeadFootController.php +++ b/src/controller/HeadFootController.php @@ -9,6 +9,8 @@ use Doctrine\ORM\EntityManager; class HeadFootController { + static array $social_networks = ['facebook', 'instagram', 'linkedin', 'github']; // à completer + static public function setTextData(EntityManager $entityManager, string $request_params, array $json): void { $params_array = explode('_', $request_params); // header_title, header_description, footer_name, footer_address, footer_email @@ -20,7 +22,14 @@ class HeadFootController $model = new Model($entityManager); if($model->findWhateverNode('name_node', $params_array[0])){ $node_data = $model->getNode()->getNodeData(); - $node_data->updateData($params_array[1], $json['new_text']); // $params_array[1] n'est pas contrôlé + if(in_array($params_array[1], self::$social_networks)){ + $social = $node_data->getData()['social']; + $social[$params_array[1]] = $json['new_text']; + $node_data->updateData('social', $social); + } + else{ + $node_data->updateData($params_array[1], $json['new_text']); // $params_array[1] n'est pas contrôlé + } $entityManager->flush(); echo json_encode(['success' => true]); } diff --git a/src/model/entities/NodeData.php b/src/model/entities/NodeData.php index 47e7208..ed94f1b 100644 --- a/src/model/entities/NodeData.php +++ b/src/model/entities/NodeData.php @@ -67,7 +67,7 @@ class NodeData { $this->data = $data; }*/ - public function updateData(string $key, string $value = ''): void + public function updateData(string $key, string|array $value = ''): void { if($value !== ''){ $this->data[$key] = $value; diff --git a/src/view/FooterBuilder.php b/src/view/FooterBuilder.php index 277de4b..d810170 100644 --- a/src/view/FooterBuilder.php +++ b/src/view/FooterBuilder.php @@ -30,15 +30,15 @@ class FooterBuilder extends AbstractBuilder if($_SESSION['admin']) { // données du footer - $admin_footer_name = ' + $admin_footer_name = ' '; - $admin_footer_address = ' + $admin_footer_address = ' '; - $admin_footer_email = ' + $admin_footer_email = ' '; diff --git a/src/view/HeaderBuilder.php b/src/view/HeaderBuilder.php index 4651418..4fbf941 100644 --- a/src/view/HeaderBuilder.php +++ b/src/view/HeaderBuilder.php @@ -48,13 +48,6 @@ class HeaderBuilder extends AbstractBuilder $header_background_name = $node_data->getAssetByRole('header_background')?->getFileName(); $header_background = $header_background_name ? Asset::USER_PATH . $header_background_name : ''; - $keys = array_keys($social); - $social_networks = ''; - foreach($keys as $one_key){ - $social_networks .= ' - ' . $one_key . '_alt'; - } - // boutons mode admin if($_SESSION['admin']){ // assets dans classe header_additional_inputs @@ -74,29 +67,40 @@ class HeaderBuilder extends AbstractBuilder '; // texte dans classe header_content - $admin_header_title = ' + $admin_header_title = ' '; - $admin_header_description = ' + $admin_header_description = ' '; // icônes réseaux sociaux - $social_networks_inputs = '';*/ } else{ $admin_favicon = ''; @@ -104,7 +108,12 @@ class HeaderBuilder extends AbstractBuilder $admin_header_logo = ''; $admin_header_title = ''; $admin_header_description = ''; - $admin_social_networks = ''; + $header_social_flex_direction = 'row'; + $admin_social_networks = []; + foreach(array_keys($social) as $one_key){ + $admin_social_networks[$one_key] = ''; + } + $admin_social_new_network = ''; } ob_start(); diff --git a/src/view/templates/header.php b/src/view/templates/header.php index 9c74f9b..89cdd4b 100644 --- a/src/view/templates/header.php +++ b/src/view/templates/header.php @@ -35,10 +35,15 @@
-
- +
+ +
+ <?= $one_key ?>_alt + +
+ +
-
@@ -50,7 +55,6 @@ let header_logo = new InputFile('header_logo'); let header_title = new InputText('header_title'); let header_description = new InputText('header_description'); - let header_social = new InputToggler('header_social'); \ No newline at end of file -- cgit v1.2.3