Compare commits
	
		
			15 Commits
		
	
	
		
			245d1a9f0e
			...
			2698ca580b
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 2698ca580b | |||
| 351c0dbfb2 | |||
| 3e304ca0ac | |||
| 9e299b39bd | |||
| c807568689 | |||
| 67552901d6 | |||
| ffc8682453 | |||
| 93ec63beae | |||
| 87d00943c0 | |||
| dc559cefee | |||
| b2db8eec16 | |||
| 9a20462ede | |||
| b00ab09079 | |||
| 05fc134281 | |||
| 407b881144 | 
@ -57,7 +57,7 @@ paths:
 | 
				
			|||||||
        - Users
 | 
					        - Users
 | 
				
			||||||
      security:
 | 
					      security:
 | 
				
			||||||
        - bearer: []
 | 
					        - bearer: []
 | 
				
			||||||
      responses:
 | 
					      responses: 
 | 
				
			||||||
        '200':
 | 
					        '200':
 | 
				
			||||||
          description: Ok
 | 
					          description: Ok
 | 
				
			||||||
          content:
 | 
					          content:
 | 
				
			||||||
@ -122,11 +122,11 @@ paths:
 | 
				
			|||||||
          description: Successfully changed. 
 | 
					          description: Successfully changed. 
 | 
				
			||||||
        '401':
 | 
					        '401':
 | 
				
			||||||
          $ref: '#/components/responses/UnauthorizedError'
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
  /user/{mat}:
 | 
					  /user/{RegNo}:
 | 
				
			||||||
    parameters:
 | 
					    parameters:
 | 
				
			||||||
      - name: mat
 | 
					      - name: RegNo
 | 
				
			||||||
        in: path
 | 
					        in: path
 | 
				
			||||||
        description: Matricule of the user (unique id)
 | 
					        description: Regestration number of the user (unique id)
 | 
				
			||||||
        required: true
 | 
					        required: true
 | 
				
			||||||
        schema:
 | 
					        schema:
 | 
				
			||||||
          type: integer
 | 
					          type: integer
 | 
				
			||||||
@ -147,6 +147,8 @@ paths:
 | 
				
			|||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
        - General
 | 
					        - General
 | 
				
			||||||
        - Admin
 | 
					        - Admin
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - Ext (scientific articles)
 | 
				
			||||||
      security:
 | 
					      security:
 | 
				
			||||||
        - bearer: []
 | 
					        - bearer: []
 | 
				
			||||||
      requestBody:
 | 
					      requestBody:
 | 
				
			||||||
@ -188,6 +190,12 @@ paths:
 | 
				
			|||||||
        '401':
 | 
					        '401':
 | 
				
			||||||
          $ref: '#/components/responses/UnauthorizedError'
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
  /courses/{id}:
 | 
					  /courses/{id}:
 | 
				
			||||||
 | 
					    parameters:
 | 
				
			||||||
 | 
					      - name: id
 | 
				
			||||||
 | 
					        in: path
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        schema:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
    get:
 | 
					    get:
 | 
				
			||||||
      summary: see courses informations 
 | 
					      summary: see courses informations 
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
@ -200,12 +208,7 @@ paths:
 | 
				
			|||||||
            application/json:
 | 
					            application/json:
 | 
				
			||||||
              schema:
 | 
					              schema:
 | 
				
			||||||
                $ref: '#/components/schemas/Course'
 | 
					                $ref: '#/components/schemas/Course'
 | 
				
			||||||
    parameters:
 | 
					
 | 
				
			||||||
      - name: id
 | 
					 | 
				
			||||||
        in: path
 | 
					 | 
				
			||||||
        required: true
 | 
					 | 
				
			||||||
        schema:
 | 
					 | 
				
			||||||
          type: integer
 | 
					 | 
				
			||||||
    delete:
 | 
					    delete:
 | 
				
			||||||
      summary: delete a course 
 | 
					      summary: delete a course 
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
@ -241,7 +244,6 @@ paths:
 | 
				
			|||||||
                faculty:
 | 
					                faculty:
 | 
				
			||||||
                  type: string
 | 
					                  type: string
 | 
				
			||||||
                teachers:
 | 
					                teachers:
 | 
				
			||||||
                  type: object
 | 
					 | 
				
			||||||
                  $ref: '#/components/schemas/User'
 | 
					                  $ref: '#/components/schemas/User'
 | 
				
			||||||
                assistants:
 | 
					                assistants:
 | 
				
			||||||
                  type: array
 | 
					                  type: array
 | 
				
			||||||
