{{-- resources/views/superadmin/iman-room/usernames-center.blade.php --}} @extends('layouts.superadmin') @section('title', 'غرفة إيمان — مركز أسماء المستخدمين') @section('page-title', 'مركز أسماء المستخدمين (Username Center)') @section('content') @php // Helpers $qs = request()->query(); $q = fn($k,$d=null) => request()->get($k,$d); $view = $view ?? 'table'; $teamStatus = $teamStatus ?? 'present'; $scoreMode = $scoreMode ?? 'strict'; $search = $search ?? ''; $membership = $membership ?? ''; $accountStatus = $accountStatus ?? ''; $policy = $policy ?? []; $stats = $stats ?? ['total'=>0,'haveUser'=>0,'noUser'=>0,'dupesUser'=>0]; $dupes = $dupes ?? collect(); $drawer = $drawer ?? ['open'=>false,'user'=>null,'score'=>null,'level'=>null,'reasons'=>[],'suggestions'=>[],'dup_count'=>0,'same_username_users'=>[],'focus_id'=>null,'mode'=>'auto']; $items = $items ?? collect(); // نستخدم URL ثابت لتحديث اليوزر (بدون الاعتماد على route name) $updateBase = '/superadmin/falcon/usernames'; // ✅ عدّلها إذا مسارك مختلف @endphp
{{-- HERO --}}
غرفة إيمان • Falcon Room

مركز أسماء المستخدمين — Username Center

هذا المركز يضبط هوية العضو داخل النظام: بحث أسرع، تقارير أدق، ربط محكم بين التقييمات والرسائل والتنبيهات. أي Username غير منضبط = قابلية لبَس/تكرار/فوضى.

{{-- STATS --}}
إجمالي الأعضاء
{{ (int)($stats['total'] ?? 0) }}
لديهم Username
{{ (int)($stats['haveUser'] ?? 0) }}
بدون Username
{{ (int)($stats['noUser'] ?? 0) }}
تكرارات (Top)
{{ (int)($stats['dupesUser'] ?? 0) }}
{{-- POLICY --}}
{{ $policy['title'] ?? 'قواعد وأهمية اليوزرنيم' }} وضع التحليل: {{ $policy['mode'] ?? $scoreMode }}
    @foreach(($policy['why'] ?? []) as $line)
  • {{ $line }}
  • @endforeach
