diff options
author | Oleksander Piskun <oleksandr2088@icloud.com> | 2025-05-09 13:07:33 +0300 |
---|---|---|
committer | Oleksander Piskun <oleksandr2088@icloud.com> | 2025-05-09 13:07:33 +0300 |
commit | aa0135c223617d21ac688deb710da8061c9a4739 (patch) | |
tree | d9fa124b2b391bd42aec94fb3863500e5b596758 | |
parent | 04b1dfdf13244993ea85f41c352d5dd158a84508 (diff) | |
download | nextcloud-server-aa0135c223617d21ac688deb710da8061c9a4739.tar.gz nextcloud-server-aa0135c223617d21ac688deb710da8061c9a4739.zip |
fix(webhooks_listener): correctly set userId from event
Signed-off-by: Oleksander Piskun <oleksandr2088@icloud.com>
-rw-r--r-- | apps/webhook_listeners/lib/BackgroundJobs/WebhookCall.php | 3 | ||||
-rw-r--r-- | apps/webhook_listeners/lib/Listener/WebhooksEventListener.php | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/apps/webhook_listeners/lib/BackgroundJobs/WebhookCall.php b/apps/webhook_listeners/lib/BackgroundJobs/WebhookCall.php index a2619e0db47..c8d06ca7047 100644 --- a/apps/webhook_listeners/lib/BackgroundJobs/WebhookCall.php +++ b/apps/webhook_listeners/lib/BackgroundJobs/WebhookCall.php @@ -74,7 +74,8 @@ class WebhookCall extends QueuedJob { } elseif (!$exApp['enabled']) { throw new RuntimeException('ExApp ' . $exAppId . ' is disabled.'); } - $response = $appApiFunctions->exAppRequest($exAppId, $webhookUri, $webhookListener->getUserId(), $webhookListener->getHttpMethod(), [], $options); + $userId = ($data['user'] ?? [])['uid'] ?? null; + $response = $appApiFunctions->exAppRequest($exAppId, $webhookUri, $userId, $webhookListener->getHttpMethod(), [], $options); if (is_array($response) && isset($response['error'])) { throw new RuntimeException(sprintf('Error during request to ExApp(%s): %s', $exAppId, $response['error'])); } diff --git a/apps/webhook_listeners/lib/Listener/WebhooksEventListener.php b/apps/webhook_listeners/lib/Listener/WebhooksEventListener.php index 6b40af1463e..6cd3af98368 100644 --- a/apps/webhook_listeners/lib/Listener/WebhooksEventListener.php +++ b/apps/webhook_listeners/lib/Listener/WebhooksEventListener.php @@ -41,6 +41,7 @@ class WebhooksEventListener implements IEventListener { // TODO add group membership to be able to filter on it $data = [ 'event' => $this->serializeEvent($event), + /* Do not remove 'user' from here, see BackgroundJobs/WebhookCall.php */ 'user' => (is_null($user) ? null : JsonSerializer::serializeUser($user)), 'time' => time(), ]; |