X-Git-Url: https://git.r.bdr.sh/rbdr/forum/blobdiff_plain/bd8e98d7e24c4dbaee7db6ec7955f7c2f6d396a6..d0ef4b5a008b614a171f7000ae937f9f608727f4:/src/routes/f/%5Bid%5D.svelte?ds=sidebyside

diff --git a/src/routes/f/[id].svelte b/src/routes/f/[id].svelte
index d1fae4c..b235e21 100644
--- a/src/routes/f/[id].svelte
+++ b/src/routes/f/[id].svelte
@@ -1,9 +1,34 @@
-<script>
-  export async function load(ctx) {
-    let id = ctx.page.params.id
-    return { props: { id }}
-  }
+<script lang="ts" context="module">
+	export const load = ({
+		page: {
+			params: { id }
+		}
+	}) => ({ props: { id } });
 </script>
 
-<h1>Forum Index.</h1>
-<p>This component lists topics for forum with id: {id}</p>
+<script lang="ts">
+	import { _ } from 'svelte-i18n';
+	import Forum from '$lib/components/forum/forum.svelte';
+	import ErrorBlock from '$lib/components/error_block/error_block.svelte';
+	import Loader from '$lib/components/loader/loader.svelte';
+
+	export let id;
+
+	import { getForum } from '$lib/stores/forums';
+	$: store = getForum(id);
+	$: forum = $store.data;
+</script>
+
+<svelte:head>
+	<title>{$_(`forum.name.${id}`)}, {$_('forum.forum')}</title>
+</svelte:head>
+
+{#if $store.loading}
+	<Loader />
+{/if}
+{#if $store.error}
+	<ErrorBlock message={$_('forum.error.unavailable')} />
+{/if}
+{#if forum}
+	<Forum {forum} />
+{/if}
