]> git.bts.cx Git - cx.git/blobdiff - cx/cx.php
Basic support for pagination
[cx.git] / cx / cx.php
index e1f8dafd13b0e8210e4eba1a0afd0827ea2cf216..2c71761dd179e4ba3e6c3f7c6b8a207af7cb8e27 100644 (file)
--- a/cx/cx.php
+++ b/cx/cx.php
@@ -66,6 +66,7 @@ function cx_route($path) {
 
        if (count($path_components) == 0) {
                $template = 'list';
 
        if (count($path_components) == 0) {
                $template = 'list';
+               $template_variables['page_number'] = 0;
        } else if (count($path_components) >= 1 && $path_components[0] == 'feed') {
                header('Content-type: application/atom+xml;');
                $template = 'atom';
        } else if (count($path_components) >= 1 && $path_components[0] == 'feed') {
                header('Content-type: application/atom+xml;');
                $template = 'atom';
@@ -101,6 +102,8 @@ function cx_route($path) {
                                        $template_variables['post_slug'] = '';
                                        $template_variables['post_date'] = '';
                                        $template_variables['post_data'] = '';
                                        $template_variables['post_slug'] = '';
                                        $template_variables['post_date'] = '';
                                        $template_variables['post_data'] = '';
+                                       $template_variables['post_is_draft'] = true;
+                                       
 
                                        $template_class = 'admin';
                                        $template = 'post';
 
                                        $template_class = 'admin';
                                        $template = 'post';
@@ -112,6 +115,7 @@ function cx_route($path) {
                                        $template_variables['post_slug'] = $post->slug;
                                        $template_variables['post_date'] = $post->date;
                                        $template_variables['post_data'] = $post->data;
                                        $template_variables['post_slug'] = $post->slug;
                                        $template_variables['post_date'] = $post->date;
                                        $template_variables['post_data'] = $post->data;
+                                       $template_variables['post_is_draft'] = $post->is_draft;
 
                                        $template_class = 'admin';
                                        $template = 'post';
 
                                        $template_class = 'admin';
                                        $template = 'post';
@@ -121,13 +125,14 @@ function cx_route($path) {
                                        if (isset($slug) == false) $slug = null;
                                        $date = cx_form_input_sanitized_date_time('post_date');
                                        if (isset($date) == false) $date = null;
                                        if (isset($slug) == false) $slug = null;
                                        $date = cx_form_input_sanitized_date_time('post_date');
                                        if (isset($date) == false) $date = null;
-                                       $data = cx_form_input_sanitized('post_data');
+                                       $draft = cx_form_input_sanitized('post_is_draft') == 'draft';
+                                       $data = cx_form_input_sanitized_allowing_html('post_data');
                                        
                                        if (isset($_GET['id']) == false or $_GET['id'] == 0) {
                                        
                                        if (isset($_GET['id']) == false or $_GET['id'] == 0) {
-                                               cx_posts_add_post(1, $title, $slug, $date, $data);
+                                               cx_posts_add_post(1, $title, $slug, $date, $draft, $data);
                                        } else {
                                                $id = $_GET['id'];
                                        } else {
                                                $id = $_GET['id'];
-                                               cx_posts_update_post($id, $title, $slug, $date, $data);
+                                               cx_posts_update_post($id, $title, $slug, $date, $draft, $data);
                                        }
                                        
                                        cx_http_redirect(cx_url_admin('/'));
                                        }
                                        
                                        cx_http_redirect(cx_url_admin('/'));
@@ -158,6 +163,11 @@ function cx_route($path) {
                                }
                        }
                }
                                }
                        }
                }
+       } else if (count($path_components) >= 2 && $path_components[0] == 'page') { // FIXME sometime, needs more flexibility...
+               $page_number = $path_components[1];
+
+               $template = 'list';
+               $template_variables['page_number'] = $page_number;
        } else if (count($path_components) >= 3) { // FIXME sometime, needs more flexibility...
                $year = $path_components[0];
                $month = $path_components[1];
        } else if (count($path_components) >= 3) { // FIXME sometime, needs more flexibility...
                $year = $path_components[0];
                $month = $path_components[1];