Skip to content

Commit

Permalink
fix entity's state
Browse files Browse the repository at this point in the history
  • Loading branch information
bezhanSalleh committed Aug 3, 2022
1 parent aeac86a commit 6a3008d
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions src/Resources/RoleResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,21 @@

namespace BezhanSalleh\FilamentShield\Resources;

use BezhanSalleh\FilamentShield\FilamentShield;
use BezhanSalleh\FilamentShield\Resources\RoleResource\Pages;
use BezhanSalleh\FilamentShield\Support\Utils;
use Closure;
use Filament\Forms;
use Filament\Tables;
use Illuminate\Support\Arr;
use Illuminate\Support\Str;
use Filament\Resources\Form;
use Filament\Resources\Resource;
use Filament\Resources\Table;
use Filament\Tables;
use Illuminate\Database\Eloquent\Model;
use Filament\Resources\Resource;
use Illuminate\Support\Collection;
use Illuminate\Support\Str;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Models\Role;
use Illuminate\Database\Eloquent\Model;
use Spatie\Permission\Models\Permission;
use BezhanSalleh\FilamentShield\Support\Utils;
use BezhanSalleh\FilamentShield\FilamentShield;
use BezhanSalleh\FilamentShield\Resources\RoleResource\Pages;

class RoleResource extends Resource
{
Expand Down Expand Up @@ -362,15 +363,14 @@ protected static function refreshResourceEntityStateAfterHydrated(Model $record,
$entities = $record->permissions->pluck('name')
->reduce(function ($roles, $role) {
$roles[$role] = Str::afterLast($role, '_');

return $roles;
}, collect())
->values()
->groupBy(function ($item) {
return $item;
})->map->count()
->reduce(function ($counts, $role, $key) {
if ($role > 1 && $role = count(config('filament-shield.permission_prefixes.resource'))) {
if ($role > 1 && $role == count(config('filament-shield.permission_prefixes.resource'))) {
$counts[$key] = true;
} else {
$counts[$key] = false;
Expand All @@ -380,7 +380,7 @@ protected static function refreshResourceEntityStateAfterHydrated(Model $record,
}, []);

// set entity's state if one are all permissions are true
if (in_array($entity, array_keys($entities)) && $entities[$entity]) {
if (Arr::exists($entities, $entity) && Arr::get($entities,$entity)) {
$set($entity, true);
} else {
$set($entity, false);
Expand Down

0 comments on commit 6a3008d

Please sign in to comment.