@extends('layouts.app') @section('content')
@csrf @method('PUT') {{-- كارد اسم الدور وزر التحديد الشامل --}}
@error('name')
{{ $message }}
@enderror
تعديل صلاحيات الدور:
@php $groupedPermissions = $permissions->groupBy('group_name'); // جلب الصلاحيات الحالية للدور وتحويلها لمصفوفة ID $rolePermissions = $role->permissions->pluck('id')->toArray(); @endphp {{-- شبكة عرض الصلاحيات مقسمة بداخل كاردات المجموعات --}}
@foreach($groupedPermissions as $groupName => $groupPermissions) @php $groupSlug = Str::slug($groupName ?? 'general'); @endphp
{{ $groupName ?? 'بدون مجموعة' }}
@foreach($groupPermissions as $permission) @php // ألوان متناسقة بناءً على نوع الصلاحية $badgeStyle = 'bg-body-secondary text-dark border-secondary-subtle'; if (str_contains($permission->name, 'view')) $badgeStyle = 'bg-info-subtle text-info-emphasis border-info-subtle'; elseif (str_contains($permission->name, 'create')) $badgeStyle = 'bg-success-subtle text-success-emphasis border-success-subtle'; elseif (str_contains($permission->name, 'edit')) $badgeStyle = 'bg-warning-subtle text-warning-emphasis border-warning-subtle'; elseif (str_contains($permission->name, 'delete')) $badgeStyle = 'bg-danger-subtle text-danger-emphasis border-danger-subtle'; // التحقق مما إذا كانت الصلاحية محددة مسبقاً (سواء عبر الـ old القديم أو من قاعدة البيانات) $isChecked = is_array(old('permissions')) ? in_array($permission->id, old('permissions')) : in_array($permission->id, $rolePermissions); @endphp
@endforeach
@endforeach
{{-- أزرار التحكم بالنموذج أسفل الصفحة --}}
إلغاء
{{-- سكربت التحكم بالتحديد الديناميكي --}} {{-- التنسيق الخاص بالجماليات والألوان --}}
@endsection