nimuli/app/Domains/Domain/Actions/VerifyDomain.php

30 lines
672 B
PHP

<?php
namespace App\Domains\Domain\Actions;
use App\Domains\Domain\Models\Domain;
class VerifyDomain
{
public function handle(Domain $domain): bool
{
$records = @dns_get_record("_nimuli.{$domain->hostname}", DNS_TXT);
if (! is_array($records)) {
return false;
}
foreach ($records as $record) {
if (($record['txt'] ?? '') === "nimuli-verify={$domain->verification_token}") {
$domain->update([
'verified_at' => now(),
'ssl_status' => 'pending',
]);
return true;
}
}
return false;
}
}