Small RDAP fix

This commit is contained in:
Pinga 2025-02-21 09:20:44 +02:00
parent e3589af8aa
commit d54c6f8f52
2 changed files with 40 additions and 5 deletions

View file

@ -161,3 +161,36 @@ function updatePermittedIPs($pool, $permittedIPsTable) {
$permittedIPsTable->set($ip, ['addr' => $ip]); $permittedIPsTable->set($ip, ['addr' => $ip]);
} }
} }
function mapStatuses(array $statuses): array {
$statusMap = [
"addPeriod" => "add period",
"autoRenewPeriod" => "auto renew period",
"clientDeleteProhibited" => "client delete prohibited",
"clientHold" => "client hold",
"clientRenewProhibited" => "client renew prohibited",
"clientTransferProhibited" => "client transfer prohibited",
"clientUpdateProhibited" => "client update prohibited",
"inactive" => "inactive",
"linked" => "associated",
"ok" => "active",
"pendingCreate" => "pending create",
"pendingDelete" => "pending delete",
"pendingRenew" => "pending renew",
"pendingRestore" => "pending restore",
"pendingTransfer" => "pending transfer",
"pendingUpdate" => "pending update",
"redemptionPeriod" => "redemption period",
"renewPeriod" => "renew period",
"serverDeleteProhibited" => "server delete prohibited",
"serverRenewProhibited" => "server renew prohibited",
"serverTransferProhibited" => "server transfer prohibited",
"serverUpdateProhibited" => "server update prohibited",
"serverHold" => "server hold",
"transferPeriod" => "transfer period"
];
return array_map(function ($status) use ($statusMap) {
return $statusMap[$status] ?? $status; // Return mapped value or original if not found
}, $statuses);
}

View file

@ -407,15 +407,17 @@ function handleDomainQuery($request, $response, $pdo, $domainName, $c, $log) {
$statuses = $stmt2->fetchAll(PDO::FETCH_COLUMN, 0); $statuses = $stmt2->fetchAll(PDO::FETCH_COLUMN, 0);
// Add rgpstatus to statuses if it's not empty // Add rgpstatus to statuses if it's not empty
//if (!empty($domainDetails['rgpstatus'])) { if (!empty($domainDetails['rgpstatus'])) {
//$statuses[] = $domainDetails['rgpstatus']; $statuses[] = $domainDetails['rgpstatus'];
//} }
// If statuses array is empty, add 'active' to it // If statuses array is empty, add 'active' to it
if (empty($statuses)) { if (empty($statuses)) {
$statuses[] = 'active'; $statuses[] = 'active';
} }
$statuses = mapStatuses($statuses);
// Query: Get DNSSEC details // Query: Get DNSSEC details
$stmt2a = $pdo->prepare("SELECT interface FROM secdns WHERE domain_id = :domain_id"); $stmt2a = $pdo->prepare("SELECT interface FROM secdns WHERE domain_id = :domain_id");
$stmt2a->bindParam(':domain_id', $domainDetails['id'], PDO::PARAM_INT); $stmt2a->bindParam(':domain_id', $domainDetails['id'], PDO::PARAM_INT);