diff --git a/frontend/src/views/Curriculum/Curriculum.vue b/frontend/src/views/Curriculum/Curriculum.vue index 182cd79164530af02a8a5e8295afed0f0cc26113..0b9a401c771315d7ea592f80ebb3358a0a11e960 100644 --- a/frontend/src/views/Curriculum/Curriculum.vue +++ b/frontend/src/views/Curriculum/Curriculum.vue @@ -76,8 +76,9 @@ @change="reloadCurriculum" v-model="curriculumYear" > - <option value="2019">2019</option> - <option value="2013">2013</option> + <option v-for="item in curriculumYears" :key="item.id"> + {{ item }} + </option> </select> </div> </div> @@ -257,10 +258,14 @@ export default { curriculumYear: 2019, compulsoryCourses: [], electiveCourses: [], - processedCompulsoryCourses: null + processedCompulsoryCourses: null, + // Hotfix + coursesList: [], + curriculumYears: [] }; }, async mounted() { + await this.getAllCourses(); await this.getStudentMajorAndFaculty(); await this.checkUsedOptions(); await this.getAllFaculties(); @@ -546,6 +551,28 @@ export default { .catch((error) => { console.error(error); }); + }, + // Hotfix + async getAllCourses() { + await axios + .get(process.env.VUE_APP_API_ENDPOINT + "/course") + .then((response) => { + if (response.status == 200) { + this.coursesList.splice(0, this.coursesList.length); + this.coursesList = response.data; + this.getCurriculumYears(response.data); + } + }) + .catch((error) => { + console.error(error); + }); + }, + getCurriculumYears(coursesList) { + for (let i = 0; i < coursesList.length; i++) { + if (!this.curriculumYears.includes(coursesList[i].curriculumYear)) { + this.curriculumYears.push(coursesList[i].curriculumYear); + } + } } } };