قواعد رسمية
    @foreach(($policy['rules'] ?? []) as $r)
  • {{ $r }}
  • @endforeach
{{-- FILTERS --}}
@if($q('focus')) @endif تصفير
* تلميح: اضغط “فتح” على أي عضو لعرض Drawer رسمي وتحليل اليوزر + تعديل مباشر.
{{-- DUPES TOP --}} @if(($dupes instanceof \Illuminate\Support\Collection) && $dupes->isNotEmpty())
أفضل 50 تكرارًا (Username Duplicates)
التكرار خطر لأنه يسبب لبس وتقارير غير دقيقة.
@foreach($dupes as $d)
{{ $d->username ?? '—' }}
{{ (int)($d->c ?? 0) }}×
@endforeach
@endif {{-- LIST --}} @if($view === 'cards')
@foreach($items as $u) @php $uname = trim((string)($u->username ?? '')); $lvl = $u->username_level ?? 'good'; $issues = (int)($u->username_issues ?? 0); $badge = $lvl==='bad' ? 'border-rose-400/25 bg-rose-500/15 text-rose-100' : ($lvl==='mid' ? 'border-amber-400/25 bg-amber-500/15 text-amber-100' : 'border-emerald-400/25 bg-emerald-500/15 text-emerald-100'); @endphp
{{ $u->name ?? '—' }}
{{ $u->membership_status ?? '—' }} • {{ $u->account_status ?? '—' }}
Username
{{ $lvl==='bad' ? 'خطر' : ($lvl==='mid' ? 'متوسط' : 'جيد') }}
{{ $uname !== '' ? '@'.$uname : '— بدون Username —' }}
مؤشرات: {{ $issues }} • ID: {{ (int)$u->id }}
@if(($u->username_flags['missing'] ?? false)) بدون يوزر @endif @if(($u->username_flags['has_spaces'] ?? 0) === 1) مسافات @endif @if(($u->username_flags['bad_chars'] ?? 0) === 1) رموز ممنوعة @endif @if(($u->username_flags['upper'] ?? 0) === 1) حروف كبيرة @endif @if(($u->username_flags['edge_dot'] ?? 0) === 1) بداية/نهاية ./_ @endif @if(($u->username_flags['repeat_sep'] ?? 0) === 1) تكرار ./_ @endif
@endforeach
@else
قائمة الأعضاء
اضغط فتح لتحليل وتعديل من Drawer.
@foreach($items as $u) @php $uname = trim((string)($u->username ?? '')); $lvl = $u->username_level ?? 'good'; $issues = (int)($u->username_issues ?? 0); $badge = $lvl==='bad' ? 'border-rose-400/25 bg-rose-500/15 text-rose-100' : ($lvl==='mid' ? 'border-amber-400/25 bg-amber-500/15 text-amber-100' : 'border-emerald-400/25 bg-emerald-500/15 text-emerald-100'); @endphp @endforeach
العضو Username مؤشرات الحالة إجراء
{{ $u->name ?? '—' }}
{{ $u->membership_status ?? '—' }} • ID: {{ (int)$u->id }}
{{ $uname !== '' ? '@'.$uname : '— بدون Username —' }}
{{ $u->email ?? '' }}
عدد المؤشرات: {{ $issues }}
@if(($u->username_flags['missing'] ?? false)) بدون @endif @if(($u->username_flags['has_spaces'] ?? 0) === 1) مسافات @endif @if(($u->username_flags['bad_chars'] ?? 0) === 1) رموز @endif @if(($u->username_flags['upper'] ?? 0) === 1) Upper @endif @if(($u->username_flags['edge_dot'] ?? 0) === 1) Edge @endif @if(($u->username_flags['repeat_sep'] ?? 0) === 1) Repeat @endif
{{ $lvl==='bad' ? 'خطر' : ($lvl==='mid' ? 'متوسط' : 'جيد') }}
{{ $users->links() }}
@endif
{{-- DRAWER --}}
لوحة تعديل Username
@if(!empty($drawer['user'])) @php $u = $drawer['user']; $score = (int)($drawer['score'] ?? 0); $level = (string)($drawer['level'] ?? 'mid'); $lvlBadge = $level==='excellent' ? 'border-emerald-400/25 bg-emerald-500/15 text-emerald-100' : ($level==='good' ? 'border-cyan-400/25 bg-cyan-500/15 text-cyan-100' : ($level==='mid' ? 'border-amber-400/25 bg-amber-500/15 text-amber-100' : 'border-rose-400/25 bg-rose-500/15 text-rose-100')); @endphp
{{ $u->name ?? '—' }}
{{ $u->membership_status ?? '—' }} • {{ $u->account_status ?? '—' }} • ID: {{ (int)$u->id }}
{{ $score }}/100
جودة اليوزر {{ $level }}
Username الحالي
{{ trim((string)($u->username ?? '')) !== '' ? '@'.trim((string)$u->username) : '— بدون Username —' }}
{{-- REASONS --}}
أسباب/ملاحظات التحليل
@forelse(($drawer['reasons'] ?? []) as $r)
{{ $r }}
@empty
لا توجد ملاحظات.
@endforelse
{{-- SUGGESTIONS --}}
اقتراحات جاهزة
@foreach(($drawer['suggestions'] ?? []) as $s)
{{ $s }}
@endforeach
{{-- DUP USERS --}} @if(!empty($drawer['dup_count']) && (int)$drawer['dup_count'] > 0)
تكرار Username {{ (int)$drawer['dup_count'] }} عضو/أعضاء
@foreach(($drawer['same_username_users'] ?? []) as $x)
{{ $x->name ?? '—' }}
ID: {{ (int)$x->id }} • {{ $x->membership_status ?? '—' }}
@endforeach
@endif {{-- UPDATE FORM --}}
تحديث Username
@csrf @method('PUT')
مسموح: A-Z a-z 0-9 . _ — بدون مسافات.
@else
لا يوجد عضو محدد. اضغط “فتح” من القائمة.
@endif
* هذه اللوحة جزء من غرفة إيمان — تعديل Username ينعكس على البحث والتقارير فورًا.
{{-- ✅ JavaScript مناسب (بدون تغيير خوارزميات) --}} @endsection