Skip to content

Commit d712dea

Browse files
committed
Update sprints
1 parent b826b7e commit d712dea

File tree

3 files changed

+6
-55
lines changed

3 files changed

+6
-55
lines changed

src/components/SprintCard.astro

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,6 @@ const { data, body } = sprint;
2626
<span>👥</span>
2727
<span>{data.numberOfPeople}</span>
2828
</span>
29-
<span class="flex items-center gap-1">
30-
<span>📍</span>
31-
<span>{data.room}</span>
32-
</span>
3329
<span class="flex items-center gap-1">
3430
<span>🐍</span>
3531
<span>{data.pythonLevel}</span>
@@ -53,18 +49,6 @@ const { data, body } = sprint;
5349
)}
5450
</div>
5551

56-
{data.tags && data.tags.length > 0 && (
57-
<div class="flex flex-wrap gap-2 pt-2">
58-
{data.tags.map((tag) => (
59-
<span key={tag} class="bg-gray-100 text-gray-700 px-2 py-1 rounded text-xs font-medium">{tag}</span>
60-
))}
61-
</div>
62-
)}
63-
64-
{data.description && (
65-
<p class="text-gray-700 leading-relaxed">{data.description}</p>
66-
)}
67-
6852
{(data.links) && (
6953
<div class="text-sm">
7054
<span class="font-medium text-gray-900">Links:</span>

src/content/config.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,6 @@ const sprints = defineCollection({
261261
title: z.string(),
262262
slug: z.string().optional(), // Auto-generated from filename if not provided
263263
numberOfPeople: z.string().or(z.number()),
264-
room: z.string(),
265264
pythonLevel: z.enum(["Any", "Beginner", "Intermediate", "Advanced"]),
266265
contactPerson: z.object({
267266
name: z.string(),
@@ -277,9 +276,6 @@ const sprints = defineCollection({
277276
})
278277
)
279278
.optional(),
280-
description: z.string().optional(),
281-
tags: z.array(z.string()).optional(),
282-
status: z.enum(["active", "full", "cancelled"]).default("active"),
283279
draft: z.boolean().optional().default(false),
284280
}),
285281
});

src/pages/sprints.astro

Lines changed: 6 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,13 @@
11
---
22
import { getCollection } from 'astro:content';
3-
import Layout from '@layouts/SectionLayout.astro'; // Adjust path as needed
3+
import Layout from '@layouts/SectionLayout.astro';
44
import SprintCard from '@components/SprintCard.astro';
5-
import Headline from "@ui/Headline.astro"
5+
// import Headline from "@ui/Headline.astro"
66
7-
// Get all sprint entries
87
const sprints = await getCollection("sprints", ({ data }) => {
98
return import.meta.env.MODE === "production" ? data.draft !== true : true;
109
});
1110
12-
// Sort sprints by title or any other criteria
13-
const sortedSprints = sprints.sort((a, b) =>
14-
a.data.title.localeCompare(b.data.title)
15-
);
16-
17-
// Filter by status if needed
18-
const activeSprints = sortedSprints.filter(sprint =>
19-
sprint.data.status === 'active'
20-
);
21-
22-
// Extract unique rooms for filter
23-
const uniqueRooms = Array.from(new Set(activeSprints.map(sprint => sprint.data.room)));
2411
---
2512

2613
<Layout title="Sprints & Workshops" description="All in one">
@@ -46,29 +33,19 @@ const uniqueRooms = Array.from(new Set(activeSprints.map(sprint => sprint.data.r
4633
<option value="Advanced">Advanced</option>
4734
</select>
4835
</div>
49-
50-
<div class="flex flex-col gap-2">
51-
<label for="room-filter" class="font-semibold text-gray-700 text-sm">Room:</label>
52-
<select id="room-filter" class="px-4 py-2 border border-gray-300 rounded-lg bg-white text-sm min-w-[150px] focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent">
53-
<option value="">All Rooms</option>
54-
{uniqueRooms.map((room) => (
55-
<option value={room}>{room}</option>
56-
))}
57-
</select>
58-
</div>
5936
</div>
6037

6138
<div class="text-center mb-8">
62-
<p class="text-gray-600 font-medium">{activeSprints.length} active {activeSprints.length === 1 ? 'sprint' : 'sprints'}</p>
39+
<p class="text-gray-600 font-medium">{sprints.length} active {sprints.length === 1 ? 'sprint' : 'sprints'}</p>
6340
</div>
6441

6542
<section class="max-w-4xl mx-auto" id="sprints-list">
66-
{activeSprints.map((sprint) => (
43+
{sprints.map((sprint) => (
6744
<SprintCard slug={sprint.slug} />
6845
))}
6946
</section>
7047

71-
{activeSprints.length === 0 && (
48+
{sprints.length === 0 && (
7249
<div class="text-center py-12">
7350
<p class="text-gray-500 text-lg">No sprints are currently available. Check back soon!</p>
7451
</div>
@@ -77,29 +54,24 @@ const uniqueRooms = Array.from(new Set(activeSprints.map(sprint => sprint.data.r
7754
</main>
7855

7956
<script>
80-
// Client-side filtering
8157
document.addEventListener('DOMContentLoaded', () => {
8258
const levelFilter = document.getElementById('level-filter') as HTMLSelectElement;
83-
const roomFilter = document.getElementById('room-filter') as HTMLSelectElement;
8459
const sprintsList = document.getElementById('sprints-list');
8560
const sprintsCount = document.querySelector('.text-center.mb-8 p');
8661

8762
function filterSprints() {
8863
const selectedLevel = levelFilter.value;
89-
const selectedRoom = roomFilter.value;
9064
const sprintCards = sprintsList?.querySelectorAll('.sprint-card');
9165

9266
let visibleCount = 0;
9367

9468
sprintCards?.forEach((card) => {
9569
const cardElement = card as HTMLElement;
9670
const pythonLevel = cardElement.getAttribute('data-python-level');
97-
const room = cardElement.getAttribute('data-room');
9871

9972
const levelMatch = !selectedLevel || pythonLevel === selectedLevel;
100-
const roomMatch = !selectedRoom || room === selectedRoom;
10173

102-
if (levelMatch && roomMatch) {
74+
if (levelMatch) {
10375
cardElement.style.display = 'block';
10476
visibleCount++;
10577
} else {
@@ -113,7 +85,6 @@ const uniqueRooms = Array.from(new Set(activeSprints.map(sprint => sprint.data.r
11385
}
11486

11587
levelFilter?.addEventListener('change', filterSprints);
116-
roomFilter?.addEventListener('change', filterSprints);
11788
});
11889
</script>
11990
</Layout>

0 commit comments

Comments
 (0)