From 425a8074891aebf9fba8c4f99a7d80786e96139d Mon Sep 17 00:00:00 2001 From: Dennis Reimann Date: Tue, 19 Apr 2022 13:19:36 +0200 Subject: [PATCH] Update team data structure --- content/team.json | 32 ++++++++++++++++---------------- src/episode.pug | 2 +- src/team.pug | 5 +++-- tasks/generate_pages.js | 3 +-- tasks/generate_site_data.js | 5 ----- 5 files changed, 21 insertions(+), 26 deletions(-) diff --git a/content/team.json b/content/team.json index 085bc058ce6..4d0d3554fd2 100644 --- a/content/team.json +++ b/content/team.json @@ -1,5 +1,5 @@ -[ - { +{ + "markus": { "name": "Markus", "twitter": "MarkusTurm", "mastodon": "https://bitcoinhackers.org/@markusturm", @@ -7,7 +7,7 @@ "text": "Bester Mann. Toxic ☣️ aber fair. Sorgt für die Bitcoin Mass-Adoption \"one [Currywurstbude](http://www.curry-alm.info/) at a time\" 🌭", "image": "/img/team/markus.jpg" }, - { + "gigi": { "name": "Gigi", "twitter": "dergigi", "mastodon": "https://bitcoinhackers.org/@dergigi", @@ -16,7 +16,7 @@ "text": "Der Gigi leiht dir seine Taschenlampe 🔦 solltest du dich auf deinem Weg im [Kaninchenbau](https://21lessons.com/) mal verlaufen 🕳🐇", "image": "/img/team/gigi.jpg" }, - { + "fab": { "name": "Fab", "twitter": "fabthefoxx", "mastodon": "https://bitcoinhackers.org/@fabthefox", @@ -24,7 +24,7 @@ "text": "The Fox 🦊 verbreitet mit seinem Verlag Aprycot das Bitcoin-Wissen und ist der Wirt an der [Media-Theke](https://aprycot.media/thek/) 📙", "image": "/img/team/fab.jpg" }, - { + "dennis": { "name": "Dennis", "twitter": "_d11n_", "mastodon": "https://bitcoinhackers.org/@d11n", @@ -33,54 +33,54 @@ "text": "Mag Open Source und [BTCPay Server](https://btcpayserver.org/) 💚 und schreibt lieber Software als Texte über sich selbst 👨🏻‍💻", "image": "/img/team/dennis.jpg" }, - { + "daniel": { "name": "Daniel", "twitter": "danielwingen", "text": "Kennt den [Value Of Bitcoin](https://valueofbitcoin.com/) 🧊 und ist daher nicht nur Sound Money Maximalist, sondern auch Fiat Minimalist 💸", "image": "/img/team/daniel.jpg" }, - { + "patrick": { "name": "Patrick", "twitter": "PatrickZGW", "github": "PatrickZGW", "text": "Gewinnt als Argumentations-Bazooka jedes Diskussionduell und ist Gastgeber des [Zeit, Geld & Wirtschaft](https://wavve.link/zgw-podcast) Podcasts ⌚₿\uD83D\uDCC8", "image": "/img/team/patrick.jpg" }, - { + "egge": { "name": "Egge", "twitter": "egge24_", "github": "Egge7", "text": "Die [Mempool-Wetterfee](https://t.me/BlockReportDisc) der die Nodes vertrauen 🌈", "image": "/img/team/egge.jpg" }, - { + "joko": { "name": "Joko", "twitter": "jokoono", "url": "https://btc21.de", "text": "Der Tulpenhändler deines Vertrauens 🌷 hat auch immer die neueste [BTC21](https://btc21.de) Ausgabe auf dem Tresen 📰", "image": "/img/team/joko.png" }, - { + "kemal": { "name": "Kemal", "twitter": "_pretyflaco", "url": "https://ideasarelikeflames.com/", "text": "Verbindet Bitcoin und [Bikini](https://bitcoin-turm.de/bturm26/) 👙 und berichtet als Türkei-Korrespondent über Geld in der ganzen Welt 🇹🇷", "image": "/img/team/kemal.jpg" }, - { + "lassmiranda": { "name": "Lassmiranda", "twitter": "Lassmiranda21", "text": "Dennsiewillja! Rundum coole Socke 🧦 Wenn er nicht grade bei [Moe](https://www.youtube.com/watch?v=PGvwVo3rR8U) anruft, managed er unseren [YouTube-Kanal](https://www.youtube.com/c/EinundzwanzigPodcast) 📺", "image": "/img/team/lassmiranda.jpg" }, - { + "jeff": { "name": "Jeff", "twitter": "fulmolightning", "url": "https://fulmo.org/", "text": "[Potzblitz!](https://www.youtube.com/c/FulmoLightning/videos) ⚡️ Ein fulmonantes Organisationstalent und Lightning Network-Urgestein 🦸‍♂️", "image": "/img/team/jeff.jpg" }, - { + "moritz": { "name": "Moritz", "twitter": "MWietersheim", "github": "cryptoadvance", @@ -88,14 +88,14 @@ "text": "Ein Gespenst geht um die Welt 👻 und Moritz trägt es im [Specter-Koffer](https://specter.solutions/#enterprise) immer bei sich 🧳", "image": "/img/team/moritz.jpg" }, - { + "ole": { "name": "Ole", "twitter": "DerCheapi", "url": "https://medium.com/@dercheapi", "text": "Kinderzimmerökonom und Junior-Shitposter 💁‍♂️ Senkt unsere Boomer-Quote und findet die [Easter-Eggs](/podcast/der-weg-31-bitcoin-ist-ein-easter-egg/) 🥚", "image": "/img/team/ole.jpg" }, - { + "cercatrova": { "name": "Cerca", "twitter": "cercatrova_21", "github": "cercatrova21", @@ -103,4 +103,4 @@ "text": "Der Quoten-Schweizer! 🇨🇭🧀 Sagt jedem zentral gesteuerten Geldinstitut den Kampf an und hilft dir jeden Scammer zu scammen", "image": "/img/team/cercatrova.jpg" } -] +} diff --git a/src/episode.pug b/src/episode.pug index 7202d89ab28..3efacf99411 100644 --- a/src/episode.pug +++ b/src/episode.pug @@ -32,7 +32,7 @@ block main ul.partcipants for participant in episode.participants li - if participants[participant] + if team[participant.toLowerCase()] a(href=`/team/#${participant}`)= participant else = participant diff --git a/src/team.pug b/src/team.pug index 5cdb9ad77ac..89fe67f43a9 100644 --- a/src/team.pug +++ b/src/team.pug @@ -3,8 +3,9 @@ extends /template.pug block vars - const title = 'Team' - const description = 'Einmal die Woche sitzen diese Jungs zusammen und besprechen die aktuellen Geschehnisse in Bitcoin und der Welt.' - - const core = team.slice(0, 5) - - const crew = team.slice(5) + - const members = Object.values(team) + - const core = members.slice(0, 5) + - const crew = members.slice(5) block main #team.wrap diff --git a/tasks/generate_pages.js b/tasks/generate_pages.js index 14d54b2c182..d265b28cd3c 100644 --- a/tasks/generate_pages.js +++ b/tasks/generate_pages.js @@ -7,7 +7,6 @@ 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') -const participants = require('../generated/participants.json') const team = require('../content/team.json') const meetups = require('../content/meetups.json') const soundboard = require('../content/soundboard.json') @@ -51,4 +50,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, participants })) +episodes.forEach(episode => renderPage('episode', `podcast/${episode.slug}`, { navCurrent: 'podcast', episode, team })) diff --git a/tasks/generate_site_data.js b/tasks/generate_site_data.js index 75954a7f925..9c3b9524feb 100644 --- a/tasks/generate_site_data.js +++ b/tasks/generate_site_data.js @@ -3,7 +3,6 @@ const { basename, join, resolve } = require('path') const request = require('sync-request') const meta = require('../content/meta.json') -const team = require('../content/team.json') const meetups = require('../content/meetups.json') const soundboard = require('../content/soundboard.json') @@ -23,10 +22,6 @@ const date = (new Date()).toJSON().split('T')[0] writeJSON(dir('generated', 'site-data.json'), { date, block, meta }) -// Participants -const participants = team.reduce((result, person) => Object.assign(result, { [person.name]: person }), {}) -writeJSON(dir('generated', 'participants.json'), participants) - // Meetups const meetup = meetups.map(m => { const copy = Object.assign({}, m)