Merge branch 'frontend' into gruppDM
This commit is contained in:
		
						commit
						762a1b7368
					
				
					 19 changed files with 389 additions and 224 deletions
				
			
		|  | @ -1,5 +1,6 @@ | |||
| import { NewProjMember } from "../Components/AddMember"; | ||||
| import { ProjectRoleChange } from "../Components/ChangeRole"; | ||||
| import { projectTimes } from "../Components/GetProjectTimes"; | ||||
| import { ProjectMember } from "../Components/GetUsersInProject"; | ||||
| import { | ||||
|   UpdateWeeklyReport, | ||||
|  | @ -138,6 +139,16 @@ interface API { | |||
|    */ | ||||
|   getProject(id: number): Promise<APIResponse<Project>>; | ||||
| 
 | ||||
|   /** Gets a projects reported time | ||||
|    * @param {string} projectName The name of the project. | ||||
|    * @param {string} token The usertoken. | ||||
|    * @returns {Promise<APIResponse<Times>>} A promise resolving to an API response containing the project times. | ||||
|    */ | ||||
|   getProjectTimes( | ||||
|     projectName: string, | ||||
|     token: string, | ||||
|   ): Promise<APIResponse<projectTimes>>; | ||||
| 
 | ||||
|   /** Gets a list of all users. | ||||
|    * @param {string} token The authentication token of the requesting user. | ||||
|    * @returns {Promise<APIResponse<string[]>>} A promise resolving to an API response containing the list of users. | ||||
|  | @ -397,6 +408,37 @@ export const api: API = { | |||
|     } | ||||
|   }, | ||||
| 
 | ||||
|   async getProjectTimes( | ||||
|     projectName: string, | ||||
|     token: string, | ||||
|   ): Promise<APIResponse<projectTimes>> { | ||||
|     try { | ||||
|       const response = await fetch(`/api/getProjectTimes/${projectName}`, { | ||||
|         method: "GET", | ||||
|         headers: { | ||||
|           "Content-Type": "application/json", | ||||
|           Authorization: "Bearer " + token, | ||||
|         }, | ||||
|       }); | ||||
| 
 | ||||
|       if (!response.ok) { | ||||
|         return Promise.resolve({ | ||||
|           success: false, | ||||
|           message: | ||||
|             "Fetch error: " + response.status + ", failed to get project times", | ||||
|         }); | ||||
|       } else { | ||||
|         const data = (await response.json()) as projectTimes; | ||||
|         return Promise.resolve({ success: true, data }); | ||||
|       } | ||||
|     } catch (e) { | ||||
|       return Promise.resolve({ | ||||
|         success: false, | ||||
|         message: "API error! Could not get times.", | ||||
|       }); | ||||
|     } | ||||
|   }, | ||||
| 
 | ||||
|   async submitWeeklyReport( | ||||
|     weeklyReport: NewWeeklyReport, | ||||
|     token: string, | ||||
|  | @ -651,7 +693,7 @@ export const api: API = { | |||
|     token: string, | ||||
|   ): Promise<APIResponse<string>> { | ||||
|     try { | ||||
|       const response = await fetch(`/api/projectdelete/${projectName}`, { | ||||
|       const response = await fetch(`/api/removeProject/${projectName}`, { | ||||
|         method: "DELETE", | ||||
|         headers: { | ||||
|           "Content-Type": "application/json", | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Davenludd
						Davenludd