@ -266,7 +268,7 @@ paths:
 | 
				
			|||||||
      summary: Create a cursus
 | 
					      summary: Create a cursus
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
        - General
 | 
					        - General
 | 
				
			||||||
        - cursus
 | 
					        - Cursus
 | 
				
			||||||
      security: 
 | 
					      security: 
 | 
				
			||||||
        - bearer: []
 | 
					        - bearer: []
 | 
				
			||||||
      requestBody:
 | 
					      requestBody:
 | 
				
			||||||
@ -298,7 +300,7 @@ paths:
 | 
				
			|||||||
      summary: See Cursus's informations 
 | 
					      summary: See Cursus's informations 
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
        - General
 | 
					        - General
 | 
				
			||||||
        - cursus
 | 
					        - Cursus
 | 
				
			||||||
      responses:
 | 
					      responses:
 | 
				
			||||||
        '200':
 | 
					        '200':
 | 
				
			||||||
          description: OK
 | 
					          description: OK
 | 
				
			||||||
@ -316,7 +318,7 @@ paths:
 | 
				
			|||||||
      summary: Delete cursus
 | 
					      summary: Delete cursus
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
        - General
 | 
					        - General
 | 
				
			||||||
        - cursus
 | 
					        - Cursus
 | 
				
			||||||
      security: 
 | 
					      security: 
 | 
				
			||||||
        - bearer: []
 | 
					        - bearer: []
 | 
				
			||||||
      responses:
 | 
					      responses:
 | 
				
			||||||
@ -328,7 +330,7 @@ paths:
 | 
				
			|||||||
      summary: Modify cursus 
 | 
					      summary: Modify cursus 
 | 
				
			||||||
      tags:
 | 
					      tags:
 | 
				
			||||||
        - General
 | 
					        - General
 | 
				
			||||||
        - cursus
 | 
					        - Cursus
 | 
				
			||||||
      security:
 | 
					      security:
 | 
				
			||||||
        - bearer: []
 | 
					        - bearer: []
 | 
				
			||||||
      requestBody:
 | 
					      requestBody:
 | 
				
			||||||
@ -345,7 +347,6 @@ paths:
 | 
				
			|||||||
                faculty:
 | 
					                faculty:
 | 
				
			||||||
                  type: string
 | 
					                  type: string
 | 
				
			||||||
                teachers:
 | 
					                teachers:
 | 
				
			||||||
                  type: object
 | 
					 | 
				
			||||||
                  $ref: '#/components/schemas/User'
 | 
					                  $ref: '#/components/schemas/User'
 | 
				
			||||||
                assistants:
 | 
					                assistants:
 | 
				
			||||||
                  type: array
 | 
					                  type: array
 | 
				
			||||||
