Skip to content

Commit

Permalink
增加文章发布时间和标题是否已修改的渲染
Browse files Browse the repository at this point in the history
  • Loading branch information
jooooock committed Sep 24, 2024
1 parent 30f7439 commit 02fd581
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions utils/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,31 @@ export async function packHTMLAssets(html: string, title: string, zip?: JSZip) {
el.remove()
})


// 渲染发布时间
function __setPubTime(oriTimestamp: number, dom: HTMLElement) {
const dateObj = new Date(oriTimestamp * 1000);
const padStart = function padStart(v: number) {
return "0".concat(v.toString()).slice(-2);
};
const year = dateObj.getFullYear().toString();
const month = padStart(dateObj.getMonth() + 1);
const date = padStart(dateObj.getDate());
const hour = padStart(dateObj.getHours());
const minute = padStart(dateObj.getMinutes());
const timeString = "".concat(hour, ":").concat(minute);
const dateString = "".concat(year, "年").concat(month, "月").concat(date, "日");
const showDate = "".concat(dateString, " ").concat(timeString);

if (dom) {
dom.innerText = showDate;
}
}
const pubTimeMatchResult = html.match(/var oriCreateTime = '(?<date>\d+)'/)
if (pubTimeMatchResult && pubTimeMatchResult.groups && pubTimeMatchResult.groups.date) {
__setPubTime(parseInt(pubTimeMatchResult.groups.date), document.getElementById('publish_time')!)
}

// 渲染ip属地
function getIpWoridng(ipConfig: any) {
let ipWording = '';
Expand All @@ -169,6 +194,23 @@ export async function packHTMLAssets(html: string, title: string, zip?: JSZip) {
}
}

// 渲染 标题已修改
function __setTitleModify(isTitleModified: boolean) {
const wrp = document.getElementById('js_title_modify_wrp')!
const titleModifyNode = document.getElementById('js_title_modify')!
if (!wrp) return;
if (isTitleModified) {
titleModifyNode.innerHTML = '标题已修改';
wrp.style.display = 'inline-block';
} else {
wrp.parentNode?.removeChild(wrp);
}
}
const titleModifiedMatchResult = html.match(/window\.isTitleModified = "(?<data>\d*)" \* 1;/)
if (titleModifiedMatchResult && titleModifiedMatchResult.groups && titleModifiedMatchResult.groups.data) {
__setTitleModify(titleModifiedMatchResult.groups.data === '1')
}


zip.folder('assets')

Expand Down

0 comments on commit 02fd581

Please sign in to comment.