index_webhook.php 935 B

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. require __DIR__ . '/../vendor/autoload.php';
  3. use FrameworkX\App;
  4. if (class_exists(Dotenv\Dotenv::class) && file_exists(__DIR__ . '/../.env')) {
  5. Dotenv\Dotenv::createImmutable(
  6. dirname(__DIR__),
  7. null,
  8. true
  9. )->safeLoad();
  10. }
  11. error_reporting(E_ALL);
  12. $dsn = $_ENV['DB_DSN'] ?? (function () {
  13. $host = $_ENV['DB_HOST'] ?? 'localhost';
  14. $port = $_ENV['DB_PORT'] ?? '5432';
  15. $name = $_ENV['DB_NAME'] ?? 'postgres';
  16. return "pgsql:host={$host};port={$port};dbname={$name}";
  17. })();
  18. $dbUser = $_ENV['DB_USER'] ?? 'postgres';
  19. $dbPass = $_ENV['DB_PASSWORD'] ?? '';
  20. $GLOBALS['pdo'] = new \PDO($dsn, $dbUser, $dbPass);
  21. $GLOBALS['pdo']->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
  22. $app = new App();
  23. $app->post('/tshield', \Controllers\TshieldWebhookController::class);
  24. $app->post('/woovi', \Controllers\WooviWebhookController::class);
  25. $app->run();