diff --git a/app/Core/Http/HttpKernel.php b/app/Core/Http/HttpKernel.php index 5f8b95562d..927420b48e 100644 --- a/app/Core/Http/HttpKernel.php +++ b/app/Core/Http/HttpKernel.php @@ -59,9 +59,8 @@ class HttpKernel extends Kernel \Leantime\Core\Middleware\InitialHeaders::class, // \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, - // CSRF verification is NOT yet global — ~82 legacy .tpl.php forms lack @csrf tokens. - // Enable globally only after all forms are tokenized. Until then, apply per-route. - // \Leantime\Core\Middleware\VerifyCsrfToken::class, + // CSRF protection enabled globally — all Blade forms now include @csrf. + \Leantime\Core\Middleware\VerifyCsrfToken::class, \Leantime\Core\Middleware\AuthCheck::class, \Leantime\Core\Middleware\AuthenticateSession::class, diff --git a/app/Domain/Api/Templates/apiKey.blade.php b/app/Domain/Api/Templates/apiKey.blade.php index 3e7cb44f65..b41e6ed3da 100644 --- a/app/Domain/Api/Templates/apiKey.blade.php +++ b/app/Domain/Api/Templates/apiKey.blade.php @@ -9,6 +9,7 @@ {!! $tpl->displayNotification() !!}
+@csrf diff --git a/app/Domain/Api/Templates/delKey.blade.php b/app/Domain/Api/Templates/delKey.blade.php index 8f8a2e1e24..73dacb32e4 100644 --- a/app/Domain/Api/Templates/delKey.blade.php +++ b/app/Domain/Api/Templates/delKey.blade.php @@ -18,6 +18,7 @@
{!! __('subtitles.delete_key') !!}
+ @csrf

{!! __('text.confirm_key_deletion') !!}


diff --git a/app/Domain/Api/Templates/newAPIKey.blade.php b/app/Domain/Api/Templates/newAPIKey.blade.php index 833f516e19..c7c669019a 100644 --- a/app/Domain/Api/Templates/newAPIKey.blade.php +++ b/app/Domain/Api/Templates/newAPIKey.blade.php @@ -17,6 +17,7 @@ {!! __('links.copy_key') !!} @else + @csrf diff --git a/app/Domain/Auth/Templates/requestPwLink.blade.php b/app/Domain/Auth/Templates/requestPwLink.blade.php index 0300bd7171..0b16d9029a 100644 --- a/app/Domain/Auth/Templates/requestPwLink.blade.php +++ b/app/Domain/Auth/Templates/requestPwLink.blade.php @@ -11,6 +11,7 @@
@dispatchEvent('afterRegcontentOpen') + @csrf @dispatchEvent('afterFormOpen') {!! $tpl->displayInlineNotification() !!}

{!! __('text.enter_email_address_to_reset') !!}

diff --git a/app/Domain/Auth/Templates/resetPw.blade.php b/app/Domain/Auth/Templates/resetPw.blade.php index c649f3be4d..79b6fd0ed2 100644 --- a/app/Domain/Auth/Templates/resetPw.blade.php +++ b/app/Domain/Auth/Templates/resetPw.blade.php @@ -13,6 +13,7 @@
@dispatchEvent('afterRegcontentOpen') + @csrf @dispatchEvent('afterFormOpen') {!! $tpl->displayInlineNotification() !!} diff --git a/app/Domain/Auth/Templates/userInvite.blade.php b/app/Domain/Auth/Templates/userInvite.blade.php index 870a22f119..eb3ff851ce 100644 --- a/app/Domain/Auth/Templates/userInvite.blade.php +++ b/app/Domain/Auth/Templates/userInvite.blade.php @@ -11,6 +11,7 @@ dispatchTplEvent('afterRegcontentOpen'); ?> + @csrf dispatchTplEvent('afterFormOpen'); ?> displayInlineNotification(); ?> diff --git a/app/Domain/Auth/Templates/userInvite2.blade.php b/app/Domain/Auth/Templates/userInvite2.blade.php index e1d500753c..c8d9850bf2 100644 --- a/app/Domain/Auth/Templates/userInvite2.blade.php +++ b/app/Domain/Auth/Templates/userInvite2.blade.php @@ -10,6 +10,7 @@
+ @csrf {{ $tpl->displayInlineNotification() }} diff --git a/app/Domain/Auth/Templates/userInvite3.blade.php b/app/Domain/Auth/Templates/userInvite3.blade.php index 128696900c..4156d5001b 100644 --- a/app/Domain/Auth/Templates/userInvite3.blade.php +++ b/app/Domain/Auth/Templates/userInvite3.blade.php @@ -10,6 +10,7 @@
+ @csrf {{ $tpl->displayInlineNotification() }} diff --git a/app/Domain/Auth/Templates/userInvite4.blade.php b/app/Domain/Auth/Templates/userInvite4.blade.php index 082aa05e21..a723a9a2f3 100644 --- a/app/Domain/Auth/Templates/userInvite4.blade.php +++ b/app/Domain/Auth/Templates/userInvite4.blade.php @@ -12,6 +12,7 @@
+ @csrf diff --git a/app/Domain/Auth/Templates/userInvite5.blade.php b/app/Domain/Auth/Templates/userInvite5.blade.php index ceb80e81f8..298e6096e0 100644 --- a/app/Domain/Auth/Templates/userInvite5.blade.php +++ b/app/Domain/Auth/Templates/userInvite5.blade.php @@ -9,6 +9,7 @@
+ @csrf diff --git a/app/Domain/Blueprints/Templates/boardDialog.blade.php b/app/Domain/Blueprints/Templates/boardDialog.blade.php index ca6067a9cb..ab3ade83f2 100644 --- a/app/Domain/Blueprints/Templates/boardDialog.blade.php +++ b/app/Domain/Blueprints/Templates/boardDialog.blade.php @@ -4,6 +4,7 @@ @endphp +@csrf diff --git a/app/Domain/Blueprints/Templates/canvasDialog.blade.php b/app/Domain/Blueprints/Templates/canvasDialog.blade.php index bc90535b06..09eb67743c 100644 --- a/app/Domain/Blueprints/Templates/canvasDialog.blade.php +++ b/app/Domain/Blueprints/Templates/canvasDialog.blade.php @@ -36,6 +36,7 @@ {!! $tpl->displayNotification() !!} + @csrf diff --git a/app/Domain/Blueprints/Templates/delCanvas.blade.php b/app/Domain/Blueprints/Templates/delCanvas.blade.php index b594e3bb93..9b3eb6a518 100644 --- a/app/Domain/Blueprints/Templates/delCanvas.blade.php +++ b/app/Domain/Blueprints/Templates/delCanvas.blade.php @@ -5,6 +5,7 @@

