@extends('Admin.layout') @section('content') @php $selectedType = request('type', 'all'); $selectedRoleAccess = $roleAccess->get($selectedType); $savedPermissionIds = $selectedRoleAccess ? ($selectedRoleAccess->permissions ?? []) : []; @endphp
Staff Role Access

Configure admin panel access based on designation and staff type.

Back
Role Information
Configure access for this designation
{{-- DESIGNATION --}}
Designation
{{ $role->role ?? 'Role Name' }}
Staff Type
Access Status
@if($selectedRoleAccess && !empty($savedPermissionIds)) Access Configured @else Not Configured @endif
@csrf
Module Permissions
Enable or disable permissions for this designation and staff type.
{{-- SEARCH --}} {{-- TOP SELECT ALL --}}
{{-- INNER CARD HEADER --}}
Module Permissions
Enable or disable module permissions for this staff.
{{ $permissionGroups->count() }} Modules
@forelse($permissionGroups as $module => $modulePermissions) @php $moduleId = 'module_' . \Illuminate\Support\Str::slug($module, '_'); $moduleName = ucwords( str_replace('_', ' ', $module) ); $moduleIcons = [ 'dashboard' => 'fa-chart-line', 'otp_master' => 'fa-key', 'project' => 'fa-diagram-project', 'employee_management' => 'fa-users', 'employee_goals' => 'fa-bullseye', 'employee_attendance' => 'fa-calendar-check', 'employee_report' => 'fa-file-lines', 'employee_review' => 'fa-user-check', 'employee_feedback' => 'fa-comments', 'task' => 'fa-list-check', 'financial' => 'fa-money-bill-transfer', 'candidate' => 'fa-user-plus', 'mail' => 'fa-envelope', 'popup' => 'fa-window-restore', 'certificate' => 'fa-certificate', 'proposal' => 'fa-file-signature', 'other' => 'fa-layer-group', 'backup' => 'fa-database', ]; $moduleIcon = $moduleIcons[$module] ?? 'fa-folder-open'; $moduleAllSelected = $modulePermissions->count() > 0 && $modulePermissions->every(function ($permission) use ($savedPermissionIds) { return in_array( $permission->id, $savedPermissionIds ); }); $moduleHasAccess = $modulePermissions->contains(function ($permission) use ($savedPermissionIds) { return in_array( $permission->id, $savedPermissionIds ); }); $moduleIsOpen = $moduleHasAccess && !$moduleAllSelected; @endphp

{{-- ================================================= MODULE SELECT ALL ================================================== --}}

@foreach($modulePermissions as $permission) @php $isChecked = in_array( $permission->id, $savedPermissionIds); $permissionAction = explode('.', $permission->name); $permissionLabel =end($permissionAction); $permissionLabel = ucwords( str_replace( ['_', '-'],' ',$permissionLabel ) ); @endphp
{{ $permissionLabel }} {{ $permission->name }}
@endforeach
@empty
No permissions available.
@endforelse
{{-- NO SEARCH RESULT --}}
No modules found
Cancel
@endsection