<?php
class ListProductVariants extends ListRecords
{
public function getTabs(): array
{
return [
'new' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 0)
->where('is_archived', false)),
'enabled' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 1)
->where('is_approved', 1)
->where('is_archived', false)),
'disabled' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 1)
->where('is_approved', 0)
->where('is_archived', false)),
'archived' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_archived', true)),
];
}
protected function paginateTableQuery(Builder $query): CursorPaginator
{
return $query->cursorPaginate(($this->getTableRecordsPerPage() === 'all') ? $query->count() : $this->getTableRecordsPerPage());
}
}
<?php
class ListProductVariants extends ListRecords
{
public function getTabs(): array
{
return [
'new' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 0)
->where('is_archived', false)),
'enabled' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 1)
->where('is_approved', 1)
->where('is_archived', false)),
'disabled' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_created', 1)
->where('is_approved', 0)
->where('is_archived', false)),
'archived' => Tab::make()
->modifyQueryUsing(fn (Builder $query) => $query
->where('is_archived', true)),
];
}
protected function paginateTableQuery(Builder $query): CursorPaginator
{
return $query->cursorPaginate(($this->getTableRecordsPerPage() === 'all') ? $query->count() : $this->getTableRecordsPerPage());
}
}