From 9a67b709f62c3c7c84117d10ac38841fb668eeb8 Mon Sep 17 00:00:00 2001 From: EwelinaSkrzypacz Date: Thu, 19 Feb 2026 10:10:49 +0100 Subject: [PATCH 1/2] - fix summary birthday date on Slack --- app/Actions/Slack/GenerateDailySummaryAction.php | 4 ++-- app/Actions/Slack/UpdateDailySummaryAction.php | 4 ++-- app/Domain/DailySummaryRetriever.php | 4 ++-- app/Domain/DashboardAggregator.php | 2 +- app/Models/User.php | 10 +++++----- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/Actions/Slack/GenerateDailySummaryAction.php b/app/Actions/Slack/GenerateDailySummaryAction.php index 81c0abc9..a7946c45 100644 --- a/app/Actions/Slack/GenerateDailySummaryAction.php +++ b/app/Actions/Slack/GenerateDailySummaryAction.php @@ -28,10 +28,10 @@ public function execute(Carbon $day): DailySummary "id" => $request->user->id, "name" => $request->user->profile->fullName, ])->toArray(), - "birthdays" => $this->dailySummaryRetriever->getUpcomingBirthdays()->map(fn(User $user) => [ + "birthdays" => $this->dailySummaryRetriever->getUpcomingBirthdays($day)->map(fn(User $user) => [ "id" => $user->id, "name" => $user->profile->fullName, - "when" => $user->upcomingBirthday()->toDateTimeString(), + "when" => $user->upcomingBirthday($day)->toDateTimeString(), ])->toArray(), ]); diff --git a/app/Actions/Slack/UpdateDailySummaryAction.php b/app/Actions/Slack/UpdateDailySummaryAction.php index 75e3e78a..e2125f44 100644 --- a/app/Actions/Slack/UpdateDailySummaryAction.php +++ b/app/Actions/Slack/UpdateDailySummaryAction.php @@ -33,10 +33,10 @@ public function execute(DailySummary $dailySummary): DailySummary "pending" => $request->state->equals(...VacationRequestStatesRetriever::pendingStates()), ], )->toArray(), - "birthdays" => $this->dailySummaryRetriever->getUpcomingBirthdays()->map(fn(User $user) => [ + "birthdays" => $this->dailySummaryRetriever->getUpcomingBirthdays($dailySummary->day)->map(fn(User $user) => [ "id" => $user->id, "name" => $user->profile->fullName, - "when" => $user->upcomingBirthday()->toDateTimeString(), + "when" => $user->upcomingBirthday($dailySummary->day)->toDateTimeString(), ])->toArray(), ]); diff --git a/app/Domain/DailySummaryRetriever.php b/app/Domain/DailySummaryRetriever.php index 11037d4c..dc37c4eb 100644 --- a/app/Domain/DailySummaryRetriever.php +++ b/app/Domain/DailySummaryRetriever.php @@ -92,12 +92,12 @@ public function getUpcomingRemoteDays(Carbon $date): Collection /** * @return Collection */ - public function getUpcomingBirthdays(?int $limit = null): Collection + public function getUpcomingBirthdays(Carbon $date, ?int $limit = null): Collection { $users = User::query() ->whereRelation("profile", fn(Builder $query): Builder => $query->whereNotNull("birthday")) ->get() - ->sortBy(fn(User $user): int => (int)$user->upcomingBirthday()->diffInDays(Carbon::today()), descending: true); + ->sortBy(fn(User $user): int => (int)$user->upcomingBirthday($date)->diffInDays($date), descending: true); if ($limit) { return $users->take($limit); diff --git a/app/Domain/DashboardAggregator.php b/app/Domain/DashboardAggregator.php index f6c09a26..0b7a374c 100644 --- a/app/Domain/DashboardAggregator.php +++ b/app/Domain/DashboardAggregator.php @@ -125,7 +125,7 @@ public function aggregateUpcomingData(): array $upcomingAbsences = $this->dailySummaryRetriever->getUpcomingAbsences($today); $upcomingRemoteDays = $this->dailySummaryRetriever->getUpcomingRemoteDays($today); - $upcomingBirthdays = $this->dailySummaryRetriever->getUpcomingBirthdays(3); + $upcomingBirthdays = $this->dailySummaryRetriever->getUpcomingBirthdays($today, 3); $upcomingHolidays = Holiday::query() ->whereDate("date", ">=", $today) diff --git a/app/Models/User.php b/app/Models/User.php index 26c32163..ac2f639e 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -201,18 +201,18 @@ public function scopeStatus(Builder $query, ?string $status): Builder }; } - public function upcomingBirthday(): ?Carbon + public function upcomingBirthday(?Carbon $date = null): ?Carbon { if (!$this->profile->birthday) { return null; } - $today = Carbon::today(); + $date ??= Carbon::today(); - $birthday = $this->profile->birthday->setYear($today->year); + $birthday = $this->profile->birthday->setYear($date->year); - if (((int)$birthday->diffInDays()) > 0) { - $birthday->setYear($today->year + 1); + if (((int)$birthday->diffInDays($date)) > 0) { + $birthday->setYear($date->year + 1); } return $birthday; From ed317ff3596b7735944b783cab2dbfce435fb500 Mon Sep 17 00:00:00 2001 From: EwelinaSkrzypacz Date: Thu, 19 Feb 2026 10:47:44 +0100 Subject: [PATCH 2/2] - fix docker version on production --- environment/prod/app/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environment/prod/app/Dockerfile b/environment/prod/app/Dockerfile index 17145004..f7133419 100644 --- a/environment/prod/app/Dockerfile +++ b/environment/prod/app/Dockerfile @@ -1,5 +1,5 @@ # renovate: datasource=docker depName=php -ARG PHP_VERSION=8.4.16 +ARG PHP_VERSION=8.4.11 ARG PHP_MODULE_NAME=php${PHP_VERSION} # https://github.com/nginx/unit/tags ARG UNIT_VERSION=1.34.1-1