diff --git a/app/Filament/Clusters/StaticData/Resources/Bettypes/BettypeResource.php b/app/Filament/Clusters/StaticData/Resources/Bettypes/BettypeResource.php
index cb8f0834..61ec8f88 100644
--- a/app/Filament/Clusters/StaticData/Resources/Bettypes/BettypeResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/Bettypes/BettypeResource.php
@@ -15,8 +15,6 @@ class BettypeResource extends Resource
{
protected static ?string $model = Bettype::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-storefront';
-
protected static ?string $cluster = StaticDataCluster::class;
protected static ?string $navigationLabel = 'NuhOdds Markets';
diff --git a/app/Filament/Clusters/StaticData/Resources/CompetitionGroups/CompetitionGroupResource.php b/app/Filament/Clusters/StaticData/Resources/CompetitionGroups/CompetitionGroupResource.php
index 99103c9f..5b88c7e6 100644
--- a/app/Filament/Clusters/StaticData/Resources/CompetitionGroups/CompetitionGroupResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/CompetitionGroups/CompetitionGroupResource.php
@@ -16,8 +16,6 @@ class CompetitionGroupResource extends Resource
{
protected static ?string $model = CompetitionGroup::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $cluster = StaticDataCluster::class;
diff --git a/app/Filament/Clusters/StaticData/Resources/CompetitonGroupProviders/CompetitonGroupProviderResource.php b/app/Filament/Clusters/StaticData/Resources/CompetitonGroupProviders/CompetitonGroupProviderResource.php
index 65bb8e41..129619f6 100644
--- a/app/Filament/Clusters/StaticData/Resources/CompetitonGroupProviders/CompetitonGroupProviderResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/CompetitonGroupProviders/CompetitonGroupProviderResource.php
@@ -16,8 +16,6 @@ class CompetitonGroupProviderResource extends Resource
{
protected static ?string $model = CompetitionGroupProvider::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $modelLabel = 'Provider Groups';
diff --git a/app/Filament/Clusters/StaticData/Resources/Countries/CountryResource.php b/app/Filament/Clusters/StaticData/Resources/Countries/CountryResource.php
index 27555271..178fd6b3 100644
--- a/app/Filament/Clusters/StaticData/Resources/Countries/CountryResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/Countries/CountryResource.php
@@ -28,8 +28,6 @@ class CountryResource extends Resource
protected static ?int $navigationSort = 13;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $cluster = StaticDataCluster::class;
protected static string|\UnitEnum|null $navigationGroup = 'TxOdds';
diff --git a/app/Filament/Clusters/StaticData/Resources/ElementProviders/ElementProviderResource.php b/app/Filament/Clusters/StaticData/Resources/ElementProviders/ElementProviderResource.php
index c925e155..361bdc7b 100644
--- a/app/Filament/Clusters/StaticData/Resources/ElementProviders/ElementProviderResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/ElementProviders/ElementProviderResource.php
@@ -16,8 +16,6 @@ class ElementProviderResource extends Resource
{
protected static ?string $model = ElementProvider::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $recordTitleAttribute = 'name';
protected static ?int $navigationSort = 21;
diff --git a/app/Filament/Clusters/StaticData/Resources/Elements/ElementResource.php b/app/Filament/Clusters/StaticData/Resources/Elements/ElementResource.php
index 68a45f23..8f35d27f 100644
--- a/app/Filament/Clusters/StaticData/Resources/Elements/ElementResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/Elements/ElementResource.php
@@ -16,8 +16,6 @@ class ElementResource extends Resource
{
protected static ?string $model = Element::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $cluster = StaticDataCluster::class;
diff --git a/app/Filament/Clusters/StaticData/Resources/Players/PlayerResource.php b/app/Filament/Clusters/StaticData/Resources/Players/PlayerResource.php
index 0dec234c..f69cf98c 100644
--- a/app/Filament/Clusters/StaticData/Resources/Players/PlayerResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/Players/PlayerResource.php
@@ -7,7 +7,7 @@ use App\Filament\Clusters\StaticData\Resources\Players\Schemas\PlayerForm;
use App\Filament\Clusters\StaticData\Resources\Players\Tables\PlayersTable;
use App\Filament\Clusters\StaticData\StaticDataCluster;
use App\Models\Player;
-use BackedEnum;
+// use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
@@ -18,8 +18,6 @@ class PlayerResource extends Resource
protected static bool $shouldRegisterNavigation = false;
- protected static string|BackedEnum|null $navigationIcon = 'icon-soccerplayer';
-
protected static ?string $cluster = StaticDataCluster::class;
protected static ?string $recordTitleAttribute = 'name';
diff --git a/app/Filament/Clusters/StaticData/Resources/Sports/SportResource.php b/app/Filament/Clusters/StaticData/Resources/Sports/SportResource.php
index 62676375..549b0aa7 100644
--- a/app/Filament/Clusters/StaticData/Resources/Sports/SportResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/Sports/SportResource.php
@@ -19,8 +19,6 @@ class SportResource extends Resource
protected static ?int $navigationSort = 13;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-folder';
-
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $cluster = StaticDataCluster::class;
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/Pages/ListStatistikoEvents.php b/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/Pages/ListStatistikoEvents.php
index e5746559..2712db2a 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/Pages/ListStatistikoEvents.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/Pages/ListStatistikoEvents.php
@@ -3,11 +3,11 @@
namespace App\Filament\Clusters\StaticData\Resources\StatistikoEvents\Pages;
use App\Filament\Clusters\StaticData\Resources\StatistikoEvents\StatistikoEventsResource;
-use App\Filament\Imports\StatistikoEventImporter;
+// use App\Filament\Imports\StatistikoEventImporter;
use App\Models\StatistikoEvent;
use Filament\Actions\Action;
use Filament\Actions\CreateAction;
-use Filament\Actions\ImportAction;
+// use Filament\Actions\ImportAction;
use Filament\Resources\Pages\ListRecords;
class ListStatistikoEvents extends ListRecords
@@ -27,14 +27,14 @@ class ListStatistikoEvents extends ListRecords
CreateAction::make()
->label('New')
->icon('phosphor-plus'),
- ImportAction::make('importEvents')
- ->maxRows(200000)
- ->color('success')
- ->chunkSize(250)
- ->icon('phosphor-upload')
- ->label('Import')
- ->modalDescription('Max 20k rows per import, column separator: ";"')
- ->importer(StatistikoEventImporter::class),
+ // ImportAction::make('importEvents')
+ // ->maxRows(200000)
+ // ->color('success')
+ // ->chunkSize(250)
+ // ->icon('phosphor-upload')
+ // ->label('Import')
+ // ->modalDescription('Max 20k rows per import, column separator: ";"')
+ // ->importer(StatistikoEventImporter::class),
];
}
}
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/StatistikoEventsResource.php b/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/StatistikoEventsResource.php
index ef21da76..d8a5c354 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/StatistikoEventsResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoEvents/StatistikoEventsResource.php
@@ -7,7 +7,6 @@ use App\Filament\Clusters\StaticData\Resources\StatistikoEvents\Schemas\Statisti
use App\Filament\Clusters\StaticData\Resources\StatistikoEvents\Tables\StatistikoEventsTable;
use App\Filament\Clusters\StaticData\StaticDataCluster;
use App\Models\StatistikoEvent;
-use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
@@ -17,9 +16,7 @@ class StatistikoEventsResource extends Resource
{
protected static ?string $model = StatistikoEvent::class;
- protected static string|BackedEnum|null $navigationIcon = 'icon-soccerball';
-
- protected static ?string $navigationLabel = 'Event';
+ protected static ?string $navigationLabel = 'Events';
protected static ?string $modelLabel = 'Events';
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Pages/ListStatistikoImports.php b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Pages/ListStatistikoImports.php
index b6852efe..e96ee78d 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Pages/ListStatistikoImports.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Pages/ListStatistikoImports.php
@@ -14,7 +14,10 @@ class ListStatistikoImports extends ListRecords
{
return [
CreateAction::make('upload_file')
+ ->modalIcon('phosphor-upload')
+ ->modalHeading('Upload Statistiko Files')
->label('Upload file')
+ ->createAnother(false)
->icon('phosphor-upload'),
];
}
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Schemas/StatistikoImportForm.php b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Schemas/StatistikoImportForm.php
index 27f92f01..d99c12bf 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Schemas/StatistikoImportForm.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Schemas/StatistikoImportForm.php
@@ -5,6 +5,7 @@ namespace App\Filament\Clusters\StaticData\Resources\StatistikoImports\Schemas;
use App\Models\Sport;
use Filament\Forms\Components\FileUpload;
use Filament\Forms\Components\Select;
+use Filament\Schemas\Components\Icon;
use Filament\Schemas\Schema;
class StatistikoImportForm
@@ -26,10 +27,21 @@ class StatistikoImportForm
]),
FileUpload::make('file_name')
- ->directory('statistika')
+ ->label('Select File')
+ ->directory('statistiko')
->visibility('public')
->required()
- ->storeFileNamesIn('file_name_original'),
+ ->storeFileNamesIn('file_name_original')
+ ->beforeContent(Icon::make('phosphor-microsoft-excel-logo'))
+ ->belowContent(Schema::end([
+ 'Only excel files accepted.',
+ 'First row contains column titles.',
+ ]))
+ ->acceptedFileTypes([
+ 'application/vnd.ms-excel',
+ 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
+ 'text/csv', // Optional: include if you accept CSV too
+ ]),
])->columns(1);
}
}
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/StatistikaImportResource.php b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/StatistikaImportResource.php
index 7aa9f2cb..15fda088 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/StatistikaImportResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/StatistikaImportResource.php
@@ -7,7 +7,6 @@ use App\Filament\Clusters\StaticData\Resources\StatistikoImports\Schemas\Statist
use App\Filament\Clusters\StaticData\Resources\StatistikoImports\Tables\StatistikoImportsTable;
use App\Filament\Clusters\StaticData\StaticDataCluster;
use App\Models\StatistikoImport;
-use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
@@ -17,8 +16,6 @@ class StatistikaImportResource extends Resource
{
protected static ?string $model = StatistikoImport::class;
- protected static string|BackedEnum|null $navigationIcon = 'phosphor-upload';
-
protected static ?string $navigationLabel = 'File Uploads';
protected static ?string $modelLabel = 'File Uploads';
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Tables/StatistikoImportsTable.php b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Tables/StatistikoImportsTable.php
index 817827df..5b89df16 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Tables/StatistikoImportsTable.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoImports/Tables/StatistikoImportsTable.php
@@ -2,13 +2,15 @@
namespace App\Filament\Clusters\StaticData\Resources\StatistikoImports\Tables;
+use Filament\Actions\Action;
+use Filament\Actions\ActionGroup;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\SelectColumn;
use Filament\Tables\Columns\TextColumn;
-use Filament\Tables\Columns\ToggleColumn;
+use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Table;
class StatistikoImportsTable
@@ -31,23 +33,38 @@ class StatistikoImportsTable
'events' => 'Events',
'events_player' => 'Events & Player',
]),
- // TextColumn::make('data_type'),
- TextColumn::make('file_name_original')->searchable()->color('primary')->label('Name'),
- ToggleColumn::make('run_import')
- ->tooltip('Import will run in the background, on compleation a message will be send.')
- ->onColor(fn ($state) => $state ? 'success' : 'gray')
- ->beforeStateUpdated(function ($record, $state) {
- if ($state) {
- $record->is_running = 1;
- }
- }),
- IconColumn::make('is_running')->boolean()->falseColor('gray'),
- IconColumn::make('has_run')->boolean()->falseColor('gray'),
+ TextColumn::make('file_name_original')
+ ->searchable()
+ ->color('primary')
+ ->label('Name'),
+ IconColumn::make('has_run')
+ ->label('Import')
+ ->alignCenter()
+ ->boolean()
+ ->falseColor('gray'),
TextColumn::make('created_at')->dateTime(),
])
+ ->filters([
+ SelectFilter::make('data_type')
+ ->options([
+ 'player' => 'Player',
+ 'events' => 'Events',
+ 'events_player' => 'Events & Player',
+ ]),
+ ])
+ ->deferFilters(false)
->recordActions([
- DeleteAction::make()->iconButton(),
+ ActionGroup::make([
+ Action::make('Import')
+ ->label('Just Import (very fast)')
+ ->icon('phosphor-database'),
+ Action::make('Update')
+ ->label('Import and Update (slow)')
+ ->icon('phosphor-database'),
+ DeleteAction::make()
+ ->label('Delete file'),
+ ]),
])
->toolbarActions([
BulkActionGroup::make([
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/Pages/ListStatistikoPlayers.php b/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/Pages/ListStatistikoPlayers.php
index 9facf46b..7d46fe60 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/Pages/ListStatistikoPlayers.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/Pages/ListStatistikoPlayers.php
@@ -3,11 +3,11 @@
namespace App\Filament\Clusters\StaticData\Resources\StatistikoPlayers\Pages;
use App\Filament\Clusters\StaticData\Resources\StatistikoPlayers\StatistikoPlayerResource;
-use App\Filament\Imports\StatistikoPlayerImporter;
+// use App\Filament\Imports\StatistikoPlayerImporter;
use App\Models\StatistikoPlayer;
use Filament\Actions\Action;
use Filament\Actions\CreateAction;
-use Filament\Actions\ImportAction;
+// use Filament\Actions\ImportAction;
use Filament\Resources\Pages\ListRecords;
class ListStatistikoPlayers extends ListRecords
@@ -27,14 +27,14 @@ class ListStatistikoPlayers extends ListRecords
CreateAction::make()
->label('New')
->icon('phosphor-plus'),
- ImportAction::make('importPlayer')
- ->maxRows(200000)
- ->color('success')
- ->chunkSize(250)
- ->icon('phosphor-upload')
- ->label('Import')
- ->modalDescription('Max 20k rows per import, column separator ";"')
- ->importer(StatistikoPlayerImporter::class),
+ // ImportAction::make('importPlayer')
+ // ->maxRows(200000)
+ // ->color('success')
+ // ->chunkSize(250)
+ // ->icon('phosphor-upload')
+ // ->label('Import')
+ // ->modalDescription('Max 20k rows per import, column separator ";"')
+ // ->importer(StatistikoPlayerImporter::class),
];
}
}
diff --git a/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/StatistikoPlayerResource.php b/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/StatistikoPlayerResource.php
index 3bb326be..61148e29 100644
--- a/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/StatistikoPlayerResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/StatistikoPlayers/StatistikoPlayerResource.php
@@ -7,7 +7,6 @@ use App\Filament\Clusters\StaticData\Resources\StatistikoPlayers\Schemas\Statist
use App\Filament\Clusters\StaticData\Resources\StatistikoPlayers\Tables\StatistikoPlayersTable;
use App\Filament\Clusters\StaticData\StaticDataCluster;
use App\Models\StatistikoPlayer;
-use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Tables\Table;
@@ -17,8 +16,6 @@ class StatistikoPlayerResource extends Resource
{
protected static ?string $model = StatistikoPlayer::class;
- protected static string|BackedEnum|null $navigationIcon = 'icon-soccerplayer';
-
protected static ?string $navigationLabel = 'Player';
protected static ?string $modelLabel = 'Players';
diff --git a/app/Filament/Clusters/StaticData/Resources/TxoddsMarkets/TxoddsMarketResource.php b/app/Filament/Clusters/StaticData/Resources/TxoddsMarkets/TxoddsMarketResource.php
index b8b011ba..d781d99a 100644
--- a/app/Filament/Clusters/StaticData/Resources/TxoddsMarkets/TxoddsMarketResource.php
+++ b/app/Filament/Clusters/StaticData/Resources/TxoddsMarkets/TxoddsMarketResource.php
@@ -15,8 +15,6 @@ class TxoddsMarketResource extends Resource
{
protected static ?string $model = TxoddsMarket::class;
- protected static string|\BackedEnum|null $navigationIcon = 'phosphor-storefront';
-
protected static ?string $cluster = StaticDataCluster::class;
protected static ?int $navigationSort = 32;
diff --git a/app/Providers/Filament/AdminPanelProvider.php b/app/Providers/Filament/AdminPanelProvider.php
index 69e3dc1c..fdbc3e3a 100644
--- a/app/Providers/Filament/AdminPanelProvider.php
+++ b/app/Providers/Filament/AdminPanelProvider.php
@@ -94,6 +94,7 @@ class AdminPanelProvider extends PanelProvider
->maxContentWidth(Width::ScreenTwoExtraLarge)
->breadcrumbs(false)
->topNavigation()
+ ->sidebarCollapsibleOnDesktop(false)
->userMenuItems([
'profile' => Action::make('profile')
->label(fn () => Auth::user()->name)
diff --git a/composer.json b/composer.json
index 0f63b4d3..36a1d508 100644
--- a/composer.json
+++ b/composer.json
@@ -23,6 +23,7 @@
"laravel/tinker": "*",
"mongodb/laravel-mongodb": "^5.1",
"outhebox/blade-flags": "*",
+ "spatie/simple-excel": "^3.9",
"stevebauman/location": "*",
"swisnl/filament-backgrounds": "^2.0"
},
diff --git a/composer.lock b/composer.lock
index 0efc31d7..1971595c 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "576732046ac8e53ebb84eafe5574a829",
+ "content-hash": "d784dfb38ac60f6f4bc9b96c04fbddf2",
"packages": [
{
"name": "agencetwogether/hookshelper",
@@ -2955,20 +2955,20 @@
},
{
"name": "laravel/framework",
- "version": "v12.56.0",
+ "version": "v11.51.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "dac16d424b59debb2273910dde88eb7050a2a709"
+ "reference": "c8f9a04594b7044a189a3194cfb3594251eb74e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/dac16d424b59debb2273910dde88eb7050a2a709",
- "reference": "dac16d424b59debb2273910dde88eb7050a2a709",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/c8f9a04594b7044a189a3194cfb3594251eb74e5",
+ "reference": "c8f9a04594b7044a189a3194cfb3594251eb74e5",
"shasum": ""
},
"require": {
- "brick/math": "^0.11|^0.12|^0.13|^0.14",
+ "brick/math": "^0.9.3|^0.10.2|^0.11|^0.12|^0.13|^0.14",
"composer-runtime-api": "^2.2",
"doctrine/inflector": "^2.0.5",
"dragonmantank/cron-expression": "^3.4",
@@ -2983,34 +2983,32 @@
"fruitcake/php-cors": "^1.3",
"guzzlehttp/guzzle": "^7.8.2",
"guzzlehttp/uri-template": "^1.0",
- "laravel/prompts": "^0.3.0",
+ "laravel/prompts": "^0.1.18|^0.2.0|^0.3.0",
"laravel/serializable-closure": "^1.3|^2.0",
- "league/commonmark": "^2.8.1",
+ "league/commonmark": "^2.7",
"league/flysystem": "^3.25.1",
"league/flysystem-local": "^3.25.1",
"league/uri": "^7.5.1",
"monolog/monolog": "^3.0",
- "nesbot/carbon": "^3.8.4",
+ "nesbot/carbon": "^2.72.6|^3.8.4",
"nunomaduro/termwind": "^2.0",
"php": "^8.2",
"psr/container": "^1.1.1|^2.0.1",
"psr/log": "^1.0|^2.0|^3.0",
"psr/simple-cache": "^1.0|^2.0|^3.0",
"ramsey/uuid": "^4.7",
- "symfony/console": "^7.2.0",
- "symfony/error-handler": "^7.2.0",
- "symfony/finder": "^7.2.0",
+ "symfony/console": "^7.0.3",
+ "symfony/error-handler": "^7.0.3",
+ "symfony/finder": "^7.0.3",
"symfony/http-foundation": "^7.2.0",
- "symfony/http-kernel": "^7.2.0",
- "symfony/mailer": "^7.2.0",
- "symfony/mime": "^7.2.0",
- "symfony/polyfill-php83": "^1.33",
- "symfony/polyfill-php84": "^1.33",
- "symfony/polyfill-php85": "^1.33",
- "symfony/process": "^7.2.0",
- "symfony/routing": "^7.2.0",
- "symfony/uid": "^7.2.0",
- "symfony/var-dumper": "^7.2.0",
+ "symfony/http-kernel": "^7.0.3",
+ "symfony/mailer": "^7.0.3",
+ "symfony/mime": "^7.0.3",
+ "symfony/polyfill-php83": "^1.31",
+ "symfony/process": "^7.0.3",
+ "symfony/routing": "^7.0.3",
+ "symfony/uid": "^7.0.3",
+ "symfony/var-dumper": "^7.0.3",
"tijsverkoyen/css-to-inline-styles": "^2.2.5",
"vlucas/phpdotenv": "^5.6.1",
"voku/portable-ascii": "^2.0.2"
@@ -3042,7 +3040,6 @@
"illuminate/filesystem": "self.version",
"illuminate/hashing": "self.version",
"illuminate/http": "self.version",
- "illuminate/json-schema": "self.version",
"illuminate/log": "self.version",
"illuminate/macroable": "self.version",
"illuminate/mail": "self.version",
@@ -3052,7 +3049,6 @@
"illuminate/process": "self.version",
"illuminate/queue": "self.version",
"illuminate/redis": "self.version",
- "illuminate/reflection": "self.version",
"illuminate/routing": "self.version",
"illuminate/session": "self.version",
"illuminate/support": "self.version",
@@ -3076,18 +3072,17 @@
"league/flysystem-read-only": "^3.25.1",
"league/flysystem-sftp-v3": "^3.25.1",
"mockery/mockery": "^1.6.10",
- "opis/json-schema": "^2.4.1",
- "orchestra/testbench-core": "^10.9.0",
- "pda/pheanstalk": "^5.0.6|^7.0.0",
+ "orchestra/testbench-core": "^9.18.0",
+ "pda/pheanstalk": "^5.0.6",
"php-http/discovery": "^1.15",
- "phpstan/phpstan": "^2.1.41",
- "phpunit/phpunit": "^10.5.35|^11.5.3|^12.0.1",
- "predis/predis": "^2.3|^3.0",
- "resend/resend-php": "^0.10.0|^1.0",
- "symfony/cache": "^7.2.0",
- "symfony/http-client": "^7.2.0",
- "symfony/psr-http-message-bridge": "^7.2.0",
- "symfony/translation": "^7.2.0"
+ "phpstan/phpstan": "2.1.41",
+ "phpunit/phpunit": "^10.5.35|^11.3.6|^12.0.1",
+ "predis/predis": "^2.3",
+ "resend/resend-php": "^0.10.0",
+ "symfony/cache": "^7.0.3",
+ "symfony/http-client": "^7.0.3",
+ "symfony/psr-http-message-bridge": "^7.0.3",
+ "symfony/translation": "^7.0.3"
},
"suggest": {
"ably/ably-php": "Required to use the Ably broadcast driver (^1.0).",
@@ -3102,7 +3097,7 @@
"ext-pdo": "Required to use all database features.",
"ext-posix": "Required to use all features of the queue worker.",
"ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0|^6.0).",
- "fakerphp/faker": "Required to generate fake data using the fake() helper (^1.23).",
+ "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).",
"filp/whoops": "Required for friendly error pages in development (^2.14.3).",
"laravel/tinker": "Required to use the tinker console command (^2.0).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.25.1).",
@@ -3113,22 +3108,22 @@
"mockery/mockery": "Required to use mocking (^1.6).",
"pda/pheanstalk": "Required to use the beanstalk queue driver (^5.0).",
"php-http/discovery": "Required to use PSR-7 bridging features (^1.15).",
- "phpunit/phpunit": "Required to use assertions and run tests (^10.5.35|^11.5.3|^12.0.1).",
- "predis/predis": "Required to use the predis connector (^2.3|^3.0).",
+ "phpunit/phpunit": "Required to use assertions and run tests (^10.5.35|^11.3.6|^12.0.1).",
+ "predis/predis": "Required to use the predis connector (^2.3).",
"psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).",
"pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).",
- "resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0|^1.0).",
- "symfony/cache": "Required to PSR-6 cache bridge (^7.2).",
- "symfony/filesystem": "Required to enable support for relative symbolic links (^7.2).",
- "symfony/http-client": "Required to enable support for the Symfony API mail transports (^7.2).",
- "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^7.2).",
- "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^7.2).",
- "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^7.2)."
+ "resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0).",
+ "symfony/cache": "Required to PSR-6 cache bridge (^7.0).",
+ "symfony/filesystem": "Required to enable support for relative symbolic links (^7.0).",
+ "symfony/http-client": "Required to enable support for the Symfony API mail transports (^7.0).",
+ "symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^7.0).",
+ "symfony/postmark-mailer": "Required to enable support for the Postmark mail transport (^7.0).",
+ "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^7.0)."
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "12.x-dev"
+ "dev-master": "11.x-dev"
}
},
"autoload": {
@@ -3139,7 +3134,6 @@
"src/Illuminate/Filesystem/functions.php",
"src/Illuminate/Foundation/helpers.php",
"src/Illuminate/Log/functions.php",
- "src/Illuminate/Reflection/helpers.php",
"src/Illuminate/Support/functions.php",
"src/Illuminate/Support/helpers.php"
],
@@ -3148,8 +3142,7 @@
"Illuminate\\Support\\": [
"src/Illuminate/Macroable/",
"src/Illuminate/Collections/",
- "src/Illuminate/Conditionable/",
- "src/Illuminate/Reflection/"
+ "src/Illuminate/Conditionable/"
]
}
},
@@ -3173,7 +3166,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
- "time": "2026-03-26T14:51:54+00:00"
+ "time": "2026-03-26T14:54:53+00:00"
},
{
"name": "laravel/prompts",
@@ -4420,27 +4413,27 @@
},
{
"name": "mongodb/laravel-mongodb",
- "version": "5.7.1",
+ "version": "5.1.1",
"source": {
"type": "git",
- "url": "https://github.com/mongodb/laravel-mongodb",
- "reference": "6e371e8e6deb9193f99a84c578e6c9d0a960e43a"
+ "url": "https://github.com/mongodb/laravel-mongodb.git",
+ "reference": "cc7e5ffd0e8e3a9acfebd7aa5a5aabac2fc5eac4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/mongodb/laravel-mongodb/zipball/6e371e8e6deb9193f99a84c578e6c9d0a960e43a",
- "reference": "6e371e8e6deb9193f99a84c578e6c9d0a960e43a",
+ "url": "https://api.github.com/repos/mongodb/laravel-mongodb/zipball/cc7e5ffd0e8e3a9acfebd7aa5a5aabac2fc5eac4",
+ "reference": "cc7e5ffd0e8e3a9acfebd7aa5a5aabac2fc5eac4",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2.0.0",
- "ext-mongodb": "^1.21|^2",
- "illuminate/cache": "^10.36|^11|^12|^13.0",
- "illuminate/container": "^10.0|^11|^12|^13.0",
- "illuminate/database": "^10.30|^11|^12|^13.0",
- "illuminate/events": "^10.0|^11|^12|^13.0",
- "illuminate/support": "^10.0|^11|^12|^13.0",
- "mongodb/mongodb": "^1.21|^2",
+ "ext-mongodb": "^1.15",
+ "illuminate/cache": "^10.36|^11",
+ "illuminate/container": "^10.0|^11",
+ "illuminate/database": "^10.30|^11",
+ "illuminate/events": "^10.0|^11",
+ "illuminate/support": "^10.0|^11",
+ "mongodb/mongodb": "^1.18",
"php": "^8.1"
},
"conflict": {
@@ -4450,19 +4443,20 @@
"jenssegers/mongodb": "self.version"
},
"require-dev": {
- "doctrine/coding-standard": "^12.0",
- "laravel/scout": "^10.3",
+ "doctrine/coding-standard": "12.0.x-dev",
"league/flysystem-gridfs": "^3.28",
"league/flysystem-read-only": "^3.0",
"mockery/mockery": "^1.4.4",
- "orchestra/testbench": "^8.0|^9.0|^10.0|^11.0",
- "phpstan/phpstan": "^1.10|^2.1",
- "phpunit/phpunit": "^10.3|^11.5.3|^12.5.12",
- "rector/rector": "^1.2|^2.3",
- "spatie/laravel-query-builder": "^5.6|^6"
+ "mongodb/builder": "^0.2",
+ "orchestra/testbench": "^8.0|^9.0",
+ "phpstan/phpstan": "^1.10",
+ "phpunit/phpunit": "^10.3",
+ "rector/rector": "^1.2",
+ "spatie/laravel-query-builder": "^5.6"
},
"suggest": {
- "league/flysystem-gridfs": "Filesystem storage in MongoDB with GridFS"
+ "league/flysystem-gridfs": "Filesystem storage in MongoDB with GridFS",
+ "mongodb/builder": "Provides a fluent aggregation builder for MongoDB pipelines"
},
"type": "library",
"extra": {
@@ -4488,11 +4482,6 @@
"email": "andreas.braun@mongodb.com",
"role": "Leader"
},
- {
- "name": "Pauline Vos",
- "email": "pauline.vos@mongodb.com",
- "role": "Maintainer"
- },
{
"name": "Jérôme Tamarelle",
"email": "jerome.tamarelle@mongodb.com",
@@ -4521,40 +4510,41 @@
],
"support": {
"issues": "https://www.mongodb.com/support",
- "security": "https://www.mongodb.com/security"
+ "security": "https://www.mongodb.com/security",
+ "source": "https://github.com/mongodb/laravel-mongodb/tree/5.1.1"
},
- "time": "2026-04-15T12:18:12+00:00"
+ "time": "2025-01-06T09:22:28+00:00"
},
{
"name": "mongodb/mongodb",
- "version": "2.2.0",
+ "version": "1.20.0",
"source": {
"type": "git",
"url": "https://github.com/mongodb/mongo-php-library.git",
- "reference": "bbb13f969e37e047fd822527543df55fdc1c9298"
+ "reference": "75da9ea3b63d97b05e0e8648d8c09a17bc54c0b6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/bbb13f969e37e047fd822527543df55fdc1c9298",
- "reference": "bbb13f969e37e047fd822527543df55fdc1c9298",
+ "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/75da9ea3b63d97b05e0e8648d8c09a17bc54c0b6",
+ "reference": "75da9ea3b63d97b05e0e8648d8c09a17bc54c0b6",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2.0",
- "ext-mongodb": "^2.2",
- "php": "^8.1",
+ "ext-hash": "*",
+ "ext-json": "*",
+ "ext-mongodb": "^1.20.0",
+ "php": "^7.4 || ^8.0",
"psr/log": "^1.1.4|^2|^3",
- "symfony/polyfill-php85": "^1.32"
- },
- "replace": {
- "mongodb/builder": "*"
+ "symfony/polyfill-php80": "^1.27",
+ "symfony/polyfill-php81": "^1.27"
},
"require-dev": {
"doctrine/coding-standard": "^12.0",
- "phpunit/phpunit": "^10.5.35",
- "rector/rector": "^2.3.4",
+ "rector/rector": "^1.1",
"squizlabs/php_codesniffer": "^3.7",
- "vimeo/psalm": "~6.14.2"
+ "symfony/phpunit-bridge": "^5.2",
+ "vimeo/psalm": "^5.13"
},
"type": "library",
"extra": {
@@ -4598,9 +4588,9 @@
],
"support": {
"issues": "https://github.com/mongodb/mongo-php-library/issues",
- "source": "https://github.com/mongodb/mongo-php-library/tree/2.2.0"
+ "source": "https://github.com/mongodb/mongo-php-library/tree/1.20.0"
},
- "time": "2026-02-11T11:39:56+00:00"
+ "time": "2024-09-25T12:54:08+00:00"
},
{
"name": "monolog/monolog",
@@ -6579,34 +6569,31 @@
},
{
"name": "spatie/laravel-permission",
- "version": "7.3.0",
+ "version": "6.25.0",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-permission.git",
- "reference": "5272955119759cd217e84e8bbac19443c305ebc3"
+ "reference": "d7d4cb0d58616722f1afc90e0484e4825155b9b3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/5272955119759cd217e84e8bbac19443c305ebc3",
- "reference": "5272955119759cd217e84e8bbac19443c305ebc3",
+ "url": "https://api.github.com/repos/spatie/laravel-permission/zipball/d7d4cb0d58616722f1afc90e0484e4825155b9b3",
+ "reference": "d7d4cb0d58616722f1afc90e0484e4825155b9b3",
"shasum": ""
},
"require": {
- "illuminate/auth": "^12.0|^13.0",
- "illuminate/container": "^12.0|^13.0",
- "illuminate/contracts": "^12.0|^13.0",
- "illuminate/database": "^12.0|^13.0",
- "php": "^8.3",
- "spatie/laravel-package-tools": "^1.0"
+ "illuminate/auth": "^8.12|^9.0|^10.0|^11.0|^12.0|^13.0",
+ "illuminate/container": "^8.12|^9.0|^10.0|^11.0|^12.0|^13.0",
+ "illuminate/contracts": "^8.12|^9.0|^10.0|^11.0|^12.0|^13.0",
+ "illuminate/database": "^8.12|^9.0|^10.0|^11.0|^12.0|^13.0",
+ "php": "^8.0"
},
"require-dev": {
- "larastan/larastan": "^3.9",
- "laravel/passport": "^13.0",
+ "laravel/passport": "^11.0|^12.0|^13.0",
"laravel/pint": "^1.0",
- "orchestra/testbench": "^10.0|^11.0",
- "pestphp/pest": "^3.0|^4.0",
- "pestphp/pest-plugin-laravel": "^3.0|^4.1",
- "phpstan/phpstan": "^2.1"
+ "orchestra/testbench": "^6.23|^7.0|^8.0|^9.0|^10.0|^11.0",
+ "pestphp/pest": "^2.0|^3.0|^4.0",
+ "pestphp/pest-plugin-laravel": "^2.0|^3.0|^4.0"
},
"type": "library",
"extra": {
@@ -6616,8 +6603,8 @@
]
},
"branch-alias": {
- "dev-main": "7.x-dev",
- "dev-master": "7.x-dev"
+ "dev-main": "6.x-dev",
+ "dev-master": "6.x-dev"
}
},
"autoload": {
@@ -6640,7 +6627,7 @@
"role": "Developer"
}
],
- "description": "Permission handling for Laravel 12 and up",
+ "description": "Permission handling for Laravel 8.0 and up",
"homepage": "https://github.com/spatie/laravel-permission",
"keywords": [
"acl",
@@ -6654,7 +6641,7 @@
],
"support": {
"issues": "https://github.com/spatie/laravel-permission/issues",
- "source": "https://github.com/spatie/laravel-permission/tree/7.3.0"
+ "source": "https://github.com/spatie/laravel-permission/tree/6.25.0"
},
"funding": [
{
@@ -6662,7 +6649,7 @@
"type": "github"
}
],
- "time": "2026-04-07T15:19:42+00:00"
+ "time": "2026-03-17T22:46:46+00:00"
},
{
"name": "spatie/shiki-php",
@@ -6729,6 +6716,66 @@
],
"time": "2026-02-01T09:30:04+00:00"
},
+ {
+ "name": "spatie/simple-excel",
+ "version": "3.9.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spatie/simple-excel.git",
+ "reference": "67095053ff6037284fd213abd84259ea4faca7aa"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spatie/simple-excel/zipball/67095053ff6037284fd213abd84259ea4faca7aa",
+ "reference": "67095053ff6037284fd213abd84259ea4faca7aa",
+ "shasum": ""
+ },
+ "require": {
+ "illuminate/support": "^9.0|^10.0|^11.0|^12.0|^13.0",
+ "openspout/openspout": "^4.30",
+ "php": "^8.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.4|^10.5|^11.0|^12.0",
+ "spatie/pest-plugin-snapshots": "^1.1|^2.1",
+ "spatie/phpunit-snapshot-assertions": "^4.0|^5.1",
+ "spatie/temporary-directory": "^1.2|^2.2"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Spatie\\SimpleExcel\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Freek Van der Herten",
+ "email": "freek@spatie.be",
+ "homepage": "https://spatie.be",
+ "role": "Developer"
+ }
+ ],
+ "description": "Read and write simple Excel and CSV files",
+ "homepage": "https://github.com/spatie/simple-excel",
+ "keywords": [
+ "simple-excel",
+ "spatie"
+ ],
+ "support": {
+ "source": "https://github.com/spatie/simple-excel/tree/3.9.0"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/spatie",
+ "type": "github"
+ }
+ ],
+ "time": "2026-02-22T08:49:24+00:00"
+ },
{
"name": "stevebauman/location",
"version": "v7.6.3",
@@ -8451,6 +8498,86 @@
],
"time": "2026-04-10T16:19:22+00:00"
},
+ {
+ "name": "symfony/polyfill-php81",
+ "version": "v1.36.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php81.git",
+ "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
+ "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2"
+ },
+ "type": "library",
+ "extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php81\\": ""
+ },
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php81/tree/v1.36.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2024-09-09T11:45:10+00:00"
+ },
{
"name": "symfony/polyfill-php83",
"version": "v1.36.0",
@@ -8531,86 +8658,6 @@
],
"time": "2026-04-10T17:25:58+00:00"
},
- {
- "name": "symfony/polyfill-php84",
- "version": "v1.36.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php84.git",
- "reference": "88486db2c389b290bf87ff1de7ebc1e13e42bb06"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/88486db2c389b290bf87ff1de7ebc1e13e42bb06",
- "reference": "88486db2c389b290bf87ff1de7ebc1e13e42bb06",
- "shasum": ""
- },
- "require": {
- "php": ">=7.2"
- },
- "type": "library",
- "extra": {
- "thanks": {
- "url": "https://github.com/symfony/polyfill",
- "name": "symfony/polyfill"
- }
- },
- "autoload": {
- "files": [
- "bootstrap.php"
- ],
- "psr-4": {
- "Symfony\\Polyfill\\Php84\\": ""
- },
- "classmap": [
- "Resources/stubs"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 8.4+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php84/tree/v1.36.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://github.com/nicolas-grekas",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2026-04-10T18:47:49+00:00"
- },
{
"name": "symfony/polyfill-php85",
"version": "v1.36.0",
@@ -13533,12 +13580,12 @@
],
"aliases": [],
"minimum-stability": "stable",
- "stability-flags": [],
+ "stability-flags": {},
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
"php": "^8.3"
},
- "platform-dev": [],
- "plugin-api-version": "2.6.0"
+ "platform-dev": {},
+ "plugin-api-version": "2.9.0"
}
diff --git a/storage/testfiles/Anagrafica Giocatori per Hermann 260325.xlsx b/storage/testfiles/Anagrafica Giocatori per Hermann 260325.xlsx
new file mode 100644
index 00000000..485f0a1e
Binary files /dev/null and b/storage/testfiles/Anagrafica Giocatori per Hermann 260325.xlsx differ
diff --git a/storage/testfiles/Risultati per Evento 260417.xlsx b/storage/testfiles/Risultati per Evento 260417.xlsx
new file mode 100644
index 00000000..58216252
Binary files /dev/null and b/storage/testfiles/Risultati per Evento 260417.xlsx differ