get(); $table = new ListEloquentTable(new EloquentDataProvider(User::class, [ 'currentPage' => $page_number, 'perPage' => 3, 'params' => ["class" => "table table-bordered", "border" => "2"], 'baseUrl' => "/admin/user", 'searchPrefix' => "", 'searchParams' => $get,])); $entityRelation = new \kernel\EntityRelation(); $additionals = $entityRelation->getEntityRelationsBySlug("user"); foreach ($additionals as $additional) { $table->addColumn($additional, $additional, function ($id) use ($entityRelation, $additional) { return $entityRelation->getAdditionalPropertyByEntityId("user", $id, $additional); }); } $table->columns([ 'username' => [ "filter" => [ 'class' => \kernel\filters\BootstrapTextFilter::class, 'value' => $get['username'] ?? null, ] ], 'user_photo' => function ($data) { return $data ? "" : ""; }, 'created_at' => function ($data) { if (!$data){ return null; } return (new DateTimeImmutable($data))->format("d-m-Y"); }, 'updated_at' => function ($data) { if (!$data){ return null; } return (new DateTimeImmutable($data))->format("d-m-Y"); } ]); $table->beforePrint(function () { return IconBtnCreateWidget::create(['url' => '/admin/user/create'])->run(); }); $table->addAction(function($row) { return IconBtnViewWidget::create(['url' => '/admin/user/view/' . $row['id']])->run(); }); $table->addAction(function($row) { return IconBtnEditWidget::create(['url' => '/admin/user/update/' . $row['id']])->run(); }); $table->addAction(function($row) { return IconBtnDeleteWidget::create(['url' => '/admin/user/delete/' . $row['id']])->run(); }); $table->create(); $table->render();