summaryrefslogtreecommitdiff
path: root/src/view/GridBuilder.php
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2025-04-06 12:18:49 +0200
committerpolo <ordipolo@gmx.fr>2025-04-06 12:18:49 +0200
commit68b6058e2a27fc251c117c4efeb141392a0c9736 (patch)
tree5c029b2c147bd14f777765d41bc623582c81daa2 /src/view/GridBuilder.php
parente4a325c9d5c07f09bc18b7e366ffb82b82c43502 (diff)
downloadcms-68b6058e2a27fc251c117c4efeb141392a0c9736.zip
nouvel article, boutons dans les builders, makeArticleNode, JS MAJ page, tri quand déplacement ou suppression
Diffstat (limited to 'src/view/GridBuilder.php')
-rw-r--r--src/view/GridBuilder.php47
1 files changed, 33 insertions, 14 deletions
diff --git a/src/view/GridBuilder.php b/src/view/GridBuilder.php
index 6e16d46..e183e6f 100644
--- a/src/view/GridBuilder.php
+++ b/src/view/GridBuilder.php
@@ -7,6 +7,7 @@ class GridBuilder extends AbstractBuilder
7{ 7{
8 public function __construct(Node $node) 8 public function __construct(Node $node)
9 { 9 {
10 parent::__construct($node);
10 $viewFile = self::VIEWS_PATH . $node->getName() . '.php'; 11 $viewFile = self::VIEWS_PATH . $node->getName() . '.php';
11 12
12 if(file_exists($viewFile)) 13 if(file_exists($viewFile))
@@ -18,32 +19,50 @@ class GridBuilder extends AbstractBuilder
18 19
19 // ajouter un article 20 // ajouter un article
20 $new_article = ''; 21 $new_article = '';
21 $new_article_admin_buttons = '';
22 if($_SESSION['admin']) 22 if($_SESSION['admin'])
23 { 23 {
24 $id = 'new'; 24 $id = 'n' . $this->id_node;
25 $js = 'onclick="openEditor(\'' . $id . '\')"'; 25 $js = 'onclick="openEditor(\'' . $id . '\')"';
26 26
27 if(Director::$page_path->getLast()->getEndOfPath() === 'accueil') 27 $share_button = '<p class="share hidden"><img class="action_icon" src="assets/share.svg"></p>';
28 { 28 $html = '';
29 $new_article = '<article><p id="new"></p>' . "\n" . 29
30 '<p><a href="' . new URL(['page' => 'article']) . '"><button><img class="action_icon" src="assets/edit.svg">Nouvel article</button></a></p>'; 30 if(CURRENT_PAGE === 'accueil'){
31 $new_button = '<p><a class="link_to_article" href="' . new URL(['page' => 'article', 'id' => $id]) . '">
32 <button><img class="action_icon" src="assets/book-open.svg">Nouvel article</button></a></p>';
31 } 33 }
32 else 34 else{
33 { 35 $new_button = '<p id="new-' . $id . '">' . "\n" .
34 $new_article = '<article><p id="new"></p>' . "\n" . 36 '<button ' . $js . '><img class="action_icon" src="assets/edit.svg">Nouvel article</button></p>';
35 '<p id="new-' . $id . '"><a href="#"><button ' . $js . '><img class="action_icon" src="assets/edit.svg">Nouvel article</button></a></p>';
36 } 37 }
38
39 $modify_js = 'onclick="openEditor(\'' . $id . '\')"';
40 $modify_article = '<p id="edit-' . $id . '" class="hidden"><img class="action_icon" src="assets/edit.svg" ' . $modify_js . '></p>' . "\n";
41
42 $up_js = 'onclick="switchPositions(\'' . $id . '\', \'up\')"';
43 $up_button = '<p id="position_up-' . $id . '" class="hidden"><img class="action_icon" src="assets/arrow-up.svg" ' . $up_js . '></p>' . "\n";
37 44
45 $down_js = 'onclick="switchPositions(\'' . $id . '\', \'down\')"';
46 $down_button = '<p id="position_down-' . $id . '" class="hidden"><img class="action_icon" src="assets/arrow-down.svg" ' . $down_js . '></p>' . "\n";
47
48 $delete_js = 'onclick="deleteArticle(\'' . $id . '\')"';
49 $delete_article = '<p id="delete-' . $id . '" class="hidden"><img class="action_icon" src="assets/delete-bin.svg" ' . $delete_js . '></p>' . "\n";
50
38 $close_js = 'onclick="closeEditor(\'' . $id . '\')"'; 51 $close_js = 'onclick="closeEditor(\'' . $id . '\')"';
39 $close_editor = '<div class="article_admin_zone"><p id="cancel-' . $id . '" class="hidden"><a href="#"><button ' . $close_js . '>Annuler</button></a></p>'; 52 $close_editor = '<p id="cancel-' . $id . '" class="hidden"><button ' . $close_js . '>Annuler</button></p>';
40 53
41 $submit_js = 'onclick="submitArticle(\'' . $id . '\')"'; 54 $submit_js = 'onclick="submitArticle(\'' . $id . '\', \'\', clone' . $this->id_node . ')"';
42 $submit_article = '<p id="submit-' . $id . '" class="hidden"><a href="#"><button ' . $submit_js . '>Valider</button></a></p></div></article>'; 55 $submit_article = '<p id="submit-' . $id . '" class="hidden"><button ' . $submit_js . '>Valider</button></p>';
43 56
44 $new_article_admin_buttons = $close_editor . $submit_article; 57 $admin_buttons = $new_button . $modify_article . $up_button . $down_button . $delete_article . $close_editor . $submit_article;
58
59 // squelette d'un nouvel article
60 ob_start();
61 require self::VIEWS_PATH . 'article.php';
62 $new_article = ob_get_clean();
45 } 63 }
46 64
65 // articles existants
47 $this->useChildrenBuilder($node); 66 $this->useChildrenBuilder($node);
48 $content = $this->html; 67 $content = $this->html;
49 68