From 2d010fdcce96e8aa142268da57bde104517e1ef8 Mon Sep 17 00:00:00 2001 From: Ivan Kuzmenko <6745157+rndtrash@users.noreply.github.com> Date: Mon, 29 Sep 2025 02:19:38 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D1=81=D0=BA=D1=80=D1=8B=D1=82=D0=B8=D0=B5=20=D0=BF=D0=BE=D1=81?= =?UTF-8?q?=D1=82=D0=BE=D0=B2=20=D0=B1=D0=B5=D0=B7=20=D0=B4=D0=B0=D1=82?= =?UTF-8?q?=D1=8B=20=D0=BF=D1=83=D0=B1=D0=BB=D0=B8=D0=BA=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=B8=20=D0=BF=D1=80=D0=B8=D0=BC=D0=B5=D1=80=20=D1=81?= =?UTF-8?q?=D0=BA=D1=80=D1=8B=D1=82=D0=BE=D0=B3=D0=BE=20=D0=BF=D0=BE=D1=81?= =?UTF-8?q?=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app.d.ts | 8 +++----- src/blogs/test_unpublished.md | 9 +++++++++ src/lib/util/Blogs.ts | 7 +++++-- src/routes/blog/rss.xml/+server.ts | 2 +- 4 files changed, 18 insertions(+), 8 deletions(-) create mode 100644 src/blogs/test_unpublished.md diff --git a/src/app.d.ts b/src/app.d.ts index 1243e75..f9281b5 100644 --- a/src/app.d.ts +++ b/src/app.d.ts @@ -1,5 +1,3 @@ -import type { Member } from '$lib/types/Member'; - declare global { namespace App { // interface Error {} @@ -23,12 +21,12 @@ declare global { interface BlogPost { slug: string; title: string; - thumbnail: string; - date: string; + thumbnail?: string; + date?: string; description: string; publisher: string; published?: boolean; - member?: Member; + projects?: string[]; } } } diff --git a/src/blogs/test_unpublished.md b/src/blogs/test_unpublished.md new file mode 100644 index 0000000..c932b19 --- /dev/null +++ b/src/blogs/test_unpublished.md @@ -0,0 +1,9 @@ +--- +title: 'Тестовый блог' +date: +description: 'Немного о самом сайте' +--- + +# ПРИВЕТ ! + +Добро пожаловать на наш первый блог-пост! \ No newline at end of file diff --git a/src/lib/util/Blogs.ts b/src/lib/util/Blogs.ts index 851992e..2e00ced 100644 --- a/src/lib/util/Blogs.ts +++ b/src/lib/util/Blogs.ts @@ -3,8 +3,11 @@ import path from 'path'; export async function fetchPostsSorted() { const allPosts = await fetchPosts(); - const sortedPosts = allPosts.sort((a, b) => { - return new Date(b.date).valueOf() - new Date(a.date).valueOf(); + const sortedPosts = allPosts + // Для списка постов оставляем только те, у которых объявлена дата публикации + .filter((a) => !!a.date) + .sort((a, b) => { + return new Date(b.date!).valueOf() - new Date(a.date!).valueOf(); }); return sortedPosts; diff --git a/src/routes/blog/rss.xml/+server.ts b/src/routes/blog/rss.xml/+server.ts index 0ed51da..4cb1e2f 100644 --- a/src/routes/blog/rss.xml/+server.ts +++ b/src/routes/blog/rss.xml/+server.ts @@ -26,7 +26,7 @@ ${posts.map((post) => ` ${escapeXml(post.description)} https://teasanctuary.ru/blog/${post.slug} https://teasanctuary.ru/blog/${post.slug} -${(new Date(post.date)).toUTCString()} +${(new Date(post.date!)).toUTCString()} `).join("\n")} `))