37 lines
1,023 B
Markdown
37 lines
1,023 B
Markdown
# 🗞️ KH3 Noticeboard
|
|
|
|
<div id="noticeboard">
|
|
<p><em>Loading latest updates...</em></p>
|
|
</div>
|
|
|
|
<script>
|
|
async function loadNoticeboard() {
|
|
const container = document.getElementById("noticeboard");
|
|
|
|
try {
|
|
const response = await fetch("/_files/noticeboard.json");
|
|
const data = await response.json();
|
|
|
|
container.innerHTML = `
|
|
<p><strong>Last updated:</strong> ${new Date(data.lastUpdated).toLocaleString()}</p>
|
|
${data.sections.map(section => `
|
|
<div class="md-typeset" style="margin-top: 2em;">
|
|
<h2>${section.title}</h2>
|
|
<ul>
|
|
${section.items.map(item => `
|
|
<li>
|
|
<strong>${item.assignee}</strong>: ${item.description}
|
|
${item.type === "action_item" ? "🔥" : ""}
|
|
</li>
|
|
`).join("")}
|
|
</ul>
|
|
</div>
|
|
`).join("")}
|
|
`;
|
|
} catch (err) {
|
|
container.innerHTML = `<p style="color:red;">Error loading noticeboard: ${err}</p>`;
|
|
}
|
|
}
|
|
|
|
loadNoticeboard();
|
|
</script>
|