@php // ── Check if we're on a tenant subdomain ── $tenant = request()->get('current_tenant'); $isTenantContext = $tenant !== null; // ── Get settings based on context ── if ($isTenantContext) { $tenantSettings = \App\Models\TenantSetting::getAllForTenant($tenant->id); $siteLogo = $tenantSettings['logo_dark'] ?? null; $siteName = $tenantSettings['company_name'] ?? $tenant->name ?? 'Admin Portal'; $primaryColor = $tenantSettings['primary_color'] ?? '#c9a96e'; } else { $platformSettings = \App\Models\Setting::getAllAsArray(); $siteLogo = $platformSettings['app_logo_dark'] ?? null; $siteName = $platformSettings['app_name'] ?? 'Admin Portal'; $primaryColor = $platformSettings['primary_color'] ?? '#c9a96e'; } // ── Admin count and permissions ── $adminCount = \App\Models\Admin::count(); $currentAdmin = auth()->guard('admin')->user(); $isFirstAdmin = $adminCount === 0; $isPlatformOwner = $currentAdmin && $currentAdmin->role === 'platform_owner'; $isCompanyAdmin = $currentAdmin && $currentAdmin->role === 'company_admin'; $canRegister = $isFirstAdmin || $isPlatformOwner || $isCompanyAdmin; // ── Allowed roles based on context ── if ($isFirstAdmin) { $allowedRoles = ['platform_owner']; $roleDescription = 'Platform Owner'; } elseif ($isPlatformOwner) { $allowedRoles = ['company_admin', 'sales', 'broker']; $roleDescription = 'Company Admin, Sales, or Broker'; } elseif ($isCompanyAdmin) { $allowedRoles = ['sales', 'broker']; $roleDescription = 'Sales or Broker'; } else { $allowedRoles = []; $roleDescription = 'No roles available'; } // ── Logo URL helper ── $logoUrl = null; if ($siteLogo) { if ($isTenantContext) { $logoUrl = asset('storage/tenants/' . $tenant->id . '/' . $siteLogo); } else { $logoUrl = asset('storage/settings/' . $siteLogo); } } // ── Page title ── $pageTitle = $isFirstAdmin ? 'Platform Setup' : ($isTenantContext ? 'Tenant Registration' : 'Admin Register'); // ── Register URL ── $registerActionUrl = $isTenantContext ? url('/' . $tenant->slug . '/admin/register') : url('/admin/register'); // ── Login URL ── $loginUrl = $isTenantContext ? url('/' . $tenant->slug . '/admin/login-form') : url('/admin/login-form'); @endphp {{ $pageTitle }}
{{-- Header --}}

{{ $siteName }}

{{ $isFirstAdmin ? 'Complete your platform setup' : ($isTenantContext ? 'Register as a team member' : 'Create a new admin account') }}

@if($isTenantContext)
{{ $tenant->name }}
@endif
{{-- Already logged in warning --}} @if($currentAdmin && !$isFirstAdmin)
You are already logged in as {{ $currentAdmin->name }}.
@endif @if($errors->any())
    @foreach($errors->all() as $e)
  • {{ $e }}
  • @endforeach
@endif @if(session('error'))
{{ session('error') }}
@endif @if(session('success'))
{{ session('success') }}
@endif @if(!$canRegister)
You do not have permission to register new accounts.
@endif @if($canRegister)
@csrf {{-- ── Personal info ── --}}
@error('name')
{{ $message }}
@enderror
@error('email')
{{ $message }}
@enderror
{{-- ── Security ── --}}
@error('password')
{{ $message }}
@enderror
{{-- ── Role selection ── --}} @if(count($allowedRoles) > 0)
@foreach($allowedRoles as $role) @php $roleIcon = match($role) { 'platform_owner' => 'fa-crown', 'company_admin' => 'fa-building', 'sales' => 'fa-briefcase', 'broker' => 'fa-handshake', default => 'fa-user' }; $roleLabel = match($role) { 'platform_owner' => 'Platform Owner', 'company_admin' => 'Company Admin', 'sales' => 'Sales', 'broker' => 'Broker', default => ucfirst($role) }; $roleDesc = match($role) { 'platform_owner' => 'Full platform access', 'company_admin' => 'Full tenant access', 'sales' => 'Sales management', 'broker' => 'Broker access', default => '' }; @endphp
@endforeach
@error('role')
{{ $message }}
@enderror @endif
@endif