summaryrefslogtreecommitdiff
path: root/app/Controller/Webhook.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Controller/Webhook.php')
-rw-r--r--app/Controller/Webhook.php18
1 files changed, 18 insertions, 0 deletions
diff --git a/app/Controller/Webhook.php b/app/Controller/Webhook.php
index 1ae3b0a4..ef79379f 100644
--- a/app/Controller/Webhook.php
+++ b/app/Controller/Webhook.php
@@ -82,4 +82,22 @@ class Webhook extends Base
echo $result ? 'PARSED' : 'IGNORED';
}
+
+ /**
+ * Handle Bitbucket webhooks
+ *
+ * @access public
+ */
+ public function bitbucket()
+ {
+ if ($this->config->get('webhook_token') !== $this->request->getStringParam('token')) {
+ $this->response->text('Not Authorized', 401);
+ }
+
+ $this->bitbucketWebhook->setProjectId($this->request->getIntegerParam('project_id'));
+
+ $result = $this->bitbucketWebhook->parsePayload(json_decode(@$_POST['payload'], true));
+
+ echo $result ? 'PARSED' : 'IGNORED';
+ }
}