Fixing rsvps_list authentication and display

This commit is contained in:
collin 2025-08-27 14:00:38 +02:00
parent 9b96084aab
commit 026f0c9d2a
No known key found for this signature in database
3 changed files with 8 additions and 5 deletions

View file

@ -2,6 +2,6 @@ function login() {
const usernameInput = document.getElementById('username'); const usernameInput = document.getElementById('username');
const passwordInput = document.getElementById('password'); const passwordInput = document.getElementById('password');
const token = btoa(`${usernameInput.value}:${passwordInput.value}`); const credentials = `${usernameInput.value}:${passwordInput.value}`;
document.cookie = `token=${String(token)}; path=/`; document.cookie = `credentials=${credentials}; path=/`;
} }

View file

@ -6,6 +6,9 @@
<body> <body>
<h1 class="title fontXL textCenter backgroundLightGreen colorWhite">Collin and Lucy's Wedding</h1> <h1 class="title fontXL textCenter backgroundLightGreen colorWhite">Collin and Lucy's Wedding</h1>
<div class="contents"> <div class="contents">
<table id="rsvpsTable">
<tbody></tbody>
</table>
</div> </div>
<script src="/rsvps_list.js"></script> <script src="/rsvps_list.js"></script>
</body> </body>

View file

@ -8,13 +8,13 @@ function createRsvpEntry(rsvp) {
const newRow = document.createElement('tr'); const newRow = document.createElement('tr');
const attendingColumn = document.createElement('td'); const attendingColumn = document.createElement('td');
attendingColumn.innerText = attending ? '✅' : '❌'; attendingColumn.innerText = attending ? '\u2705' : '\u274C';
const nameColumn = document.createElement('td'); const nameColumn = document.createElement('td');
nameColumn.innerText = member.name; nameColumn.innerText = member.name;
const childColumn = document.createElement('td'); const childColumn = document.createElement('td');
childColumn.innerText = member.child ? '👶' : '🧓'; childColumn.innerText = member.child ? '\u{1F476}' : '\u{1F474}';
const dietaryPreferencesColumn = document.createElement('td'); const dietaryPreferencesColumn = document.createElement('td');
dietaryPreferencesColumn.innerText = member.dietaryPreferences.length > 0 ? member.dietaryPreferences : 'n/a'; dietaryPreferencesColumn.innerText = member.dietaryPreferences.length > 0 ? member.dietaryPreferences : 'n/a';
@ -32,7 +32,7 @@ async function getRsvps() {
const token = Object.fromEntries( const token = Object.fromEntries(
document.cookie.split(";").map((x) => x.trim().split("=")) document.cookie.split(";").map((x) => x.trim().split("="))
)['token'] )['token']
const resp = await fetch('/api/rsvps', { headers: { 'Authorization': `Basic ${token}`} }); const resp = await fetch('/api/rsvps', { headers: { 'Authorization': `Basic ${String(btoa(token))}`} });
const rsvps = await resp.json() const rsvps = await resp.json()
for (const rsvp of rsvps) { for (const rsvp of rsvps) {
createRsvpEntry(rsvp); createRsvpEntry(rsvp);