{{ $dnsZone->domain }}

Dashboard / Zone DNS / {{ $dnsZone->domain }}

@php $cfZone = \App\Models\CloudflareZone::where('dns_zone_id', $dnsZone->id)->first(); $userPlanCf = Auth::user()->plan ?? Auth::user()->resellerPlan; $hasCloudflareAccess = Auth::user()->isAdmin() || ($userPlanCf && method_exists($userPlanCf, 'hasCloudflare') && $userPlanCf->hasCloudflare()); @endphp {{-- Buton Add Record --}} @if(isset($isPowerDNSOnly) && $isPowerDNSOnly) @if(in_array($dnsZone->powerdns_assignment->access_level, ['full', 'records_only']) && Auth::user()->canPerformDnsOperations()) Adaugă Înregistrare @endif @else @if(!$dnsZone->suspended_at && Auth::user()->canPerformDnsOperations()) Adaugă Înregistrare @elseif($dnsZone->suspended_at) Suspendată @endif @endif {{-- Dropdown Acțiuni --}}
Statistici @if($hasCloudflareAccess) {{ $cfZone ? 'Cloudflare' : 'Conectează CF' }} @endif @if(Auth::user()->isAdmin()) @endif
Editează Zona
@if($dnsZone->suspended_at)

⛔ ZONĂ SUSPENDATĂ

Data suspendării: {{ $dnsZone->suspended_at->format('d.m.Y H:i:s') }}

Motiv: {{ $dnsZone->suspension_reason }}

@php $alert = $dnsZone->getActiveNameserverAlert(); @endphp @if($alert)

Detectat prima dată: {{ $alert->first_detected_at->format('d.m.Y H:i:s') }} ({{ $alert->getDaysSinceDetection() }} zile)

@endif

Restricții Active:

  • Nu poți adăuga înregistrări DNS noi
  • Nu poți modifica înregistrările existente
  • Nu poți șterge înregistrări
  • Toate operațiunile de editare sunt blocate
@if($dnsZone->can_be_reactivated)

Nameserverele sunt configurate corect!

Sistemul nostru a detectat că nameserverele sunt acum configurate corect. Poți reactiva zona apăsând butonul de mai jos.

@else

Cum reactivezi zona?

  1. Accesează panoul de control al registrarului (GoDaddy, Namecheap, etc.)
  2. Găsește setările DNS/Nameserver pentru domeniul {{ $dnsZone->domain }}
  3. Configurează următoarele nameservere:
    @foreach($dnsZone->nameServers as $ns)
    {{ $ns->hostname }}
    @endforeach
  4. Așteaptă 2-24h pentru propagare DNS globală
  5. Reîmprospătează această pagină - dacă NS-urile sunt detectate, vei vedea un buton de reactivare

Sfat: Folosește whatsmydns.net pentru a verifica propagarea NS-urilor.

@endif
@endif
{{-- Total --}} {{ $recordStats['total'] ?? 0 }} Total
{{-- A --}} A {{ $recordStats['A'] ?? 0 }} {{-- AAAA --}} @if(($recordStats['AAAA'] ?? 0) > 0) AAAA {{ $recordStats['AAAA'] }} @endif {{-- CNAME --}} CNAME {{ $recordStats['CNAME'] ?? 0 }} {{-- MX --}} MX {{ $recordStats['MX'] ?? 0 }} {{-- TXT --}} TXT {{ $recordStats['TXT'] ?? 0 }} {{-- NS --}} NS {{ $recordStats['NS'] ?? 0 }} {{-- SRV --}} @if(($recordStats['SRV'] ?? 0) > 0) SRV {{ $recordStats['SRV'] }} @endif {{-- SOA --}} @if(($recordStats['SOA'] ?? 0) > 0) SOA {{ $recordStats['SOA'] }} @endif
{{-- Domain --}}
{{ $dnsZone->domain }}
{{-- Divider --}} {{-- Nameservers - toate pe un rând --}}
@php $user = Auth::user(); $plan = $user->resellerPlan ?? $user->plan; $nameserversList = []; if ($user->isAdmin()) { $allowedNsIds = \App\Models\Nameserver::where('is_active', true)->pluck('id')->toArray(); } else { $allowedNsIds = $plan ? $plan->allowed_nameservers : []; } if (!empty($allowedNsIds)) { $nameserverModels = \App\Models\Nameserver::whereIn('id', $allowedNsIds)->get(); foreach ($nameserverModels as $ns) { $nameserversList[] = $ns->hostname; } } @endphp
@forelse($nameserversList as $ns) {{ $ns }} @empty N/A @endforelse
{{-- Divider --}} {{-- Status --}}
@if($dnsZone->is_active) Activ @else Inactiv @endif
@if(!isset($isPowerDNSOnly) || !$isPowerDNSOnly) {{-- Divider --}} {{-- Sync Toggle --}}
@csrf @method('PATCH')
{{-- DNSSEC Toggle --}}
@if($dnsZone->sync_to_powerdns)
@csrf @method('PATCH')
@if($dnsZone->dnssec_enabled) @endif @else DNSSEC @endif
@endif