@ -365,7 +366,416 @@ paths:
 | 
				
			|||||||
        '401':
 | 
					        '401':
 | 
				
			||||||
          $ref: '#/components/responses/UnauthorizedError'
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
          
 | 
					          
 | 
				
			||||||
    
 | 
					             
 | 
				
			||||||
 | 
					  /lesson:
 | 
				
			||||||
 | 
					    post:
 | 
				
			||||||
 | 
					      summary: create a new lesson
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - Lesson
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      security: 
 | 
				
			||||||
 | 
					        - bearer: []
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        content:
 | 
				
			||||||
 | 
					          application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					            schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                date:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                  description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					                CourseId:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					                duration:
 | 
				
			||||||
 | 
					                  type: number
 | 
				
			||||||
 | 
					                classroom:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Lesson created 
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					  /lesson/{id}:
 | 
				
			||||||
 | 
					    parameters:
 | 
				
			||||||
 | 
					      - name: id
 | 
				
			||||||
 | 
					        in: path
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        schema:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					    get:
 | 
				
			||||||
 | 
					      summary : See lesson's informations
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Users
 | 
				
			||||||
 | 
					        - Lesson
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '200':
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					          content:
 | 
				
			||||||
 | 
					            application/json:
 | 
				
			||||||
 | 
					              schema:
 | 
				
			||||||
 | 
					                $ref: '#/components/schemas/Lesson'
 | 
				
			||||||
 | 
					    patch:
 | 
				
			||||||
 | 
					      summary : Modify Lesson
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - Lesson
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      security:
 | 
				
			||||||
 | 
					        - bearer: []
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        content:
 | 
				
			||||||
 | 
					          application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					             schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                date:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                  description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					                IDcourse:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					                duration:
 | 
				
			||||||
 | 
					                  type: number
 | 
				
			||||||
 | 
					                classroom:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Lesson modified
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					    delete:
 | 
				
			||||||
 | 
					      summary: Delete lesson
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Lesson
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      security: 
 | 
				
			||||||
 | 
					        - bearer: []
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Success
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					  /scheduleRequest:
 | 
				
			||||||
 | 
					    post:
 | 
				
			||||||
 | 
					      summary: Create a new request
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Teacher
 | 
				
			||||||
 | 
					        - ScheduleRequest
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        content:
 | 
				
			||||||
 | 
					          application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					            schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                requestType:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                lessonId:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					                newDate:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                  description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					                newClassroom:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                newCourseId:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Request created 
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /scheduleRequest/{id}:
 | 
				
			||||||
 | 
					    parameters:
 | 
				
			||||||
 | 
					      - name: id
 | 
				
			||||||
 | 
					        in: path
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        schema:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					    get:
 | 
				
			||||||
 | 
					      summary : See request information
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Teacher
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - ScheduleRequest
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '200':
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					          content:
 | 
				
			||||||
 | 
					            application/json:
 | 
				
			||||||
 | 
					              schema:
 | 
				
			||||||
 | 
					                $ref: '#/components/schemas/ScheduleRequest'
 | 
				
			||||||
 | 
					    patch:
 | 
				
			||||||
 | 
					      summary : Modify request
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Teacher
 | 
				
			||||||
 | 
					        - ScheduleRequest
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        content:
 | 
				
			||||||
 | 
					          application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					             schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                newDate:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                newClassroom:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                newCourseId:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Request modified
 | 
				
			||||||
 | 
					    delete:
 | 
				
			||||||
 | 
					      summary: Delete request
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Teacher
 | 
				
			||||||
 | 
					        - Secretariat
 | 
				
			||||||
 | 
					        - ScheduleRequest
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Success
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  /display:
 | 
				
			||||||
 | 
					    post:
 | 
				
			||||||
 | 
					        summary: Create a new display
 | 
				
			||||||
 | 
					        tags:
 | 
				
			||||||
 | 
					          - Display
 | 
				
			||||||
 | 
					          - Ext (Schedule)
 | 
				
			||||||
 | 
					        requestBody:
 | 
				
			||||||
 | 
					          required: true
 | 
				
			||||||
 | 
					          content:
 | 
				
			||||||
 | 
					            application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					              schema:
 | 
				
			||||||
 | 
					                type: object
 | 
				
			||||||
 | 
					                properties:
 | 
				
			||||||
 | 
					                  timeMode:
 | 
				
			||||||
 | 
					                    type: string
 | 
				
			||||||
 | 
					                  displayMode:
 | 
				
			||||||
 | 
					                    type: string
 | 
				
			||||||
 | 
					                  userId:
 | 
				
			||||||
 | 
					                    type: integer
 | 
				
			||||||
 | 
					        responses:
 | 
				
			||||||
 | 
					          '201':
 | 
				
			||||||
 | 
					            description: display created 
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					  /display/{id}:
 | 
				
			||||||
 | 
					    parameters:
 | 
				
			||||||
 | 
					        - name: id
 | 
				
			||||||
 | 
					          in: path
 | 
				
			||||||
 | 
					          required: true
 | 
				
			||||||
 | 
					          schema:
 | 
				
			||||||
 | 
					            type: integer
 | 
				
			||||||
 | 
					    get:
 | 
				
			||||||
 | 
					      summary : See display information
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Users
 | 
				
			||||||
 | 
					        - Display
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '200':
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					          content:
 | 
				
			||||||
 | 
					            application/json:
 | 
				
			||||||
 | 
					              schema:
 | 
				
			||||||
 | 
					                $ref: '#/components/schemas/Display'
 | 
				
			||||||
 | 
					    patch:
 | 
				
			||||||
 | 
					      summary : Modify display
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Users
 | 
				
			||||||
 | 
					        - Display
 | 
				
			||||||
 | 
					        - Ext (Schedule)
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        content:
 | 
				
			||||||
 | 
					          application/x-www-form-urlencoded:
 | 
				
			||||||
 | 
					             schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                  timeMode:
 | 
				
			||||||
 | 
					                    type: string
 | 
				
			||||||
 | 
					                  displayMode:
 | 
				
			||||||
 | 
					                    type: string
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: Display modified
 | 
				
			||||||
 | 
					 # Extension publication scientifique 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /article:
 | 
				
			||||||
 | 
					    post:
 | 
				
			||||||
 | 
					      summary: create an article
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Ext (scientific articles)
 | 
				
			||||||
 | 
					        - Researcher
 | 
				
			||||||
 | 
					      security:
 | 
				
			||||||
 | 
					        - bearer : []
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        "201" : 
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required : true
 | 
				
			||||||
 | 
					        content: 
 | 
				
			||||||
 | 
					          application/json:
 | 
				
			||||||
 | 
					            schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                pdf:
 | 
				
			||||||
 | 
					                  type: string 
 | 
				
			||||||
 | 
					                  description : the B64 version encoding of the pdf file
 | 
				
			||||||
 | 
					                access:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                summary:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                language:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                title:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                date:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                  description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					                views:
 | 
				
			||||||
 | 
					                  type: integer 
 | 
				
			||||||
 | 
					            example:
 | 
				
			||||||
 | 
					                    {
 | 
				
			||||||
 | 
					        "access": "private",
 | 
				
			||||||
 | 
					        "pdf": " *the b64 encoding of the pdf* ",
 | 
				
			||||||
 | 
					        "summary": "looks in details about graph's second theorem",
 | 
				
			||||||
 | 
					        "language": "english",
 | 
				
			||||||
 | 
					        "title": "graph's second theorem study",
 | 
				
			||||||
 | 
					        "date":"2023-02-01",
 | 
				
			||||||
 | 
					        "views": 420,
 | 
				
			||||||
 | 
					        "authors" : []
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					  /article/{id}:
 | 
				
			||||||
 | 
					    parameters:
 | 
				
			||||||
 | 
					      - name: id
 | 
				
			||||||
 | 
					        in: path
 | 
				
			||||||
 | 
					        required: true
 | 
				
			||||||
 | 
					        schema:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					    get:
 | 
				
			||||||
 | 
					      summary: get a certain article
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Users
 | 
				
			||||||
 | 
					        - Ext (scientific articles)
 | 
				
			||||||
 | 
					      security:
 | 
				
			||||||
 | 
					        - bearer: []
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        "201": 
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					          content:  
 | 
				
			||||||
 | 
					            application/json:
 | 
				
			||||||
 | 
					                schema:
 | 
				
			||||||
 | 
					                  $ref: '#/components/schemas/Article'
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					          
 | 
				
			||||||
 | 
					    patch:
 | 
				
			||||||
 | 
					      summary: modify an article
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Researcher
 | 
				
			||||||
 | 
					        - Ext (scientific articles)
 | 
				
			||||||
 | 
					      security:
 | 
				
			||||||
 | 
					        - bearer : []
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        "201": 
 | 
				
			||||||
 | 
					          description: article modifié
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					      requestBody:
 | 
				
			||||||
 | 
					        required : true
 | 
				
			||||||
 | 
					        content: 
 | 
				
			||||||
 | 
					          application/json:
 | 
				
			||||||
 | 
					            schema:
 | 
				
			||||||
 | 
					              type: object
 | 
				
			||||||
 | 
					              properties:
 | 
				
			||||||
 | 
					                pdf:
 | 
				
			||||||
 | 
					                  type: string 
 | 
				
			||||||
 | 
					                  description : the B64 version encoding of the pdf file
 | 
				
			||||||
 | 
					                access:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                summary:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                language:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                title:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                date:
 | 
				
			||||||
 | 
					                  type: string
 | 
				
			||||||
 | 
					                  description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					                views:
 | 
				
			||||||
 | 
					                  type: integer
 | 
				
			||||||
 | 
					              example:
 | 
				
			||||||
 | 
					                                  {
 | 
				
			||||||
 | 
					        "access": "public",
 | 
				
			||||||
 | 
					        "pdf": " *the new b64 encoding of the pdf* ",
 | 
				
			||||||
 | 
					        "summary": "looks in details about the duck's algorithm problem",
 | 
				
			||||||
 | 
					        "language": "english",
 | 
				
			||||||
 | 
					        "title": "duck's algorithm problem solving",
 | 
				
			||||||
 | 
					        "date":"2023-02-01",
 | 
				
			||||||
 | 
					        "views": 10,
 | 
				
			||||||
 | 
					        "authors" : []
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					              
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    delete:
 | 
				
			||||||
 | 
					      summary: delete own article
 | 
				
			||||||
 | 
					      tags:
 | 
				
			||||||
 | 
					        - Researcher
 | 
				
			||||||
 | 
					        - Ext (scientific articles)
 | 
				
			||||||
 | 
					      security: 
 | 
				
			||||||
 | 
					        - bearer: []
 | 
				
			||||||
 | 
					      responses:
 | 
				
			||||||
 | 
					        '201':
 | 
				
			||||||
 | 
					          description: OK
 | 
				
			||||||
 | 
					        '401':
 | 
				
			||||||
 | 
					          $ref: '#/components/responses/UnauthorizedError'
 | 
				
			||||||
 | 
					      
 | 
				
			||||||
 | 
					  /DisplayArticle:
 | 
				
			||||||
 | 
					      parameters:
 | 
				
			||||||
 | 
					        - in: query
 | 
				
			||||||
 | 
					          name: author
 | 
				
			||||||
 | 
					          required: false 
 | 
				
			||||||
 | 
					          schema:
 | 
				
			||||||
 | 
					            type: string
 | 
				
			||||||
 | 
					        - in: query
 | 
				
			||||||
 | 
					          name: access
 | 
				
			||||||
 | 
					          required: false 
 | 
				
			||||||
 | 
					          schema:
 | 
				
			||||||
 | 
					            type: string
 | 
				
			||||||
 | 
					            enum: [public, restricted, private]
 | 
				
			||||||
 | 
					        - in: query
 | 
				
			||||||
 | 
					          name: name
 | 
				
			||||||
 | 
					          required: false 
 | 
				
			||||||
 | 
					          schema:
 | 
				
			||||||
 | 
					            type: string
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
 | 
					      get:
 | 
				
			||||||
 | 
					        summary: get a list of article's data
 | 
				
			||||||
 | 
					        tags:
 | 
				
			||||||
 | 
					          - Users
 | 
				
			||||||
 | 
					          - Ext (scientific articles)
 | 
				
			||||||
 | 
					        responses: 
 | 
				
			||||||
 | 
					          '200':
 | 
				
			||||||
 | 
					            description: OK
 | 
				
			||||||
 | 
					            content: 
 | 
				
			||||||
 | 
					              application/json:
 | 
				
			||||||
 | 
					                schema:
 | 
				
			||||||
 | 
					                  type: array
 | 
				
			||||||
 | 
					                  items:
 | 
				
			||||||
 | 
					                    $ref: "#/components/schemas/DisplayArticle"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
components:
 | 
					components:
 | 
				
			||||||
  securitySchemes:
 | 
					  securitySchemes:
 | 
				
			||||||
    bearer:
 | 
					    bearer:
 | 
				
			||||||
@ -459,6 +869,142 @@ components:
 | 
				
			|||||||
        "id": 42,
 | 
					        "id": 42,
 | 
				
			||||||
        "courses": ['Math', 'Info']
 | 
					        "courses": ['Math', 'Info']
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					    Article:
 | 
				
			||||||
 | 
					      type: object
 | 
				
			||||||
 | 
					      properties:
 | 
				
			||||||
 | 
					        articleId: 
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        access :
 | 
				
			||||||
 | 
					          type : string
 | 
				
			||||||
 | 
					        pdf :
 | 
				
			||||||
 | 
					          type : string
 | 
				
			||||||
 | 
					          description : file location
 | 
				
			||||||
 | 
					        summary:
 | 
				
			||||||
 | 
					          type : string
 | 
				
			||||||
 | 
					        language:
 | 
				
			||||||
 | 
					          type : string
 | 
				
			||||||
 | 
					        title :
 | 
				
			||||||
 | 
					          type : string 
 | 
				
			||||||
 | 
					        date: 
 | 
				
			||||||
 | 
					          type : string
 | 
				
			||||||
 | 
					        views :
 | 
				
			||||||
 | 
					          type : integer
 | 
				
			||||||
 | 
					        authors:
 | 
				
			||||||
 | 
					          type: array
 | 
				
			||||||
 | 
					          items:
 | 
				
			||||||
 | 
					            $ref: '#/components/schemas/User'
 | 
				
			||||||
 | 
					          description: first user is the author, the remaining users are co-authors
 | 
				
			||||||
 | 
					      example:
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					        "articleId": 42,
 | 
				
			||||||
 | 
					        "access": "private",
 | 
				
			||||||
 | 
					        "pdf": "/articles/42",
 | 
				
			||||||
 | 
					        "summary": "looks in details about graph's second theorem",
 | 
				
			||||||
 | 
					        "language": "english",
 | 
				
			||||||
 | 
					        "title": "graph's second theorem study",
 | 
				
			||||||
 | 
					        "date":"2023-02-01",
 | 
				
			||||||
 | 
					        "views": 420,
 | 
				
			||||||
 | 
					        "authors" : []
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    DisplayArticle:   
 | 
				
			||||||
 | 
					      type: object
 | 
				
			||||||
 | 
					      properties:
 | 
				
			||||||
 | 
					        articleId: 
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        access:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        summary:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        title:
 | 
				
			||||||
 | 
					          type: string 
 | 
				
			||||||
 | 
					        author:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					          items:
 | 
				
			||||||
 | 
					            $ref: '#/components/schemas/User'
 | 
				
			||||||
 | 
					      example:
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					        "articleId": 42,
 | 
				
			||||||
 | 
					        "access": "private",
 | 
				
			||||||
 | 
					        "summary": "looks in details about graph's second theorem",
 | 
				
			||||||
 | 
					        "title": "graph's second theorem study",
 | 
				
			||||||
 | 
					        "author" : "john doe"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    Lesson :
 | 
				
			||||||
 | 
					      type: object
 | 
				
			||||||
 | 
					      properties:
 | 
				
			||||||
 | 
					        id:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        date:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					          description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					        duration:
 | 
				
			||||||
 | 
					          type: number
 | 
				
			||||||
 | 
					          description: duration of a course in hours
 | 
				
			||||||
 | 
					        classroom:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        courseId:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					      example:
 | 
				
			||||||
 | 
					          {
 | 
				
			||||||
 | 
					            "id": 12,
 | 
				
			||||||
 | 
					            "date": "2023-12-01",
 | 
				
			||||||
 | 
					            "duration": 1.5,
 | 
				
			||||||
 | 
					            "classroom": "AMPHI01",
 | 
				
			||||||
 | 
					            "courseId": 12
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					    ScheduleRequest:
 | 
				
			||||||
 | 
					      type: object
 | 
				
			||||||
 | 
					      properties:
 | 
				
			||||||
 | 
					        id:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        requestType:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        lessonId:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        teacherId:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        newDate:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					          description: Follow the iso 8601 ("YYYY-MM-DD")
 | 
				
			||||||
 | 
					        newClassroom:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        newCourseId:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					      example:
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					          "id": 12,
 | 
				
			||||||
 | 
					          "requestType": "moveLesson",
 | 
				
			||||||
 | 
					          "lessonId": 52,
 | 
				
			||||||
 | 
					          "teacherId": 12,
 | 
				
			||||||
 | 
					          "newDate": "2023-12-20",
 | 
				
			||||||
 | 
					          "newClassroom":,
 | 
				
			||||||
 | 
					          "newCourseId":,
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    Display:
 | 
				
			||||||
 | 
					      type: object
 | 
				
			||||||
 | 
					      properties:
 | 
				
			||||||
 | 
					        id:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					        timeMode:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					          description: Define the period displayed on the schedule (week,month,quadrimester..)
 | 
				
			||||||
 | 
					        displayMode:
 | 
				
			||||||
 | 
					          type: string
 | 
				
			||||||
 | 
					        userId:
 | 
				
			||||||
 | 
					          type: integer
 | 
				
			||||||
 | 
					          description: Id of the user who owns this display
 | 
				
			||||||
 | 
					      example:
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					          "id": 12,
 | 
				
			||||||
 | 
					          "timeMode": "month",
 | 
				
			||||||
 | 
					          "displayMode": "grid",
 | 
				
			||||||
 | 
					          "UserId": 12
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
  responses:
 | 
					  responses:
 | 
				
			||||||
    UnauthorizedError:
 | 
					    UnauthorizedError:
 | 
				
			||||||
      description: Unauthorized access or missing bearer 
 | 
					      description: Unauthorized access or missing bearer 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user