+ ver );
+ // Usuń komentarze HTML i wszystkie tagi poza bezpieczną listą formatującą,
+ // żeby zdalny serwis nie mógł popsuć struktury strony (psuło to footer-script i przycisk "Wyczyść cache").
+ $changelog = preg_replace( '//s', '', $changelog );
+ $changelog = strip_tags( $changelog, '
diff --git a/change.md b/change.md
index 1fd31d2..cca9d88 100644
--- a/change.md
+++ b/change.md
@@ -1,75 +1,56 @@
-# Zmiana: Fix przekierowania w summaryView
+# Zmiana 3: Naprawa JS na stronie /admin/update/main_view/ (przyciski aktualizacji + Wyczyść cache)
## Plik
-`autoload/front/Controllers/ShopBasketController.php`
+`admin/templates/update/main-view.php`
## Problem
-Po złożeniu pierwszego zamówienia, próba złożenia drugiego zamówienia powodowała przekierowanie na stronę poprzedniego zamówienia (`/zamowienie/{hash}`) zamiast na stronę podsumowania koszyka (`/koszyk-podsumowanie`).
+Na podstronie `/admin/update/main_view/` nie działały:
+- przycisk **„Aktualizuj do wyższej wersji"** (`#confirm`)
+- przycisk **„Aktualizuj do najwyższej wersji"** (`#confirmUpdateAll`)
+- globalny przycisk **„Wyczyść cache"** (`#clear-cache-btn`) z headera admina
+
+W konsoli przeglądarki **nie było żadnego błędu JS**. Kliknięcie powodowało jedynie dopisanie `#` do URL-a (`/admin/update/main_view/#`).
## Przyczyna
-W metodzie `summaryView()` był guard sprawdzający sesyjny klucz `order-submit-last-order-id`. Jeśli istniał (a istniał po każdym złożonym zamówieniu), metoda od razu redirectowała na stronę starego zamówienia — nigdy nie dochodziło do `createOrderSubmitToken()`, które czyści ten klucz.
+W szablonie znajdowało się pobieranie zdalnego changeloga przez `file_get_contents` z `https://shoppro.project-dc.pl/updates/changelog.php`:
-## Co usunięto
-Usunięto blok (dawne linie 279-290):
```php
-$existingOrderId = isset( $_SESSION[ self::ORDER_SUBMIT_LAST_ORDER_ID_SESSION_KEY ] )
- ? (int)$_SESSION[ self::ORDER_SUBMIT_LAST_ORDER_ID_SESSION_KEY ]
- : 0;
-if ( $existingOrderId > 0 )
-{
- $existingOrderHash = $this->orderRepository->findHashById( $existingOrderId );
- if ( $existingOrderHash )
- {
- header( 'Location: /zamowienie/' . $existingOrderHash );
- exit;
- }
-}
+= @file_get_contents( 'https://shoppro.project-dc.pl/updates/changelog.php?ver=' . $this->ver ); ?>
```
-## Zabezpieczenie double-submit
-Ochrona przed podwójnym wysłaniem formularza pozostaje nienaruszona w metodzie `basketSave()` — tam ten sam mechanizm działa poprawnie.
+Odpowiedź zdalnego serwera zawierała niezbalansowany HTML (np. niezamknięty `