false, 'message' => 'no type' ]; } if ($type === 'kr'){ if (empty($_SESSION['access_granted_kampfrichter']) || $_SESSION['access_granted_kampfrichter'] !== true || empty($_SESSION['passcodekampfrichter_id']) || $_SESSION['passcodekampfrichter_id'] < 1) { http_response_code(403); exit; } } elseif ($type === 'tr'){ if (empty($_SESSION['access_granted_trainer']) || $_SESSION['access_granted_trainer'] !== true || empty($_SESSION['passcodetrainer_id']) || $_SESSION['passcodetrainer_id'] < 1) { http_response_code(403); exit; } } elseif ($type === 'wkl') { if (empty($_SESSION['access_granted_wk_leitung']) || $_SESSION['access_granted_wk_leitung'] !== true || empty($_SESSION['passcodewk_leitung_id']) || intval($_SESSION['passcodewk_leitung_id']) < 1 ) { http_response_code(403); exit; } } elseif ($type === 'otl') { if (empty($_SESSION['set_new_password_id_user']) || empty($_SESSION['set_new_password_granted']) || $_SESSION['set_new_password_granted'] !== true || $_SESSION['set_new_password_id_user'] < 1 ) { http_response_code(403); exit; } } else { http_response_code(403); exit; } require __DIR__ . '/../../composer/vendor/autoload.php'; $envFile = realpath(__DIR__ . '/../../config/.env.db'); if ($envFile === false) { http_response_code(500); echo json_encode([ 'success' => false, 'message' => "Environment file not found" ]); exit; } try { $envDir = dirname($envFile); $dotenv = Dotenv::createImmutable($envDir, '.env.db'); $dotenv->load(); } catch (Throwable $e) { http_response_code(500); echo json_encode([ 'success' => false, 'message' => "Dotenv error" ]); } if (!isset($_ENV['DB_HOST']) || !isset($_ENV['DB_NAME']) || !isset($_ENV['DB_USER']) || !isset($_ENV['DB_PASSWORD'])){ echo json_encode([ 'success' => false, 'message' => 'corrupt cofig file' ]); exit; } $mysqli = @new mysqli($_ENV['DB_HOST'], $_ENV['DB_USER'], $_ENV['DB_PASSWORD'], $_ENV['DB_NAME']); if ($mysqli->connect_error) { echo json_encode([ 'success' => false, 'message' => "DB connection failed" ]); exit; } $mysqli->set_charset("utf8"); return [ 'success' => true ];