{!! __('subtitles.delete') !!}

+@csrf

{!! __('text.confirm_board_deletion') !!}


+@csrf

{!! __('text.confirm_board_item_deletion') !!}


{!! __('buttons.back') !!} diff --git a/app/Domain/Calendar/Templates/delEvent.blade.php b/app/Domain/Calendar/Templates/delEvent.blade.php index 445bb11016..f0137bf792 100644 --- a/app/Domain/Calendar/Templates/delEvent.blade.php +++ b/app/Domain/Calendar/Templates/delEvent.blade.php @@ -9,6 +9,7 @@

{!! __('subtitles.delete') !!}

+@csrf @dispatchEvent('afterFormOpen')

{!! __('text.confirm_event_deletion') !!}


@dispatchEvent('beforeSubmitButton') diff --git a/app/Domain/Calendar/Templates/delExternalCal.blade.php b/app/Domain/Calendar/Templates/delExternalCal.blade.php index 651c850549..b5e50f6e48 100644 --- a/app/Domain/Calendar/Templates/delExternalCal.blade.php +++ b/app/Domain/Calendar/Templates/delExternalCal.blade.php @@ -9,6 +9,7 @@

{!! __('subtitles.delete') !!}

+@csrf @dispatchEvent('afterFormOpen')

{!! __('text.confirm_calendar_deletion') !!}


@dispatchEvent('beforeSubmitButton') diff --git a/app/Domain/Calendar/Templates/editEvent.blade.php b/app/Domain/Calendar/Templates/editEvent.blade.php index 7fb597d381..d93a5d35a0 100644 --- a/app/Domain/Calendar/Templates/editEvent.blade.php +++ b/app/Domain/Calendar/Templates/editEvent.blade.php @@ -11,6 +11,7 @@

{!! __('subtitles.event') !!}

+@csrf @dispatchEvent('afterFormOpen') diff --git a/app/Domain/Calendar/Templates/editExternalCalendar.blade.php b/app/Domain/Calendar/Templates/editExternalCalendar.blade.php index 71c11287c5..e548f1e4aa 100644 --- a/app/Domain/Calendar/Templates/editExternalCalendar.blade.php +++ b/app/Domain/Calendar/Templates/editExternalCalendar.blade.php @@ -5,6 +5,7 @@ +@csrf diff --git a/app/Domain/Calendar/Templates/export.blade.php b/app/Domain/Calendar/Templates/export.blade.php index f4dd150a93..983e3736bd 100644 --- a/app/Domain/Calendar/Templates/export.blade.php +++ b/app/Domain/Calendar/Templates/export.blade.php @@ -11,6 +11,7 @@ {!! $tpl->displayNotification() !!} +@csrf @dispatchEvent('afterFormOpen') diff --git a/app/Domain/Calendar/Templates/importGCal.blade.php b/app/Domain/Calendar/Templates/importGCal.blade.php index eb6c234c30..f7ca08aa50 100644 --- a/app/Domain/Calendar/Templates/importGCal.blade.php +++ b/app/Domain/Calendar/Templates/importGCal.blade.php @@ -5,6 +5,7 @@ +@csrf
diff --git a/app/Domain/Calendar/Templates/showAllGCals.blade.php b/app/Domain/Calendar/Templates/showAllGCals.blade.php index 1e9899c6b6..b94141c09c 100644 --- a/app/Domain/Calendar/Templates/showAllGCals.blade.php +++ b/app/Domain/Calendar/Templates/showAllGCals.blade.php @@ -6,6 +6,7 @@