Files
immich/web/src/routes/+page.ts
T
martin f1e4fdf175 refactor: authentication on public routes (#6765)
* refactor: authentication on public routes

* fix: remove public user

* pr feedback

* pr feedback

* pr feedback

* pr feedback

* remove unused method

* fix: tests

* fix: useless methods

* fix: tests

* pr feedback

* pr feedback

* chore: cleanup

---------

Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
2024-02-13 01:47:26 +00:00

29 lines
754 B
TypeScript

import { AppRoute } from '$lib/constants';
import { redirect } from '@sveltejs/kit';
import { api } from '../api';
import { loadUser } from '../lib/utils/auth';
import type { PageLoad } from './$types';
export const ssr = false;
export const csr = true;
export const load = (async () => {
const authenticated = await loadUser();
if (authenticated) {
redirect(302, AppRoute.PHOTOS);
}
const { data } = await api.serverInfoApi.getServerConfig();
if (data.isInitialized) {
// Redirect to login page if there exists an admin account (i.e. server is initialized)
redirect(302, AppRoute.AUTH_LOGIN);
}
return {
meta: {
title: 'Welcome 🎉',
description: 'Immich Web Interface',
},
};
}) satisfies PageLoad;