aboutsummaryrefslogtreecommitdiff
path: root/src/view/NewBuilder.php
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2025-09-09 15:37:50 +0200
committerpolo <ordipolo@gmx.fr>2025-09-09 15:37:50 +0200
commit5e41bea598ff38b3c520b69fd92ee3412e716df2 (patch)
treeb4b57a7201db1efe484446383042f9a43fd2deff /src/view/NewBuilder.php
parentc5d9df5c42b5d2522e2a06b5f40422c1bbf497ab (diff)
downloadcms-5e41bea598ff38b3c520b69fd92ee3412e716df2.zip
fin de l'utilisation du champ article_timestamp de la table node, résolue erreur lorsque deux news sont créées dans la même minute (pas dans la même seconde par contre)
Diffstat (limited to 'src/view/NewBuilder.php')
-rw-r--r--src/view/NewBuilder.php62
1 files changed, 39 insertions, 23 deletions
diff --git a/src/view/NewBuilder.php b/src/view/NewBuilder.php
index 332d92b..9965d15 100644
--- a/src/view/NewBuilder.php
+++ b/src/view/NewBuilder.php
@@ -9,31 +9,47 @@ class NewBuilder extends AbstractBuilder
9{ 9{
10 static public bool $new_article_mode = false; 10 static public bool $new_article_mode = false;
11 11
12 public function __construct(Node $node, ) 12 public function __construct(Node $node)
13 { 13 {
14 $viewFile = self::VIEWS_PATH . $node->getName() . '.php'; 14 $viewFile = self::VIEWS_PATH . $node->getName() . '.php';
15 15
16 if(file_exists($viewFile)) 16 if(file_exists($viewFile))
17 { 17 {
18 // id (timestamp) 18 if(self::$new_article_mode){
19 if(!empty($node->getAttributes())) 19 $id = $_GET['id']; // ici l'id est le nom du block news_block parent
20 { 20 $title = '';
21 extract($node->getAttributes()); 21 $preview = '';
22
23 // lettre au début de l'id: t = title, p = preview, i = article, d = date
24 $id_title = $id;
25 $id_title[0] = 't';
26 $id_preview = $id;
27 $id_preview[0] = 'p';
28 $id_content = 'i' . $id;
29 $id_content[0] = 'i';
30 $id_date = $id;
31 $id_date[0] = 'd';
22 } 32 }
33 else{
34 $id = (string)$node->getId();
23 35
24 // html, date 36 // id (timestamp)
25 $title = $node->getArticle()->getTitle(); 37 if(!empty($node->getAttributes()))
26 $preview = $node->getArticle()->getPreview(); 38 {
27 39 extract($node->getAttributes());
28 // lettre au début de l'id: i = article, p = preview, t = title, d = date 40 }
29 $id = $node->getArticleTimestamp();
30 $id_title = $id;
31 $id_title[0] = 't';
32 $id_preview = $id;
33 $id_preview[0] = 'p';
34 $id_date = $id;
35 $id_date[0] = 'd';
36 41
42 // html, date
43 $title = $node->getArticle()->getTitle();
44 $preview = $node->getArticle()->getPreview();
45
46 // lettre au début de l'id: t = title, p = preview, i = article, d = date
47 $id_title = 't' . $id;
48 $id_preview = 'p' . $id;
49 $id_content = 'i' . $id;
50 $id_date = 'd' . $id;
51 }
52
37 $content = ''; 53 $content = '';
38 54
39 // page article unique 55 // page article unique
@@ -85,12 +101,12 @@ class NewBuilder extends AbstractBuilder
85 $submit_preview = '<p id="submit-' . $id_preview . '" class="hidden"><button ' . $submit_js_preview . '>Valider</button></p>'; 101 $submit_preview = '<p id="submit-' . $id_preview . '" class="hidden"><button ' . $submit_js_preview . '>Valider</button></p>';
86 $preview_buttons = '<div class="button_zone">' . $modify_preview . $close_editor_preview . $submit_preview . '</div>'; 102 $preview_buttons = '<div class="button_zone">' . $modify_preview . $close_editor_preview . $submit_preview . '</div>';
87 103
88 $article_js = 'onclick="openEditor(\'' . $id . '\')"'; 104 $article_js = 'onclick="openEditor(\'' . $id_content . '\')"';
89 $modify_article = '<p id="edit-' . $id . '"><button ' . $article_js . '><img class="action_icon" src="assets/edit.svg">Article</button></p>' . "\n"; 105 $modify_article = '<p id="edit-' . $id_content . '"><button ' . $article_js . '><img class="action_icon" src="assets/edit.svg">Article</button></p>' . "\n";
90 $close_js_article = 'onclick="closeEditor(\'' . $id . '\')"'; 106 $close_js_article = 'onclick="closeEditor(\'' . $id_content . '\')"';
91 $close_editor_article = '<p id="cancel-' . $id . '" class="hidden"><button ' . $close_js_article . '>Annuler</button></p>'; 107 $close_editor_article = '<p id="cancel-' . $id_content . '" class="hidden"><button ' . $close_js_article . '>Annuler</button></p>';
92 $submit_js_article = 'onclick="submitArticle(\'' . $id . '\')"'; 108 $submit_js_article = 'onclick="submitArticle(\'' . $id_content . '\')"';
93 $submit_article = '<p id="submit-' . $id . '" class="hidden"><button ' . $submit_js_article . '>Valider</button></p>'; 109 $submit_article = '<p id="submit-' . $id_content . '" class="hidden"><button ' . $submit_js_article . '>Valider</button></p>';
94 $article_buttons = '<div class="button_zone">' . $modify_article . $close_editor_article . $submit_article . '</div>'; 110 $article_buttons = '<div class="button_zone">' . $modify_article . $close_editor_article . $submit_article . '</div>';
95 111
96 $date_js = 'onclick="changeDate(\'' . $id_date . '\', \'article\');'; 112 $date_js = 'onclick="changeDate(\'' . $id_date . '\', \'article\');';