Înregistrări DNS

@if(Auth::user()->isAdmin() || (Auth::user()->plan && Auth::user()->plan->allow_zone_import) || (Auth::user()->resellerPlan && Auth::user()->resellerPlan->allow_zone_import))
@endif @if(Auth::user()->isAdmin() || (Auth::user()->plan && Auth::user()->plan->allow_zone_export) || (Auth::user()->resellerPlan && Auth::user()->resellerPlan->allow_zone_export)) @endif
@if($records->count() > 0)
@foreach($records as $record) @endforeach
{{ __('Name') }} @if($sortBy === 'name') @else @endif {{ __('Type') }} @if($sortBy === 'type') @else @endif {{ __('Status') }} @if($sortBy === 'is_active') @else @endif {{ __('Actions') }}
@if(!in_array($record->type, ['SOA'])) @endif
{{ $record->name }}
{{ $record->type }} @if($record->is_active) Activ @else Inactiv @endif
@if((isset($isPowerDNSOnly) && $isPowerDNSOnly) || (isset($record->is_powerdns) && $record->is_powerdns)) {{-- Acțiuni pentru înregistrări PowerDNS --}} @php // Reconstruiește FQDN pentru rute PowerDNS $recordFqdn = $record->name === '@' ? $dnsZone->domain : $record->name . '.' . $dnsZone->domain; @endphp @if(!in_array($record->type, ['SOA', 'NS']) || Auth::user()->isAdmin()) @if($dnsZone->suspended_at) @elseif(Auth::user()->canPerformDnsOperations()) @else @endif @endif @if(!in_array($record->type, ['SOA', 'NS'])) @if($dnsZone->suspended_at) @elseif(Auth::user()->canPerformDnsOperations())
@csrf
@else @endif @endif @else {{-- Acțiuni pentru înregistrări locale --}} @php // Verifică dacă recordul este sincronizat cu Cloudflare și obține setările $cfRecordSetting = null; $isCloudflareRecord = false; if (isset($cfZone) && $cfZone) { $cfRecordSetting = \App\Models\CloudflareRecordSetting::where('dns_record_id', $record->id) ->where('cloudflare_zone_id', $cfZone->id) ->first(); $isCloudflareRecord = $cfRecordSetting !== null; } // Tipuri de recorduri care pot fi proxied în Cloudflare $proxyableTypes = ['A', 'AAAA', 'CNAME']; @endphp @if(!in_array($record->type, ['SOA', 'NS']) || Auth::user()->isAdmin()) @if($dnsZone->suspended_at) @elseif(Auth::user()->canPerformDnsOperations()) {{-- Buton Duplicare Record --}} @if(!in_array($record->type, ['SOA'])) @endif @else @endif @endif {{-- Buton Proxy Toggle pentru Cloudflare (doar pentru A, AAAA, CNAME) --}} @if($isCloudflareRecord && in_array($record->type, $proxyableTypes))
@csrf @if($cfRecordSetting->proxied) @else @endif
@elseif($isCloudflareRecord) {{-- Record CF dar nu suportă proxy --}} @endif @if(!in_array($record->type, ['SOA', 'NS'])) @if($dnsZone->suspended_at) @elseif(Auth::user()->canPerformDnsOperations()) {{-- Toggle button - blocat pentru Cloudflare --}} @if($isCloudflareRecord) @else
@csrf
@endif {{-- Delete button - funcționează și pentru Cloudflare --}}
@csrf @method('DELETE')
@else @endif @else @if(Auth::user()->isAdmin())
@csrf @method('DELETE')
@else @endif @endif @endif
{{ $records->links() }}
@else

{{ __('No records found') }}

@if(isset($isPowerDNSOnly) && $isPowerDNSOnly)

Nu au fost găsite înregistrări DNS pentru acest domeniu

Gestionează înregistrări @else

Adaugă prima înregistrare DNS pentru acest domeniu

{{ __('Add Record') }} @endif
@endif
@if(isset($dnsZone->dnssec_enabled) && $dnsZone->dnssec_enabled) @endif @if(Auth::user()->isAdmin()) @endif