From 96bf755a922972555880db193e19b56a22f8f3ae Mon Sep 17 00:00:00 2001 From: Gabriel Jonathan <23520034@std.stei.itb.ac.id> Date: Mon, 26 Apr 2021 21:56:31 +0700 Subject: [PATCH] Hotfixed student curriculum year dropdown list to display all curriculum years. --- frontend/src/views/Curriculum/Curriculum.vue | 33 ++++++++++++++++++-- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/frontend/src/views/Curriculum/Curriculum.vue b/frontend/src/views/Curriculum/Curriculum.vue index 182cd791..0b9a401c 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); + } + } } } }; -- GitLab