From 6e63c57936f06a29da5f1a94b1141d51b75df5f0 Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Wed, 9 Apr 2025 11:37:49 +0200 Subject: [PATCH] feat(RunnerController.getAll): add created_via query param filter --- src/controllers/RunnerController.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/controllers/RunnerController.ts b/src/controllers/RunnerController.ts index c33284a..2be5904 100644 --- a/src/controllers/RunnerController.ts +++ b/src/controllers/RunnerController.ts @@ -30,7 +30,7 @@ export class RunnerController { @Authorized("RUNNER:GET") @ResponseSchema(ResponseRunner, { isArray: true }) @OpenAPI({ description: 'Lists all runners from all teams/orgs.
This includes the runner\'s group and distance ran.' }) - async getAll(@QueryParam("page", { required: false }) page: number, @QueryParam("page_size", { required: false }) page_size: number = 100, @QueryParam("selfservice_links", { required: false }) selfservice_links: boolean = false) { + async getAll(@QueryParam("page", { required: false }) page: number, @QueryParam("page_size", { required: false }) page_size: number = 100, @QueryParam("created_via", { required: false }) created_via: string = "all", @QueryParam("selfservice_links", { required: false }) selfservice_links: boolean = false) { let responseRunners: ResponseRunner[] = new Array(); let runners: Array; @@ -41,7 +41,13 @@ export class RunnerController { } runners.forEach(runner => { - responseRunners.push(new ResponseRunner(runner, selfservice_links)); + if (created_via === "all") { + responseRunners.push(new ResponseRunner(runner, selfservice_links)); + } else { + if (runner.created_via === created_via) { + responseRunners.push(new ResponseRunner(runner, selfservice_links)); + } + } }); return responseRunners; }