Nearly finish
Some checks failed
Build and test backend / Build-backend (pull_request) Failing after 1m31s
Build and test backend / Test-backend (pull_request) Failing after 1m31s
Build and test FrontEnd / Build-frontend (pull_request) Failing after 20s

This commit is contained in:
2024-03-18 17:28:14 +01:00
parent c35f675a11
commit 25c5c1b018
6 changed files with 67 additions and 71 deletions

View File

@ -1,16 +1,27 @@
<script setup>
import {reactive, ref } from 'vue'
import {getSelf,alterSelf} from '../rest/Users.js'
import {getSelf,alterSelf,disconnect,deleteUser} from '../rest/Users.js'
import {getSelfCurriculum, getAllCurriculums} from '../rest/curriculum.js'
import {getCourses} from "../rest/courses.js"
import i18n from "@/i18n.js"
import { uploadProfilePicture } from '@/rest/uploads.js'
const user = await getSelf();
console.log(user);
const UserCurriculum = ref("");
const curricula = ref (await getAllCurriculums());
console.log(curricula)
console.log(user.role === "Teacher")
if(user.role === "Student"){
UserCurriculum.value = await getSelfCurriculum();
}
if(user.role === "Teacher"){
UserCurriculum.value = await getCourses("Teacher");
console.log(UserCurriculum.value)
}
const modif = ref(false);
const curric = ref(false);
const unreg = ref(false);
const reg = ref(false);
const pattern = {
@ -43,8 +54,17 @@
}
toModify= Object.assign({}, pattern);
}
async function unRegister(){
await deleteUser(user.regNo);
}
function getPP(){
if(user.profilePictureUrl === null){
return "/Clyde.png"
}
return user.profilePictureUrl
}
</script>
@ -57,7 +77,7 @@
</div>
<div class="globalInfos">
<div v-if="modif==false && curric==false && unreg==false && reg==false " class="infosContainer" >
<div v-if="modif==false && curric==false && reg==false " class="infosContainer" >
<div>
{{user.firstName}} {{user.lastName}}
</div>
@ -65,17 +85,17 @@
E-mail: {{user.email}}
</div>
<div v-if="user.role==='Student'">
{{user.option}} {{i18n(user.role.toLowerCase())}}
{{user.option}} {{i18n(user.role)}}
</div>
<div v-else>
Role: {{i18n((user.role).toLowerCase())}}
Role: {{i18n((user.role))}}
</div>
<div>
<button @click="modif=!modif"> {{i18n("profile.modify.data")}} </button>
</div>
<div v-if="(user.role==='Student')">
<button @click="reg=!reg">{{i18n("profile.reRegister")}}</button>
<button @click="unreg=!unreg" style="float:right;background-color:rgb(150,0,0);">{{i18n("profile.unRegister")}}</button>
<button @click="unRegister()" style="float:right;background-color:rgb(150,0,0);">{{i18n("profile.unRegister")}}</button>
</div>
<div v-if="(user.role==='Student')">
<button @click="curric=!curric">{{i18n("profile.change.curriculum")}}</button>
@ -108,28 +128,16 @@
</div>
</div>
<div v-else-if="curric" class="infosContainer">
<div>
{{i18n("curriculum")}}:
<select v-model="curriculum">
<option v-for="item in currcula">{{item}}</option>
<div style="height:40px;">
{{i18n("Curriculum")}}:
<select v-model="curriculum" >
<option v-for="item in curricula" style="font-size:20px;" :value="item">{{item.option}}</option>
</select>
</div>
<div>
E-mail:
<input type="mail" v-model="mail">
</div>
<div>
{{i18n("login.password")}}:
<input type="password" v-model="assword">
</div>
<div>
{{i18n("login.cPassword")}}:
<input type="password" id="confirm">
</div>
<div>
<button @click=" curric=!curric;">{{i18n("courses.confirm")}}</button>
<button @click="curric=!curric; resetInputs(personnalInfos,patternInfos);console.log(pattern)" style="float:right;">{{i18n("courses.back")}}</button>
<button @click="curric=!curric; resetInputs(personnalInfos,patternInfos);" style="float:right;">{{i18n("courses.back")}}</button>
</div>
</div>
<div v-else-if="reg" class="infosContainer">
@ -155,43 +163,19 @@
<button @click=" reg=!reg; resetInputs(personnalInfos,patternInfos);console.log(pattern)" style="float:right;">{{i18n("courses.back")}}</button>
</div>
</div>
<div v-else-if="unreg" class="infosContainer">
<div>
E-mail:
<input type="mail" v-model="toModify.email" />
</div>
<div>
{{i18n("profile.address")}}:
<input type="text" v-model="toModify.address">
</div>
<div>
{{i18n("login.password")}}:
<input type="password" v-model="toModify.password">
</div>
<div>
{{i18n("login.cPassword")}}:
<input type="password" id="confirm">
</div>
<div>
<button @click=" unreg=!unreg;">{{i18n("courses.confirm")}}</button>
<button @click=" unreg=!unreg; resetInputs(personnalInfos,patternInfos);console.log(pattern)" style="float:right;">{{i18n("courses.back")}}</button>
</div>
</div>
</div>
<div v-if="modif==false && curric==false && unreg==false && reg==false "class="moreInfos">
<div v-if="modif==false && curric==false && reg==false "class="moreInfos">
<div v-if="(user.role==='Student')">
<div v-if="(user.role ==='Student')">
<div class="listTitle">
{{i18n("profile.course.list")}}
</div>
<div class="listElement "
v-for="item in user.curriculum">
<div class="listElement" v-for="item in UserCurriculum.courses">
<div class=" containerElement">
<div class="name"> {{item.name}} </div>
<div class="teacher">{{item.teacher}}</div>
<div class="name"> {{item.title}} </div>
<div class="teacher">{{item.owner.lastName}}</div>
<div class="credits">Credits:{{item.credits}}</div>
</div>
</div>
@ -200,14 +184,6 @@
<div>
</div>
<div v-if="(user.role==='Teacher')">
<div class="listTitle">
{{i18n("profile.course.list")}}
</div>
<div class="listElement " v-for="item in user.coursesOwned">
{{item.name}}
</div>
</div>
</div>
</div>
</div>