Ejemplo n.º 1
0
 /**
  * Returns a new table of all roles that have the specified permission.
  *
  * @param Permission $permission
  *
  * @return \Orchestra\Contracts\Html\Builder
  */
 public function tableRoles(Permission $permission)
 {
     $roles = $permission->roles()->with('users');
     return $this->table->of('permissions.roles', function (TableGrid $table) use($permission, $roles) {
         $table->with($roles)->paginate(10);
         $table->column('label', function (Column $column) {
             $column->value = function (Role $role) {
                 return link_to_route('admin.roles.show', $role->label, [$role->id]);
             };
         });
         $table->column('name', function (Column $column) {
             // We'll remove this column when
             // viewing on smaller screens.
             $column->headers = ['class' => 'hidden-xs'];
             $column->attributes(function () {
                 return ['class' => 'hidden-xs'];
             });
         });
         $table->column('users', function (Column $column) {
             $column->value = function (Role $role) {
                 return $role->users->count();
             };
         });
         $table->column('remove', function (Column $column) use($permission) {
             $column->value = function (Role $role) use($permission) {
                 return link_to_route('admin.permissions.roles.destroy', 'Remove', [$permission->id, $role->id], ['class' => 'btn btn-xs btn-danger', 'data-post' => 'DELETE', 'data-title' => 'Are you sure?', 'data-message' => 'Are you sure you want to remove this permission from this role?']);
             };
         });
     });
 }