summaryrefslogtreecommitdiffhomepage
path: root/vhosts/blog/nuldoc-src/pages
diff options
context:
space:
mode:
Diffstat (limited to 'vhosts/blog/nuldoc-src/pages')
-rw-r--r--vhosts/blog/nuldoc-src/pages/about.ts8
-rw-r--r--vhosts/blog/nuldoc-src/pages/post.ts15
-rw-r--r--vhosts/blog/nuldoc-src/pages/post_list.ts6
-rw-r--r--vhosts/blog/nuldoc-src/pages/slide.ts6
-rw-r--r--vhosts/blog/nuldoc-src/pages/slide_list.ts6
-rw-r--r--vhosts/blog/nuldoc-src/pages/tag.ts4
6 files changed, 27 insertions, 18 deletions
diff --git a/vhosts/blog/nuldoc-src/pages/about.ts b/vhosts/blog/nuldoc-src/pages/about.ts
index 6ef2e05e..e78c109f 100644
--- a/vhosts/blog/nuldoc-src/pages/about.ts
+++ b/vhosts/blog/nuldoc-src/pages/about.ts
@@ -6,7 +6,7 @@ import { Config } from "../config.ts";
import { el, text } from "../dom.ts";
import { Page } from "../page.ts";
import { dateToString } from "../revision.ts";
-import { getPostCreatedDate } from "./post.ts";
+import { getPostPublishedDate } from "./post.ts";
import { SlidePage } from "./slide.ts";
export type AboutPage = Page;
@@ -134,8 +134,8 @@ export async function generateAboutPage(
"ul",
[],
...Array.from(slides).sort((a, b) => {
- const ta = dateToString(getPostCreatedDate(a));
- const tb = dateToString(getPostCreatedDate(b));
+ const ta = dateToString(getPostPublishedDate(a));
+ const tb = dateToString(getPostPublishedDate(b));
if (ta > tb) return -1;
if (ta < tb) return 1;
return 0;
@@ -148,7 +148,7 @@ export async function generateAboutPage(
[["href", slide.href]],
text(
`${
- dateToString(getPostCreatedDate(slide))
+ dateToString(getPostPublishedDate(slide))
}: ${slide.event} (${slide.talkType})`,
),
),
diff --git a/vhosts/blog/nuldoc-src/pages/post.ts b/vhosts/blog/nuldoc-src/pages/post.ts
index f7e53421..b5f954ea 100644
--- a/vhosts/blog/nuldoc-src/pages/post.ts
+++ b/vhosts/blog/nuldoc-src/pages/post.ts
@@ -18,7 +18,12 @@ export interface PostPage extends Page {
uuid: string;
}
-export function getPostCreatedDate(page: { revisions: Revision[] }): Date {
+export function getPostPublishedDate(page: { revisions: Revision[] }): Date {
+ for (const rev of page.revisions) {
+ if (!rev.isInternal) {
+ return rev.date;
+ }
+ }
return page.revisions[0].date;
}
@@ -26,6 +31,10 @@ export function getPostUpdatedDate(page: { revisions: Revision[] }): Date {
return page.revisions[page.revisions.length - 1].date;
}
+export function postHasAnyUpdates(page: { revisions: Revision[] }): boolean {
+ return 2 <= page.revisions.filter((rev) => !rev.isInternal).length;
+}
+
export async function generatePostPage(
doc: Document,
config: Config,
@@ -114,7 +123,7 @@ export async function generatePostPage(
const html = await pageLayout(
{
- metaCopyrightYear: getPostCreatedDate(doc).year,
+ metaCopyrightYear: getPostPublishedDate(doc).year,
metaDescription: doc.description,
metaKeywords: doc.tags.map((slug) => getTagLabel(config, slug)),
metaTitle: `${doc.title}|${config.blog.siteName}`,
@@ -139,7 +148,7 @@ export async function generatePostPage(
description: doc.description,
tags: doc.tags,
revisions: doc.revisions,
- published: getPostCreatedDate(doc),
+ published: getPostPublishedDate(doc),
updated: getPostUpdatedDate(doc),
uuid: doc.uuid,
};
diff --git a/vhosts/blog/nuldoc-src/pages/post_list.ts b/vhosts/blog/nuldoc-src/pages/post_list.ts
index 7cee87e7..111ecd62 100644
--- a/vhosts/blog/nuldoc-src/pages/post_list.ts
+++ b/vhosts/blog/nuldoc-src/pages/post_list.ts
@@ -6,7 +6,7 @@ import { Config } from "../config.ts";
import { el, text } from "../dom.ts";
import { Page } from "../page.ts";
import { dateToString } from "../revision.ts";
-import { getPostCreatedDate, PostPage } from "./post.ts";
+import { getPostPublishedDate, PostPage } from "./post.ts";
export type PostListPage = Page;
@@ -33,8 +33,8 @@ export async function generatePostListPage(
),
),
...Array.from(posts).sort((a, b) => {
- const ta = dateToString(getPostCreatedDate(a));
- const tb = dateToString(getPostCreatedDate(b));
+ const ta = dateToString(getPostPublishedDate(a));
+ const tb = dateToString(getPostPublishedDate(b));
if (ta > tb) return -1;
if (ta < tb) return 1;
return 0;
diff --git a/vhosts/blog/nuldoc-src/pages/slide.ts b/vhosts/blog/nuldoc-src/pages/slide.ts
index 5e4d1834..88069708 100644
--- a/vhosts/blog/nuldoc-src/pages/slide.ts
+++ b/vhosts/blog/nuldoc-src/pages/slide.ts
@@ -8,7 +8,7 @@ import { el, text } from "../dom.ts";
import { Page } from "../page.ts";
import { Date, dateToString, Revision } from "../revision.ts";
import { Slide } from "../slide/slide.ts";
-import { getPostCreatedDate, getPostUpdatedDate } from "./post.ts";
+import { getPostPublishedDate, getPostUpdatedDate } from "./post.ts";
export interface SlidePage extends Page {
title: string;
@@ -113,7 +113,7 @@ export async function generateSlidePage(
const html = await pageLayout(
{
- metaCopyrightYear: getPostCreatedDate(slide).year,
+ metaCopyrightYear: getPostPublishedDate(slide).year,
metaDescription: slide.title,
metaKeywords: slide.tags.map((slug) => getTagLabel(config, slug)),
metaTitle: `${slide.event} (${slide.talkType})|${config.blog.siteName}`,
@@ -141,7 +141,7 @@ export async function generateSlidePage(
slideLink: slide.slideLink,
tags: slide.tags,
revisions: slide.revisions,
- published: getPostCreatedDate(slide),
+ published: getPostPublishedDate(slide),
updated: getPostUpdatedDate(slide),
uuid: slide.uuid,
};
diff --git a/vhosts/blog/nuldoc-src/pages/slide_list.ts b/vhosts/blog/nuldoc-src/pages/slide_list.ts
index 0b59b1dc..738f42ac 100644
--- a/vhosts/blog/nuldoc-src/pages/slide_list.ts
+++ b/vhosts/blog/nuldoc-src/pages/slide_list.ts
@@ -6,7 +6,7 @@ import { Config } from "../config.ts";
import { el, text } from "../dom.ts";
import { Page } from "../page.ts";
import { dateToString } from "../revision.ts";
-import { getPostCreatedDate } from "./post.ts";
+import { getPostPublishedDate } from "./post.ts";
import { SlidePage } from "./slide.ts";
export type SlideListPage = Page;
@@ -34,8 +34,8 @@ export async function generateSlideListPage(
),
),
...Array.from(slides).sort((a, b) => {
- const ta = dateToString(getPostCreatedDate(a));
- const tb = dateToString(getPostCreatedDate(b));
+ const ta = dateToString(getPostPublishedDate(a));
+ const tb = dateToString(getPostPublishedDate(b));
if (ta > tb) return -1;
if (ta < tb) return 1;
return 0;
diff --git a/vhosts/blog/nuldoc-src/pages/tag.ts b/vhosts/blog/nuldoc-src/pages/tag.ts
index ef79065d..ea1fe35e 100644
--- a/vhosts/blog/nuldoc-src/pages/tag.ts
+++ b/vhosts/blog/nuldoc-src/pages/tag.ts
@@ -6,7 +6,7 @@ import { slidePageEntry } from "../components/slide_page_entry.ts";
import { Config, getTagLabel } from "../config.ts";
import { el, text } from "../dom.ts";
import { Page } from "../page.ts";
-import { getPostCreatedDate } from "./post.ts";
+import { getPostPublishedDate } from "./post.ts";
import { TaggedPage } from "./tagged_page.ts";
export interface TagPage extends Page {
@@ -41,7 +41,7 @@ export async function generateTagPage(
const html = await pageLayout(
{
- metaCopyrightYear: getPostCreatedDate(pages[pages.length - 1]).year,
+ metaCopyrightYear: getPostPublishedDate(pages[pages.length - 1]).year,
metaDescription: `タグ「${tagLabel}」のついた記事またはスライドの一覧`,
metaKeywords: [tagLabel],
metaTitle: `${pageTitle}|${config.blog.siteName}`,