From 8873b74f3c8a4c8b8ff85f0a5f4ba4e0644dbe0f Mon Sep 17 00:00:00 2001 From: Brian Bolt Date: Mon, 14 Aug 2023 17:15:21 -0700 Subject: [PATCH] ACAS-699: Pass list of projects to backend to filter projects by acls --- .../server/routes/ExperimentServiceRoutes.coffee | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee b/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee index 8f50715cd..80220ba45 100644 --- a/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee +++ b/modules/ServerAPI/src/server/routes/ExperimentServiceRoutes.coffee @@ -140,11 +140,11 @@ exports.experimentByName = (req, resp) -> serverUtilityFunctions.getFromACASServer(baseurl, resp) exports.experimentsByProtocolCodename = (req, resp) -> - exports.experimentsByProtocolCodenameInternal req.params.code, req.query.testMode, (status, response) => + exports.experimentsByProtocolCodenameInternal req.params.code, req.user, req.query.testMode, (status, response) => resp.statusCode = status resp.json response -exports.experimentsByProtocolCodenameInternal = (code, testMode, callback) -> +exports.experimentsByProtocolCodenameInternal = (code, user, testMode, callback) -> console.log code console.log testMode @@ -155,8 +155,14 @@ exports.experimentsByProtocolCodenameInternal = (code, testMode, callback) -> config = require '../conf/compiled/conf.js' baseurl = config.all.client.service.persistence.fullpath+"experiments/protocol/"+code serverUtilityFunctions = require './ServerUtilityFunctions.js' - serverUtilityFunctions.getFromACASServerInternal baseurl, (statusCode, value) -> - callback(statusCode, value) + authorRoutes = require './AuthorRoutes.js' + authorRoutes.allowedProjectsInternal user, (statusCode, allowedUserProjects) -> + _ = require "underscore" + allowedProjectCodes = _.pluck(allowedUserProjects, "code") + baseurl = "#{baseurl}?projects=#{encodeURIComponent(allowedProjectCodes.join(','))}" + + serverUtilityFunctions.getFromACASServerInternal baseurl, (statusCode, value) -> + callback(statusCode, value) exports.experimentById = (req, resp) -> console.log req.params.id