From b6fe4cea641309a4fda2c3a74e958408c87c4d3a Mon Sep 17 00:00:00 2001
From: Rias
Date: Thu, 4 Jan 2024 09:26:53 +0100
Subject: [PATCH 1/6] Remove apple login (#286)
* Remove apple login
* Fix styling
---------
Co-authored-by: riasvdv
---
README.md | 39 --------
.../Controllers/AppleSocialiteController.php | 74 ---------------
app/Http/Controllers/ProfileController.php | 11 ---
app/Providers/AuthServiceProvider.php | 9 --
.../Socialite/SignInWithAppleProvider.php | 89 -------------------
config/services.php | 6 --
...5234_remove_apple_id_column_from_users.php | 14 +++
resources/views/auth/appleCallback.blade.php | 22 -----
resources/views/auth/login.blade.php | 10 ---
.../views/front/profile/profile.blade.php | 18 ----
routes/web.php | 6 --
11 files changed, 14 insertions(+), 284 deletions(-)
delete mode 100644 app/Http/Controllers/AppleSocialiteController.php
delete mode 100644 app/Support/Socialite/SignInWithAppleProvider.php
create mode 100644 database/migrations/2024_01_03_165234_remove_apple_id_column_from_users.php
delete mode 100644 resources/views/auth/appleCallback.blade.php
diff --git a/README.md b/README.md
index 9f3f3d75e..b89d804c9 100644
--- a/README.md
+++ b/README.md
@@ -28,45 +28,6 @@ If you'd like to reuse or repost something, feel free to hit us up at info@spati
This project and the Laravel framework are open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).
-## Apple sign-in
-
-Every 6 months, the token for Sign-in with Apple expires, this can be renewed using the "Spatie apple login - private key" in our team's 1Password vault and the following ruby script:
-
-```ruby
-require 'jwt'
-
-key_file = 'key.txt'
-team_id = '' # Found in the top right when signed in on the Apple developer site
-client_id = 'be.spatie.website'
-key_id = '' # The key ID, found here https://developer.apple.com/account/resources/authkeys/list
-
-ecdsa_key = OpenSSL::PKey::EC.new IO.read key_file
-
-headers = {
-'kid' => key_id
-}
-
-claims = {
- 'iss' => team_id,
- 'iat' => Time.now.to_i,
- 'exp' => Time.now.to_i + 86400*180,
- 'aud' => 'https://appleid.apple.com',
- 'sub' => client_id,
-}
-
-token = JWT.encode claims, ecdsa_key, 'ES256', headers
-
-puts token
-```
-
-Then execute it using
-
-```shell
-ruby client_secret.rb
-```
-
-Which gives you a new token that is valid for 6 months.
-
## GeoIP lookup
We use Maxmind's geo IP dataset to provide PPP based on IP location. This is built using the excellent [laravel-geoip](https://lyften.com/projects/laravel-geoip) package.
diff --git a/app/Http/Controllers/AppleSocialiteController.php b/app/Http/Controllers/AppleSocialiteController.php
deleted file mode 100644
index ccc894117..000000000
--- a/app/Http/Controllers/AppleSocialiteController.php
+++ /dev/null
@@ -1,74 +0,0 @@
-reflash();
-
- if (auth()->check()) {
- /*
- * If somebody is already logged in, the user wants to
- * connect their Apple account. Remember who's logged in.
- */
- session()->put('auth-user-id', auth()->user()->id);
- }
-
- return Socialite::driver('apple')->redirect();
- }
-
- public function callback(): View
- {
- session()->replace(json_decode(request('state'), true));
-
- $appleUser = Socialite::driver('apple')->user();
-
- $user = $this->retrieveUser($appleUser);
-
- $user->update([
- 'apple_id' => $appleUser->getId(),
- ]);
-
- auth()->login($user, true);
-
- flash()->success('You have been logged in');
-
- return view('auth.appleCallback');
- }
-
- protected function retrieveUser(SocialiteUser $appleUser): User
- {
- if (session('auth-user-id')) {
- /*
- * If there already was a local user created for the email used
- * on Apple, then let's use that local user
- */
- return User::find(session('auth-user-id'));
- }
-
- /*
- * Somebody tries to login via Apple that already
- * has an account with this email.
- * We'll link this Apple profile to this account.
- */
- if ($appleUser->getEmail() && $user = User::where('email', $appleUser->getEmail())->first()) {
- return $user;
- }
-
- return User::firstOrCreate([
- 'apple_id' => $appleUser->getId(),
- ], [
- 'password' => bcrypt(Str::random()),
- 'email' => $appleUser->getEmail(),
- 'name' => $appleUser->getName() ?? $appleUser->getEmail(),
- ]);
- }
-}
diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php
index c8265567c..d3d6cc12e 100644
--- a/app/Http/Controllers/ProfileController.php
+++ b/app/Http/Controllers/ProfileController.php
@@ -45,17 +45,6 @@ public function disconnect(): RedirectResponse
return redirect()->route('profile');
}
- public function disconnectApple(): RedirectResponse
- {
- auth()->user()->update([
- 'apple_id' => null,
- ]);
-
- flash()->success('Apple account disconnected.');
-
- return redirect()->route('profile');
- }
-
public function delete(): RedirectResponse
{
/** @var \App\Models\User $user */
diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php
index 17f254b83..c1b59e589 100644
--- a/app/Providers/AuthServiceProvider.php
+++ b/app/Providers/AuthServiceProvider.php
@@ -3,11 +3,9 @@
namespace App\Providers;
use App\Domain\Shop\Models\License;
-use App\Support\Socialite\SignInWithAppleProvider;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
-use Laravel\Socialite\Facades\Socialite;
class AuthServiceProvider extends ServiceProvider
{
@@ -30,12 +28,5 @@ public function boot(): void
return $license;
});
-
- Socialite::extend('apple', function () {
- return Socialite::buildProvider(
- SignInWithAppleProvider::class,
- config('services.apple'),
- );
- });
}
}
diff --git a/app/Support/Socialite/SignInWithAppleProvider.php b/app/Support/Socialite/SignInWithAppleProvider.php
deleted file mode 100644
index fa18cc4ad..000000000
--- a/app/Support/Socialite/SignInWithAppleProvider.php
+++ /dev/null
@@ -1,89 +0,0 @@
-buildAuthUrlFromBase('https://appleid.apple.com/auth/authorize', $state);
- }
-
- protected function getState()
- {
- return json_encode(Arr::except(session()->all(), ['_flash', '_previous']));
- }
-
- protected function getCodeFields($state = null)
- {
- return array_merge([
- 'client_id' => $this->clientId,
- 'redirect_uri' => $this->redirectUrl,
- 'scope' => $this->formatScopes($this->getScopes(), $this->scopeSeparator),
- 'response_type' => 'code',
- 'response_mode' => 'form_post',
- ], $this->usesState() ? ['state' => $state] : [], $this->parameters);
- }
-
- protected function getTokenUrl()
- {
- return 'https://appleid.apple.com/auth/token';
- }
-
- public function getAccessToken($code)
- {
- $response = $this->getHttpClient()->post($this->getTokenUrl(), [
- 'headers' => [
- 'Authorization' => 'Basic '.base64_encode("{$this->clientId}:{$this->clientSecret}"),
- ],
- 'body' => $this->getTokenFields($code),
- ]);
-
- return json_decode($response->getBody()->getContents(), true)['access_token'];
- }
-
- protected function getUserByToken($token)
- {
- $claims = explode('.', $token)[1];
-
- return json_decode(base64_decode($claims), true);
- }
-
- public function user()
- {
- $response = $this->getAccessTokenResponse($this->getCode());
-
- $user = $this->mapUserToObject(
- $this->getUserByToken(Arr::get($response, 'id_token'))
- );
-
- return $user
- ->setToken(Arr::get($response, 'id_token'))
- ->setRefreshToken(Arr::get($response, 'refresh_token'))
- ->setExpiresIn(Arr::get($response, 'expires_in'));
- }
-
- protected function mapUserToObject(array $user)
- {
- $userDetails = request()->json('user');
-
- if (Arr::has($userDetails, 'name')) {
- $fullName = implode(' ', $user['name'] = $userDetails['name']);
- }
-
- return (new User())->setRaw($user)->map([
- 'id' => $user['sub'],
- 'name' => $fullName ?? null,
- 'email' => $user['email'] ?? null,
- ]);
- }
-}
diff --git a/config/services.php b/config/services.php
index c5fc7ab1f..839d2d884 100644
--- a/config/services.php
+++ b/config/services.php
@@ -78,12 +78,6 @@
'package_training' => env('PROMO_CODE_PACKAGE_TRAINING'),
],
- 'apple' => [
- 'redirect' => env('APPLE_CALLBACK_URL'),
- 'client_id' => env('APPLE_ID'),
- 'client_secret' => env('APPLE_SECRET'),
- ],
-
'mailcoach' => [
'token' => env('MAILCOACH_TOKEN'),
],
diff --git a/database/migrations/2024_01_03_165234_remove_apple_id_column_from_users.php b/database/migrations/2024_01_03_165234_remove_apple_id_column_from_users.php
new file mode 100644
index 000000000..925efe6a3
--- /dev/null
+++ b/database/migrations/2024_01_03_165234_remove_apple_id_column_from_users.php
@@ -0,0 +1,14 @@
+dropColumn('apple_id');
+ });
+ }
+};
diff --git a/resources/views/auth/appleCallback.blade.php b/resources/views/auth/appleCallback.blade.php
deleted file mode 100644
index f60cbdaf4..000000000
--- a/resources/views/auth/appleCallback.blade.php
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
- Logged in using Apple!
-
-
-Redirecting...
-
-
-
diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php
index bb415500f..ef722daff 100644
--- a/resources/views/auth/login.blade.php
+++ b/resources/views/auth/login.blade.php
@@ -44,16 +44,6 @@ function showGitHubAuthWindow() {
-
diff --git a/resources/views/front/profile/profile.blade.php b/resources/views/front/profile/profile.blade.php
index c523e766e..e07a40f37 100644
--- a/resources/views/front/profile/profile.blade.php
+++ b/resources/views/front/profile/profile.blade.php
@@ -29,24 +29,6 @@
Log in without password and check your sponsor status.
@endif
-
diff --git a/routes/web.php b/routes/web.php
index 9a6d8025d..9dc54b0a7 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -7,7 +7,6 @@
use App\Http\Auth\Controllers\ResetPasswordController;
use App\Http\Auth\Controllers\UpdatePasswordController;
use App\Http\Controllers\AfterPaddleBundleSaleController;
-use App\Http\Controllers\AppleSocialiteController;
use App\Http\Controllers\BlogsController;
use App\Http\Controllers\BundlesController;
use App\Http\Controllers\DocsController;
@@ -15,7 +14,6 @@
use App\Http\Controllers\DownloadPurchasableController;
use App\Http\Controllers\DownloadRayController;
use App\Http\Controllers\MusicController;
-use App\Http\Controllers\ReadablePhpController;
use App\Http\Controllers\ShowReleaseNotesController;
use App\Http\Controllers\GitHubSocialiteController;
use App\Http\Controllers\GuidelinesController;
@@ -122,7 +120,6 @@
Route::get('/', [ProfileController::class, 'show'])->name('profile');
Route::put('/', [ProfileController::class, 'update'])->name('profile');
Route::get('disconnect', [ProfileController::class, 'disconnect'])->name('github-disconnect');
- Route::get('disconnect-apple', [ProfileController::class, 'disconnectApple'])->name('apple-disconnect');
Route::delete('/', [ProfileController::class, 'delete'])->name('profile');
Route::get('password', [UpdatePasswordController::class, 'show'])->name('profile.password');
@@ -146,9 +143,6 @@
Route::get('login/github', [GitHubSocialiteController::class, 'redirect'])->name('github-login');
Route::get('login/github/callback', [GitHubSocialiteController::class, 'callback']);
-Route::get('login/apple', [AppleSocialiteController::class, 'redirect'])->name('apple-login');
-Route::post('login/apple', [AppleSocialiteController::class, 'callback']);
-
Route::post('logout', [LogoutController::class, 'logout'])->name('logout');
Route::get('/courses', [CoursesController::class, 'index'])->name('courses.index');
From 60251f8031e503479a070848d4645477c6b2bc0e Mon Sep 17 00:00:00 2001
From: Rias
Date: Fri, 5 Jan 2024 10:22:00 +0100
Subject: [PATCH 2/6] Archive js developer
---
.../vacancies/{ => archive}/javascript-developer.blade.php | 0
.../views/front/pages/vacancies/partials/list.blade.php | 5 -----
2 files changed, 5 deletions(-)
rename resources/views/front/pages/vacancies/{ => archive}/javascript-developer.blade.php (100%)
diff --git a/resources/views/front/pages/vacancies/javascript-developer.blade.php b/resources/views/front/pages/vacancies/archive/javascript-developer.blade.php
similarity index 100%
rename from resources/views/front/pages/vacancies/javascript-developer.blade.php
rename to resources/views/front/pages/vacancies/archive/javascript-developer.blade.php
diff --git a/resources/views/front/pages/vacancies/partials/list.blade.php b/resources/views/front/pages/vacancies/partials/list.blade.php
index 748de8ca8..8f2ffcc42 100644
--- a/resources/views/front/pages/vacancies/partials/list.blade.php
+++ b/resources/views/front/pages/vacancies/partials/list.blade.php
@@ -3,11 +3,6 @@
Why don't you squeeze yourself in?
-
Spontaneous Application
Full-time / Partially remote
From 13704a7966cdb201eb756e43aa68ae650a494ff3 Mon Sep 17 00:00:00 2001
From: Niels Vanpachtenbeke <10651054+Nielsvanpach@users.noreply.github.com>
Date: Thu, 11 Jan 2024 17:14:25 +0100
Subject: [PATCH 3/6] bug fix after work options
if first of the next month is a friday, it was included in the options
---
app/Console/Commands/AfterworkCommand.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/Console/Commands/AfterworkCommand.php b/app/Console/Commands/AfterworkCommand.php
index fbc0b441f..ad232d9a6 100644
--- a/app/Console/Commands/AfterworkCommand.php
+++ b/app/Console/Commands/AfterworkCommand.php
@@ -56,7 +56,7 @@ protected function getDatesForWeekdayInMonth(string $dayName): CarbonPeriod
return new CarbonPeriod(
CarbonImmutable::parse("first {$dayName} of this month"),
CarbonInterval::week(),
- CarbonImmutable::parse("first {$dayName} of next month")
+ CarbonImmutable::parse("first {$dayName} of next month")->subDay(),
);
}
From d7dcfc6c213df77c57549651096272109196033e Mon Sep 17 00:00:00 2001
From: Niels Vanpachtenbeke <10651054+Nielsvanpach@users.noreply.github.com>
Date: Wed, 17 Jan 2024 10:01:24 +0100
Subject: [PATCH 4/6] filter public holidays in belgium
---
app/Console/Commands/AfterworkCommand.php | 9 +++-
composer.json | 1 +
composer.lock | 62 ++++++++++++++++++++++-
3 files changed, 70 insertions(+), 2 deletions(-)
diff --git a/app/Console/Commands/AfterworkCommand.php b/app/Console/Commands/AfterworkCommand.php
index ad232d9a6..d87446fce 100644
--- a/app/Console/Commands/AfterworkCommand.php
+++ b/app/Console/Commands/AfterworkCommand.php
@@ -6,6 +6,7 @@
use Carbon\CarbonInterval;
use Carbon\CarbonPeriod;
use Illuminate\Console\Command;
+use Spatie\Holidays\Holidays;
use Spatie\SlackAlerts\Facades\SlackAlert;
class AfterworkCommand extends Command
@@ -20,7 +21,9 @@ public function handle(): void
->map(fn (string $option, int $index) => $this->addEmoji($option, $index))
->implode("\n");
- SlackAlert::message("Who is in for an afterwork drink? :beer: :cup_with_straw:\n{$options}");
+ $this->info("Poll options:\n{$options}");
+
+ SlackAlert::message("Who is in for an afterwork drink? :beer:\n{$options}");
$this->info('Poll posted to Slack');
}
@@ -33,6 +36,10 @@ protected function generatePollOptions(): array
$datesInMonth = $this->getDatesForWeekdayInMonth($weekday);
foreach ($datesInMonth as $date) {
+ if (Holidays::new()->isHoliday($date, 'be')) {
+ continue;
+ }
+
$options[$date->day] = "{$date->shortDayName} {$date->day}/{$date->month}";
}
}
diff --git a/composer.json b/composer.json
index 6abdd2943..3cfc78e0e 100644
--- a/composer.json
+++ b/composer.json
@@ -52,6 +52,7 @@
"spatie/crypto": "^2.0.1",
"spatie/eloquent-sortable": "^4.0.1",
"spatie/fork": "^1.1.2",
+ "spatie/holidays": "^0.0.1",
"spatie/laravel-artisan-dispatchable": "^1.3",
"spatie/laravel-backup": "^8.1.5",
"spatie/laravel-comments": "^1.3",
diff --git a/composer.lock b/composer.lock
index eaf4b93ae..97f75b52c 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": "a56ae13d9974412021e58efcb9a742e3",
+ "content-hash": "1ecad145dd9aca940aa7f4b8c322a9c7",
"packages": [
{
"name": "abraham/twitteroauth",
@@ -8970,6 +8970,66 @@
],
"time": "2023-11-23T15:12:48+00:00"
},
+ {
+ "name": "spatie/holidays",
+ "version": "0.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/spatie/holidays.git",
+ "reference": "5fc21902560f2ab50d995db82b8f836906de2e30"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/spatie/holidays/zipball/5fc21902560f2ab50d995db82b8f836906de2e30",
+ "reference": "5fc21902560f2ab50d995db82b8f836906de2e30",
+ "shasum": ""
+ },
+ "require": {
+ "ext-calendar": "*",
+ "nesbot/carbon": "^2.72",
+ "php": "^8.1"
+ },
+ "require-dev": {
+ "friendsofphp/php-cs-fixer": "^3.21.1",
+ "pestphp/pest": "^2.15",
+ "phpstan/phpstan": "^1.10",
+ "spatie/ray": "^1.28"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Spatie\\Holidays\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Niels Vanpachtenbeke",
+ "email": "freek@spatie.be",
+ "role": "Developer"
+ }
+ ],
+ "description": "Calculate public holidays",
+ "homepage": "https://github.com/spatie/holidays",
+ "keywords": [
+ "holidays",
+ "spatie"
+ ],
+ "support": {
+ "issues": "https://github.com/spatie/holidays/issues",
+ "source": "https://github.com/spatie/holidays/tree/0.0.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/spatie",
+ "type": "github"
+ }
+ ],
+ "time": "2024-01-15T10:55:39+00:00"
+ },
{
"name": "spatie/ignition",
"version": "1.11.3",
From 7cd2fcc51fe6326a5ac703caaeee43813119d3d8 Mon Sep 17 00:00:00 2001
From: Niels Vanpachtenbeke <10651054+Nielsvanpach@users.noreply.github.com>
Date: Wed, 17 Jan 2024 15:54:46 +0100
Subject: [PATCH 5/6] use latest version of spatie/holidays
---
app/Console/Commands/AfterworkCommand.php | 2 +-
composer.json | 2 +-
composer.lock | 101 +++++++++++-----------
3 files changed, 54 insertions(+), 51 deletions(-)
diff --git a/app/Console/Commands/AfterworkCommand.php b/app/Console/Commands/AfterworkCommand.php
index d87446fce..ddff18611 100644
--- a/app/Console/Commands/AfterworkCommand.php
+++ b/app/Console/Commands/AfterworkCommand.php
@@ -36,7 +36,7 @@ protected function generatePollOptions(): array
$datesInMonth = $this->getDatesForWeekdayInMonth($weekday);
foreach ($datesInMonth as $date) {
- if (Holidays::new()->isHoliday($date, 'be')) {
+ if (Holidays::for('be')->isHoliday($date)) {
continue;
}
diff --git a/composer.json b/composer.json
index 3cfc78e0e..20e3d3c3a 100644
--- a/composer.json
+++ b/composer.json
@@ -52,7 +52,7 @@
"spatie/crypto": "^2.0.1",
"spatie/eloquent-sortable": "^4.0.1",
"spatie/fork": "^1.1.2",
- "spatie/holidays": "^0.0.1",
+ "spatie/holidays": "^1.0",
"spatie/laravel-artisan-dispatchable": "^1.3",
"spatie/laravel-backup": "^8.1.5",
"spatie/laravel-comments": "^1.3",
diff --git a/composer.lock b/composer.lock
index 97f75b52c..d8065144f 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": "1ecad145dd9aca940aa7f4b8c322a9c7",
+ "content-hash": "8748dfa42b78437cb716368b0a628e9b",
"packages": [
{
"name": "abraham/twitteroauth",
@@ -542,16 +542,16 @@
},
{
"name": "carbonphp/carbon-doctrine-types",
- "version": "2.0.0",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/CarbonPHP/carbon-doctrine-types.git",
- "reference": "67a77972b9f398ae7068dabacc39c08aeee170d5"
+ "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/67a77972b9f398ae7068dabacc39c08aeee170d5",
- "reference": "67a77972b9f398ae7068dabacc39c08aeee170d5",
+ "url": "https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/99f76ffa36cce3b70a4a6abce41dba15ca2e84cb",
+ "reference": "99f76ffa36cce3b70a4a6abce41dba15ca2e84cb",
"shasum": ""
},
"require": {
@@ -591,7 +591,7 @@
],
"support": {
"issues": "https://github.com/CarbonPHP/carbon-doctrine-types/issues",
- "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/2.0.0"
+ "source": "https://github.com/CarbonPHP/carbon-doctrine-types/tree/2.1.0"
},
"funding": [
{
@@ -607,7 +607,7 @@
"type": "tidelift"
}
],
- "time": "2023-10-01T14:29:01+00:00"
+ "time": "2023-12-11T17:09:12+00:00"
},
{
"name": "clue/stream-filter",
@@ -5663,16 +5663,16 @@
},
{
"name": "nesbot/carbon",
- "version": "2.72.0",
+ "version": "2.72.1",
"source": {
"type": "git",
"url": "https://github.com/briannesbitt/Carbon.git",
- "reference": "a6885fcbad2ec4360b0e200ee0da7d9b7c90786b"
+ "reference": "2b3b3db0a2d0556a177392ff1a3bf5608fa09f78"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/a6885fcbad2ec4360b0e200ee0da7d9b7c90786b",
- "reference": "a6885fcbad2ec4360b0e200ee0da7d9b7c90786b",
+ "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/2b3b3db0a2d0556a177392ff1a3bf5608fa09f78",
+ "reference": "2b3b3db0a2d0556a177392ff1a3bf5608fa09f78",
"shasum": ""
},
"require": {
@@ -5766,7 +5766,7 @@
"type": "tidelift"
}
],
- "time": "2023-11-28T10:13:25+00:00"
+ "time": "2023-12-08T23:47:49+00:00"
},
{
"name": "nette/schema",
@@ -8972,28 +8972,27 @@
},
{
"name": "spatie/holidays",
- "version": "0.0.1",
+ "version": "1.0.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/holidays.git",
- "reference": "5fc21902560f2ab50d995db82b8f836906de2e30"
+ "reference": "1024aa680754129dccc7cdb10a25926c8e0ddcdf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/holidays/zipball/5fc21902560f2ab50d995db82b8f836906de2e30",
- "reference": "5fc21902560f2ab50d995db82b8f836906de2e30",
+ "url": "https://api.github.com/repos/spatie/holidays/zipball/1024aa680754129dccc7cdb10a25926c8e0ddcdf",
+ "reference": "1024aa680754129dccc7cdb10a25926c8e0ddcdf",
"shasum": ""
},
"require": {
"ext-calendar": "*",
- "nesbot/carbon": "^2.72",
+ "nesbot/carbon": "^2.72.1",
"php": "^8.1"
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "^3.21.1",
- "pestphp/pest": "^2.15",
- "phpstan/phpstan": "^1.10",
- "spatie/ray": "^1.28"
+ "pestphp/pest": "^2.31",
+ "phpstan/phpstan": "^1.10.56",
+ "spatie/ray": "^1.40.1"
},
"type": "library",
"autoload": {
@@ -9008,6 +9007,11 @@
"authors": [
{
"name": "Niels Vanpachtenbeke",
+ "email": "niels@spatie.be",
+ "role": "Developer"
+ },
+ {
+ "name": "Freek Van der Herten",
"email": "freek@spatie.be",
"role": "Developer"
}
@@ -9020,7 +9024,7 @@
],
"support": {
"issues": "https://github.com/spatie/holidays/issues",
- "source": "https://github.com/spatie/holidays/tree/0.0.1"
+ "source": "https://github.com/spatie/holidays/tree/1.0.1"
},
"funding": [
{
@@ -9028,7 +9032,7 @@
"type": "github"
}
],
- "time": "2024-01-15T10:55:39+00:00"
+ "time": "2024-01-17T13:41:33+00:00"
},
{
"name": "spatie/ignition",
@@ -15109,33 +15113,29 @@
},
{
"name": "symfony/service-contracts",
- "version": "v2.5.2",
+ "version": "v3.4.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c"
+ "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
- "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0",
+ "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0",
"shasum": ""
},
"require": {
- "php": ">=7.2.5",
- "psr/container": "^1.1",
- "symfony/deprecation-contracts": "^2.1|^3"
+ "php": ">=8.1",
+ "psr/container": "^1.1|^2.0"
},
"conflict": {
"ext-psr": "<1.1|>=2"
},
- "suggest": {
- "symfony/service-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.5-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -15145,7 +15145,10 @@
"autoload": {
"psr-4": {
"Symfony\\Contracts\\Service\\": ""
- }
+ },
+ "exclude-from-classmap": [
+ "/Test/"
+ ]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -15172,7 +15175,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v2.5.2"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.4.1"
},
"funding": [
{
@@ -15188,7 +15191,7 @@
"type": "tidelift"
}
],
- "time": "2022-05-30T19:17:29+00:00"
+ "time": "2023-12-26T14:02:43+00:00"
},
{
"name": "symfony/stopwatch",
@@ -15340,16 +15343,16 @@
},
{
"name": "symfony/translation",
- "version": "v6.4.0",
+ "version": "v6.4.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37"
+ "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37",
- "reference": "b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/a2ab2ec1a462e53016de8e8d5e8912bfd62ea681",
+ "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681",
"shasum": ""
},
"require": {
@@ -15415,7 +15418,7 @@
"description": "Provides tools to internationalize your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/translation/tree/v6.4.0"
+ "source": "https://github.com/symfony/translation/tree/v6.4.2"
},
"funding": [
{
@@ -15431,20 +15434,20 @@
"type": "tidelift"
}
],
- "time": "2023-11-29T08:14:36+00:00"
+ "time": "2023-12-18T09:25:29+00:00"
},
{
"name": "symfony/translation-contracts",
- "version": "v3.4.0",
+ "version": "v3.4.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "dee0c6e5b4c07ce851b462530088e64b255ac9c5"
+ "reference": "06450585bf65e978026bda220cdebca3f867fde7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/dee0c6e5b4c07ce851b462530088e64b255ac9c5",
- "reference": "dee0c6e5b4c07ce851b462530088e64b255ac9c5",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7",
+ "reference": "06450585bf65e978026bda220cdebca3f867fde7",
"shasum": ""
},
"require": {
@@ -15493,7 +15496,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v3.4.0"
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1"
},
"funding": [
{
@@ -15509,7 +15512,7 @@
"type": "tidelift"
}
],
- "time": "2023-07-25T15:08:44+00:00"
+ "time": "2023-12-26T14:02:43+00:00"
},
{
"name": "symfony/uid",
From 1a443d6f087d75b26715f9a353da9c3ab94e9669 Mon Sep 17 00:00:00 2001
From: Rias
Date: Tue, 23 Jan 2024 10:51:55 +0100
Subject: [PATCH 6/6] Remove hiring banner
---
resources/views/front/pages/home/partials/news.blade.php | 2 ++
1 file changed, 2 insertions(+)
diff --git a/resources/views/front/pages/home/partials/news.blade.php b/resources/views/front/pages/home/partials/news.blade.php
index e5c40831c..236b860d3 100644
--- a/resources/views/front/pages/home/partials/news.blade.php
+++ b/resources/views/front/pages/home/partials/news.blade.php
@@ -1,4 +1,5 @@