This commit is contained in:
salam committed 2026-07-30 18:57:44 +02:00
1 parent c394f7afba
commit 44af3f2caa
21 files changed
+222 -151

No files matched your search

@@ -2,7 +2,7 @@
namespace App\Actions;
use App\Models\CompetitionGroup;
use App\Models\SofaScoreTournament;
use App\Models\StatisticFixtures;
class LoadStatisticFixturesLeaguesOptions
@@ -13,10 +13,10 @@ class LoadStatisticFixturesLeaguesOptions
->groupBy('league_id')
->pluck('league_id')->toArray();
$cnt = CompetitionGroup::with('country')->whereIn('id', $res)->get();
$cnt = SofaScoreTournament::with('sofascore_category')->whereIn('tournament_id', $res)->get();
$arr = [];
foreach ($cnt as $val) {
$arr[$val->id] = $val->country->name . ' ' . $val->name;
$arr[$val->tournament_id] = $val->sofascore_category->name . ' ' . $val->name;
}
asort($arr);
@@ -6,7 +6,7 @@ use App\Models\StatisticFixtures;
class LoadStatisticFixturesMatchOptions
{
public static function load($league_id)
public static function load(int $league_id)
{
if (! $league_id) {
return [];
@@ -15,7 +15,7 @@ class LoadStatisticFixturesMatchOptions
$arr = [];
foreach ($res as $val) {
$arr[$val->id] = $val->starttime->format('Y-m-d H:i') . ' - ' . $val->home->name . ' vs ' . $val->away->name;
$arr[$val->id] = $val->starttime->format('Y-m-d H:i') . ' - ' . $val->home->ss_team_name . ' vs ' . $val->away->ss_team_name;
}
return $arr;
+15 -5
View File
@@ -3,6 +3,7 @@
namespace App\Actions\Selections;
use App\Models\SofaScorePlayerPerSeason;
use App\Models\SofaScorePlayerPosition;
use App\Models\StatistikoEvent;
use Filament\Schemas\Components\Utilities\Get;
@@ -17,6 +18,7 @@ class LoadPlayer
$team_position = $get('team_position');
$season_or_date = $filter['season_or_date'] ?? 'season';
if ($season_or_date != 'season' or !count($season)) {
$season[] = date('Y');
}
@@ -35,8 +37,10 @@ class LoadPlayer
$matches_count = count($matches);
$ss_positions_map = SofaScorePlayerPosition::pluck('name', 'ss_code')->toArray();
// needs to run daily for pre-calculaton
$player = SofaScorePlayerPerSeason::with('details')->where('tx_team_id', $team_id)->whereIn('season', $season)->get();
$player = SofaScorePlayerPerSeason::with('details')->where('ss_team_id', $team_id)->whereIn('season', $season)->get();
$arr = [];
foreach ($player as $val) {
@@ -44,25 +48,31 @@ class LoadPlayer
switch ($team_position) {
case 'home':
$events_played = $val->events_played_home;
$minues_played = $val->minutes_played_home;
break;
case 'away':
$events_played = $val->events_played_away;
$minues_played = $val->minutes_played_away;
break;
default:
$events_played = $val->events_played_home + $val->events_played_away;
$minues_played = $val->minutes_played_home + $val->minutes_played_home;
break;
}
$colorlevel = round($matches_count / 3);
$position = strtoupper($val->details->position);
$time_played = round($minues_played / 60) . ':';
$time_played .= $minues_played % 60;
$position = $ss_positions_map[$val->details->position] ?? 'No Specific Position';
if ($events_played < $colorlevel) {
$arr[$position][$val->ss_player_id] = '<span class="text-red-600 dark:text-red-500">' . $val->details->name . ' (' . $events_played . ')</span>';
$arr[$position][$val->ss_player_id] = '<span class="text-red-600 dark:text-red-500">' . $val->details->player_name . '(' . $events_played . ') (' . $time_played . ')</span>';
} else if ($events_played < $colorlevel * 2) {
$arr[$position][$val->ss_player_id] = '<span class="text-blue-600 dark:text-blue-500">' . $val->details->name . ' (' . $events_played . ')</span>';
$arr[$position][$val->ss_player_id] = '<span class="text-blue-600 dark:text-blue-500">' . $val->details->player_name . ' (' . $events_played . ') (' . $time_played . '';
} else {
$arr[$position][$val->ss_player_id] = '<span class="text-green-600 dark:text-green-500">' . $val->details->name . ' (' . $events_played . ')</span>';
$arr[$position][$val->ss_player_id] = '<span class="text-green-600 dark:text-green-500">' . $val->details->player_name . ' (' . $events_played . ') (' . $time_played . ')</span>';
}
}
return $arr;
+20
View File
@@ -0,0 +1,20 @@
<?php
namespace App\Actions\Selections;
use App\Models\SofaScorePlayerPosition;
class LoadPosition
{
public static function load()
{
$res = SofaScorePlayerPosition::get();
$arr = [];
foreach ($res as $val) {
$arr[$val->ss_code] = $val->season;
}
return $arr;
}
}
+1 -1
View File
@@ -6,7 +6,7 @@ use App\Models\StatistikoEvent;
class LoadSeasons
{
public static function load($league_id)
public static function load(int $league_id)
{
// $res = CompetitionGroup::with('country')->where('id', $league_id)->first();
// $season_mode = $res->country->season_mode;