Initial commit
Build / run (push) Has been cancelled

This commit is contained in:
maher
2026-05-14 13:42:10 +02:00
commit 511fad8199
4595 changed files with 385164 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
<?php
namespace Common\Channels;
use App\Models\Channel;
use Common\Database\Datasource\Datasource;
use Illuminate\Pagination\AbstractPaginator;
class PaginateChannels
{
public function execute(array $params): AbstractPaginator
{
// $builder = Channel::where('type', 'channel')->whereNotExists(function (
// $query,
// ) {
// $query
// ->select('id')
// ->from('channelables')
// ->whereColumn('channelable_id', 'channels.id');
// });
$builder = Channel::where('type', 'channel');
$paginator = new Datasource($builder, $params);
if (!isset($params['orderBy'])) {
$builder->orderByRaw('`internal` = "1" desc, `updated_at` desc');
$paginator->order = false;
}
$pagination = $paginator->paginate();
$pagination->transform(function (Channel $channel) {
$channel->makeVisible(['internal']);
return $channel;
});
return $pagination;
}
}