<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;

class ClearCustomCookieMiddleware
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle(Request $request, Closure $next)
    {
        // 1. Najpierw pozwól aplikacji przetworzyć żądanie i przygotować odpowiedź
        $response = $next($request);

        // 2. Teraz, gdy mamy gotowy obiekt odpowiedzi, możemy go bezpiecznie modyfikować.
        // Z logów wynika, że próbujesz wyczyścić ciasteczko. Poniżej jest poprawny sposób, aby to zrobić w Laravelu.
        // Metoda `withCookie` zwraca nową instancję odpowiedzi z dodanym nagłówkiem.
        // `cookie()->forget()` tworzy ciasteczko, które przeglądarka natychmiast usunie.
        return $response->withCookie(cookie()->forget('XSRF-TOKEN-AK'));
    }
}