diff --git a/app/Filament/Resources/Events/Tables/EventsTable.php b/app/Filament/Resources/Events/Tables/EventsTable.php index 2ea58c00..368cf82f 100644 --- a/app/Filament/Resources/Events/Tables/EventsTable.php +++ b/app/Filament/Resources/Events/Tables/EventsTable.php @@ -63,7 +63,7 @@ class EventsTable return $table ->striped() - // ->poll('10s') + ->poll('10s') ->deferLoading() ->defaultPaginationPageOption(4) ->extremePaginationLinks() diff --git a/app/Livewire/MultilineBookmaker.php b/app/Livewire/MultilineBookmaker.php index b5fa3512..6f8a970e 100644 --- a/app/Livewire/MultilineBookmaker.php +++ b/app/Livewire/MultilineBookmaker.php @@ -6,6 +6,7 @@ use App\Filament\Tables\Columns\BookmakerIcon; use App\Models\Bookmaker; use App\Models\MultilineClient; use App\Models\MultilineSetting; +use Filament\Actions\Action; use Filament\Actions\Concerns\InteractsWithActions; use Filament\Actions\Contracts\HasActions; use Filament\Forms\Components\Radio; @@ -29,6 +30,8 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha use InteractsWithSchemas; use InteractsWithTable; + public $option_selected = 0; + protected $listeners = [ 'refreshMultilineBookmaker' => '$refresh', ]; @@ -61,6 +64,19 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha ]) ->defaultSort('sort') ->deferFilters(false) + ->headerActions([ + Action::make(name: 'make_all_like_selected')->action(function () { + $res = MultilineClient::where('sport_id', auth()->user()->sport_id) + ->where('client_bookmaker_id', auth()->user()->bookmaker_id) + ->where('multiline_setting_id', $this->option_selected)->get(); + foreach ($res as $value) { + MultilineClient::where('sport_id', auth()->user()->sport_id) + ->where('client_bookmaker_id', auth()->user()->bookmaker_id) + ->where('position', $value->position) + ->update(['bookmaker_id' => $value->bookmaker_id]); + } + }), + ]) ->filters([ Filter::make('multiline_setting_id') ->schema([ @@ -74,6 +90,9 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha ->options(fn () => MultilineSetting::where('sport_id', auth()->user()->sport_id)->orderBy('name')->pluck('name', 'id')), ]) ->query(function (Builder $query, array $data): Builder { + + $this->option_selected = $data['multiline_setting_id']; + return $query ->when( $data['multiline_setting_id'],