X-Git-Url: https://git.bts.cx/cx.git/blobdiff_plain/9a60ead9e861fcb9c8fb252e4b27aa36d28b7954..b767acc63bfe4ecd297d6961d8187532f0759d56:/cx/cx.php diff --git a/cx/cx.php b/cx/cx.php index 2c71761..74bd42e 100644 --- a/cx/cx.php +++ b/cx/cx.php @@ -102,8 +102,8 @@ function cx_route($path) { $template_variables['post_slug'] = ''; $template_variables['post_date'] = ''; $template_variables['post_data'] = ''; + $template_variables['post_is_page'] = false; $template_variables['post_is_draft'] = true; - $template_class = 'admin'; $template = 'post'; @@ -115,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_is_page'] = $post->is_page; $template_variables['post_is_draft'] = $post->is_draft; $template_class = 'admin'; @@ -125,14 +126,15 @@ 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; - $draft = cx_form_input_sanitized('post_is_draft') == 'draft'; + $is_page = cx_form_input_sanitized('post_is_page') == 'page'; + $is_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) { - cx_posts_add_post(1, $title, $slug, $date, $draft, $data); + cx_posts_add_post(1, $title, $slug, $date, $is_page, $is_draft, $data); } else { $id = $_GET['id']; - cx_posts_update_post($id, $title, $slug, $date, $draft, $data); + cx_posts_update_post($id, $title, $slug, $date, $is_page, $is_draft, $data); } cx_http_redirect(cx_url_admin('/')); @@ -168,15 +170,28 @@ function cx_route($path) { $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]; - $slug = $path_components[2]; + } else { + if (count($path_components) >= 1) { + $slug = $path_components[0]; + $page_id = cx_posts_find_page_id($slug); + if ($page_id) { + $template = 'post'; + $template_variables['post_id'] = $page_id; + } + } - $template = 'post'; - $template_variables['post_id'] = cx_posts_find_post_id($slug); + if ($template == null && count($path_components) >= 3) { // FIXME sometime, needs more flexibility... + $year = $path_components[0]; + $month = $path_components[1]; + $slug = $path_components[2]; + $post_id = cx_posts_find_article_id($slug); + if ($post_id) { + $template = 'post'; + $template_variables['post_id'] = $post_id; + } + } } - + if ($template != null) { $output = cx_template_render($template_class, $template, $template_variables); echo($output);