Skip to content

Commit e27d2ad

Browse files
authored
Update met nextEditions voor 3 lokaties (#42)
* 3 cards for 3 locations * 3x de juiste datum * update info * clean-up * more cleaning * copilot PR review suggestions
1 parent ffda29b commit e27d2ad

5 files changed

Lines changed: 89 additions & 24 deletions

File tree

‎src/content/editions.js‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,8 @@ export let nextEditions = (editions
3838
(a, b) => a.date.getTime() - b.date.getTime()
3939
);
4040

41-
export let nextEdition = nextEditions.length > 0 && nextEditions[0]
41+
export let nextEditionLocation = {
42+
"DOK in OPEN": nextEditions.find(e => e.where === "DOK in OPEN"),
43+
"DOK Voorhof": nextEditions.find(e => e.where === "DOK Voorhof"),
44+
"DOK Tanthof": nextEditions.find(e => e.where === "DOK Tanthof")
45+
};

‎src/page/AgendaPage.js‎

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,13 @@ export class AgendaPage extends Component {
1515
<PageBody>
1616
<h2>Komende Dojo's</h2>
1717
<p>
18-
Coderdojo Delft wordt georganiseerd op de 4e zaterdag van de maand.
18+
Coderdojo Delft wordt georganiseerd op 3 verschillende locaties in Delft. De Dojo's worden georganiseerd op de volgende vaste dagen:
19+
<ol>
20+
<li>DOK in OPEN: 4e zaterdag van de maand van 14.00 tot 16.00</li>
21+
<li>DOK Voorhof: 2e zaterdag van de maand van 14.00 tot 16.00</li>
22+
<li>DOK Tanthof: 3e zaterdag van de maand van 10.30 tot 12.30</li>
23+
</ol>
24+
<br></br>
1925
Af en toe wijken we hier vanaf als dit door feestdagen anders niet uitkomt - we organizeren soms ook Dojo's andere locaties.
2026
In de zomervakantie komen de Dojo's mogelijk te vervallen.
2127
</p>
@@ -27,7 +33,7 @@ export class AgendaPage extends Component {
2733
})}
2834
</ol>
2935
<br></br>
30-
<p>Je kunt je vanaf de zondag 2 weken voor de Dojo <Link to={routes.nextEdition.url}>hier</Link> aanmelden.</p>
36+
<p>Je kunt je vanaf de zondag 2 weken voor de Dojo <a href="https://www.dok.info/jeugdjongeren/Jeugd9-14jr/coderdojo.html" target="_blank" rel="noopener noreferrer">hier</a> aanmelden.</p>
3137
</PageBody>
3238
</Page>
3339
);

‎src/page/HomePage.js‎

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,26 @@ import { Link } from 'react-router-dom';
44
import { Page } from '../element/Page';
55
import { PageBody } from '../element/PageBody';
66
import { PageTitle } from '../element/PageTitle';
7-
import { nextEdition } from '../content/editions';
7+
import { nextEditionLocation } from '../content/editions';
88
import { routes } from '../routes';
99

