aboutsummaryrefslogtreecommitdiff
path: root/src/controller
diff options
context:
space:
mode:
Diffstat (limited to 'src/controller')
-rw-r--r--src/controller/ArticleController.php26
-rw-r--r--src/controller/PageManagementController.php7
2 files changed, 21 insertions, 12 deletions
diff --git a/src/controller/ArticleController.php b/src/controller/ArticleController.php
index b8af290..5cebad6 100644
--- a/src/controller/ArticleController.php
+++ b/src/controller/ArticleController.php
@@ -16,15 +16,15 @@ class ArticleController
16 { 16 {
17 $id = $json['id']; 17 $id = $json['id'];
18 $director = new Director($entityManager); 18 $director = new Director($entityManager);
19 $content = $json['content'];
19 20
20 // cas d'une nouvelle "news" 21 // nettoyage
21 if(is_array($json['content'])){ 22 if(is_array($content)){ // cas d'une nouvelle "news"
22 foreach($json['content'] as $one_input){ 23 foreach($content as $one_input){
23 $one_input = Security::secureHTML($one_input); 24 $one_input = Security::secureHTML($one_input);
24 } 25 }
25 $content = $json['content'];
26 } 26 }
27 else{ 27 else{ // autres cas
28 $content = Security::secureHTML($json['content']); 28 $content = Security::secureHTML($json['content']);
29 } 29 }
30 30
@@ -39,21 +39,25 @@ class ArticleController
39 $director->makeSectionNode(); 39 $director->makeSectionNode();
40 $node = $director->getNode(); // = <section> 40 $node = $director->getNode(); // = <section>
41 41
42 if(is_array($content)){ 42 if(is_array($content)){ // cas d'une nouvelle "news"
43 $date = new \DateTime($content['d']); 43 $date = new \DateTime($content['d']);
44 $article = new Article($content['i'], $date, $content['t'], $content['p']); 44 $article = new Article($content['i'], $date, $content['t'], $content['p']);
45 $article_node = new Node('new', 'i' . (string)$date->getTimestamp(), [], count($node->getChildren()) + 1, $node, $node->getPage(), $article); 45 $article_node = new Node('new', 'i' . (string)$date->getTimestamp(), [], count($node->getChildren()) + 1, $node, $node->getPage(), $article);
46
47 // id_node tout juste généré
48 //$article_node->getId();
49 } 46 }
50 else{ 47 else{ // autres cas
51 $timestamp = time(); 48 $timestamp = time();
52 $date = new \DateTime; 49 $date = new \DateTime;
53 $date->setTimestamp($timestamp); 50 $date->setTimestamp($timestamp);
54 51
55 $article = new Article($content, $date); // le "current" timestamp est obtenu par la BDD 52 $article = new Article($content, $date); // le "current" timestamp est obtenu par la BDD
56 $article_node = new Node('post', 'i' . (string)$timestamp, [], count($node->getChildren()) + 1, $node, $node->getPage(), $article); 53
54 $placement = $json['placement'] === 'first' ? 0 : count($node->getChildren()) + 1; //
55 $article_node = new Node('post', 'i' . (string)$timestamp, [], $placement, $node, $node->getPage(), $article);
56
57 if($json['placement'] === 'first'){
58 $node->addChild($article_node);
59 $node->reindexPositions(); // régénère les positions (0 devient 1, 1 devient 2...)
60 }
57 } 61 }
58 62
59 $entityManager->persist($article_node); 63 $entityManager->persist($article_node);
diff --git a/src/controller/PageManagementController.php b/src/controller/PageManagementController.php
index 4528810..75967eb 100644
--- a/src/controller/PageManagementController.php
+++ b/src/controller/PageManagementController.php
@@ -286,7 +286,12 @@ class PageManagementController
286 $director->getNode()->getNodeData()->setPresentation($presentation); 286 $director->getNode()->getNodeData()->setPresentation($presentation);
287 287
288 $entityManager->flush(); 288 $entityManager->flush();
289 echo json_encode(['success' => true, 'presentation' => $json['presentation'], 'cols_min_width' => $director->getNode()->getNodeData()->getColsMinWidth()]); 289
290 $response_data = ['success' => true, 'presentation' => $json['presentation']];
291 if($json['presentation'] === 'grid'){
292 $response_data['cols_min_width'] = $director->getNode()->getNodeData()->getColsMinWidth();
293 }
294 echo json_encode($response_data);
290 } 295 }
291 else{ 296 else{
292 echo json_encode(['success' => false]); 297 echo json_encode(['success' => false]);