aboutsummaryrefslogtreecommitdiffstats
path: root/web/composables
diff options
context:
space:
mode:
Diffstat (limited to 'web/composables')
-rw-r--r--web/composables/fetch-favourites.ts2
-rw-r--r--web/composables/fetch-login.ts25
-rw-r--r--web/composables/fetch-schedule.ts7
3 files changed, 28 insertions, 6 deletions
diff --git a/web/composables/fetch-favourites.ts b/web/composables/fetch-favourites.ts
index 97b443a..e586d5b 100644
--- a/web/composables/fetch-favourites.ts
+++ b/web/composables/fetch-favourites.ts
@@ -1,4 +1,4 @@
-export default function useFetchFavourites() {
+export default function() {
const favouritesStore = useFavouritesStore();
const errorStore = useErrorStore();
const config = useRuntimeConfig();
diff --git a/web/composables/fetch-login.ts b/web/composables/fetch-login.ts
new file mode 100644
index 0000000..707a04f
--- /dev/null
+++ b/web/composables/fetch-login.ts
@@ -0,0 +1,25 @@
+import { useLoginOptionsStore } from "~/stores/login-options";
+
+export default function() {
+ const loginOptionsStore = useLoginOptionsStore();
+ const errorStore = useErrorStore();
+ const config = useRuntimeConfig();
+
+ loginOptionsStore.setStatus('pending')
+
+ $fetch(config.public.baseURL + '/login', {
+ method: 'GET',
+ server: false,
+ lazy: true,
+ onResponse: ({ response }) => {
+ if (!response.ok) {
+ errorStore.setError(response._data.message || 'An unknown error occurred');
+ }
+
+ if (response._data) {
+ loginOptionsStore.setLoginOptions((response._data as any).data.options);
+ loginOptionsStore.setStatus('idle')
+ }
+ },
+ });
+} \ No newline at end of file
diff --git a/web/composables/fetch-schedule.ts b/web/composables/fetch-schedule.ts
index c061d92..a0e6fec 100644
--- a/web/composables/fetch-schedule.ts
+++ b/web/composables/fetch-schedule.ts
@@ -1,4 +1,4 @@
-export default function useFetchFavourites() {
+export default function() {
const scheduleStore = useScheduleStore();
const errorStore = useErrorStore();
const config = useRuntimeConfig();
@@ -10,7 +10,7 @@ export default function useFetchFavourites() {
onResponse: ({ response }) => {
if (!response.ok) {
if (response.status === 401) {
- navigateTo({ name: 'login', state: { error: 'Sorry, your session has expired' } });
+ navigateTo({ path: '/login', state: { error: 'Sorry, your session has expired' } });
} else {
errorStore.setError(response._data.message || 'An unknown error occurred');
}
@@ -18,9 +18,6 @@ export default function useFetchFavourites() {
if (response._data) {
scheduleStore.setSchedule((response._data as any).data.schedule);
- errorStore.setError("Schedule set");
- } else {
- errorStore.setError("Invalid response returned by server");
}
},
});