11<?php
22
3- /**
4- * In the controller file, you can handle and process variables,
5- * classes and functions; use if-elseif statements; load models, and
6- * include files. The variables can then be used in the view file.
7- */
8-
93class PostController
104{
115
@@ -19,11 +13,11 @@ public function list()
1913
2014 if (! isset ($ _GET ['order ' ])) $ _GET ['order ' ] = 0 ;
2115 if (! is_numeric ($ _GET ['order ' ])) {
22- $ error_message = 'Post order value should be numeric. ' ;
2316 $ page_title = 'Error in order parameter ' ;
17+ $ error_message = 'Post order value should be numeric. ' ;
18+
2419
25- $ data = compact ('error_message ' , 'page_title ' );
26- Basic::view ('error ' , $ data );
20+ Basic::view ('error ' , compact ('page_title ' , 'error_message ' ));
2721 }
2822 if (isset ($ _GET ['order ' ]) && $ _GET ['order ' ] < 0 ) $ _GET ['order ' ] = 0 ;
2923
@@ -38,8 +32,7 @@ public function list()
3832
3933 $ page_title = 'List of Posts ' ;
4034
41- $ data = compact ('stmt ' , 'total ' , 'per_page ' , 'page_title ' );
42- Basic::view ('post_list ' , $ data );
35+ Basic::view ('post_list ' , compact ('page_title ' , 'per_page ' , 'stmt ' , 'total ' ));
4336
4437 }
4538
@@ -53,114 +46,85 @@ public function view()
5346 }
5447
5548 if (isset ($ _POST ['goto-edit ' ])) {
56-
5749 header ('Location: ' . BASE_URL . 'post/edit/ ' . Basic::segment (3 ));
5850 exit ();
59-
6051 }
6152
6253 $ post = new PostModel ;
6354 $ row = $ post ->view ( Basic::segment (3 ) );
6455
6556 if ($ row ) {
66-
6757 $ page_title = 'View Post ' ;
6858
69- $ data = compact ('row ' , 'page_title ' );
70- Basic::view ('post_view ' , $ data );
71-
59+ Basic::view ('post_view ' , compact ('page_title ' , 'row ' ));
7260 } else {
73-
7461 $ error_message = 'The Post ID does not exist. ' ;
7562 $ page_title = 'Error in Post ID ' ;
7663
77- $ data = compact ('error_message ' , 'page_title ' );
78- Basic::view ('error ' , $ data );
79-
64+ Basic::view ('error ' , compact ('page_title ' , 'error_message ' ));
8065 }
8166
8267 }
8368
8469 public function add ()
8570 {
86-
8771 if ($ this ->isPostAdd ()) {
88-
8972 $ post = new PostModel ;
9073 $ new_id = $ post ->add ();
9174
9275 header ('Location: ' . BASE_URL . 'post/view/ ' . $ new_id );
9376 exit ();
94-
9577 }
9678
97- $ data = ['page_title ' => 'Add a Post ' ];
98- Basic::view ('post_add ' , $ data );
79+ $ page_title = 'Add a Post ' ;
9980
81+ Basic::view ('post_add ' , compact ('page_title ' ));
10082 }
10183
10284 public function edit ()
10385 {
104-
10586 $ post = new PostModel ;
10687
10788 if ($ this ->isPostEdit ()) {
108-
10989 $ post ->edit ( Basic::segment (3 ) );
11090
11191 header ('Location: ' . BASE_URL . 'post/view/ ' . Basic::segment (3 ));
11292 exit ();
113-
11493 }
11594
11695 $ row = $ post ->view ( Basic::segment (3 ) );
11796
11897 if ($ row ) {
119-
12098 $ page_title = 'Edit Post ' ;
12199
122- $ data = compact ('row ' , 'page_title ' );
123- Basic::view ('post_edit ' , $ data );
124-
100+ Basic::view ('post_edit ' , compact ('page_title ' , 'row ' ));
125101 } else {
126-
127102 $ error_message = "The Post ID does not exist. " ;
128103 $ page_title = 'Error in Post ID ' ;
129104
130- $ data = compact ('error_message ' , 'page_title ' );
131- Basic::view ('error ' , $ data );
132-
105+ Basic::view ('error ' , compact ('page_title ' , 'error_message ' ));
133106 }
134-
135107 }
136108
137109 public function delete ()
138110 {
139-
140111 $ post = new PostModel ;
141112 $ post ->delete ( Basic::segment (3 ) );
142-
143113 }
144114
145115 private function isPostAdd ()
146116 {
147-
148117 if ( isset ($ _POST ['submit-post ' ]) && isset ($ _POST ['csrf-token ' ]) && isset ($ _SESSION ['csrf-token ' ]) && $ _POST ['csrf-token ' ] == $ _SESSION ['csrf-token ' ] ) return TRUE ;
149-
150118 }
151119
152120 private function isPostEdit ()
153121 {
154-
155122 if ( isset ($ _POST ['edit-post ' ]) && isset ($ _POST ['csrf-token ' ]) && isset ($ _SESSION ['csrf-token ' ]) && $ _POST ['csrf-token ' ] == $ _SESSION ['csrf-token ' ] ) return TRUE ;
156-
157123 }
158124
159125 private function isPostDelete ()
160126 {
161-
162127 if ( isset ($ _POST ['delete-post ' ]) && isset ($ _POST ['csrf-token ' ]) && isset ($ _SESSION ['csrf-token ' ]) && $ _POST ['csrf-token ' ] == $ _SESSION ['csrf-token ' ] ) return TRUE ;
163-
164128 }
165129
166130}
0 commit comments