diff options
Diffstat (limited to 'app/Controller')
-rw-r--r-- | app/Controller/Webhook.php | 18 |
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'; + } } |