80 lines
1.6 KiB
PHP
80 lines
1.6 KiB
PHP
<?php
|
|
|
|
use Dotenv\Dotenv;
|
|
|
|
require_once __DIR__ . '/../session_functions.php';
|
|
|
|
ini_wkvs_session();
|
|
|
|
if (!isset($type)){
|
|
return [
|
|
'success' => false,
|
|
'message' => 'no type'
|
|
];
|
|
}
|
|
|
|
if ($type === 'kr'){
|
|
check_user_permission('kampfrichter');
|
|
} elseif ($type === 'tr'){
|
|
check_user_permission('trainer');
|
|
} elseif ($type === 'wkl') {
|
|
check_user_permission('wk_leitung');
|
|
} elseif ($type === 'otl') {
|
|
if (empty($_SESSION['access_granted_db_otl']) || $_SESSION['access_granted_db_otl'] !== true) {
|
|
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
|
|
]; |