aboutsummaryrefslogtreecommitdiff
path: root/src/model/entities
diff options
context:
space:
mode:
Diffstat (limited to 'src/model/entities')
-rw-r--r--src/model/entities/Page.php36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/model/entities/Page.php b/src/model/entities/Page.php
index 3e90dbc..8d3dd40 100644
--- a/src/model/entities/Page.php
+++ b/src/model/entities/Page.php
@@ -40,14 +40,6 @@ class Page
40 static private array $default_css = ['body', 'head', 'nav', 'foot']; 40 static private array $default_css = ['body', 'head', 'nav', 'foot'];
41 static private array $default_js = ['main']; 41 static private array $default_js = ['main'];
42 42
43 /* remplissage
44 UPDATE nb_page
45 JOIN nb_node ON nb_node.page_id = nb_page.id_page
46 SET nb_page.css = JSON_EXTRACT(nb_node.attributes, '$.css_array');
47 UPDATE nb_page
48 JOIN nb_node ON nb_node.page_id = nb_page.id_page
49 SET nb_page.js = JSON_EXTRACT(nb_node.attributes, '$.js_array'); */
50
51 #[ORM\Column(type: "boolean")] 43 #[ORM\Column(type: "boolean")]
52 private bool $reachable; 44 private bool $reachable;
53 45
@@ -120,30 +112,38 @@ class Page
120 { 112 {
121 $this->description = $description; 113 $this->description = $description;
122 } 114 }
115
123 public function getCSS(): array 116 public function getCSS(): array
124 { 117 {
125 return $this->css; 118 return array_merge(self::$default_css, $this->css ?? []);
126 } 119 }
127 public function useDefaultCSS(): void 120 public function addCSS(string $css): void
128 { 121 {
129 $this->css = self::$default_css; 122 if(!in_array($css, $this->css ?? [])){
123 $this->css[] = $css;
124 }
130 } 125 }
131 public function setCSS(array $css): void 126 public function removeCSS(string $css): void
132 { 127 {
133 $this->css = $css; 128 // array_diff renvoie une copie du 1er tableau alégée des élements existants aussi dans le 2è, array_values réindexe
129 $this->css = array_values(array_diff($this->css, [$css]));
134 } 130 }
135 public function getJS(): array 131 public function getJS(): array
136 { 132 {
137 return $this->js; 133 return array_merge(self::$default_js, $this->js ?? []);
134 //UPDATE `nb_page` SET `js` = NULL WHERE JSON_EQUALS(`js`, '["main"]');
138 } 135 }
139 public function useDefaultJS(): void 136 public function addJS(string $js): void
140 { 137 {
141 $this->js = self::$default_js; 138 if(!in_array($js, $this->js ?? [])){
139 $this->js[] = $js;
140 }
142 } 141 }
143 public function setJS(array $js): void 142 public function removeJS(string $js): void
144 { 143 {
145 $this->js = $js; 144 $this->js = array_values(array_diff($this->js, [$js]));
146 } 145 }
146
147 public function isReachable(): bool 147 public function isReachable(): bool
148 { 148 {
149 return $this->reachable; 149 return $this->reachable;