From f77e88b2d8a808442ab1c2fc875c24e9656239d8 Mon Sep 17 00:00:00 2001
From: "robinwilliam.hundt" <robinwilliam.hundt@stud.uni-goettingen.de>
Date: Sun, 10 Dec 2017 14:13:24 +0100
Subject: [PATCH] New store module for student-data

---
 frontend/src/store/modules/student-page.js | 36 ++++++++++++++++++++++
 frontend/src/store/store.js                |  4 ++-
 2 files changed, 39 insertions(+), 1 deletion(-)
 create mode 100644 frontend/src/store/modules/student-page.js

diff --git a/frontend/src/store/modules/student-page.js b/frontend/src/store/modules/student-page.js
new file mode 100644
index 00000000..8d593808
--- /dev/null
+++ b/frontend/src/store/modules/student-page.js
@@ -0,0 +1,36 @@
+import ax from '../api'
+
+const studentPage = {
+  state: {
+    studentName: '',
+    exam: {},
+    submissionTypes: [],
+    submissions: []
+  },
+  mutations: {
+    'SET_STUDENT_NAME': function (state, name) {
+      state.studentName = name
+    },
+    'SET_EXAM': function (state, exam) {
+      state.exam = exam
+    },
+    'SET_SUBMISSION_TYPES': function (state, submissionTypes) {
+      state.submissionTypes = submissionTypes
+    },
+    'SET_SUBMISSIONS': function (state, submissions) {
+      state.submissions = submissions
+    }
+  },
+  actions: {
+    getStudentData (context) {
+      ax.get('api/student-page/').then(response => {
+        const data = response.data
+        context.commit('SET_STUDENT_NAME', data.name)
+        context.commit('SET_EXAM', data.exam)
+        context.commit('SET_SUBMISSIONS', data.submissions)
+      })
+    }
+  }
+}
+
+export default studentPage
diff --git a/frontend/src/store/store.js b/frontend/src/store/store.js
index 59525d1c..6e8e4912 100644
--- a/frontend/src/store/store.js
+++ b/frontend/src/store/store.js
@@ -4,12 +4,14 @@ import ax from './api'
 
 import gradySays from './grady_speak'
 import submissionNotes from './modules/submission-notes'
+import studentPage from './modules/student-page'
 
 Vue.use(Vuex)
 
 const store = new Vuex.Store({
   modules: {
-    submissionNotes: submissionNotes
+    submissionNotes,
+    studentPage
   },
   state: {
     token: '',
-- 
GitLab