feat: delete strava connection
Laravel CI-CD / Tests Unitaires (push) Failing after 21s Details
Laravel CI-CD / Deploy with Kamal (push) Has been skipped Details

This commit is contained in:
Leon Morival 2026-05-21 16:20:25 +02:00
parent 61cd857783
commit 26f24fcd07
2 changed files with 9 additions and 0 deletions

View File

@ -11,6 +11,7 @@ use App\Services\StravaClient;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Http\RedirectResponse; use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Carbon; use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\Cache; use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Str; use Illuminate\Support\Str;
@ -96,6 +97,13 @@ class StravaController extends Controller
]); ]);
} }
public function disconnect(Request $request): Response
{
$request->user()->stravaConnection()->delete();
return response()->noContent();
}
public function sync(StravaSyncRequest $request, StravaClient $strava): JsonResponse public function sync(StravaSyncRequest $request, StravaClient $strava): JsonResponse
{ {
$connection = $request->user()->stravaConnection; $connection = $request->user()->stravaConnection;

View File

@ -47,6 +47,7 @@ Route::middleware(['auth:sanctum', 'verified'])->group(function (): void {
Route::get('strava/status', [StravaController::class, 'status'])->name('strava.status'); Route::get('strava/status', [StravaController::class, 'status'])->name('strava.status');
Route::get('strava/authorization-url', [StravaController::class, 'authorizationUrl'])->name('strava.authorization-url'); Route::get('strava/authorization-url', [StravaController::class, 'authorizationUrl'])->name('strava.authorization-url');
Route::post('strava/callback', [StravaController::class, 'callback'])->name('strava.callback'); Route::post('strava/callback', [StravaController::class, 'callback'])->name('strava.callback');
Route::delete('strava/connection', [StravaController::class, 'disconnect'])->name('strava.disconnect');
Route::post('strava/sync', [StravaController::class, 'sync'])->name('strava.sync'); Route::post('strava/sync', [StravaController::class, 'sync'])->name('strava.sync');
}); });