diff options
Diffstat (limited to 'web/middleware/logged-in.ts')
| -rw-r--r-- | web/middleware/logged-in.ts | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/web/middleware/logged-in.ts b/web/middleware/logged-in.ts new file mode 100644 index 0000000..1ddd3ce --- /dev/null +++ b/web/middleware/logged-in.ts @@ -0,0 +1,21 @@ +export default defineNuxtRouteMiddleware((to, from) => { + if ("" === getCookie("fosdem_planner_session")) { + return navigateTo("/login"); + } +}); + +function getCookie(cname: string) { + let name = cname + "="; + let decodedCookie = decodeURIComponent(document.cookie); + let ca = decodedCookie.split(";"); + for (let i = 0; i < ca.length; i++) { + let c = ca[i]; + while (c.charAt(0) == " ") { + c = c.substring(1); + } + if (c.indexOf(name) == 0) { + return c.substring(name.length, c.length); + } + } + return ""; +} |
