diff --git a/app/Controller/CronjobController.php b/app/Controller/CronjobController.php new file mode 100644 index 000000000..082fadfa5 --- /dev/null +++ b/app/Controller/CronjobController.php @@ -0,0 +1,32 @@ +checkWebhookToken(); + + $input = new ArrayInput(array( + 'command' => 'cronjob', + )); + $output = new NullOutput(); + + $this->cli->setAutoExit(false); + $this->cli->run($input, $output); + + $this->response->html('Cronjob executed'); + } +} diff --git a/app/ServiceProvider/AuthenticationProvider.php b/app/ServiceProvider/AuthenticationProvider.php index 9cb437ac5..40a62971c 100644 --- a/app/ServiceProvider/AuthenticationProvider.php +++ b/app/ServiceProvider/AuthenticationProvider.php @@ -143,6 +143,7 @@ class AuthenticationProvider implements ServiceProviderInterface $acl->add('FeedController', '*', Role::APP_PUBLIC); $acl->add('AvatarFileController', array('show', 'image'), Role::APP_PUBLIC); $acl->add('UserInviteController', array('signup', 'register'), Role::APP_PUBLIC); + $acl->add('CronjobController', array('run'), Role::APP_PUBLIC); $acl->add('ConfigController', '*', Role::APP_ADMIN); $acl->add('TagController', '*', Role::APP_ADMIN); diff --git a/app/ServiceProvider/RouteProvider.php b/app/ServiceProvider/RouteProvider.php index 5b9eca985..669421880 100644 --- a/app/ServiceProvider/RouteProvider.php +++ b/app/ServiceProvider/RouteProvider.php @@ -180,6 +180,9 @@ class RouteProvider implements ServiceProviderInterface // PasswordReset $container['route']->addRoute('forgot-password', 'PasswordResetController', 'create'); $container['route']->addRoute('forgot-password/change/:token', 'PasswordResetController', 'change'); + + // Cronjob + $container['route']->addRoute('cronjob', 'CronjobController', 'run'); } return $container;