Skip to content

Commit d3e032c

Browse files
committed
more types & cs
1 parent 577e037 commit d3e032c

File tree

10 files changed

+70
-49
lines changed

10 files changed

+70
-49
lines changed

app/Console/Commands/TemporaryClear.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
use App\Models\TemporaryUpload;
66
use Illuminate\Console\Command;
7-
use Storage;
7+
use Illuminate\Support\Facades\Storage;
88

99
class TemporaryClear extends Command
1010
{
@@ -25,7 +25,7 @@ class TemporaryClear extends Command
2525
/**
2626
* Execute the console command.
2727
*/
28-
public function handle()
28+
public function handle(): void
2929
{
3030
$uploads = TemporaryUpload::where('created_at', '<', now()->subHour())->get();
3131

app/Helpers/Image.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
namespace App\Helpers;
44

5-
use Intervention\Image\ImageManager;
65
use Intervention\Image\Drivers\Gd\Driver as GdDriver;
6+
use Intervention\Image\ImageManager;
77

88
class Image
99
{
1010
/**
1111
* Convert image to webp, jpeg or png format and resize it
1212
*/
13-
public static function convert(string $source, string $target, int $width = null, int $height = null, string $extension = 'webp', int $quality = 90): void
13+
public static function convert(string $source, string $target, ?int $width = null, ?int $height = null, string $extension = 'webp', int $quality = 90): void
1414
{
1515
$manager = new ImageManager(new GdDriver);
1616

@@ -34,4 +34,4 @@ public static function convert(string $source, string $target, int $width = null
3434
$image->toPng()->save($target);
3535
}
3636
}
37-
}
37+
}

app/Http/Controllers/AccountController.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
use Illuminate\Http\JsonResponse;
88
use Illuminate\Http\Request;
99
use Illuminate\Support\Facades\Hash;
10+
use Illuminate\Support\Facades\Storage;
11+
use Illuminate\Support\Str;
1012
use Illuminate\Validation\Rule;
1113
use Illuminate\Validation\ValidationException;
12-
use Storage;
13-
use Str;
1414

1515
class AccountController extends Controller
1616
{
@@ -56,6 +56,7 @@ public function update(Request $request): JsonResponse
5656

5757
/**
5858
* Update the user's password.
59+
* @throws ValidationException
5960
*/
6061
public function password(Request $request): JsonResponse
6162
{
@@ -67,7 +68,7 @@ public function password(Request $request): JsonResponse
6768
$user = $request->user();
6869
abort_unless($user->has_password, 403, __('Access denied.'));
6970

70-
if (! Hash::check($request->current_password, $user->password)) {
71+
if (!Hash::check($request->current_password, $user->password)) {
7172
throw ValidationException::withMessages([
7273
'current_password' => __('auth.password'),
7374
]);

app/Http/Controllers/AuthController.php

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,12 @@
55
use App\Http\Requests\Auth\LoginRequest;
66
use App\Models\User;
77
use App\Models\UserProvider;
8-
use Browser;
8+
use DeviceDetector\Parser\Client\Browser;
99
use Illuminate\Auth\Events\PasswordReset;
1010
use Illuminate\Auth\Events\Registered;
1111
use Illuminate\Auth\Events\Verified;
1212
use Illuminate\Http\JsonResponse;
13+
use Illuminate\Http\RedirectResponse;
1314
use Illuminate\Http\Request;
1415
use Illuminate\Support\Facades\Crypt;
1516
use Illuminate\Support\Facades\Hash;
@@ -29,7 +30,7 @@ public function register(Request $request): JsonResponse
2930
{
3031
$request->validate([
3132
'name' => ['required', 'string', 'max:255'],
32-
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class],
33+
'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:' . User::class],
3334
'password' => ['required', 'confirmed', Rules\Password::defaults()],
3435
]);
3536

@@ -54,19 +55,20 @@ public function register(Request $request): JsonResponse
5455
/**
5556
* Redirect to provider for authentication
5657
*/
57-
public function redirect(Request $request, $provider)
58+
public function redirect(Request $request, string $provider): RedirectResponse
5859
{
5960
return Socialite::driver($provider)->stateless()->redirect();
6061
}
6162

6263
/**
6364
* Handle callback from provider
65+
* @throws \Exception
6466
*/
6567
public function callback(Request $request, string $provider): View
6668
{
6769
$oAuthUser = Socialite::driver($provider)->stateless()->user();
6870

69-
if (! $oAuthUser?->token) {
71+
if (!$oAuthUser?->token) {
7072
return view('oauth', [
7173
'message' => [
7274
'ok' => false,
@@ -80,7 +82,7 @@ public function callback(Request $request, string $provider): View
8082
->where('provider_id', $oAuthUser->id)
8183
->first();
8284

83-
if (! $userProvider) {
85+
if (!$userProvider) {
8486
if (User::where('email', $oAuthUser->email)->exists()) {
8587
return view('oauth', [
8688
'message' => [
@@ -136,6 +138,7 @@ public function callback(Request $request, string $provider): View
136138

137139
/**
138140
* Generate sanctum token on successful login
141+
* @throws ValidationException
139142
*/
140143
public function login(LoginRequest $request): JsonResponse
141144
{
@@ -195,6 +198,7 @@ public function user(Request $request): JsonResponse
195198

196199
/**
197200
* Handle an incoming password reset link request.
201+
* @throws ValidationException
198202
*/
199203
public function sendResetPasswordLink(Request $request): JsonResponse
200204
{
@@ -209,7 +213,7 @@ public function sendResetPasswordLink(Request $request): JsonResponse
209213
$request->only('email')
210214
);
211215

212-
if ($status != Password::RESET_LINK_SENT) {
216+
if ($status !== Password::RESET_LINK_SENT) {
213217
throw ValidationException::withMessages([
214218
'email' => [__($status)],
215219
]);
@@ -223,6 +227,7 @@ public function sendResetPasswordLink(Request $request): JsonResponse
223227

224228
/**
225229
* Handle an incoming new password request.
230+
* @throws ValidationException
226231
*/
227232
public function resetPassword(Request $request): JsonResponse
228233
{
@@ -237,7 +242,7 @@ public function resetPassword(Request $request): JsonResponse
237242
// database. Otherwise we will parse the error and return the response.
238243
$status = Password::reset(
239244
$request->only('email', 'password', 'password_confirmation', 'token'),
240-
function ($user) use ($request) {
245+
static function ($user) use ($request) {
241246
$user->forceFill([
242247
'password' => Hash::make($request->password),
243248
'remember_token' => Str::random(60),
@@ -248,7 +253,7 @@ function ($user) use ($request) {
248253
}
249254
);
250255

251-
if ($status != Password::PASSWORD_RESET) {
256+
if ($status !== Password::PASSWORD_RESET) {
252257
throw ValidationException::withMessages([
253258
'email' => [__($status)],
254259
]);
@@ -263,14 +268,14 @@ function ($user) use ($request) {
263268
/**
264269
* Mark the authenticated user's email address as verified.
265270
*/
266-
public function verifyEmail(Request $request, $ulid, $hash): JsonResponse
271+
public function verifyEmail(Request $request, string $ulid, string $hash): JsonResponse
267272
{
268-
$user = User::whereUlid($ulid)->first();
273+
$user = User::where('ulid', $ulid)->first();
269274

270-
abort_unless(!!$user, 404);
271-
abort_unless(hash_equals(sha1($user->getEmailForVerification()), $hash), 403, __('Invalid verification link'));
275+
abort_if(!$user, 404);
276+
abort_if(!hash_equals(sha1($user->getEmailForVerification()), $hash), 403, __('Invalid verification link'));
272277

273-
if (! $user->hasVerifiedEmail()) {
278+
if (!$user->hasVerifiedEmail()) {
274279
$user->markEmailAsVerified();
275280

276281
event(new Verified($user));
@@ -291,7 +296,7 @@ public function verificationNotification(Request $request): JsonResponse
291296
]);
292297

293298
$user = User::where('email', $request->email)->whereNull('email_verified_at')->first();
294-
abort_unless(!!$user, 400);
299+
abort_if(!$user, 400);
295300

296301
$user->sendEmailVerificationNotification();
297302

app/Http/Requests/Auth/LoginRequest.php

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace App\Http\Requests\Auth;
44

5+
use App\Models\User;
56
use Illuminate\Auth\Events\Lockout;
67
use Illuminate\Foundation\Http\FormRequest;
78
use Illuminate\Support\Facades\Hash;
@@ -37,11 +38,11 @@ public function rules(): array
3738
*
3839
* @throws \Illuminate\Validation\ValidationException
3940
*/
40-
public function authenticate($user): void
41+
public function authenticate(User $user): void
4142
{
4243
$this->ensureIsNotRateLimited();
4344

44-
if (! $user || ! Hash::check($this->password, $user->password)) {
45+
if (!$user || !Hash::check($this->password, $user->password)) {
4546
RateLimiter::hit($this->throttleKey());
4647

4748
throw ValidationException::withMessages([
@@ -59,7 +60,7 @@ public function authenticate($user): void
5960
*/
6061
public function ensureIsNotRateLimited(): void
6162
{
62-
if (! RateLimiter::tooManyAttempts($this->throttleKey(), 5)) {
63+
if (!RateLimiter::tooManyAttempts($this->throttleKey(), 5)) {
6364
return;
6465
}
6566

@@ -80,6 +81,6 @@ public function ensureIsNotRateLimited(): void
8081
*/
8182
public function throttleKey(): string
8283
{
83-
return Str::transliterate(Str::lower($this->input('email')).'|'.$this->ip());
84+
return Str::transliterate(Str::lower($this->input('email')) . '|' . $this->ip());
8485
}
8586
}

app/Models/UserProvider.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use Illuminate\Database\Eloquent\Factories\HasFactory;
66
use Illuminate\Database\Eloquent\Model;
7+
use Illuminate\Database\Eloquent\Relations\BelongsTo;
78

89
class UserProvider extends Model
910
{
@@ -14,7 +15,7 @@ class UserProvider extends Model
1415
'name',
1516
];
1617

17-
public function user()
18+
public function user(): BelongsTo
1819
{
1920
return $this->belongsTo(User::class);
2021
}

app/Providers/AppServiceProvider.php

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
namespace App\Providers;
44

55
use App\Helpers\Image;
6-
use Illuminate\Http\UploadedFile;
7-
use Illuminate\Support\ServiceProvider;
8-
use Illuminate\Support\Str;
96
use Illuminate\Auth\Notifications\ResetPassword;
107
use Illuminate\Auth\Notifications\VerifyEmail;
11-
use Illuminate\Support\Facades\RateLimiter;
128
use Illuminate\Cache\RateLimiting\Limit;
139
use Illuminate\Http\Request;
10+
use Illuminate\Http\UploadedFile;
11+
use Illuminate\Support\Facades\RateLimiter;
12+
use Illuminate\Support\ServiceProvider;
13+
use Illuminate\Support\Str;
1414

1515
class AppServiceProvider extends ServiceProvider
1616
{
@@ -20,7 +20,7 @@ class AppServiceProvider extends ServiceProvider
2020
public function register(): void
2121
{
2222
// Register Telescope only in local environment
23-
if ($this->app->environment('local') && class_exists(\Laravel\Telescope\TelescopeServiceProvider::class)) {
23+
if (class_exists(\Laravel\Telescope\TelescopeServiceProvider::class) && $this->app->environment('local')) {
2424
$this->app->register(\Laravel\Telescope\TelescopeServiceProvider::class);
2525
$this->app->register(TelescopeServiceProvider::class);
2626
}
@@ -31,25 +31,25 @@ public function register(): void
3131
*/
3232
public function boot(): void
3333
{
34-
RateLimiter::for('api', function (Request $request) {
34+
RateLimiter::for('api', static function (Request $request) {
3535
return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip());
3636
});
3737

38-
RateLimiter::for('verification-notification', function (Request $request) {
38+
RateLimiter::for('verification-notification', static function (Request $request) {
3939
return Limit::perMinute(1)->by($request->user()?->email ?: $request->ip());
4040
});
4141

42-
RateLimiter::for('uploads', function (Request $request) {
42+
RateLimiter::for('uploads', static function (Request $request) {
4343
return $request->user()?->hasRole('admin')
4444
? Limit::none()
4545
: Limit::perMinute(10)->by($request->ip());
4646
});
4747

48-
ResetPassword::createUrlUsing(function (object $notifiable, string $token) {
48+
ResetPassword::createUrlUsing(static function (object $notifiable, string $token) {
4949
return config('app.frontend_url') . "/auth/reset/{$token}?email={$notifiable->getEmailForPasswordReset()}";
5050
});
5151

52-
VerifyEmail::createUrlUsing(function (object $notifiable) {
52+
VerifyEmail::createUrlUsing(static function (object $notifiable) {
5353
$url = url()->temporarySignedRoute(
5454
'verification.verify',
5555
now()->addMinutes(config('auth.verification.expire', 60)),
@@ -65,16 +65,16 @@ public function boot(): void
6565
/**
6666
* Convert uploaded image to webp, jpeg or png format and resize it
6767
*/
68-
UploadedFile::macro('convert', function (int $width = null, int $height = null, string $extension = 'webp', int $quality = 90): UploadedFile {
69-
return tap($this, function (UploadedFile $file) use ($width, $height, $extension, $quality) {
68+
UploadedFile::macro('convert', function (?int $width = null, ?int $height = null, string $extension = 'webp', int $quality = 90): UploadedFile {
69+
return tap($this, static function (UploadedFile $file) use ($width, $height, $extension, $quality) {
7070
Image::convert($file->path(), $file->path(), $width, $height, $extension, $quality);
7171
});
7272
});
7373

7474
/**
7575
* Remove all special characters from a string
7676
*/
77-
Str::macro('onlyWords', function (string $text): string {
77+
Str::macro('onlyWords', static function (string $text): string {
7878
// \p{L} matches any kind of letter from any language
7979
// \d matches a digit in any script
8080
return Str::replaceMatches('/[^\p{L}\d ]/u', '', $text);

app/Rules/TemporaryFileExists.php

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
use App\Models\TemporaryUpload;
66
use Closure;
77
use Illuminate\Contracts\Validation\ValidationRule;
8-
use Storage;
8+
use Illuminate\Support\Facades\Storage;
99

1010
class TemporaryFileExists implements ValidationRule
1111
{
@@ -16,7 +16,10 @@ class TemporaryFileExists implements ValidationRule
1616
*/
1717
public function validate(string $attribute, mixed $value, Closure $fail): void
1818
{
19-
if (! Storage::disk('public')->exists($value) || ! TemporaryUpload::where('path', $value)->exists()) {
19+
if (
20+
!Storage::disk('public')->exists($value) ||
21+
!TemporaryUpload::where('path', $value)->exists()
22+
) {
2023
$fail(__('The :attribute does not exist.', ['attribute' => $attribute]));
2124
}
2225
}

0 commit comments

Comments
 (0)