Merge remote-tracking branch 'origin/master' into tonitch/feat/notifications
This commit is contained in:
23
frontend/src/rest/LessonRequests.js
Normal file
23
frontend/src/rest/LessonRequests.js
Normal file
@ -0,0 +1,23 @@
|
||||
import { restGet, restPost, restDelete, restPatch } from './restConsumer.js'
|
||||
|
||||
export async function getLessonRequest(id){
|
||||
return restGet('/requests/lessonRequest/' + id);
|
||||
}
|
||||
|
||||
export async function getAllRequests(){
|
||||
return restGet("/requests/lessonRequests");
|
||||
}
|
||||
export async function getOwnedRequests(){
|
||||
return restGet("/requests/lessonRequests/owned");
|
||||
}
|
||||
export async function createRequest(request){
|
||||
return restPost("/requests/lessonRequest", request);
|
||||
}
|
||||
|
||||
export async function changeRequestState(id, infos){
|
||||
return restPatch("/requests/lessonRequest/" + id, infos);
|
||||
}
|
||||
|
||||
export async function deleteRequest(id){
|
||||
return restDelete("/requests/lessonRequest/"+id);
|
||||
}
|
@ -8,18 +8,26 @@ import Profil from "@/Apps/Profil.vue"
|
||||
import Courses from "@/Apps/ManageCourses.vue"
|
||||
import Users from "@/Apps/UsersList.vue"
|
||||
import Students from "@/Apps/StudentsList.vue"
|
||||
import Schedule from "@/Apps/Schedule.vue"
|
||||
import ManageSchedule from "@/Apps/ManageSchedule.vue"
|
||||
import ManageOwnedLessons from "@/Apps/ManageOwnLessons.vue";
|
||||
import LessonRequests from "@/Apps/LessonRequests.vue";
|
||||
import Msg from "@/Apps/Msg.vue"
|
||||
import Forums from '@/Apps/Forums.vue'
|
||||
import Payments from "@/Apps/Inscription/PaymentInfo.vue";
|
||||
import ManageRequests from "@/Apps/Inscription/ManageRequests.vue";
|
||||
|
||||
const apps = {
|
||||
'/schedule': Schedule,
|
||||
'/manage-schedule': ManageSchedule,
|
||||
'/login': LoginPage,
|
||||
'/requests': ManageRequests,
|
||||
'/profil': Profil,
|
||||
'/manage-courses' : Courses,
|
||||
'/users-list' : Users,
|
||||
'/students-list' : Students,
|
||||
'/manage-owned-lessons': ManageOwnedLessons,
|
||||
'/manage-schedule-requests' : LessonRequests,
|
||||
'/msg' : Msg,
|
||||
'/forums': Forums,
|
||||
'/payments': Payments
|
||||
@ -30,10 +38,13 @@ const appsList = {
|
||||
'Notification': { path: '#/notifs', icon: 'fa-bell', text: i18n("app.notifications") },
|
||||
'Forum': { path: '#/forums', icon: 'fa-envelope', text: i18n("app.forum") },
|
||||
'Schedule': { path: '#/schedule', icon: 'fa-calendar-days', text: i18n("app.schedules") },
|
||||
'Requests': { path: '#/requests', icon: 'fa-users', text: "Requests" },
|
||||
'ManageSchedules': { path: '#/manage-schedule', icon: 'fa-calendar-days', text: i18n("app.manageSchedules")},
|
||||
'ManageCourses': { path: '#/manage-courses', icon: 'fa-book', text: i18n("app.manage.courses") },
|
||||
'StudentsList':{ path: '#/students-list',icon: 'fa-users',text: i18n("app.studentList")},
|
||||
'UsersList':{ path: '#/users-list',icon: 'fa-users',text: i18n("app.users")},
|
||||
'ManageOwnedLessons':{path: '#/manage-owned-lessons',icon:'fa-calendar-days',text: i18n("app.manageOwnLessons")},
|
||||
'LessonRequests':{path: '#/manage-schedule-requests', icon:'fa-book', text: i18n("app.lessonRequests")},
|
||||
'Requests': { path: '#/requests', icon: 'fa-users', text: "Requests" },
|
||||
'Payments':{path: '#/payments', icon:'fa-users', text:i18n("app.payments")}
|
||||
}
|
||||
|
||||
|
69
frontend/src/rest/lessonSchedule.js
Normal file
69
frontend/src/rest/lessonSchedule.js
Normal file
@ -0,0 +1,69 @@
|
||||
import {restGet,restPatch,restPost,restDelete} from "@/rest/restConsumer.js";
|
||||
|
||||
/**
|
||||
* Create a new lesson
|
||||
*/
|
||||
export async function createLesson(datas){
|
||||
return restPost("/lesson", datas )
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete a lesson
|
||||
*/
|
||||
export async function deleteLesson(id){
|
||||
return restDelete("/lesson/" + id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get information on a particular course
|
||||
*
|
||||
* @return all attribute of the lesson
|
||||
* - course
|
||||
* - start
|
||||
* - end
|
||||
* - color
|
||||
* - local
|
||||
*/
|
||||
export async function getLesson(id){
|
||||
return restGet("/lesson/" + id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the list of courses to display on secretary's option
|
||||
*
|
||||
* @return list of courses of the form
|
||||
* - id
|
||||
* - name
|
||||
* - credits
|
||||
* - facutly
|
||||
* - teacher
|
||||
* - Assistants
|
||||
*/
|
||||
export async function getLessons(){
|
||||
return restGet("/lessons")
|
||||
}
|
||||
|
||||
export async function getOwnedLessons(){
|
||||
return restGet("/lessons/owned")
|
||||
}
|
||||
|
||||
export async function getOnesLessons(){
|
||||
return restGet("/lessons/OwnCurriculum");
|
||||
}
|
||||
|
||||
/**
|
||||
* Change the options of a course
|
||||
*
|
||||
* @param id the id of the course
|
||||
* @param changes Object with value to changes
|
||||
*
|
||||
* The changes object can contain:
|
||||
* - name
|
||||
* - credits
|
||||
* - faculty
|
||||
* - teacher
|
||||
* - assistants: should be a list and will replace all assistants
|
||||
*/
|
||||
export async function alterLesson(id, changes){
|
||||
return restPatch("/lesson/" + id, changes);
|
||||
}
|
@ -78,4 +78,8 @@ export async function editExempReqState(id, newstate){
|
||||
|
||||
export async function getExempByUser(userId){
|
||||
return restGet("/exemptionreq/"+userId)
|
||||
}
|
||||
|
||||
export async function imposeCurriculum(id, cursusid){
|
||||
return restPatch("/request/registerequivimpose/"+id+"/"+cursusid)
|
||||
}
|
@ -20,6 +20,9 @@ export function restDelete(endPoint) {
|
||||
return _rest(endPoint, {method: "DELETE"});
|
||||
}
|
||||
|
||||
export function restDeleteItem(endPoint, data){
|
||||
return _rest(endPoint, {method: "DELETE", credentials: 'include', body: JSON.stringify(data)});
|
||||
}
|
||||
export function restPatch(endPoint, data) {
|
||||
return _rest(endPoint, {method: "PATCH", credentials: 'include', body: JSON.stringify(data)});
|
||||
}
|
||||
|
30
frontend/src/rest/scheduleRest.js
Normal file
30
frontend/src/rest/scheduleRest.js
Normal file
@ -0,0 +1,30 @@
|
||||
import {restGet, restPost, restPatch, restDelete, restDeleteItem} from "@/rest/restConsumer.js";
|
||||
|
||||
export async function getAllSchedule(){
|
||||
return restGet('/schedules');
|
||||
}
|
||||
|
||||
export async function getOwnSchedule(){
|
||||
return restGet('/schedule')
|
||||
}
|
||||
|
||||
export async function createSchedule(curriculum) {
|
||||
return restPost('/schedule',{curriculum : curriculum})
|
||||
}
|
||||
|
||||
export async function getCurriculumSchedule(id){
|
||||
return restGet('/schedule/curriculum/' + id)
|
||||
}
|
||||
|
||||
export async function addLessonToSchedule(id,lessonId){
|
||||
return restPost('/schedule/' + id, lessonId)
|
||||
}
|
||||
|
||||
export async function getSchedule(id){
|
||||
return restGet('/schedule/' + id);
|
||||
|
||||
}
|
||||
|
||||
export async function deleteLessonFromSchedule(id,lessonId){
|
||||
return restDeleteItem('/schedule/lesson/'+ id, lessonId)
|
||||
}
|
Reference in New Issue
Block a user