Пример #1
0
 /**
  * Sync the roles.
  *
  * @todo: Refactor this method
  */
 private function syncRoles()
 {
     $permissions = Permission::all();
     $roles = ['blog-moderators' => 'blog.', 'blog-authors' => 'blog.posts.'];
     foreach ($roles as $roleSlug => $permissionSlug) {
         /** @var  \Arcanesoft\Auth\Models\Role  $role */
         $role = Role::where('slug', $roleSlug)->first();
         $ids = $permissions->filter(function (Permission $permission) use($permissionSlug) {
             return starts_with($permission->slug, $permissionSlug);
         })->lists('id')->toArray();
         $role->permissions()->sync($ids);
     }
 }
Пример #2
0
 /**
  * Sync the roles.
  *
  * @todo: Refactor this method
  */
 private function syncRoles()
 {
     /** @var \Illuminate\Database\Eloquent\Collection $permissions */
     $permissions = Permission::all();
     $roles = ['logviewer-manager' => 'foundation.logviewer.'];
     foreach ($roles as $roleSlug => $permissionSlug) {
         /** @var  \Arcanesoft\Auth\Models\Role  $role */
         $role = Role::where('slug', $roleSlug)->first();
         $ids = $permissions->filter(function (Permission $permission) use($permissionSlug) {
             return Str::startsWith($permission->slug, $permissionSlug);
         })->pluck('id')->toArray();
         $role->permissions()->sync($ids);
     }
 }