From 8134b6db6a9b11a4f10d455f6e26aae56e97d3fd Mon Sep 17 00:00:00 2001 From: Ali BARIN Date: Thu, 19 Sep 2024 09:27:51 +0000 Subject: [PATCH] refactor(update-step): move connection authorization to model --- .../src/controllers/api/v1/steps/update-step.js | 13 +------------ packages/backend/src/models/step.js | 11 ++++++++++- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/packages/backend/src/controllers/api/v1/steps/update-step.js b/packages/backend/src/controllers/api/v1/steps/update-step.js index 5d8aa899..c707726d 100644 --- a/packages/backend/src/controllers/api/v1/steps/update-step.js +++ b/packages/backend/src/controllers/api/v1/steps/update-step.js @@ -5,18 +5,7 @@ export default async (request, response) => { .findById(request.params.stepId) .throwIfNotFound(); - const stepData = stepParams(request); - - if (stepData.connectionId && (stepData.appKey || step.appKey)) { - await request.currentUser.authorizedConnections - .findOne({ - id: stepData.connectionId, - key: stepData.appKey || step.appKey, - }) - .throwIfNotFound(); - } - - step = await step.update(stepData); + step = await step.updateFor(request.currentUser, stepParams(request)); renderObject(response, step); }; diff --git a/packages/backend/src/models/step.js b/packages/backend/src/models/step.js index 7cbf9a6e..85f98a1d 100644 --- a/packages/backend/src/models/step.js +++ b/packages/backend/src/models/step.js @@ -335,9 +335,18 @@ class Step extends Base { await Promise.all(nextStepQueries); } - async update(newStepData) { + async updateFor(user, newStepData) { const { connectionId, appKey, key, parameters } = newStepData; + if (connectionId && (appKey || this.appKey)) { + await user.authorizedConnections + .findOne({ + id: connectionId, + key: appKey || this.appKey, + }) + .throwIfNotFound(); + } + if (this.isTrigger && appKey && key) { await App.checkAppAndTrigger(appKey, key); }