Moved news index.

This commit is contained in:
flash 2019-05-13 19:44:08 +02:00
parent 3517a1ace4
commit 36a8dbb4b4
3 changed files with 40 additions and 41 deletions

View file

@ -1,12 +1,13 @@
<?php
require_once '../misuzu.php';
http_response_code(301);
$location = url('news-index');
if (!empty($_GET['n']) && is_string($_GET['n'])) {
header('Location: ' . url('news-post', [
$location = url('news-post', [
'post' => (int)$_GET['n'],
]));
http_response_code(301);
return;
]);
}
$feedMode = trim($_SERVER['PATH_INFO'] ?? '', '/');
@ -14,47 +15,15 @@ $categoryId = !empty($_GET['c']) && is_string($_GET['c']) ? (int)$_GET['c'] : 0;
$postId = !empty($_GET['p']) && is_string($_GET['p']) ? (int)$_GET['p'] : 0;
if(!empty($feedMode) && news_feed_supported($feedMode)) {
http_response_code(301);
header('Location: ' . (empty($categoryId) ? url("news-feed-{$feedMode}") : url("news-category-feed-{$feedMode}", ['category' => $categoryId])));
return;
$location = empty($categoryId) ? url("news-feed-{$feedMode}") : url("news-category-feed-{$feedMode}", ['category' => $categoryId]);
}
if ($postId > 0) {
http_response_code(301);
header('Location: ' . url('news-post', ['post' => $postId]));
return;
$location = url('news-post', ['post' => $postId]);
}
if ($categoryId > 0) {
http_response_code(301);
header('Location: ' . url('news-category', ['category' => $categoryId, 'page' => pagination_param('page')]));
return;
$location = url('news-category', ['category' => $categoryId, 'page' => pagination_param('page')]);
}
$categories = news_categories_get(0, 0, true);
$newsPagination = pagination_create(news_posts_count(null, true), 5);
$postsOffset = pagination_offset($newsPagination, pagination_param('page'));
if (!pagination_is_valid_offset($postsOffset)) {
echo render_error(404);
return;
}
$posts = news_posts_get(
$postsOffset,
$newsPagination['range'],
null,
true
);
if (!$posts) {
echo render_error(404);
return;
}
echo tpl_render('news.index', [
'categories' => $categories,
'posts' => $posts,
'news_pagination' => $newsPagination,
]);
header("Location: {$location}");

View file

@ -0,0 +1,30 @@
<?php
require_once '../../misuzu.php';
$categories = news_categories_get(0, 0, true);
$newsPagination = pagination_create(news_posts_count(null, true), 5);
$postsOffset = pagination_offset($newsPagination, pagination_param('page'));
if (!pagination_is_valid_offset($postsOffset)) {
echo render_error(404);
return;
}
$posts = news_posts_get(
$postsOffset,
$newsPagination['range'],
null,
true
);
if (!$posts) {
echo render_error(404);
return;
}
echo tpl_render('news.index', [
'categories' => $categories,
'posts' => $posts,
'news_pagination' => $newsPagination,
]);

View file

@ -29,7 +29,7 @@ define('MSZ_URLS', [
'changelog-date' => ['/changelog.php', ['d' => '<date>']],
'changelog-tag' => ['/changelog.php', ['t' => '<tag>']],
'news-index' => ['/news.php', ['page' => '<page>']],
'news-index' => ['/news', ['page' => '<page>']],
'news-post' => ['/news/post.php', ['p' => '<post>']],
'news-post-comments' => ['/news/post.php', ['p' => '<post>'], 'comments'],
'news-category' => ['/news/category.php', ['c' => '<category>', 'p' => '<page>']],