mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-13 16:26:50 +00:00
Updates
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
const { writeFileSync } = require('fs')
|
||||
const { join, resolve } = require('path')
|
||||
const { replacements, slugify, stripHTML, memberUrl } = require('../helpers')
|
||||
const { replacements, slugify, stripHTML } = require('../helpers')
|
||||
const { masterFeedUrl, publicFeedUrl } = require('../content/meta.json')
|
||||
const team = require('../content/team.json')
|
||||
const request = require('sync-request')
|
||||
@@ -67,7 +67,7 @@ const parseEpisode = e => {
|
||||
const duration = e['itunes:duration']
|
||||
const enclosure = e.enclosure.__attr
|
||||
const [, participantsString] =
|
||||
firstLine.match(/(?:(?:von\sund\s)?mit\s)([^.]*)/i) || []
|
||||
firstLine.match(/[-–—]\s?(?:(?:von\sund\s)?mit\s)([^.]*)/i) || []
|
||||
const participants = participantsString
|
||||
? participantsString
|
||||
.replace(/(\s*,\s*|\s*und\s*|\s*&\s*)/gi, '%')
|
||||
@@ -107,15 +107,8 @@ const parseEpisode = e => {
|
||||
|
||||
const feed = parser.parse(xml)
|
||||
const episodes = []
|
||||
const _noParticipants = [],
|
||||
_noNode = []
|
||||
const members = [
|
||||
{ name: 'Dennis', ...team.dennis.v4v },
|
||||
{ name: 'Fab', ...team.fab.v4v },
|
||||
{ name: 'Gigi', ...team.gigi.v4v },
|
||||
{ name: 'Markus', ...team.markus.v4v },
|
||||
{ name: 'Daniel', ...team.daniel.v4v }
|
||||
]
|
||||
const _noParticipants = [], _noNode = []
|
||||
const members = [team.dennis, team.fab, team.gigi, team.markus, team.daniel]
|
||||
|
||||
// remove invalid tag
|
||||
delete feed.rss.channel.author
|
||||
@@ -128,9 +121,10 @@ const parseEpisode = e => {
|
||||
},
|
||||
'podcast:valueRecipient': members.map(p => ({
|
||||
__attr: {
|
||||
...p,
|
||||
name: p.name,
|
||||
type: 'node',
|
||||
split: Math.round(100 / members.length)
|
||||
split: Math.round(100 / members.length),
|
||||
...p.v4v
|
||||
}
|
||||
}))
|
||||
}
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
const pug = require('pug')
|
||||
const { mkdirSync, writeFileSync } = require('fs')
|
||||
const { dirname, resolve } = require('path')
|
||||
|
||||
const { slugify } = require('../helpers')
|
||||
const config = require('../pug.config')
|
||||
const site = require('../generated/site-data.json')
|
||||
const episodes = require('../generated/episodes.json')
|
||||
const spendenregister = require('../generated/spendenregister.json')
|
||||
const spendenuebersicht = require('../content/spendenuebersicht.json').reverse()
|
||||
const team = require('../content/team.json')
|
||||
const kurse = require('../content/kurse.json')
|
||||
const shops = require('../content/shops.json')
|
||||
const soundboard = require('../content/soundboard.json')
|
||||
const adventskalender = require('../content/adventskalender-2022.json')
|
||||
@@ -44,7 +43,6 @@ renderPage('index', 'index', { navCurrent: 'index', currentEpisode: episodes[0],
|
||||
renderPage('podcast', 'podcast', { navCurrent: 'podcast', episodes: [...episodes], team })
|
||||
renderPage('adventskalender', 'adventskalender', { adventskalender })
|
||||
renderPage('meetups', 'meetups', { navCurrent: 'meetups', meetups: site.meetups })
|
||||
renderPage('kurse', 'kurse', { navCurrent: 'kurse', kurse })
|
||||
renderPage('spenden', 'spenden', { navCurrent: 'spenden', spendenregister, spendenuebersicht })
|
||||
renderPage('media', 'media', { navCurrent: 'media' })
|
||||
renderPage('soundboard', 'soundboard', { navCurrent: 'soundboard', soundboard })
|
||||
@@ -56,4 +54,10 @@ renderPage('datenschutz', 'datenschutz', { navCurrent: 'datenschutz' })
|
||||
renderPage('adventskalender', 'adventskalender', { adventskalender })
|
||||
|
||||
episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode, team }))
|
||||
Object.keys(categories).forEach(category => renderPage('category', `podcast/${category}`, { navCurrent: 'podcast', category, categoryName: categories[category], episodes: episodes.filter(e => e.category === category), team }))
|
||||
Object.keys(categories).forEach(category => renderPage('category', `podcast/${slugify(categories[category])}`, { navCurrent: 'podcast', category, categoryName: categories[category], episodes: episodes.filter(e => e.category === category), team }))
|
||||
Object.keys(team).forEach(id => {
|
||||
const member = team[id]
|
||||
const alias = member.name.toLowerCase()
|
||||
const eps = episodes.filter(e => e.participants.find(p => [id, alias].includes(p.toLowerCase())))
|
||||
renderPage('member', `team/${slugify(id)}`, { navCurrent: 'podcast', member, episodes: eps, team })
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user