first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

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;
}
}