mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-14 00:36:48 +00:00
Display and link participants
This commit is contained in:
@@ -26,3 +26,13 @@ block main
|
||||
|
||||
.content
|
||||
!=episode.content
|
||||
|
||||
if episode.participants.length
|
||||
h2 Teilnehmer
|
||||
ul.partcipants
|
||||
for participant in episode.participants
|
||||
li
|
||||
if participants[participant]
|
||||
a(href=`/team/#${participant}`)= participant
|
||||
else
|
||||
= participant
|
||||
|
||||
@@ -3,7 +3,7 @@ mixin sprite(id)
|
||||
use(xlink:href=`${assetPath("/img/sprite.svg")}#${id}`)
|
||||
|
||||
mixin member(m)
|
||||
li.member
|
||||
li.member(id=m.name)
|
||||
img(src=assetPath(m.image) alt=m.name loading="lazy")
|
||||
header
|
||||
h2=m.name
|
||||
|
||||
@@ -6,6 +6,7 @@ const config = require('../pug.config')
|
||||
const site = require('../generated/site-data.json')
|
||||
const episodes = require('../generated/episodes.json')
|
||||
const spenden = require('../generated/spenden.json')
|
||||
const participants = require('../generated/participants.json')
|
||||
const team = require('../content/team.json')
|
||||
const crew = require('../content/crew.json')
|
||||
const meetups = require('../content/meetups.json')
|
||||
@@ -36,4 +37,4 @@ renderPage('category', 'podcast/interviews', { navCurrent: 'podcast', category:
|
||||
renderPage('category', 'podcast/lesestunde', { navCurrent: 'podcast', category: 'lesestunde', categoryName: 'Lesestunde', episodes: episodes.filter(e => e.category === 'lesestunde') })
|
||||
renderPage('category', 'podcast/der-weg', { navCurrent: 'podcast', category: 'der-weg', categoryName: 'Der Weg', episodes: episodes.filter(e => e.category === 'der-weg') })
|
||||
renderPage('category', 'podcast/verschiedenes', { navCurrent: 'podcast', category: 'verschiedenes', categoryName: 'Verschiedenes', episodes: episodes.filter(e => e.category === 'verschiedenes') })
|
||||
episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode }))
|
||||
episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode, participants }))
|
||||
|
||||
@@ -3,6 +3,8 @@ const { basename, join, resolve } = require('path')
|
||||
const request = require('sync-request')
|
||||
|
||||
const meta = require('../content/meta.json')
|
||||
const team = require('../content/team.json')
|
||||
const crew = require('../content/crew.json')
|
||||
const soundboard = require('../content/soundboard.json')
|
||||
|
||||
const dir = (...path) => resolve(__dirname, '..', ...path)
|
||||
@@ -21,6 +23,10 @@ const date = (new Date()).toJSON().split('T')[0]
|
||||
|
||||
writeJSON(dir('generated', 'site-data.json'), { date, block, meta })
|
||||
|
||||
// Participants
|
||||
const participants = team.concat(crew).reduce((result, person) => Object.assign(result, { [person.name]: person }), {})
|
||||
writeJSON(dir('generated', 'participants.json'), participants)
|
||||
|
||||
// Soundboard
|
||||
const sounds = soundboard.map(group => {
|
||||
group.sounds = group.sounds.map(sound => {
|
||||
|
||||
Reference in New Issue
Block a user