X-Git-Url: https://git.bts.cx/cx.git/blobdiff_plain/523265c78f8f637ad002c997d22990a532bb9f08..8a7cb090b52893c49c169d4ba1419317251bfaaa:/cx/cx.php diff --git a/cx/cx.php b/cx/cx.php index 35b2722..b18232b 100644 --- a/cx/cx.php +++ b/cx/cx.php @@ -67,6 +67,12 @@ function cx_route($path) { if (count($path_components) == 0) { $template = 'list'; $template_variables['page_number'] = 0; + } else if (cx_template_has_content('public', $path)) { + cx_template_output_content('public', $path); + exit(0); + } else if (cx_template_has_content('admin', $path)) { + cx_template_output_content('admin', $path); + exit(0); } else if (count($path_components) >= 1 && $path_components[0] == 'feed') { header('Content-type: application/atom+xml;'); $template = 'atom'; @@ -104,6 +110,7 @@ function cx_route($path) { $template_variables['post_data'] = ''; $template_variables['post_is_page'] = false; $template_variables['post_is_draft'] = true; + $template_variables['post_nav_index'] = ''; $template_class = 'admin'; $template = 'post'; @@ -117,6 +124,7 @@ function cx_route($path) { $template_variables['post_data'] = $post->data; $template_variables['post_is_page'] = $post->is_page; $template_variables['post_is_draft'] = $post->is_draft; + $template_variables['post_nav_index'] = $post->nav_index; $template_class = 'admin'; $template = 'post'; @@ -128,13 +136,14 @@ function cx_route($path) { if (isset($date) == false) $date = null; $is_page = cx_form_input_sanitized('post_is_page') == 'page'; $is_draft = cx_form_input_sanitized('post_is_draft') == 'draft'; + $nav_index = cx_form_input_sanitized('post_nav_index'); $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, $is_page, $is_draft, $data); + cx_posts_add_post(1, $title, $slug, $date, $is_page, $is_draft, $nav_index, $data); } else { $id = $_GET['id']; - cx_posts_update_post($id, $title, $slug, $date, $is_page, $is_draft, $data); + cx_posts_update_post($id, $title, $slug, $date, $is_page, $is_draft, $nav_index, $data); } cx_http_redirect(cx_url_admin('/')); @@ -173,10 +182,10 @@ function cx_route($path) { } else { if (count($path_components) >= 1) { $slug = $path_components[0]; - $page_id = cx_posts_find_page_id($slug); + $page_id = cx_posts_find_page_id($slug, include_drafts: cx_admin_logged_in()); if ($page_id) { $template = 'post'; - $template_variables['post_id'] = cx_posts_find_page_id($slug); + $template_variables['post_id'] = $page_id; } } @@ -184,10 +193,10 @@ function cx_route($path) { $year = $path_components[0]; $month = $path_components[1]; $slug = $path_components[2]; - $post_id = cx_posts_find_article_id($slug); + $post_id = cx_posts_find_article_id($slug, include_drafts: cx_admin_logged_in()); if ($post_id) { $template = 'post'; - $template_variables['post_id'] = cx_posts_find_article_id($slug); + $template_variables['post_id'] = $post_id; } } }