aboutsummaryrefslogtreecommitdiffstats
path: root/web/composables/fetch-favourites.ts
blob: 965120d1803af175ec6813c99312baad8b399051 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
export default function() {
  const conferenceStore = useConferenceStore()
  const favouritesStore = useFavouritesStore();
  const errorStore = useErrorStore();
  const config = useRuntimeConfig();
  
  favouritesStore.status = 'pending'

  return $api(config.public.baseURL + '/favourites/' + conferenceStore.id, {
    method: 'GET',
    onResponse: ({ response }) => {
      favouritesStore.status = 'idle'
      if (!response.ok) {
        errorStore.setError(response._data.message || 'An unknown error occurred');
      }
      if (response._data) {
        favouritesStore.setFavourites((response._data as any).data);
      }
    },
  });
}