Compare commits
1 Commits
Leo/Inscri
...
wal/front/
Author | SHA1 | Date | |
---|---|---|---|
1fad792be7 |
@ -81,7 +81,7 @@ public class InscriptionService {
|
|||||||
);
|
);
|
||||||
|
|
||||||
userRepo.save(userFromRequest);
|
userRepo.save(userFromRequest);
|
||||||
userCurriculumRepo.save(new UserCurriculum(userFromRequest, curriculumRepo.findById(inscrRequest.getCurriculumId()),0));
|
userCurriculumRepo.save(new UserCurriculum(userFromRequest, curriculumRepo.findById(inscrRequest.getCurriculumId())));
|
||||||
}
|
}
|
||||||
inscrRequest.setState(requestState);
|
inscrRequest.setState(requestState);
|
||||||
save(inscrRequest);
|
save(inscrRequest);
|
||||||
|
@ -1,66 +0,0 @@
|
|||||||
package ovh.herisson.Clyde.Tables;
|
|
||||||
|
|
||||||
|
|
||||||
import jakarta.persistence.*;
|
|
||||||
|
|
||||||
@Entity
|
|
||||||
public class ExemptionsRequest {
|
|
||||||
@Id
|
|
||||||
@GeneratedValue(strategy = GenerationType.AUTO)
|
|
||||||
private int id;
|
|
||||||
|
|
||||||
@ManyToOne
|
|
||||||
@JoinColumn(name = "Users")
|
|
||||||
private User user;
|
|
||||||
|
|
||||||
@ManyToOne
|
|
||||||
@JoinColumn(name = "Course")
|
|
||||||
private Course course;
|
|
||||||
private String justifDocument;
|
|
||||||
|
|
||||||
private RequestState state;
|
|
||||||
|
|
||||||
|
|
||||||
public ExemptionsRequest(User user, Course course, String justifDocument, RequestState state){
|
|
||||||
this.user = user;
|
|
||||||
this.course = course;
|
|
||||||
this.justifDocument = justifDocument;
|
|
||||||
this.state = state;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public ExemptionsRequest(){}
|
|
||||||
|
|
||||||
public User getUser() {
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUser(User user) {
|
|
||||||
this.user = user;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Course getCourse() {
|
|
||||||
return course;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setCourse(Course course) {
|
|
||||||
this.course = course;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getJustifDocument() {
|
|
||||||
return justifDocument;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setJustifDocument(String justifDocument) {
|
|
||||||
this.justifDocument = justifDocument;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public RequestState getState() {
|
|
||||||
return state;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setState(RequestState state) {
|
|
||||||
this.state = state;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,59 +0,0 @@
|
|||||||
package ovh.herisson.Clyde.Tables;
|
|
||||||
|
|
||||||
import jakarta.persistence.*;
|
|
||||||
|
|
||||||
@Entity
|
|
||||||
public class ScholarshipRequest {
|
|
||||||
@Id
|
|
||||||
@GeneratedValue(strategy = GenerationType.AUTO)
|
|
||||||
private int id;
|
|
||||||
|
|
||||||
@ManyToOne
|
|
||||||
@JoinColumn(name = "Users")
|
|
||||||
private User user;
|
|
||||||
private RequestState state;
|
|
||||||
private String requestForm;
|
|
||||||
private int amount;
|
|
||||||
|
|
||||||
|
|
||||||
public ScholarshipRequest(User user, RequestState state, String requestForm, int amount){
|
|
||||||
this.user = user;
|
|
||||||
this.state = state;
|
|
||||||
this.requestForm = requestForm;
|
|
||||||
this.amount = amount;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ScholarshipRequest(){}
|
|
||||||
|
|
||||||
public User getUser() {
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUser(User user) {
|
|
||||||
this.user = user;
|
|
||||||
}
|
|
||||||
|
|
||||||
public RequestState getState() {
|
|
||||||
return state;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setState(RequestState state) {
|
|
||||||
this.state = state;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getRequestForm() {
|
|
||||||
return requestForm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setRequestForm(String requestForm) {
|
|
||||||
this.requestForm = requestForm;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getAmount() {
|
|
||||||
return amount;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAmount(int amount) {
|
|
||||||
this.amount = amount;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
package ovh.herisson.Clyde.Tables;
|
|
||||||
|
|
||||||
import jakarta.persistence.Entity;
|
|
||||||
import jakarta.persistence.GeneratedValue;
|
|
||||||
import jakarta.persistence.GenerationType;
|
|
||||||
import jakarta.persistence.Id;
|
|
||||||
|
|
||||||
@Entity
|
|
||||||
public class UninscriptionRequest {
|
|
||||||
@Id
|
|
||||||
@GeneratedValue(strategy = GenerationType.AUTO)
|
|
||||||
private int id;
|
|
||||||
private RequestState state;
|
|
||||||
|
|
||||||
public UninscriptionRequest(RequestState state){
|
|
||||||
this.state = state;
|
|
||||||
}
|
|
||||||
|
|
||||||
public UninscriptionRequest(){}
|
|
||||||
|
|
||||||
public RequestState getState() {
|
|
||||||
return state;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setState(RequestState state) {
|
|
||||||
this.state = state;
|
|
||||||
}
|
|
||||||
}
|
|
@ -21,12 +21,9 @@ public class UserCurriculum {
|
|||||||
@OnDelete(action = OnDeleteAction.CASCADE)
|
@OnDelete(action = OnDeleteAction.CASCADE)
|
||||||
private Curriculum curriculum;
|
private Curriculum curriculum;
|
||||||
|
|
||||||
private int year;
|
public UserCurriculum(User user, Curriculum curriculum){
|
||||||
|
|
||||||
public UserCurriculum(User user, Curriculum curriculum, int year){
|
|
||||||
this.user = user;
|
this.user = user;
|
||||||
this.curriculum = curriculum;
|
this.curriculum = curriculum;
|
||||||
this.year = year;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public UserCurriculum() {}
|
public UserCurriculum() {}
|
||||||
@ -50,12 +47,4 @@ public class UserCurriculum {
|
|||||||
public void setCurriculum(Curriculum curriculum) {
|
public void setCurriculum(Curriculum curriculum) {
|
||||||
this.curriculum = curriculum;
|
this.curriculum = curriculum;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getYear() {
|
|
||||||
return year;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setYear(int year) {
|
|
||||||
this.year = year;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -52,7 +52,7 @@ window.addEventListener('hashchange', () => {
|
|||||||
<a class="icon" href="#Notifications">
|
<a class="icon" href="#Notifications">
|
||||||
<div class="fa-solid fa-bell" style="margin-top: 7px; margin-bottom: 3px;"></div>
|
<div class="fa-solid fa-bell" style="margin-top: 7px; margin-bottom: 3px;"></div>
|
||||||
</a></li>
|
</a></li>
|
||||||
<li @click="active=!active" class="option"style="float: right;" title=settings>
|
<li @click="active=!active" class="option"style="float: right;" title=settings>
|
||||||
<a class="icon" >
|
<a class="icon" >
|
||||||
<div class="fa-solid fa-gear" style="margin-top: 7px; margin-bottom: 3px;"></div>
|
<div class="fa-solid fa-gear" style="margin-top: 7px; margin-bottom: 3px;"></div>
|
||||||
<div v-if="active" class="dropdown">
|
<div v-if="active" class="dropdown">
|
||||||
@ -86,12 +86,10 @@ window.addEventListener('hashchange', () => {
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="page">
|
<div class="page">
|
||||||
<div style=" margin:50px;">
|
|
||||||
<Suspense>
|
<Suspense>
|
||||||
|
|
||||||
<component :is="currentView" />
|
<component :is="currentView" />
|
||||||
</Suspense>
|
</Suspense>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -1,82 +0,0 @@
|
|||||||
<script setup>
|
|
||||||
import i18n from "@/i18n.js"
|
|
||||||
import {getSelf, getUser} from '../rest/Users.js'
|
|
||||||
import {ref} from "vue";
|
|
||||||
|
|
||||||
const user = await getSelf();
|
|
||||||
|
|
||||||
function getPP(){
|
|
||||||
if(user.value.profilePictureUrl === null){
|
|
||||||
return "/Clyde.png"
|
|
||||||
}
|
|
||||||
return user.profilePictureUrl
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<div class="body">
|
|
||||||
<div class="container">
|
|
||||||
<div class="profilPic">
|
|
||||||
<img class="subContainter" :src=getPP()>
|
|
||||||
</div>
|
|
||||||
<div class = "globalInfos">
|
|
||||||
<div class="infosContainer">
|
|
||||||
<div>
|
|
||||||
{{user.firstName}} {{user.lastName}}
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
E-mail: {{user.email}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</template>
|
|
||||||
|
|
||||||
|
|
||||||
<style>
|
|
||||||
.container{
|
|
||||||
|
|
||||||
display:grid;
|
|
||||||
grid-template-columns:200px 900px;
|
|
||||||
grid-template-rows:200px auto;
|
|
||||||
column-gap:30px;
|
|
||||||
row-gap:45px;
|
|
||||||
grid-template-areas:
|
|
||||||
"profilPic globalInfos"
|
|
||||||
"minfos minfos";
|
|
||||||
}
|
|
||||||
|
|
||||||
.profilPic{
|
|
||||||
grid-area:profilPic;
|
|
||||||
}
|
|
||||||
|
|
||||||
.globalInfos {
|
|
||||||
grid-area:globalInfos;
|
|
||||||
align-self :center;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.body {
|
|
||||||
width:100%;
|
|
||||||
margin-bottom:10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subContainter{
|
|
||||||
width:100%;
|
|
||||||
background-color:rgb(50,50,50);
|
|
||||||
border-radius:20px;
|
|
||||||
border:4px solid black;
|
|
||||||
}
|
|
||||||
|
|
||||||
.infosContainer {
|
|
||||||
padding-bottom:50px;
|
|
||||||
border:2px solid black;
|
|
||||||
font-size:25px;
|
|
||||||
color:white;
|
|
||||||
padding:20px;
|
|
||||||
background-color:rgb(50,50,50);
|
|
||||||
border-radius:20px;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -55,11 +55,11 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<template>
|
<template style="background-color:rgba(255,255,255,0.05); border-radius:50px" >
|
||||||
<div class='loginBox'>
|
<div class='loginBox'>
|
||||||
|
|
||||||
<div v-if="loginPage">
|
<div v-if="loginPage">
|
||||||
<form @submit.prevent=" login(outputs.email,outputs.password);goBackHome();"class="form">
|
<form @submit.prevent="login(outputs.email,outputs.password);goBackHome();"class="form">
|
||||||
<h1 style="color:rgb(239,60,168); font-family: sans-serif;">
|
<h1 style="color:rgb(239,60,168); font-family: sans-serif;">
|
||||||
{{i18n("login.guest.signin")}}
|
{{i18n("login.guest.signin")}}
|
||||||
</h1>
|
</h1>
|
||||||
@ -80,7 +80,7 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<form class="form">
|
<form class="form">
|
||||||
<h1 style="color:rgb(239,60,168); font-family: sans-serif; text-align:center;">
|
<h1 style="color:rgb(239,60,168); font-family: sans-serif; text-align:center;">
|
||||||
{{i18n("login.guest.welcome")}}
|
{{i18n("login.guest.welcome")}}
|
||||||
@ -157,31 +157,14 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
.Home{
|
|
||||||
position:absolute;
|
|
||||||
display: flex;
|
|
||||||
z-index: 100;
|
|
||||||
padding: 8px 16px;
|
|
||||||
color:rgb(255, 255, 255);
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.Home:hover{
|
|
||||||
width:40px;
|
|
||||||
background-color: black;
|
|
||||||
border-radius:6px;
|
|
||||||
color:white;
|
|
||||||
transform: translate(0px ,1px);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.loginBox {
|
.loginBox {
|
||||||
background-color: rgb(24,24,24);
|
background-color: rgb(24,24,24);
|
||||||
width: 400px;
|
width: 100%;
|
||||||
display:flex;
|
height:100%;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
padding: 40px;
|
padding: 10%;
|
||||||
border-radius: 20px;
|
border-radius: 5%;
|
||||||
box-shadow:0 5px 25px #000000;
|
box-shadow:0 5px 25px #000000;
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -190,9 +173,8 @@
|
|||||||
width:100%;
|
width:100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
justify-content: center;
|
|
||||||
align-items:center;
|
align-items:center;
|
||||||
gap: 15px;
|
gap: 3%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -200,12 +182,12 @@
|
|||||||
|
|
||||||
width:100%;
|
width:100%;
|
||||||
border: none;
|
border: none;
|
||||||
margin-right: 50px;
|
margin-right: 12.5%;
|
||||||
padding-left: 10px;
|
padding-left: 2.5%;
|
||||||
padding-top:10px;
|
padding-top:2.5%;
|
||||||
padding-bottom:10px;
|
padding-bottom:2.5%;
|
||||||
outline:none;
|
outline:none;
|
||||||
border-radius: 4px;
|
border-radius: 10px;
|
||||||
font-size:1.35em;
|
font-size:1.35em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,7 +9,6 @@ import Profil from "@/Apps/Profil.vue"
|
|||||||
import Courses from "@/Apps/ManageCourses.vue"
|
import Courses from "@/Apps/ManageCourses.vue"
|
||||||
import Users from "@/Apps/UsersList.vue"
|
import Users from "@/Apps/UsersList.vue"
|
||||||
import Students from "@/Apps/StudentsList.vue"
|
import Students from "@/Apps/StudentsList.vue"
|
||||||
import AboutStudent from "@/Apps/AboutStudent.vue";
|
|
||||||
|
|
||||||
const apps = {
|
const apps = {
|
||||||
'/login': LoginPage,
|
'/login': LoginPage,
|
||||||
@ -18,7 +17,6 @@ const apps = {
|
|||||||
'/manage-courses' : Courses,
|
'/manage-courses' : Courses,
|
||||||
'/users-list' : Users,
|
'/users-list' : Users,
|
||||||
'/students-list' : Students,
|
'/students-list' : Students,
|
||||||
'/about-students': AboutStudent
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const appsList = {
|
const appsList = {
|
||||||
@ -30,7 +28,6 @@ const appsList = {
|
|||||||
'ManageCourses': { path: '#/manage-courses', icon: 'fa-book', text: i18n("app.manage.courses") },
|
'ManageCourses': { path: '#/manage-courses', icon: 'fa-book', text: i18n("app.manage.courses") },
|
||||||
'StudentsList':{ path: '#/students-list',icon: 'fa-users',text: i18n("app.studentList")},
|
'StudentsList':{ path: '#/students-list',icon: 'fa-users',text: i18n("app.studentList")},
|
||||||
'UsersList':{ path: '#/users-list',icon: 'fa-users',text: i18n("app.users")},
|
'UsersList':{ path: '#/users-list',icon: 'fa-users',text: i18n("app.users")},
|
||||||
'AboutStudent':{ path: '#/about-users', icon: 'fa-users', text:i18n("app.aboutStudent")}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const currentPath = ref(window.location.hash)
|
const currentPath = ref(window.location.hash)
|
||||||
|
Reference in New Issue
Block a user