mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-13 16:26:50 +00:00
Add Kurse
This commit is contained in:
10
content/kurse.json
Normal file
10
content/kurse.json
Normal file
@@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"name": "VHS-Kurs Trading im Turm, Kempten",
|
||||
"url": "https://t.me/EinundzwanzigKempten",
|
||||
"top": 77,
|
||||
"left": 41,
|
||||
"country": "DE",
|
||||
"state": ["Bayern"]
|
||||
}
|
||||
]
|
||||
@@ -4,7 +4,8 @@
|
||||
3% { transform: scale(.75); }
|
||||
}
|
||||
|
||||
#meetups {
|
||||
#meetups,
|
||||
#kurse {
|
||||
& #map {
|
||||
@media (--up_to_L) {
|
||||
margin-top: var(--space-xl);
|
||||
|
||||
@@ -27,6 +27,7 @@ html(lang="en")
|
||||
.more
|
||||
a(href="/meetups/" class=(navCurrent === 'meetups' && 'current')) Meetups
|
||||
a(href="/events/" class=(navCurrent === 'events' && 'current')) Events
|
||||
a(href="/kurse/" class=(navCurrent === 'kurse' && 'current')) Kurse
|
||||
a(href="/spenden/" class=(navCurrent === 'spenden' && 'current')) Spenden
|
||||
a(href="/telegram/" class=(navCurrent === 'telegram' && 'current')) Telegram
|
||||
a(href="/shops/" class=(navCurrent === 'shops' && 'current')) Shops
|
||||
|
||||
42
src/kurse.pug
Normal file
42
src/kurse.pug
Normal file
@@ -0,0 +1,42 @@
|
||||
extends /template.pug
|
||||
|
||||
block vars
|
||||
- const title = 'Bitcoin-Kurse'
|
||||
- const description = 'Eine Liste von Bitcoin-Kursen und Lehrveranstaltungen im D/A/CH-Raum.'
|
||||
- const filterUnmapped = (list) => list.filter(kurs => !kurs.top || !kurs.left)
|
||||
- const unmapped = filterUnmapped(kurse)
|
||||
- const style = m => m.top && m.left ? `top:${m.top}%;left:${m.left}%;` : null
|
||||
- const clss = m => m.top && m.left ? null : 'unmapped'
|
||||
- let j = 0
|
||||
|
||||
block main
|
||||
#kurse.wrap
|
||||
section
|
||||
h1= title
|
||||
p= description
|
||||
|
||||
:markdown-it(html linkify typographer)
|
||||
Neue Kurse können gerne [per Pull Request](https://github.com/Einundzwanzig-Podcast/einundzwanzig.space/edit/master/content/kurse.json) hinzugefügt werden.
|
||||
Hier gibt es ein [Video-Tutorial](https://www.youtube.com/watch?v=BNJc9LExEzU), wie ein neuer Pull Request erstellt werden kann.
|
||||
Die Werte für `top/left` geben prozentual die Position des Ortes auf der Karte an.
|
||||
|
||||
#map
|
||||
h2 Lehrveranstaltungen im D/A/CH-Raum
|
||||
ul.kurse
|
||||
each m in kurse
|
||||
li.official(class=clss(m) style=style(m))
|
||||
a(href=m.url target="_blank" rel="nofollow noopener")
|
||||
.dot(style=`animation-delay:${((j*2000) + random(3000))}ms;animation-duration:${kurse.length*2}s;`)
|
||||
= m.name
|
||||
- j++
|
||||
|
||||
img#dach(src=assetPath('/img/dach.svg') alt="DE, AT, CH")
|
||||
|
||||
if unmapped.length
|
||||
#unmapped
|
||||
h2 Weitere Kurse
|
||||
ul.kurse
|
||||
each m in unmapped
|
||||
li(class=clss(m) style=style(m))
|
||||
a(href=m.url target="_blank" rel="nofollow noopener")
|
||||
= m.name
|
||||
@@ -64,11 +64,3 @@ block main
|
||||
if m.members
|
||||
= ' '
|
||||
small.members= `(${m.members})`
|
||||
|
||||
script.
|
||||
document.getElementById('dach').onclick = e => {
|
||||
console.log({
|
||||
top: Math.round(e.offsetY / e.target.height * 100) - 2,
|
||||
left: Math.round(e.offsetX / e.target.width * 100) + 1
|
||||
})
|
||||
}
|
||||
|
||||
@@ -107,4 +107,15 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
// Map
|
||||
const map = document.getElementById('dach')
|
||||
if (map) {
|
||||
map.onclick = e => {
|
||||
console.log({
|
||||
top: Math.round((e.offsetY / e.target.height) * 100) - 2,
|
||||
left: Math.round((e.offsetX / e.target.width) * 100) + 1,
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -8,7 +8,7 @@ const episodes = require('../generated/episodes.json')
|
||||
const spendenregister = require('../generated/spendenregister.json')
|
||||
const spendenuebersicht = require('../content/spendenuebersicht.json')
|
||||
const team = require('../content/team.json')
|
||||
const telegram = require('../content/telegram.json')
|
||||
const kurse = require('../content/kurse.json')
|
||||
const shops = require('../content/shops.json')
|
||||
const soundboard = require('../content/soundboard.json')
|
||||
const adventskalender = require('../content/adventskalender.json')
|
||||
@@ -34,6 +34,7 @@ renderPage('index', 'index', { navCurrent: 'index', currentEpisode: episodes[0]
|
||||
renderPage('podcast', 'podcast', { navCurrent: 'podcast', episodes: [...episodes] })
|
||||
renderPage('team', 'team', { navCurrent: 'team', team })
|
||||
renderPage('meetups', 'meetups', { navCurrent: 'meetups', meetups: meetupsSorted })
|
||||
renderPage('kurse', 'kurse', { navCurrent: 'kurse', kurse })
|
||||
renderPage('spenden', 'spenden', { navCurrent: 'spenden', spendenregister, spendenuebersicht })
|
||||
renderPage('media', 'media', { navCurrent: 'media' })
|
||||
renderPage('soundboard', 'soundboard', { navCurrent: 'soundboard', soundboard })
|
||||
|
||||
Reference in New Issue
Block a user