/** * Returns a new table for the specified role users. * * @param Role $role * * @return \Orchestra\Contracts\Html\Builder */ public function tableUsers(Role $role) { $users = $role->users()->orderBy('name'); return $this->table->of('roles.users', function (TableGrid $table) use($role, $users) { $table->with($users)->paginate(10); $table->pageName = 'users'; $table->column('name', function (Column $column) { $column->value = function (User $user) { return link_to_route('admin.users.show', $user->name, [$user->id]); }; }); $table->column('email', 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('remove', function (Column $column) use($role) { $column->value = function (User $user) use($role) { return link_to_route('admin.roles.users.destroy', 'Remove', [$role->id, $user->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 user?']); }; }); }); }