@@ -452,7 +452,10 @@ reportRouter.put("/:id/step/:step_id/:operation", async (req: Request, res: Resp
452452reportRouter . get ( "/:slug/linked-users" , async ( req : Request , res : Response ) => {
453453 const { slug } = req . params ;
454454
455- const incident = await db . getBySlug ( slug , req . user . email ) ;
455+ const userIsAdmin =
456+ ( req . user . roles = req . user . roles || [ ] ) . filter ( ( role : UserRole ) => role . name === "System Admin" ) . length > 0 ;
457+
458+ const incident = await db . getBySlug ( slug , userIsAdmin ? "System Admin" : req . user . email ) ;
456459
457460 if ( incident ) {
458461 const list = await knex ( "incident_users" ) . where ( { incident_id : incident . id } ) ;
@@ -465,7 +468,10 @@ reportRouter.get("/:slug/linked-users", async (req: Request, res: Response) => {
465468reportRouter . post ( "/:slug/linked-users" , async ( req : Request , res : Response ) => {
466469 const { slug } = req . params ;
467470
468- const incident = await db . getBySlug ( slug , req . user . email ) ;
471+ const userIsAdmin =
472+ ( req . user . roles = req . user . roles || [ ] ) . filter ( ( role : UserRole ) => role . name === "System Admin" ) . length > 0 ;
473+
474+ const incident = await db . getBySlug ( slug , userIsAdmin ? "System Admin" : req . user . email ) ;
469475
470476 if ( incident ) {
471477 await knex ( "incident_users" ) . insert ( req . body ) ;
@@ -483,7 +489,10 @@ reportRouter.post("/:slug/linked-users", async (req: Request, res: Response) =>
483489reportRouter . delete ( "/:slug/linked-users/:id" , async ( req : Request , res : Response ) => {
484490 const { slug, id } = req . params ;
485491
486- const incident = await db . getBySlug ( slug , req . user . email ) ;
492+ const userIsAdmin =
493+ ( req . user . roles = req . user . roles || [ ] ) . filter ( ( role : UserRole ) => role . name === "System Admin" ) . length > 0 ;
494+
495+ const incident = await db . getBySlug ( slug , userIsAdmin ? "System Admin" : req . user . email ) ;
487496
488497 if ( incident ) {
489498 const list = await knex ( "incident_users" ) . where ( { id } ) . delete ( ) ;
0 commit comments