1010
export class HomePage extends Component {
1111
render() {
1212
let upcoming;
13-
if (nextEdition) {
13+
const inOpen = nextEditionLocation["DOK in OPEN"];
14+
const voorhof = nextEditionLocation["DOK Voorhof"];
15+
const tanthof = nextEditionLocation["DOK Tanthof"];
16+
if (inOpen || voorhof || tanthof) {
1417
upcoming = (
1518
<React.Fragment>
16-
<p>We organiseren de volgende CoderDojo op:</p>
17-
<p><strong>{nextEdition.displayDate} in {nextEdition.where}</strong></p>
18-
<p>Kijk op onze pagina <Link to={routes.nextEdition.url}>‘Volgende editie’</Link> voor meer informatie over de komende CoderDojo!</p>
19+
<p>We organiseren de volgende CoderDojo's op:</p>
20+
<ol>
21+
{inOpen && <li><strong>{inOpen.where}: {inOpen.displayDate}</strong></li>}
22+
{voorhof && <li><strong>{voorhof.where}: {voorhof.displayDate}</strong></li>}
23+
{tanthof && <li><strong>{tanthof.where}: {tanthof.displayDate}</strong></li>}
24+
</ol>
25+
<br></br>
26+
<p>Kijk op onze pagina <Link to={routes.nextEdition.url}>‘Volgende editie’</Link> voor meer informatie over de komende CoderDojo's!</p>
1927
</React.Fragment>
2028
);
2129
}

‎src/page/NextEditionPage.js‎

Lines changed: 47 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Link } from 'react-router-dom';
44
import { PageTitle } from '../element/PageTitle';
55
import { Page } from '../element/Page';
66
import { PageBody } from '../element/PageBody';
7-
import { nextEdition } from '../content/editions';
7+
import { nextEditionLocation } from '../content/editions';
88
import { routes } from '../routes';
99

1010
export class NextEditionPage extends Component {
@@ -18,12 +18,45 @@ export class NextEditionPage extends Component {
1818
}
1919

2020
dojos() {
21+
22+
const inOpen = nextEditionLocation["DOK in OPEN"];
23+
const voorhof = nextEditionLocation["DOK Voorhof"];
24+
const tanthof = nextEditionLocation["DOK Tanthof"];
25+
26+
if (!inOpen && !voorhof && !tanthof) {
27+
return this.noDojos();
28+
}
29+
2130
return (
2231
<React.Fragment>
23-
<h2>{nextEdition.displayDate}</h2>
24-
<p>De volgende CoderDojo in Delft wordt georganiseerd op {nextEdition.displayDate} in {nextEdition.where}.</p>
25-
<p>De link om in te schrijven vind je onder aan deze pagina. De inschrijving gaat open op {nextEdition.registrationStart} om 12:00 (’s middags) – Wees er snel bij!</p>
26-
<p>Voor een overzicht van de komende CoderDojo's, kijk <Link to={routes.agenda.url}>hier</Link>.</p>
32+
33+
<p>De volgende CoderDojo's in Delft worden georganiseerd op:</p>
34+
35+
<div className="cards">
36+
<div className="card">
37+
<h3>{inOpen.where}</h3>
38+
<p>Vesteplein 100</p>
39+
<p>{inOpen.displayDate}<br></br>14.00 - 16.00</p>
40+
<p><a href={inOpen.registrationUrl} target="_blank" rel="noopener noreferrer">Inschrijven</a></p>
41+
</div>
42+
43+
<div className="card">
44+
<h3>{voorhof.where}</h3>
45+
<p>Duke Ellingtonstraat 203</p>
46+
<p>{voorhof.displayDate}<br></br>14.00 - 16.00</p>
47+
<p><a href={voorhof.registrationUrl} target="_blank" rel="noopener noreferrer">Inschrijven</a></p>
48+
</div>
49+
50+
<div className="card">
51+
<h3>{tanthof.where}</h3>
52+
<p>Dasstraat 6</p>
53+
<p>{tanthof.displayDate}<br></br>10.30 - 12.30</p>
54+
<p><a href={tanthof.registrationUrl} target="_blank" rel="noopener noreferrer">Inschrijven</a></p>
55+
</div>
56+
</div>
57+
<br></br>
58+
<p>De inschrijving van elke CoderDojo gaat 2 weken van tevoren open om 12:00 's middags. Wees er snel bij!</p>
59+
<p>Een overzicht van de geplande CoderDojo's voor de komende maanden, vind je <Link to={routes.agenda.url}>hier</Link>.</p>
2760
<h3>Wat gaan we doen?</h3>
2861
<ul>
2962
<li>Scratch</li>
@@ -34,23 +67,21 @@ export class NextEditionPage extends Component {
3467
</ul>
3568
<p>Kortom, je mag komen met elk project waar je eerder aan gewerkt hebt. Ben je nog nooit geweest? Dan hebben we opdrachten voor je klaarliggen en helpen we je op weg. Maar je mag natuurlijk ook zelf iets verzinnen. Misschien kun je alvast een karakter tekenen voor in een spel dat je wilt maken, of een filmpje zoeken voor een website die je wilt maken.</p>
3669
<p><Link to={routes.whatWeDo.url}>Hier</Link> vind je meer details over wat je op een CoderDojo kunt doen.</p>
37-
<h3>Waar?</h3>
38-
<p>De CoderDojo vindt plaats bij OPEN (Vesteplein 100).</p>
39-
<h3>Hoe laat?</h3>
40-
<p>De CoderDojo is van 14:00 tot 16:00 uur. In deze tijd kun je zelf lekker aan de slag. Aan het einde maken we een rondje, zodat je ook aan de anderen kunt laten zien wat je gemaakt hebt!</p>
70+
<h3>Hoe</h3>
71+
<p>Een CoderDojo duurt 2 uur. In deze tijd kun je zelf lekker aan de slag. Aan het einde maken we een rondje, zodat je ook aan de anderen kunt laten zien wat je gemaakt hebt!</p>
4172
<h3>Ouders</h3>
4273
<p>We vinden het erg fijn als ouders actief meehelpen, zeker voor de jongere kinderen (minimaal 8 jaar). Ouders kunnen ondertussen ook gebruik maken van de faciliteiten van de bibliotheek. Er is beperkt zitplek voor ouders aan de tafels van de kinderen.</p>
74+
<h3>Laptops & accounts</h3>
75+
<p>Wij hebben voor iedereen laptops beschikbaar en klaarstaan voor gebruik. Natuurlijk mag je ook je eigen laptop meenemen. Deze moet minimaal beschikken over WiFi en een browser (Chrome / Firefox). Vergeet ook je oplader niet. Wij kunnen helaas niet alle kinderen helpen om alles werkend te krijgen dus wij vertrouwen erop dat alles werkt bij binnenkomst! Zorg er ook voor dat er een e-mailadres beschikbaar is om een account aan te kunnen maken voor online programma’s.</p>
4376
<h3>Wat moet ik meenemen?</h3>
4477
<ul>
45-
<li>Een werkende laptop*</li>
46-
<li>Een 3-uurtje &#8211; wij zorgen voor een pakje drinken</li>
78+
<li>Een 3-uurtje &#8211; wij zorgen voor een iets te drinken</li>
4779
<li>Een goed humeur!</li>
80+
<li>Optioneel: Eigen laptop</li>
4881
</ul>
49-
<p><em>*) Zorg dat je laptop minimaal over WiFi, een browser (Chrome / Firefox) beschikt. Vergeet ook je oplader niet. Wij kunnen helaas niet alle kinderen helpen om alles werkend te krijgen dus wij vertrouwen erop dat alles werkt bij binnenkomst! Zorg er ook voor dat er een e-mailadres beschikbaar is om een account aan te kunnen maken voor online programma’s.</em></p>
50-
<p>We hebben een beperkt aantal laptops te leen. Laat het ons via het inschrijfformulier weten als je daarvan gebruik wilt maken.</p>
5182
<h3>Inschrijven</h3>
52-
<p>Voor deze Dojo hebben we maar beperkt plek! Er is ruimte voor een maximaal aantal deelnemers. Elke deelnemer heeft zijn eigen ticket nodig, en je kunt maximaal twee tickets reserveren. Als de plekken voor deze CoderDojo bezet zijn, kun je je naam op de wachtlijst zetten, we nemen dan contact met je op zodra er een plek vrijkomt. Laat het ons dus ook weten als je verhinderd bent.</p>
53-
<p>Vanaf januari 2020 wordt de inschrijving verzorgt door DOK. <a href={nextEdition.registrationUrl} target="_blank" rel="noopener noreferrer">Klik hier</a> om naar de inschrijvingspagina te gaan.</p>
83+
<p>Voor elke CoderDojo hebben we maar beperkt plek! Er is ruimte voor een maximaal aantal deelnemers. Elke deelnemer heeft zijn eigen ticket nodig, en je kunt maximaal twee tickets reserveren. Als de plekken voor deze CoderDojo bezet zijn, kun je je naam op de wachtlijst zetten, we nemen dan contact met je op zodra er een plek vrijkomt. Laat het ons dus ook weten als je verhinderd bent.</p>
84+
<p>Een registratielink voor de komende CoderDojo's vind je bovenaan deze pagina bij de betreffende edities.</p>
5485
<p><i>Is de Dojo vol, of kun je niet op die dag? Je kunt ook kijken of er plek is bij een CoderDojo in de buurt: <a href="http://www.coderdojo-zoetermeer.nl" target="_blank" rel="noopener noreferrer">CoderDojo Zoetermeer</a>, <a href="http://www.coderdojo-denhaag.nl" target="_blank" rel="noopener noreferrer">CoderDojo Den Haag</a> of <a href="http://www.coderdojo-rotterdam.nl" target="_blank" rel="noopener noreferrer">CoderDojo Rotterdam</a>.</i></p>
5586
</React.Fragment>
5687
);
@@ -59,7 +90,7 @@ export class NextEditionPage extends Component {
5990
render() {
6091
let content;
6192

62-
if (nextEdition) {
93+
if (nextEditionLocation) {
6394
content = this.dojos();
6495
} else {
6596
content = this.noDojos();

‎src/style/main.css‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ body {
3333

3434
ol, ul {
3535
list-style: none;
36+
padding-left: 40px;
3637
}
3738

3839
blockquote, q {
@@ -295,3 +296,18 @@ h4 {
295296
width: 100%;
296297
height: auto;
297298
}
299+
300+
301+
/* Cards */
302+
.cards {
303+
display: grid;
304+
grid-template-columns: repeat(3, 1fr);
305+
gap: 20px;
306+
}
307+
308+
.card {
309+
padding: 20px;
310+
border: 1px solid #ddd;
311+
border-radius: 8px;
312+
background: white;
313+
}

0 commit comments

Comments
 (0)