diff options
Diffstat (limited to 'src/build/rss.mjs')
-rw-r--r-- | src/build/rss.mjs | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/build/rss.mjs b/src/build/rss.mjs index e890152..6394af5 100644 --- a/src/build/rss.mjs +++ b/src/build/rss.mjs @@ -1,37 +1,43 @@ import RSS from 'rss'; +import i18n from './i18n.mjs'; -const getRSS = (articles, baseUrl) => { +const getRSS = (articles, baseUrl, lang) => { + console.log(i18n[lang]['rss']['title']); const rssFeed = new RSS({ - title: 'ache: Blog personnel', - description: 'Programmation, Algorithmique, Système, *pick you poison*', + title: i18n[lang]['rss']['title'], + description: i18n[lang]['rss']['description'], // eslint-disable-next-line camelcase + custom_namespaces: { + 'visible_description': i18n[lang]['rss']['description'] + }, + site_url: "https://ache.one", feed_url: `${baseUrl}rss.xml`, canonical: `${baseUrl}rss.xml`, // eslint-disable-next-line camelcase site_url: baseUrl, // eslint-disable-next-line camelcase image_url: `${baseUrl}ache.svg`, - language: 'fr', - pubDate: (new Date().toLocaleString()), + language: lang, + pubDate: Date(), ttl: '1440', - // eslint-disable-next-line camelcase - custom_elements: ['<?xml-stylesheet type="text/css" href="http://localhost:8080/s/css/style.css" ?>'], }); for (const article of articles.slice(0, 10)) { + let image_url = (article.imageUrl[0] != '/') ? `/${article.imageUrl}` : article.imageUrl; + rssFeed.item({ title: article.title, description: '<article>' + article.content + '</article>', // eslint-disable-next-line camelcase - image_url: article.imageUrl, + image_url, url: `${baseUrl}articles/${article.name}`, guid: article.domTitle, author: 'ache', - date: article.metaData.pubDate.toISOString(), + date: article.metaData.pubDateISO, categories: article.metaData.tags, // eslint-disable-next-line camelcase custom_elements: [ - {logo: article.imageUrl}, + {logo: image_url}, {intro: article.introDesc}, ], }); |