mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-14 00:36:48 +00:00
Add Kurse
This commit is contained in:
@@ -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
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user