diff --git a/app/Console/Commands/Grapper/Betsapi/Fixtures.php b/app/Console/Commands/Grapper/Betsapi/Fixtures.php index 056fe277..a6d838b9 100644 --- a/app/Console/Commands/Grapper/Betsapi/Fixtures.php +++ b/app/Console/Commands/Grapper/Betsapi/Fixtures.php @@ -14,6 +14,7 @@ class Fixtures public static function grap() { $debug = Nuh::$options['d'] ?? 0; + $break = Nuh::$options['b'] ?? 0; $sportmap = Sport::map('bapi'); @@ -76,6 +77,10 @@ class Fixtures } } } + + if ($break) { + break; + } } } } diff --git a/app/Filament/Clusters/Settings/SettingsCluster.php b/app/Filament/Clusters/Settings/SettingsCluster.php deleted file mode 100644 index 986777ae..00000000 --- a/app/Filament/Clusters/Settings/SettingsCluster.php +++ /dev/null @@ -1,14 +0,0 @@ - ListCompetitionGroupFilters::route('/'), - 'create' => CreateCompetitionGroupFilter::route('/create'), - 'edit' => EditCompetitionGroupFilter::route('/{record}/edit'), - ]; - } - - public static function getNavigationBadge(): ?string - { - return parent::getEloquentQuery()->count(); - } -} diff --git a/app/Filament/Resources/CompetitionGroupFilters/Pages/CreateCompetitionGroupFilter.php b/app/Filament/Resources/CompetitionGroupFilters/Pages/CreateCompetitionGroupFilter.php deleted file mode 100644 index 4850654f..00000000 --- a/app/Filament/Resources/CompetitionGroupFilters/Pages/CreateCompetitionGroupFilter.php +++ /dev/null @@ -1,11 +0,0 @@ -components([ - // - ]); - } -} diff --git a/app/Filament/Resources/CompetitionGroupFilters/Tables/CompetitionGroupFiltersTable.php b/app/Filament/Resources/CompetitionGroupFilters/Tables/CompetitionGroupFiltersTable.php deleted file mode 100644 index 6d4f2ce2..00000000 --- a/app/Filament/Resources/CompetitionGroupFilters/Tables/CompetitionGroupFiltersTable.php +++ /dev/null @@ -1,30 +0,0 @@ -columns([ - // - ]) - ->filters([ - // - ]) - ->recordActions([ - EditAction::make(), - ]) - ->toolbarActions([ - BulkActionGroup::make([ - DeleteBulkAction::make(), - ]), - ]); - } -} diff --git a/app/Filament/Resources/ElementFilters/ElementFilterResource.php b/app/Filament/Resources/ElementFilters/ElementFilterResource.php deleted file mode 100644 index 8b8228df..00000000 --- a/app/Filament/Resources/ElementFilters/ElementFilterResource.php +++ /dev/null @@ -1,69 +0,0 @@ - ListElementFilters::route('/'), - 'create' => CreateElementFilter::route('/create'), - 'edit' => EditElementFilter::route('/{record}/edit'), - ]; - } - - public static function getNavigationBadge(): ?string - { - return parent::getEloquentQuery()->count(); - } -} diff --git a/app/Filament/Resources/ElementFilters/Pages/CreateElementFilter.php b/app/Filament/Resources/ElementFilters/Pages/CreateElementFilter.php deleted file mode 100644 index 7247daec..00000000 --- a/app/Filament/Resources/ElementFilters/Pages/CreateElementFilter.php +++ /dev/null @@ -1,11 +0,0 @@ -components([ - // - ]); - } -} diff --git a/app/Filament/Resources/ElementFilters/Tables/ElementFiltersTable.php b/app/Filament/Resources/ElementFilters/Tables/ElementFiltersTable.php deleted file mode 100644 index fe25e8eb..00000000 --- a/app/Filament/Resources/ElementFilters/Tables/ElementFiltersTable.php +++ /dev/null @@ -1,30 +0,0 @@ -columns([ - // - ]) - ->filters([ - // - ]) - ->recordActions([ - EditAction::make(), - ]) - ->toolbarActions([ - BulkActionGroup::make([ - DeleteBulkAction::make(), - ]), - ]); - } -} diff --git a/app/Filament/Resources/Events/EventResource.php b/app/Filament/Resources/Events/EventResource.php index f8415c89..149f3f30 100644 --- a/app/Filament/Resources/Events/EventResource.php +++ b/app/Filament/Resources/Events/EventResource.php @@ -46,7 +46,6 @@ class EventResource extends Resource public static function getNavigationBadge(): ?string { return parent::getEloquentQuery() - ->where('sport_id', auth()->user()->sport_id) ->where('starttime', '>', Carbon::now()) ->count(); } @@ -54,7 +53,6 @@ class EventResource extends Resource public static function getEloquentQuery(): Builder { return parent::getEloquentQuery() - ->where('starttime', '>', Carbon::now()) - ->where('sport_id', auth()->user()->sport_id); + ->where('starttime', '>', Carbon::now()); } } diff --git a/app/Filament/Resources/Events/Tables/EventsTable.php b/app/Filament/Resources/Events/Tables/EventsTable.php index 29c7cb02..11667956 100644 --- a/app/Filament/Resources/Events/Tables/EventsTable.php +++ b/app/Filament/Resources/Events/Tables/EventsTable.php @@ -110,7 +110,7 @@ class EventsTable public static function load_bettype_settings() { - self::$bettype_settings = BettypeUser::where('user_id', auth()->user()->id)->where('sport_id', auth()->user()->sport_id)->where('is_active', 1)->pluck('multiline_setting_id')->toArray(); + self::$bettype_settings = BettypeUser::where('is_active', 1)->pluck('multiline_setting_id')->toArray(); } public static function configure(Table $table): Table diff --git a/app/Filament/Resources/GroupFilters/GroupFilterResource.php b/app/Filament/Resources/GroupFilters/GroupFilterResource.php deleted file mode 100644 index d87096a6..00000000 --- a/app/Filament/Resources/GroupFilters/GroupFilterResource.php +++ /dev/null @@ -1,64 +0,0 @@ - ListGroupFilters::route('/'), - ]; - } - - public static function getNavigationBadge(): ?string - { - return parent::getEloquentQuery()->count(); - } -} diff --git a/app/Filament/Resources/GroupFilters/Pages/CreateGroupFilter.php b/app/Filament/Resources/GroupFilters/Pages/CreateGroupFilter.php deleted file mode 100644 index 9d4525ea..00000000 --- a/app/Filament/Resources/GroupFilters/Pages/CreateGroupFilter.php +++ /dev/null @@ -1,11 +0,0 @@ -components([ - TextInput::make('group_id') - ->required() - ->numeric(), - TextInput::make('bkm_group_id') - ->required() - ->numeric(), - TextInput::make('bookmaker_id') - ->required() - ->numeric(), - TextInput::make('name') - ->default(null), - ]); - } -} diff --git a/app/Filament/Resources/GroupFilters/Tables/GroupFiltersTable.php b/app/Filament/Resources/GroupFilters/Tables/GroupFiltersTable.php deleted file mode 100644 index bbda5b76..00000000 --- a/app/Filament/Resources/GroupFilters/Tables/GroupFiltersTable.php +++ /dev/null @@ -1,49 +0,0 @@ -columns([ - TextColumn::make('group_id') - ->numeric() - ->sortable(), - TextColumn::make('bkm_group_id') - ->numeric() - ->sortable(), - TextColumn::make('bookmaker_id') - ->numeric() - ->sortable(), - TextColumn::make('name') - ->searchable(), - TextColumn::make('created_at') - ->dateTime() - ->sortable() - ->toggleable(isToggledHiddenByDefault: true), - TextColumn::make('updated_at') - ->dateTime() - ->sortable() - ->toggleable(isToggledHiddenByDefault: true), - ]) - ->filters([ - // - ]) - ->recordActions([ - EditAction::make(), - ]) - ->toolbarActions([ - BulkActionGroup::make([ - DeleteBulkAction::make(), - ]), - ]); - } -} diff --git a/app/Filament/Resources/MultilineClients/MultilineClientResources.php b/app/Filament/Resources/MultilineClients/MultilineClientResources.php deleted file mode 100644 index 94e1b8fd..00000000 --- a/app/Filament/Resources/MultilineClients/MultilineClientResources.php +++ /dev/null @@ -1,48 +0,0 @@ - ListMultilineClients::route('/'), - ]; - } -} diff --git a/app/Filament/Resources/MultilineClients/Pages/CreateMultilineClient.php b/app/Filament/Resources/MultilineClients/Pages/CreateMultilineClient.php deleted file mode 100644 index 04ae289e..00000000 --- a/app/Filament/Resources/MultilineClients/Pages/CreateMultilineClient.php +++ /dev/null @@ -1,11 +0,0 @@ -createAnother(false), - ]; - } -} diff --git a/app/Filament/Resources/MultilineClients/Schemas/MultilineClientForm.php b/app/Filament/Resources/MultilineClients/Schemas/MultilineClientForm.php deleted file mode 100644 index f4e533c8..00000000 --- a/app/Filament/Resources/MultilineClients/Schemas/MultilineClientForm.php +++ /dev/null @@ -1,36 +0,0 @@ -components([ - Select::make('sport_id') - ->live() - ->options(Sport::where('is_active', 1)->pluck('name', 'id')) - ->preload(), - Select::make('matchpart_id') - ->options(Matchpart::where('is_active', 1)->pluck('name', 'id')) - ->preload(), - Select::make('bettype_id') - ->options(fn (Get $get) => Bettype::where('sport_id', $get('sport_id'))->whereIn('bettype_id', self::$bettypes)->pluck('name', 'bettype_id')), - Select::make('bookmaker_id') - ->options(Bookmaker::where('is_active', 1)->pluck('name', 'txid')) - ->preload() - ->searchable(), - ]); - } -} diff --git a/app/Livewire/BettypeToggle.php b/app/Livewire/BettypeToggle.php index 1dae556d..36e04a1a 100644 --- a/app/Livewire/BettypeToggle.php +++ b/app/Livewire/BettypeToggle.php @@ -18,7 +18,7 @@ class BettypeToggle extends Component { $this->multilines = []; - $res = BettypeUser::with('multiline')->where('user_id', auth()->user()->id)->where('sport_id', auth()->user()->sport_id)->get(); + $res = BettypeUser::with('multiline')->get(); foreach ($res as $set) { $this->multilines[] = [ @@ -37,7 +37,7 @@ class BettypeToggle extends Component public function toggleBettype($multiline_setting_id) { - BettypeUser::where('user_id', auth()->user()->id)->where('multiline_setting_id', $multiline_setting_id)->update(['is_active' => DB::raw('!is_active')]); + BettypeUser::where('multiline_setting_id', $multiline_setting_id)->update(['is_active' => DB::raw('!is_active')]); $this->dispatch('refreshBettypeMenu'); } diff --git a/app/Livewire/MapperLeft.php b/app/Livewire/MapperLeft.php index 08ff880b..b59cd08d 100644 --- a/app/Livewire/MapperLeft.php +++ b/app/Livewire/MapperLeft.php @@ -24,7 +24,8 @@ class MapperLeft extends Component implements HasActions, HasSchemas, HasTable return $table ->query(Event::query()) ->columns([ - TextColumn::make('name'), + TextColumn::make('home.name')->alignRight(), + TextColumn::make('away.name'), ]) ->filters([ // ... diff --git a/app/Livewire/MapperRight.php b/app/Livewire/MapperRight.php index eff712d1..b1082673 100644 --- a/app/Livewire/MapperRight.php +++ b/app/Livewire/MapperRight.php @@ -24,7 +24,8 @@ class MapperRight extends Component implements HasActions, HasSchemas, HasTable return $table ->query(Mapper::query()) ->columns([ - TextColumn::make('name'), + TextColumn::make('home')->alignRight(), + TextColumn::make('away'), ]) ->filters([ // ... diff --git a/app/Filament/Resources/MultilineClients/Tables/MultilineClientsTable.php b/app/Livewire/MultilineBookmaker.php similarity index 81% rename from app/Filament/Resources/MultilineClients/Tables/MultilineClientsTable.php rename to app/Livewire/MultilineBookmaker.php index 883f9b44..ff7035ad 100644 --- a/app/Filament/Resources/MultilineClients/Tables/MultilineClientsTable.php +++ b/app/Livewire/MultilineBookmaker.php @@ -1,28 +1,42 @@ query(MultilineClient::query()) ->paginated(false) ->reorderRecordsTriggerAction( fn (Action $action, bool $isReordering) => $action @@ -59,6 +73,7 @@ class MultilineClientsTable Filter::make('multiline') ->schema([ Select::make('sport_id') + ->hiddenLabel() ->label('Sport') ->default(1) ->options(function () { @@ -68,6 +83,7 @@ class MultilineClientsTable }) ->live(), Select::make('multiline_setting_id') + ->hiddenLabel() ->label('Bettype') ->default(1) ->options(function (Get $get) { @@ -87,7 +103,11 @@ class MultilineClientsTable }) ->columns(3)->columnSpan(3), ], layout: FiltersLayout::AboveContent) - ->hiddenFilterIndicators(); } + + public function render(): View + { + return view('livewire.multiline-bookmaker'); + } } diff --git a/app/Models/BettypeUser.php b/app/Models/BettypeUser.php index 0d9e6371..bf3502ba 100644 --- a/app/Models/BettypeUser.php +++ b/app/Models/BettypeUser.php @@ -2,6 +2,8 @@ namespace App\Models; +use App\Models\Scopes\SportScope; +use App\Models\Scopes\UserScope; use Illuminate\Database\Eloquent\Model; class BettypeUser extends Model @@ -13,6 +15,12 @@ class BettypeUser extends Model 'is_active', ]; + protected static function booted(): void + { + static::addGlobalScope(new SportScope); + static::addGlobalScope(new UserScope); + } + public function multiline() { return $this->hasOne(MultilineSetting::class, 'id', 'multiline_setting_id'); diff --git a/app/Models/Event.php b/app/Models/Event.php index 79065f17..0c6ba747 100644 --- a/app/Models/Event.php +++ b/app/Models/Event.php @@ -2,6 +2,7 @@ namespace App\Models; +use App\Models\Scopes\SportScope; use Illuminate\Database\Eloquent\Model; class Event extends Model @@ -23,6 +24,11 @@ class Event extends Model 'away_id', ]; + protected static function booted(): void + { + static::addGlobalScope(new SportScope); + } + public function sport() { return $this->belongsTo(Sport::class); diff --git a/app/Models/Scopes/SportScope.php b/app/Models/Scopes/SportScope.php new file mode 100644 index 00000000..3b1539f1 --- /dev/null +++ b/app/Models/Scopes/SportScope.php @@ -0,0 +1,20 @@ +hasUser()) { + $builder->where('sport_id', auth()->user()->sport_id); + } + } +} diff --git a/app/Models/Scopes/UserScope.php b/app/Models/Scopes/UserScope.php new file mode 100644 index 00000000..49e9997a --- /dev/null +++ b/app/Models/Scopes/UserScope.php @@ -0,0 +1,20 @@ +hasUser()) { + $builder->where('user_id', auth()->user()->id); + } + } +} diff --git a/config/filament-shield.php b/config/filament-shield.php index 189c29a0..7d8a694b 100644 --- a/config/filament-shield.php +++ b/config/filament-shield.php @@ -2,6 +2,8 @@ declare(strict_types=1); +use App\Filament\Clusters\Administrator\AdministratorCluster; + return [ /* @@ -18,7 +20,7 @@ return [ 'shield_resource' => [ 'slug' => 'shield/roles', 'show_model_path' => true, - 'cluster' => null, + 'cluster' => AdministratorCluster::class, 'tabs' => [ 'pages' => true, 'widgets' => true, diff --git a/resources/views/livewire/multiline-bookmaker.blade.php b/resources/views/livewire/multiline-bookmaker.blade.php new file mode 100644 index 00000000..c3fedc4a --- /dev/null +++ b/resources/views/livewire/multiline-bookmaker.blade.php @@ -0,0 +1,3 @@ +