From 564b4eab40435c006db3f181774c912ae343111a Mon Sep 17 00:00:00 2001 From: Jacek Date: Thu, 12 Mar 2026 09:19:33 +0100 Subject: [PATCH] build: ver_0.334 - poprawki bezpieczenstwa, usunieto RedBeanPHP --- updates/0.30/ver_0.334.zip | Bin 0 -> 17096 bytes updates/0.30/ver_0.334_files.txt | 1 + updates/0.30/ver_0.334_manifest.json | 27 ++++ updates/changelog-data.html | 231 ++++++++++++++------------- updates/versions.php | 2 +- 5 files changed, 146 insertions(+), 115 deletions(-) create mode 100644 updates/0.30/ver_0.334.zip create mode 100644 updates/0.30/ver_0.334_files.txt create mode 100644 updates/0.30/ver_0.334_manifest.json diff --git a/updates/0.30/ver_0.334.zip b/updates/0.30/ver_0.334.zip new file mode 100644 index 0000000000000000000000000000000000000000..498e60e2d5b5fa7fbc09a3ab30c1a03e4fb423bb GIT binary patch literal 17096 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 literal 0 HcmV?d00001 diff --git a/updates/0.30/ver_0.334_files.txt b/updates/0.30/ver_0.334_files.txt new file mode 100644 index 0000000..b8263a9 --- /dev/null +++ b/updates/0.30/ver_0.334_files.txt @@ -0,0 +1 @@ +F: ../libraries/rb.php \ No newline at end of file diff --git a/updates/0.30/ver_0.334_manifest.json b/updates/0.30/ver_0.334_manifest.json new file mode 100644 index 0000000..5b31470 --- /dev/null +++ b/updates/0.30/ver_0.334_manifest.json @@ -0,0 +1,27 @@ +{ + "changelog": "Poprawki bezpieczenstwa: usunieto debug log tpay, naprawa SQL w IntegrationsRepository, usunieto RedBeanPHP", + "version": "0.334", + "files": { + "added": [ + + ], + "deleted": [ + "libraries/rb.php" + ], + "modified": [ + "admin/index.php", + "autoload/Domain/Integrations/IntegrationsRepository.php", + "autoload/front/Controllers/ShopOrderController.php", + "index.php", + "templates/shop-basket/summary-view.php" + ] + }, + "checksum_zip": "sha256:c009407c5b941d98b2777b6f7335f6587c93900d02df4441801e314b3deb7fb0", + "sql": [ + + ], + "date": "2026-03-12", + "directories_deleted": [ + + ] +} \ No newline at end of file diff --git a/updates/changelog-data.html b/updates/changelog-data.html index 1bb2021..4e2416f 100644 --- a/updates/changelog-data.html +++ b/updates/changelog-data.html @@ -1,5 +1,8 @@ +ver. 0.334 - 12.03.2026
+Poprawki bezpieczenstwa: usunieto debug log tpay, naprawa SQL w IntegrationsRepository, usunieto RedBeanPHP +
ver. 0.333 - 10.03.2026
-Ochrona przed podwójnym składaniem zamówienia (order submit token) +Ochrona przed podwĂłjnym skĹ‚adaniem zamĂłwienia (order submit token)
ver. 0.332 - 01.03.2026
API produktow: nowe pola new_to_date i additional_message @@ -29,28 +32,28 @@ NEW - Endpoint API categories/list: plaska lista aktywnych kategorii (id, parent FIX - naprawione krzaczki (mojibake) w changelog, limit wyswietlania do 5 wersji wstecz od wersji instancji
ver. 0.324 - 27.02.2026
-NEW - system kolejki zadań cron (DB), priorytetowe przetwarzanie, retry/backoff, ochrona endpointu cron +NEW - system kolejki zadaĹ„ cron (DB), priorytetowe przetwarzanie, retry/backoff, ochrona endpointu cron
ver. 0.323 - 24.02.2026
FIX - refactor importu zdjec w shopPRO import (walidacja HTTP, curl timeouty, logi), FIX - saveCustomFields tylko przy jawnym podaniu, FIX - delete() czysci custom_fields, FIX - sciezka upload w API, NEW - trwale usuwanie produktow z archiwum
ver. 0.322 - 24.02.2026
-FIX - custom_fields: jawne mapowanie kluczy w ProductRepository, spójne !empty w ProductsApiController +FIX - custom_fields: jawne mapowanie kluczy w ProductRepository, spĂłjne !empty w ProductsApiController
ver. 0.321 - 24.02.2026
-NEW - API: obsługa custom_fields w create/update produktu +NEW - API: obsĹ‚uga custom_fields w create/update produktu
ver. 0.320 - 24.02.2026
-NEW - API: endpoint ensure_producer (znajdź lub utwórz producenta); GET product zwraca producer_name +NEW - API: endpoint ensure_producer (znajdĹş lub utwĂłrz producenta); GET product zwraca producer_name
ver. 0.319 - 24.02.2026
-FIX - usunięcie shopPRO eksportu produktów; API produktu: dodano custom_fields i security_information +FIX - usuniÄ™cie shopPRO eksportu produktĂłw; API produktu: dodano custom_fields i security_information
ver. 0.318 - 24.02.2026
-NEW - shopPRO export produktów + API endpoints (ensure_attribute, ensure_attribute_value, upload_image) +NEW - shopPRO export produktĂłw + API endpoints (ensure_attribute, ensure_attribute_value, upload_image)
ver. 0.317 - 23.02.2026
-FIX - klucz API: fix zapisu (brakowalo w whiteliście), przycisk Generuj losowy klucz, ulepszony routing API +FIX - klucz API: fix zapisu (brakowalo w whiteliĹ›cie), przycisk Generuj losowy klucz, ulepszony routing API
ver. 0.316 - 23.02.2026
FIX - migracja brakujacej kolumny type w pp_shop_products_custom_fields @@ -59,16 +62,16 @@ FIX - migracja brakujacej kolumny type w pp_shop_products_custom_fields FIX - PDOException w listowaniu atrybutow admin (SQLSTATE HY093)
ver. 0.314 - 23.02.2026
-FIX - naprawa globalnej wyszukiwarki admin (Content-Type, Cache-Control, POST, try/catch), NEW - title strony z numerem zamówienia +FIX - naprawa globalnej wyszukiwarki admin (Content-Type, Cache-Control, POST, try/catch), NEW - title strony z numerem zamĂłwienia
ver. 0.313 - 23.02.2026
-FIX - sync płatności Apilo (int cast na apilo_order_id PPxxxxxx dawał 0) + logowanie decyzji sync do pp_log +FIX - sync pĹ‚atnoĹ›ci Apilo (int cast na apilo_order_id PPxxxxxx dawaĹ‚ 0) + logowanie decyzji sync do pp_log
ver. 0.312 - 23.02.2026
-FIX - krytyczne bugi integracji Apilo: curl_getinfo po curl_close, nieskończona pętla wysyłki, ceny 0.00 PLN, walidacja cen +FIX - krytyczne bugi integracji Apilo: curl_getinfo po curl_close, nieskoĹ„czona pÄ™tla wysyĹ‚ki, ceny 0.00 PLN, walidacja cen
ver. 0.311 - 23.02.2026
-FIX - race condition callback płatności Apilo, persistence filtrów tabel admin, poprawki cen zamówień +FIX - race condition callback pĹ‚atnoĹ›ci Apilo, persistence filtrĂłw tabel admin, poprawki cen zamĂłwieĹ„
ver. 0.310 - 23.02.2026
NEW - Zakladka Logi w sekcji Integracje (podglad pp_log z paginacja, sortowaniem, filtrami) @@ -98,10 +101,10 @@ FIX - naprawiono wyswietlanie atrybutow produktu na froncie (kolizja kolejnosci) NEW - REST API wariantow produktow (CRUD), slownik atrybutow, filtrowanie po atrybutach, wzbogacone atrybuty z tlumaczeniami
ver. 0.301 - 22.02.2026
-NEW - Ukrywalne filtry tabel, mobilna wersja szczegółów zamówienia +NEW - Ukrywalne filtry tabel, mobilna wersja szczegółów zamĂłwienia
ver. 0.300 - 21.02.2026
-- NEW - System aktualizacji oparty na manifestach JSON (checksum SHA256, backup plików, automatyczny build) +- NEW - System aktualizacji oparty na manifestach JSON (checksum SHA256, backup plikĂłw, automatyczny build) - NEW - Panel logu aktualizacji w panelu admina
ver. 0.299 - 21.02.2026
@@ -111,31 +114,31 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - kilka poprawek po aktualizacji
ver. 0.297 - 19.02.2026
-- NEW - REST API produktów (lista, szczegóły, tworzenie, aktualizacja) -- NEW - Endpoint products z filtrowaniem, sortowaniem i paginacją -- NEW - Partial update produktów (tylko zmienione pola) +- NEW - REST API produktĂłw (lista, szczegóły, tworzenie, aktualizacja) +- NEW - Endpoint products z filtrowaniem, sortowaniem i paginacjÄ… +- NEW - Partial update produktĂłw (tylko zmienione pola)
ver. 0.296 - 19.02.2026
-- NEW - REST API zamówień dla ordersPRO (lista, szczegóły, zmiana statusu, płatności) -- NEW - Endpointy słownikowe (statusy, transporty, metody płatności) +- NEW - REST API zamĂłwieĹ„ dla ordersPRO (lista, szczegóły, zmiana statusu, pĹ‚atnoĹ›ci) +- NEW - Endpointy sĹ‚ownikowe (statusy, transporty, metody pĹ‚atnoĹ›ci) - NEW - Autentykacja API przez X-Api-Key header - NEW - Kolumna updated_at w pp_shop_orders (polling zmian)
ver. 0.295 - 19.02.2026
-- NEW - Edycja produktów w zamówieniu z panelu admina (dodawanie, usuwanie, zmiana ilości/cen) -- NEW - Wyszukiwarka produktów AJAX w formularzu edycji zamówienia -- NEW - Automatyczna korekta stanów magazynowych i przeliczanie kosztu dostawy -- FIX - Cena promo w zamówieniu = 0 gdy identyczna z ceną bazową +- NEW - Edycja produktĂłw w zamĂłwieniu z panelu admina (dodawanie, usuwanie, zmiana iloĹ›ci/cen) +- NEW - Wyszukiwarka produktĂłw AJAX w formularzu edycji zamĂłwienia +- NEW - Automatyczna korekta stanĂłw magazynowych i przeliczanie kosztu dostawy +- FIX - Cena promo w zamĂłwieniu = 0 gdy identyczna z cenÄ… bazowÄ…
ver. 0.294 - 19.02.2026
-- FIX - Code review zakończony (96/96 klas, ~1144 metod): 27 fixów across all layers +- FIX - Code review zakoĹ„czony (96/96 klas, ~1144 metod): 27 fixĂłw across all layers - FIX - Domain: null guard na query()->fetchAll() w 8 repozytoriach, redundancja DI w PromotionRepository - FIX - Admin: null safety find() ?: [] w 10 kontrolerach, null guard w App logowaniu/2FA - FIX - Front: LayoutEngine undefined $level + $_GET null check, ShopBasketController missing global $lang_id -- FIX - Shared: Helpers $_GET null check + bug 'png' → 'image/png' (Imagick lossless WebP nigdy nie działał) +- FIX - Shared: Helpers $_GET null check + bug 'png' → 'image/png' (Imagick lossless WebP nigdy nie dziaĹ‚aĹ‚)
ver. 0.293 - 19.02.2026
-- FIX - ArticleRepository: SQL injection fix (addslashes→parameterized), uproszczenie articleDetailsFrontend +- FIX - ArticleRepository: SQL injection fix (addslashes→parameterized), uproszczenie articleDetailsFrontend - FIX - AttributeRepository: martwy class_exists('\S') blokowal czyszczenie cache/temp - FIX - CategoryRepository: martwy class_exists('\S') blokowal generowanie linkow SEO kategorii - FIX - BannerRepository: parametryzacja dat w SQL + null guard na query() @@ -154,12 +157,12 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - front\controls\Site przemianowany na front\App (router, camelCase: checkUrlParams, pageTitle) - UPDATE - front\view\Site przemianowany na front\LayoutEngine (layout engine, camelCase: cookieInformation) - CLEANUP - usuniete autoload/front/controls/ i autoload/front/view/ (puste foldery + pliki legacy) -- UPDATE - usuniecie 12 legacy klas z autoload/shop/ (~2363 linii) — pelna migracja na Domain-Driven Architecture +- UPDATE - usuniecie 12 legacy klas z autoload/shop/ (~2363 linii) — pelna migracja na Domain-Driven Architecture - UPDATE - class.Order.php: logika Apilo sync i email statusu przeniesiona do OrderAdminService - UPDATE - class.Product.php: ~20 metod przeniesionych do ProductRepository, calculate_basket_product_price do BasketCalculator - FIX - findCached(): stale Redis cache z obiektami \shop\Product powodowal ceny 0,00 zl - FIX - szablony: konwersja object access na array access po migracji Product -- UPDATE - AttributeRepository::getAttributeValueById() — dodano Redis cache +- UPDATE - AttributeRepository::getAttributeValueById() — dodano Redis cache - CLEANUP - katalog autoload/shop/ pusty, zero referencji \shop\ w aktywnym kodzie
ver. 0.291 - 17.02.2026
@@ -203,17 +206,17 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - Tpl::render() branch 3: sprawdzal templates_user ale ladowal templates
ver. 0.284 - 16.02.2026
-- CLEANUP - usunieta klasa DbModel (base ORM) — logika wbudowana bezposrednio w shop\Promotion +- CLEANUP - usunieta klasa DbModel (base ORM) — logika wbudowana bezposrednio w shop\Promotion
ver. 0.283 - 16.02.2026
- UPDATE - migracja class.S.php do Shared\Helpers\Helpers (~140 plikow przepietych) - UPDATE - migracja class.Html.php do Shared\Html\Html - UPDATE - migracja class.Email.php do Shared\Email\Email - UPDATE - migracja class.Image.php do Shared\Image\ImageManipulator -- UPDATE - migracja class.Log.php do Shared\Log\Log (usunieta — logika przeniesiona) +- UPDATE - migracja class.Log.php do Shared\Log\Log (usunieta — logika przeniesiona) - CLEANUP - usunieta class.Mobile_Detect.php (przestarzala detekcja UA) - CLEANUP - usunieto 12 nieuzywanych metod z klasy S -- FIX - array_cartesian_product() — blad iteracji po niezdefiniowanej zmiennej +- FIX - array_cartesian_product() — blad iteracji po niezdefiniowanej zmiennej
ver. 0.282 - 16.02.2026
- UPDATE - Cache cleanup: eliminacja legacy class.Cache.php, migracja CacheHandler i RedisConnection do Shared\Cache namespace @@ -225,7 +228,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚Ä
ver. 0.281 - 16.02.2026
- UPDATE - migracja Banners frontend: factory + view do Domain/Views (DI) -- NEW - `front\Views\Banners` — czysty VIEW (banners, mainBanner) +- NEW - `front\Views\Banners` — czysty VIEW (banners, mainBanner) - UPDATE - `BannerRepository` rozszerzony o 2 metody frontendowe (banners, mainBanner) z Redis cache - UPDATE - `front\view\Site::show()` przepiety na repo + Views - CLEANUP - usuniete: front\factory\Banners, front\view\Banners @@ -233,10 +236,10 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚Ä
ver. 0.280 - 16.02.2026
- UPDATE - migracja Articles frontend: factory + view + encja do Domain/Views (DI) -- NEW - `front\Views\Articles` — czysty VIEW + utility (renderowanie, generateTableOfContents, generateHeadersIds, getImage) +- NEW - `front\Views\Articles` — czysty VIEW + utility (renderowanie, generateTableOfContents, generateHeadersIds, getImage) - UPDATE - `ArticleRepository` rozszerzony o 8 metod frontendowych (z Redis cache) -- UPDATE - `front\view\Site::show()` — 5 sekcji przepietych na repo + Views -- UPDATE - `front\controls\Site::route()` — single article + page_type switch przepiete na repo + Views +- UPDATE - `front\view\Site::show()` — 5 sekcji przepietych na repo + Views +- UPDATE - `front\controls\Site::route()` — single article + page_type switch przepiete na repo + Views - UPDATE - 5 szablonow `templates/articles/*` przepietych na `\front\Views\Articles::` - CLEANUP - usuniete: `class.Article` (encja + metody statyczne), `front\factory\Settings` (fasada) - FIX - eliminacja `global $lang` z `articleNoindex()`, eliminacja zaleznosci od `front\factory\Pages::page_sort()` @@ -247,22 +250,22 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - nowy namespace `front\Controllers` z `NewsletterController` (DI via factory closures) - UPDATE - nowy namespace `front\Views` z `Languages` i `Newsletter` (czyste VIEW, statyczne metody) - UPDATE - routing frontend: `Site::getControllerFactories()` z fallback na stare kontrolery -- FIX - `newsletter_unsubscribe()` — poprawiona skladnia medoo `delete()` (2 argumenty zamiast 3) -- UPDATE - eliminacja fasady `front\factory\Languages` — 26 zaleznosci przepietych na `LanguagesRepository` +- FIX - `newsletter_unsubscribe()` — poprawiona skladnia medoo `delete()` (2 argumenty zamiast 3) +- UPDATE - eliminacja fasady `front\factory\Languages` — 26 zaleznosci przepietych na `LanguagesRepository` - CLEANUP - usuniete: `front\factory\Languages`, `front\factory\Newsletter`, `front\view\Languages`, `front\view\Newsletter`, `front\controls\Newsletter` - UPDATE - testy: `OK (437 tests, 1398 assertions)`
ver. 0.278 - 16.02.2026
- UPDATE - migracja Settings + Languages do wspolnych klas Domain (z cache Redis) -- FIX - `get_single_settings_value()` — parametr `$param` poprawnie uzywany (wczesniej hardcoded `firm_name`) +- FIX - `get_single_settings_value()` — parametr `$param` poprawnie uzywany (wczesniej hardcoded `firm_name`)
ver. 0.277 - 16.02.2026
-- NEW - migracja modulu `ShopProduct` (factory) — pelna migracja ~40 metod do `ProductRepository` + ~30 akcji w `ShopProductController` +- NEW - migracja modulu `ShopProduct` (factory) — pelna migracja ~40 metod do `ProductRepository` + ~30 akcji w `ShopProductController` - NEW - migracja modulu `Dashboard` do Domain + DI (`DashboardRepository`, `DashboardController`) - NEW - migracja modulu `Update` do Domain + DI (`UpdateRepository`, `UpdateController`) - UPDATE - klasa `admin\Site` przemianowana na `admin\App` (plik `App.php`) -- UPDATE - refaktoring routingu — usunieto fallback na stare kontrolery, uproszczony routing -- UPDATE - template `update/main-view.php` — panele zamiast `gridEdit`, `$.confirm()` zamiast `$.prompt()` +- UPDATE - refaktoring routingu — usunieto fallback na stare kontrolery, uproszczony routing +- UPDATE - template `update/main-view.php` — panele zamiast `gridEdit`, `$.confirm()` zamiast `$.prompt()` - CLEANUP - usuniete stare foldery: `autoload/admin/controls/`, `autoload/admin/factory/`, `autoload/admin/view/` - CLEANUP - usuniete legacy: `class.Dashboard.php` (controls/shop), `class.Update.php` (controls/factory/view), `class.Articles.php` (factory), `class.Page.php` (view), `class.ShopProduct.php` (controls/factory/view) - UPDATE - `front\factory\Newsletter` przepieta na `ArticleRepository::articlesByDateAdd()` @@ -351,12 +354,12 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - pliki aktualizacji: `updates/0.20/ver_0.268.zip`, `ver_0.268_files.txt`
ver. 0.267 - 13.02.2026
-- FIX - front: poprawione dobieranie layoutu dla kategorii/produktu/koszyka i innych stron modułowych (fallback do layoutu domyślnego) -- FIX - produkt/koszyk: poprawiona obsługa ilości dla kombinacji (stan 0 po dodaniu do koszyka, limit max, odczyt `stock_0_buy`) -- FIX - produkt: usunięty błąd JS `TypeError: $(...).visible is not a function` (zamiana na `:visible`) -- FIX - SEO redirecty produktów: blokada konfliktów po kopiowaniu URL oraz utwardzone wykrywanie pętli redirectów (`lang_id` + graf przejść) -- UPDATE - admin: `input-switch` zapisuje wartość `on` (spójnie z obsługą pól checkbox w formularzach) -- CLEANUP - usunięte pliki: `apilo-bck`, `geocode-cache.php` +- FIX - front: poprawione dobieranie layoutu dla kategorii/produktu/koszyka i innych stron moduĹ‚owych (fallback do layoutu domyĹ›lnego) +- FIX - produkt/koszyk: poprawiona obsĹ‚uga iloĹ›ci dla kombinacji (stan 0 po dodaniu do koszyka, limit max, odczyt `stock_0_buy`) +- FIX - produkt: usuniÄ™ty błąd JS `TypeError: $(...).visible is not a function` (zamiana na `:visible`) +- FIX - SEO redirecty produktĂłw: blokada konfliktĂłw po kopiowaniu URL oraz utwardzone wykrywanie pÄ™tli redirectĂłw (`lang_id` + graf przejść) +- UPDATE - admin: `input-switch` zapisuje wartość `on` (spĂłjnie z obsĹ‚ugÄ… pĂłl checkbox w formularzach) +- CLEANUP - usuniÄ™te pliki: `apilo-bck`, `geocode-cache.php` - UPDATE - testy: `OK (235 tests, 682 assertions)` - UPDATE - pliki aktualizacji: `updates/0.20/ver_0.267.zip`, `ver_0.267_files.txt`, `ver_0.267_sql.txt`
@@ -438,7 +441,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ ver. 0.257 - 12.02.2026
- NEW - migracja modulu `Newsletter` do architektury Domain + DI (`Domain\Newsletter\NewsletterRepository`, `Domain\Newsletter\NewsletterPreviewRenderer`, `admin\Controllers\NewsletterController`) - UPDATE - widoki `/admin/newsletter/*` przepiete z legacy `grid/gridEdit` na nowe komponenty (`components/table-list`, `components/form-edit`) + nowy endpoint `/admin/newsletter/preview/` -- UPDATE - routing DI (`admin\Site`) rozszerzony o moduĹ‚ `Newsletter` +- UPDATE - routing DI (`admin\Site`) rozszerzony o moduĹ‚ `Newsletter` - UPDATE - `admin\factory\Newsletter` dziala jako fasada do nowego repozytorium (backward compatibility) - UPDATE - `front\factory\Newsletter` nie korzysta juz z `admin\view\Newsletter` - CLEANUP - usuniete legacy klasy `autoload/admin/controls/class.Newsletter.php`, `autoload/admin/view/class.Newsletter.php` @@ -462,7 +465,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - migracja widokow languages (`languages-list`, `language-edit`, `translations-list`, `translation-edit`) na `components/table-list` i `components/form-edit` - UPDATE - routing DI dla `Languages` w `admin\Site` oraz kompatybilna fasada `admin\factory\Languages` delegujaca do repozytorium - UPDATE - naprawiono zapis edycji jezyka (ID jezyka pobierane z URL przy edycji) -- UPDATE - globalne poprawki UX filtrĂłw w `components/table-list` (kompaktowe kolumny `Aktywny`/`Domyslny`, spacing i pelna szerokosc selecta) +- UPDATE - globalne poprawki UX filtrĂłw w `components/table-list` (kompaktowe kolumny `Aktywny`/`Domyslny`, spacing i pelna szerokosc selecta) - CLEANUP - usuniete legacy klasy: `autoload/admin/controls/class.Languages.php`, `autoload/admin/view/class.Languages.php`
ver. 0.253 - 12.02.2026
@@ -531,78 +534,78 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - refaktoryzacja: article_save przeniesiony do Domain\Article\ArticleRepository::save() z prywatnymi helperami - UPDATE - refaktoryzacja: article_delete przeniesiony do Domain\Article\ArticleRepository::archive() - UPDATE - ArticlesController: nowe akcje save() i delete() z DI -- UPDATE - admin\factory\Articles::article_save() i articles_set_archive() delegujÄ… do repozytorium (kompatybilność) +- UPDATE - admin\factory\Articles::article_save() i articles_set_archive() delegujÄ… do repozytorium (kompatybilność)
ver. 0.243
-- UPDATE - refaktoryzacja: cleanup nieprzypisanych plików/zdjęć artykułów przeniesiony do Domain\Article\ArticleRepository -- UPDATE - ArticlesController::edit() używa repozytorium do cleanupu, a admin\factory\Articles zachowuje delegowanie (kompatybilność) +- UPDATE - refaktoryzacja: cleanup nieprzypisanych plikĂłw/zdjęć artykułów przeniesiony do Domain\Article\ArticleRepository +- UPDATE - ArticlesController::edit() uĹĽywa repozytorium do cleanupu, a admin\factory\Articles zachowuje delegowanie (kompatybilność)
ver. 0.242
- NEW - refaktoryzacja: Domain\Article\ArticleRepository + migracja article_edit do admin\Controllers\ArticlesController (DI) -- UPDATE - admin\factory\Articles::article_details() deleguje do nowego repozytorium (kompatybilność zachowana) -- UPDATE - metody przejęte przez nowe kontrolery oznaczone jako @deprecated w legacy kontrolerach admin\controls +- UPDATE - admin\factory\Articles::article_details() deleguje do nowego repozytorium (kompatybilność zachowana) +- UPDATE - metody przejÄ™te przez nowe kontrolery oznaczone jako @deprecated w legacy kontrolerach admin\controls
ver. 0.241
-- NEW - refaktoryzacja: admin\Controllers\ProductArchiveController - archiwum produktów z DI +- NEW - refaktoryzacja: admin\Controllers\ProductArchiveController - archiwum produktĂłw z DI - NEW - ProductRepository::archive(), unarchive() - operacje archiwizacji w repozytorium -- FIX - naprawiono SQL w liście archiwum (puste wyszukiwanie filtrowało wszystkie wyniki) -- FIX - naprawiono brakujący filtr archive = 1 w zapytaniu bez wyszukiwania -- UPDATE - wyczyszczono szablony archiwum (usunięto zbędne funkcje: apilo, baselinker, duplikowanie) +- FIX - naprawiono SQL w liĹ›cie archiwum (puste wyszukiwanie filtrowaĹ‚o wszystkie wyniki) +- FIX - naprawiono brakujÄ…cy filtr archive = 1 w zapytaniu bez wyszukiwania +- UPDATE - wyczyszczono szablony archiwum (usuniÄ™to zbÄ™dne funkcje: apilo, baselinker, duplikowanie)
ver. 0.240
- NEW - refaktoryzacja: Domain\Settings\SettingsRepository + admin\Controllers\SettingsController (architektura Domain-Driven) -- NEW - refaktoryzacja: Domain\Cache\CacheRepository - czyszczenie cache z obsługą Redis -- FIX - komunikat potwierdzenia zapisu ustawień w panelu administratora +- NEW - refaktoryzacja: Domain\Cache\CacheRepository - czyszczenie cache z obsĹ‚ugÄ… Redis +- FIX - komunikat potwierdzenia zapisu ustawieĹ„ w panelu administratora - FIX - naprawiono element #content w layoucie admina (powiadomienia grid.js)
ver. 0.239
-- NEW - refaktoryzacja: Domain\Banner\BannerRepository + admin\Controllers\BannerController (pełna migracja kontrolera) +- NEW - refaktoryzacja: Domain\Banner\BannerRepository + admin\Controllers\BannerController (peĹ‚na migracja kontrolera) - NEW - refaktoryzacja: Domain\Product\ProductRepository::getPrice(), getName() - migracja kolejnych metod -- NEW - router admin z obsługą nowych kontrolerów (fallback na stare) -- UPDATE - shop\Product::get_product_price(), get_product_name() używają nowego repozytorium (kompatybilność zachowana) +- NEW - router admin z obsĹ‚ugÄ… nowych kontrolerĂłw (fallback na stare) +- UPDATE - shop\Product::get_product_price(), get_product_name() uĹĽywajÄ… nowego repozytorium (kompatybilność zachowana)
ver. 0.238
- NEW - refaktoryzacja: Domain\Product\ProductRepository - pierwsza klasa w nowej architekturze Domain-Driven - NEW - Dependency Injection zamiast global variables -- UPDATE - shop\Product::get_product_quantity() używa teraz nowego repozytorium (kompatybilność zachowana) +- UPDATE - shop\Product::get_product_quantity() uĹĽywa teraz nowego repozytorium (kompatybilność zachowana)
ver. 0.237
- NEW - automatyczne czyszczenie cache produktu po aktualizacji przez CRON (Sellasist, Apilo, Baselinker) -- UPDATE - przycisk "Wyczyść cache" w panelu administratora z obsługą AJAX i komunikatami o postępie +- UPDATE - przycisk "Wyczyść cache" w panelu administratora z obsĹ‚ugÄ… AJAX i komunikatami o postÄ™pie
ver. 0.236
-- FIX - zabezpieczenie przed duplikatami zamówień w Apilo - automatyczne pobieranie ID zamówienia przy błędzie "idExternal już wykorzystywany" +- FIX - zabezpieczenie przed duplikatami zamĂłwieĹ„ w Apilo - automatyczne pobieranie ID zamĂłwienia przy błędzie "idExternal juĹĽ wykorzystywany"
ver. 0.235
- FIX - poprawka funkcji aktualizacji
ver. 0.234
-- NEW - przycisk zaznaczania zamówienia jako wysłane do trustmate.io +- NEW - przycisk zaznaczania zamĂłwienia jako wysĹ‚ane do trustmate.io
ver. 0.232
- NEW - opcje GPSR
ver. 0.231
-- FIX - poprawki bezpieczeństwa + dwuetapowa weryfikacja logowania +- FIX - poprawki bezpieczeĹ„stwa + dwuetapowa weryfikacja logowania
ver. 0.230
-- FIX - poprawki bezpieczeństwa +- FIX - poprawki bezpieczeĹ„stwa
ver. 0.229
-- NEW - pola dodatkowe z opcją wymagane/niewymagane +- NEW - pola dodatkowe z opcjÄ… wymagane/niewymagane
ver. 0.228
-- NEW - cron do wysyłania zamówień do trustmate.io +- NEW - cron do wysyĹ‚ania zamĂłwieĹ„ do trustmate.io
ver. 0.227
-- NEW - historia kodów rabatowych +- NEW - historia kodĂłw rabatowych
ver. 0.226
-- NEW - dodanie opcji faktury do zamówienia +- NEW - dodanie opcji faktury do zamĂłwienia
ver. 0.225
- NEW - przycisk czyszczenia cache -- NEW - ponowne wysyłanie zamówienia do apilo +- NEW - ponowne wysyĹ‚anie zamĂłwienia do apilo
ver. 0.224
- NEW - sortowanie form dostawy @@ -614,20 +617,20 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - NEW - integracja z Orlen Paczka
ver. 0.221
-- NEW - Automatyczne przekierowania adresów URL produktów, zmiany w pliku htaccess +- NEW - Automatyczne przekierowania adresĂłw URL produktĂłw, zmiany w pliku htaccess
ver. 0.220
-- NEW - Dodanie możliwości wyświetlenia na strone ostatnio dodane produkty [PRODUKTY_NEW] lub [PRODUKTY_NEW:10]. -- NEW - Dodanie możliwości wyświetlenia na strone popularnych produktów [PRODUKTY_TOP] lub [PRODUKTY_TOP:10]. +- NEW - Dodanie moĹĽliwoĹ›ci wyĹ›wietlenia na strone ostatnio dodane produkty [PRODUKTY_NEW] lub [PRODUKTY_NEW:10]. +- NEW - Dodanie moĹĽliwoĹ›ci wyĹ›wietlenia na strone popularnych produktĂłw [PRODUKTY_TOP] lub [PRODUKTY_TOP:10].
ver. 0.219
-- NEW - Dodanie możliwości zmiany daty w artykułach +- NEW - Dodanie moĹĽliwoĹ›ci zmiany daty w artykuĹ‚ach
ver. 0.218
- NEW - indywidualny kod GTM
ver. 0.217
-- NEW - zwiększenie obsługi REDIS +- NEW - zwiÄ™kszenie obsĹ‚ugi REDIS
ver. 0.216
- NEW - aktualizacja api i cron (apilo) @@ -642,43 +645,43 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - wyliczenie darmowej dostawy
ver. 0.212
-- NEW - zmiany w zapisywaniu zamówienia do apilo +- NEW - zmiany w zapisywaniu zamĂłwienia do apilo
ver. 0.211
-- NEW - Debugowanie apilo + wyświetlanie podkategorii +- NEW - Debugowanie apilo + wyĹ›wietlanie podkategorii
ver. 0.210
-- NEW - dodatkowe pola w widoku produktów +- NEW - dodatkowe pola w widoku produktĂłw
ver. 0.209
-- NEW - zmiany w widoku produktów (panel administratora) +- NEW - zmiany w widoku produktĂłw (panel administratora)
ver. 0.208
-- NEW - zmiany w wyszukiwarce produktów +- NEW - zmiany w wyszukiwarce produktĂłw
ver. 0.204-0.207
- NEW - htaccess update
ver. 0.204-0.206
-- NEW - wysyłanie produktów do apilo +- NEW - wysyĹ‚anie produktĂłw do apilo
ver. 0.203
- NEW - zmiana sposobu wyliczania cen produkty z dodatkami
ver. 0.202
-- NEW - dodano "główne zdjęcie" w edycji artykułu +- NEW - dodano "główne zdjÄ™cie" w edycji artykuĹ‚u
ver. 0.201
-- FIX - aktualizacja statusów na podstawie baselinkera +- FIX - aktualizacja statusĂłw na podstawie baselinkera
ver. 0.200
-- NEW - wysyłanie produktów do baselinker +- NEW - wysyĹ‚anie produktĂłw do baselinker
ver. 0.199
- NEW - usprawnienie edycji danych do XML
ver. 0.198
-- NEW - automatyczne generowanie kodów SKU +- NEW - automatyczne generowanie kodĂłw SKU
ver. 0.197
- FIX - poprawki w Dashboard @@ -687,7 +690,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - integracja z apilo.com
ver. 0.195
-- FIX - aktualizacja statusów +- FIX - aktualizacja statusĂłw
ver. 0.194
- UPDATE - integracja apilo @@ -696,46 +699,46 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - UPDATE - aktualizacja synchronizacji z baselinker
ver. 0.192
-- NEW - pobieranie statusów z sellasist +- NEW - pobieranie statusĂłw z sellasist
ver. 0.191
- NEW - integracja z selasist
ver. 0.190
-- FIX - produkty powiązane +- FIX - produkty powiÄ…zane
ver. 0.189
-- FIX - ceny promocyjne produktów z dodatkiem +- FIX - ceny promocyjne produktĂłw z dodatkiem
ver. 0.188
-- NEW - widok listy produktów +- NEW - widok listy produktĂłw
ver. 0.187
- FIX - pobieranie cen z APILO
ver. 0.186
-- FIX - dodawanie do koszyka tych samych produktów ale z różną personalizacją +- FIX - dodawanie do koszyka tych samych produktĂłw ale z różnÄ… personalizacjÄ…
ver. 0.185
-- FIX - masowa edycja produktów +- FIX - masowa edycja produktĂłw
ver. 0.184
-- NEW - druga część integracji z apilo, masowa edycja produktów +- NEW - druga część integracji z apilo, masowa edycja produktĂłw
ver. 0.183
-- NEW - pierwsza część integracji z apilo +- NEW - pierwsza część integracji z apilo
ver. 0.182
- FIX - layout
ver. 0.181
-- NEW - infinitescroll - opcja włączy/wyłącz +- NEW - infinitescroll - opcja włączy/wyłącz
ver. 0.180
- NEW - aktualizacja dashboard
ver. 0.179
-- NEW - obsługa EAN +- NEW - obsĹ‚uga EAN
ver. 0.177, 0.178
- FIX - custom_label @@ -751,7 +754,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚Ä
ver. 0.173
- NEW - duplikowanie produktu wraz z kombinacjami -- NEW - dodanie przechodzenia pomiędzy zamówienia (poprzednie/następne zamówienie) +- NEW - dodanie przechodzenia pomiÄ™dzy zamĂłwienia (poprzednie/nastÄ™pne zamĂłwienie)
ver. 0.172
- FIX - poprawki w Cache @@ -763,22 +766,22 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - NEW - usuwanie cache produktu przy zapisie
ver. 0.169
-- FIX - poprawki w liście produktów +- FIX - poprawki w liĹ›cie produktĂłw
ver. 0.168
-- NEW - archiwum produktów +- NEW - archiwum produktĂłw
ver. 0.167
-- NEW - dodanie obsługi cen i stanów magazynowych kombinacji produktów +- NEW - dodanie obsĹ‚ugi cen i stanĂłw magazynowych kombinacji produktĂłw
ver. 0.166
-- NEW - współpraca z GTM +- NEW - współpraca z GTM
ver. 0.164/5
-- FIX - ukrywanie produktów nieaktywnych +- FIX - ukrywanie produktĂłw nieaktywnych
ver. 0.163
-- NEW - automatyczne podpowiadanie produktów do zestawu na podstawie wcześniejszych zakupów klientów +- NEW - automatyczne podpowiadanie produktĂłw do zestawu na podstawie wczeĹ›niejszych zakupĂłw klientĂłw
ver. 0.162
- NEW - GA4 @@ -794,7 +797,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - cron Baselinker
ver. 0.158
-- UPDATE - poprawa kolorystyki przycisków +- UPDATE - poprawa kolorystyki przyciskĂłw
ver. 0.157
- NEW - szybka zmiana statusu produktu @@ -806,10 +809,10 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - NEW - infinite scroll w widoku kategorii
ver. 0.154
-- FIX - atrybuty produktów +- FIX - atrybuty produktĂłw
ver. 0.153
-- FIX - atrybuty produktów +- FIX - atrybuty produktĂłw
ver. 0.152
- FIX - tematy maili @@ -818,7 +821,7 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - FIX - tematy maili
ver. 0.150
-- NEW - domyślna forma transportu +- NEW - domyĹ›lna forma transportu
ver. 0.149
- NEW - tematy maili @@ -836,11 +839,11 @@ NEW - Ukrywalne filtry tabel, mobilna wersja szczegÄ‚â€žĂ˘â‚¬ĹˇÄ - NEW - omnibus ready
ver. 0.144
-- FIX - usunięcie adresu marianek.pl z kodu +- FIX - usuniÄ™cie adresu marianek.pl z kodu
ver. 0.143
-- FIX - poprawa generowania plików WEBP +- FIX - poprawa generowania plikĂłw WEBP
ver. 0.142
-- FIX - poprawa adresu strony głównej +- FIX - poprawa adresu strony głównej
diff --git a/updates/versions.php b/updates/versions.php index fbb91a3..18845ce 100644 --- a/updates/versions.php +++ b/updates/versions.php @@ -1,5 +1,5 @@