From 2a8b3198b23bbc7456d9b1119a7b224ef9d68eb0 Mon Sep 17 00:00:00 2001 From: Reto Aebersold Date: Tue, 12 Dec 2023 11:02:07 +0100 Subject: [PATCH] feat: learning mentor mgmt UI --- client/src/fetchHelpers.ts | 11 ++++ .../learningMentor/MentorManagementPage.vue | 60 ++++++++++++++----- .../learning_mentor/serializers.py | 12 +++- .../learning_mentor/tests/test_mentor.py | 4 +- server/vbv_lernwelt/learning_mentor/views.py | 5 +- 5 files changed, 73 insertions(+), 19 deletions(-) diff --git a/client/src/fetchHelpers.ts b/client/src/fetchHelpers.ts index f9a4d699..877c7235 100644 --- a/client/src/fetchHelpers.ts +++ b/client/src/fetchHelpers.ts @@ -1,4 +1,5 @@ import { getCookieValue } from "@/router/guards"; +import { createFetch } from "@vueuse/core"; class FetchError extends Error { response: Response; @@ -88,3 +89,13 @@ export const itGetCached = ( return itGetPromiseCache.get(url.toString()) as Promise; }; + +export const useCSRFFetch = createFetch({ + options: { + async beforeFetch({ options }) { + const headers = options.headers as Record; + headers["X-CSRFToken"] = getCookieValue("csrftoken"); + return { options }; + }, + }, +}); diff --git a/client/src/pages/learningMentor/MentorManagementPage.vue b/client/src/pages/learningMentor/MentorManagementPage.vue index e444cf55..3274e057 100644 --- a/client/src/pages/learningMentor/MentorManagementPage.vue +++ b/client/src/pages/learningMentor/MentorManagementPage.vue @@ -1,18 +1,18 @@