diff --git a/docs/en/program-update.md b/docs/en/program-update.md index 8828151f84..8502dcecdb 100644 --- a/docs/en/program-update.md +++ b/docs/en/program-update.md @@ -221,6 +221,12 @@ Refer to [#minecraft](/en/game.html#minecraft) +## Obsidian + +### Announcements + + + ## PlayStation ### PlayStation 4 System Update diff --git a/docs/program-update.md b/docs/program-update.md index c5a8906037..9ae092b3cb 100644 --- a/docs/program-update.md +++ b/docs/program-update.md @@ -264,6 +264,12 @@ pageClass: routes +## Obsidian + +### Announcements + + + ## OneNote Gem Add-Ins ### Release History diff --git a/lib/router.js b/lib/router.js index dec04ea803..77201526ae 100644 --- a/lib/router.js +++ b/lib/router.js @@ -3924,6 +3924,9 @@ router.get('/tianyancha/hot', require('./routes/tianyancha/hot')); // King Arthur router.get('/kingarthur/:type', require('./routes/kingarthur/index')); +// Obsidian +router.get('/obsidian/announcements', require('./routes/obsidian/announcements')); + // 吉林工商学院 router.get('/jlbtc/kyc/:category?', require('./routes/universities/jlbtc/kyc')); router.get('/jlbtc/:category?', require('./routes/universities/jlbtc/index')); diff --git a/lib/routes/obsidian/announcements.js b/lib/routes/obsidian/announcements.js new file mode 100644 index 0000000000..3695c64e5f --- /dev/null +++ b/lib/routes/obsidian/announcements.js @@ -0,0 +1,22 @@ +const got = require('@/utils/got'); + +module.exports = async (ctx) => { + const rootUrl = 'https://forum.obsidian.md'; + const currentUrl = `${rootUrl}/c/announcements/13.json?page=0`; + const response = await got({ + method: 'get', + url: currentUrl, + }); + + const items = response.data.topic_list.topics.map((item) => ({ + title: item.title, + link: `${rootUrl}/t/${item.slug}/${item.id}`, + pubDate: new Date(item.created_at).toUTCString(), + })); + + ctx.state.data = { + title: 'Announcements - Obsidian', + link: `${rootUrl}/c/announcements/13`, + item: items, + }; +};