chore(app): mises a jour applicatives et normalisation du code (Laravel Pint)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -13,10 +13,11 @@ use Illuminate\Validation\Rule;
|
||||
class AuthController extends Controller
|
||||
{
|
||||
// AuthController.php
|
||||
public function login(Request $request) {
|
||||
public function login(Request $request)
|
||||
{
|
||||
$fields = $request->validate([
|
||||
'email' => 'required|string|email',
|
||||
'password' => 'required|string'
|
||||
'password' => 'required|string',
|
||||
]);
|
||||
|
||||
// Log::info('Tentative de connexion', $request->all());
|
||||
@@ -24,18 +25,18 @@ class AuthController extends Controller
|
||||
$user = User::where('email', $fields['email'])->first();
|
||||
|
||||
// Vérification du mot de passe haché (Sécurité)
|
||||
if(!$user || !Hash::check($fields['password'], $user->password)) {
|
||||
if (! $user || ! Hash::check($fields['password'], $user->password)) {
|
||||
return response([
|
||||
'status' => 'error',
|
||||
'message' => 'Identifiants invalides'
|
||||
'message' => 'Identifiants invalides',
|
||||
], 401);
|
||||
}
|
||||
|
||||
// Vérification si le compte est actif
|
||||
if (!$user->is_active) {
|
||||
if (! $user->is_active) {
|
||||
return response([
|
||||
'status' => 'error',
|
||||
'message' => 'Votre compte a été désactivé par un administrateur.'
|
||||
'message' => 'Votre compte a été désactivé par un administrateur.',
|
||||
], 403);
|
||||
}
|
||||
|
||||
@@ -49,7 +50,7 @@ class AuthController extends Controller
|
||||
return response([
|
||||
'status' => 'success',
|
||||
'user' => $user,
|
||||
'token' => $token
|
||||
'token' => $token,
|
||||
], 200);
|
||||
}
|
||||
|
||||
@@ -62,14 +63,14 @@ class AuthController extends Controller
|
||||
'password' => 'required|string|min:8|confirmed',
|
||||
]);
|
||||
|
||||
|
||||
Log::info('Tentative de création', $request->all());
|
||||
|
||||
if ($validator->fails()) {
|
||||
Log::info( $validator->errors());
|
||||
Log::info($validator->errors());
|
||||
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'errors' => $validator->errors()
|
||||
'errors' => $validator->errors(),
|
||||
], 422);
|
||||
}
|
||||
|
||||
@@ -87,7 +88,7 @@ class AuthController extends Controller
|
||||
'status' => 'success',
|
||||
'message' => 'Compte créé avec succès',
|
||||
'user' => $user,
|
||||
'token' => $token
|
||||
'token' => $token,
|
||||
], 201);
|
||||
}
|
||||
|
||||
@@ -100,15 +101,15 @@ class AuthController extends Controller
|
||||
'email' => [
|
||||
'sometimes',
|
||||
'email',
|
||||
Rule::unique('users')->ignore($user->id) // Empêche les doublons en BDD
|
||||
Rule::unique('users')->ignore($user->id), // Empêche les doublons en BDD
|
||||
],
|
||||
]);
|
||||
|
||||
// 2. Vérification de sécurité (RGPD/Confidentialité)
|
||||
if (!Hash::check($request->current_password, $user->password)) {
|
||||
if (! Hash::check($request->current_password, $user->password)) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'message' => 'Le mot de passe actuel est incorrect'
|
||||
'message' => 'Le mot de passe actuel est incorrect',
|
||||
], 403);
|
||||
}
|
||||
|
||||
@@ -119,7 +120,7 @@ class AuthController extends Controller
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'user' => $user
|
||||
'user' => $user,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\EmotionRecord;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
|
||||
class EmotionController extends Controller
|
||||
@@ -18,7 +17,7 @@ class EmotionController extends Controller
|
||||
{
|
||||
Log::info('Tentative d\'enregistrement d\'émotion', [
|
||||
'user' => $request->user()->id,
|
||||
'data' => $request->all()
|
||||
'data' => $request->all(),
|
||||
]);
|
||||
|
||||
try {
|
||||
@@ -35,7 +34,8 @@ class EmotionController extends Controller
|
||||
|
||||
return response()->json($record, 201);
|
||||
} catch (\Exception $e) {
|
||||
Log::error('Erreur enregistrement émotion : ' . $e->getMessage());
|
||||
Log::error('Erreur enregistrement émotion : '.$e->getMessage());
|
||||
|
||||
return response()->json(['error' => 'Erreur serveur'], 500);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Information;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class InformationController extends Controller
|
||||
{
|
||||
@@ -16,7 +15,7 @@ class InformationController extends Controller
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'data' => $informations
|
||||
'data' => $informations,
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -24,16 +23,16 @@ class InformationController extends Controller
|
||||
{
|
||||
$information = Information::where('is_published', true)->find($id);
|
||||
|
||||
if (!$information) {
|
||||
if (! $information) {
|
||||
return response()->json([
|
||||
'status' => 'error',
|
||||
'message' => 'Information non trouvée'
|
||||
'message' => 'Information non trouvée',
|
||||
], 404);
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'status' => 'success',
|
||||
'data' => $information
|
||||
'data' => $information,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\StressEvent;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class StressDiagnosticController extends Controller
|
||||
{
|
||||
|
||||
@@ -2,8 +2,6 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Models\User;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class DashboardController extends Controller
|
||||
@@ -17,7 +15,7 @@ class DashboardController extends Controller
|
||||
$stats = [
|
||||
'relaxation_time' => '45 min',
|
||||
'stress_status' => 'Stable',
|
||||
'last_diagnostic' => 'il y a 3 jours'
|
||||
'last_diagnostic' => 'il y a 3 jours',
|
||||
];
|
||||
|
||||
return view('welcome', compact('user', 'stats'));
|
||||
|
||||
@@ -24,6 +24,7 @@ class AuthController extends Controller
|
||||
|
||||
if (Auth::attempt($credentials)) {
|
||||
$request->session()->regenerate();
|
||||
|
||||
return redirect()->intended('/');
|
||||
}
|
||||
|
||||
@@ -61,6 +62,7 @@ class AuthController extends Controller
|
||||
Auth::logout();
|
||||
$request->session()->invalidate();
|
||||
$request->session()->regenerateToken();
|
||||
|
||||
return redirect('/login');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,9 @@
|
||||
namespace App\Http\Controllers\Web;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\ResultatDiag;
|
||||
use App\Models\StressEvent;
|
||||
use App\Services\StressCalculator;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
@@ -14,23 +16,25 @@ class DiagnosticController extends Controller
|
||||
$events = StressEvent::all();
|
||||
$history = [];
|
||||
if (Auth::check()) {
|
||||
$history = \App\Models\ResultatDiag::where('id_user', Auth::id())
|
||||
$history = ResultatDiag::where('id_user', Auth::id())
|
||||
->orderBy('date_passage', 'desc')
|
||||
->take(5)
|
||||
->get();
|
||||
}
|
||||
|
||||
return view('diagnostics.index', compact('events', 'history'));
|
||||
}
|
||||
|
||||
public function history()
|
||||
{
|
||||
$history = \App\Models\ResultatDiag::where('id_user', Auth::id())
|
||||
$history = ResultatDiag::where('id_user', Auth::id())
|
||||
->orderBy('date_passage', 'desc')
|
||||
->get();
|
||||
|
||||
return view('diagnostics.history', compact('history'));
|
||||
}
|
||||
|
||||
public function store(Request $request, \App\Services\StressCalculator $calculator)
|
||||
public function store(Request $request, StressCalculator $calculator)
|
||||
{
|
||||
// Logique pour calculer le score Holmes-Rahe
|
||||
$totalPoints = 0;
|
||||
@@ -43,7 +47,7 @@ class DiagnosticController extends Controller
|
||||
|
||||
// Enregistrement si l'utilisateur est connecté
|
||||
if (Auth::check()) {
|
||||
\App\Models\ResultatDiag::create([
|
||||
ResultatDiag::create([
|
||||
'id_user' => Auth::id(),
|
||||
'score_total' => $totalPoints,
|
||||
'niveau_stress' => $niveauStress,
|
||||
|
||||
@@ -12,6 +12,7 @@ class EmotionController extends Controller
|
||||
public function index()
|
||||
{
|
||||
$records = EmotionRecord::where('user_id', Auth::id())->latest()->get();
|
||||
|
||||
return view('emotions.index', compact('records'));
|
||||
}
|
||||
|
||||
@@ -20,14 +21,14 @@ class EmotionController extends Controller
|
||||
$request->validate([
|
||||
'emotion' => 'required|string',
|
||||
'intensity' => 'required|integer|min:1|max:5',
|
||||
'note' => 'nullable|string'
|
||||
'note' => 'nullable|string',
|
||||
]);
|
||||
|
||||
EmotionRecord::create([
|
||||
'user_id' => Auth::id(),
|
||||
'emotion' => $request->emotion,
|
||||
'intensity' => $request->intensity,
|
||||
'note' => $request->note
|
||||
'note' => $request->note,
|
||||
]);
|
||||
|
||||
return redirect()->back()->with('success', 'Émotion enregistrée');
|
||||
|
||||
@@ -23,7 +23,7 @@ class ProfileController extends Controller
|
||||
|
||||
$validated = $request->validate([
|
||||
'name' => ['required', 'string', 'max:255'],
|
||||
'email' => ['required', 'string', 'email', 'max:255', 'unique:users,email,' . $user->id],
|
||||
'email' => ['required', 'string', 'email', 'max:255', 'unique:users,email,'.$user->id],
|
||||
]);
|
||||
|
||||
$user->fill($validated);
|
||||
|
||||
@@ -4,9 +4,7 @@ namespace App\Http\Controllers\Web;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\RelaxationActivity;
|
||||
use App\Models\Favorite;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class RelaxationController extends Controller
|
||||
{
|
||||
|
||||
@@ -16,7 +16,7 @@ class ResultatDiag extends Model
|
||||
'date_passage',
|
||||
'score_total',
|
||||
'niveau_stress',
|
||||
'event_ids'
|
||||
'event_ids',
|
||||
];
|
||||
|
||||
public function user()
|
||||
@@ -26,8 +26,11 @@ class ResultatDiag extends Model
|
||||
|
||||
public function getEventsAttribute()
|
||||
{
|
||||
if (!$this->event_ids) return collect();
|
||||
if (! $this->event_ids) {
|
||||
return collect();
|
||||
}
|
||||
$ids = explode(';', $this->event_ids);
|
||||
|
||||
return StressEvent::whereIn('id', $ids)->get();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Role extends Model
|
||||
{
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Providers;
|
||||
|
||||
use Illuminate\Support\Facades\URL;
|
||||
use Illuminate\Support\ServiceProvider;
|
||||
|
||||
class AppServiceProvider extends ServiceProvider
|
||||
@@ -20,7 +21,7 @@ class AppServiceProvider extends ServiceProvider
|
||||
public function boot(): void
|
||||
{
|
||||
if (config('app.env') === 'production' || config('app.env') === 'local') {
|
||||
\Illuminate\Support\Facades\URL::forceScheme('https');
|
||||
URL::forceScheme('https');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,9 @@ namespace App\Services;
|
||||
class StressCalculator
|
||||
{
|
||||
public const LEVEL_HIGH = 'Élevé';
|
||||
|
||||
public const LEVEL_MODERATE = 'Modéré';
|
||||
|
||||
public const LEVEL_LOW = 'Faible';
|
||||
|
||||
public function calculateScore(array $points): int
|
||||
|
||||
Reference in New Issue
Block a user