Add log in / log off in calendar

This commit is contained in:
AleksDw
2025-06-02 13:38:58 +02:00
parent a4cea4eeb3
commit 0b27a0f91c
3 changed files with 26 additions and 1 deletions

View File

@@ -1,3 +1,6 @@
import { unhideElementById, getMyAccount } from './generalUseHelpers.js';
async function getRegisteredEvents(): Promise<any[]> { async function getRegisteredEvents(): Promise<any[]> {
const res = await fetch("/api/events/registered"); const res = await fetch("/api/events/registered");
if (!res.ok) throw new Error("Couldn't load joined events"); if (!res.ok) throw new Error("Couldn't load joined events");
@@ -12,6 +15,17 @@ async function getRegisteredEvents(): Promise<any[]> {
document.addEventListener("DOMContentLoaded", async () => { document.addEventListener("DOMContentLoaded", async () => {
try {
var user = await getMyAccount();
if (user) {
unhideElementById(document, "logout-btn");
}
} catch {
unhideElementById(document, "joinnow-btn");
unhideElementById(document, "signin-btn");
}
const calendarEl = document.getElementById("calendar") as HTMLElement; const calendarEl = document.getElementById("calendar") as HTMLElement;
if (!calendarEl) return; if (!calendarEl) return;

View File

@@ -73,5 +73,6 @@
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.8/index.global.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/fullcalendar@6.1.8/index.global.min.js"></script>
<script type="module" src="/js/calendar.js"></script> <script type="module" src="/js/calendar.js"></script>
<script type="module" src="js/auth.js"></script>
</body> </body>
</html> </html>

View File

@@ -1,4 +1,3 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) { return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,6 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
step((generator = generator.apply(thisArg, _arguments || [])).next()); step((generator = generator.apply(thisArg, _arguments || [])).next());
}); });
}; };
import { unhideElementById, getMyAccount } from './generalUseHelpers.js';
function getRegisteredEvents() { function getRegisteredEvents() {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
const res = yield fetch("/api/events/registered"); const res = yield fetch("/api/events/registered");
@@ -22,6 +22,16 @@ function getRegisteredEvents() {
}); });
} }
document.addEventListener("DOMContentLoaded", () => __awaiter(void 0, void 0, void 0, function* () { document.addEventListener("DOMContentLoaded", () => __awaiter(void 0, void 0, void 0, function* () {
try {
var user = yield getMyAccount();
if (user) {
unhideElementById(document, "logout-btn");
}
}
catch (_a) {
unhideElementById(document, "joinnow-btn");
unhideElementById(document, "signin-btn");
}
const calendarEl = document.getElementById("calendar"); const calendarEl = document.getElementById("calendar");
if (!calendarEl) if (!calendarEl)
return; return;