# Impact Map **Wygenerowano:** 2026-05-20 (`$paul-map-codebase`, mode: full) **Quality Radar status:** codebase-memory-mcp ok (indeks: 21402 wezlow, 52193 krawedzi). ## Glowne domeny i strefy zmian ### Bootstrap / jadro - `index.php`, `Admin/index.php` - `core/core.php` (`Core::Init`, `Core::LoadConfig`, `Core::LoadSmarty`, `Core::LoadClass`) - `core/ErrorHandler.php` - `core/class/Config.class.php`, `core/class/Registry.class.php`, `core/class/Router.class.php`, `core/class/FrontController.class.php`, `core/class/Controller.class.php`, `core/class/MainController.class.php`, `core/class/Request.class.php` ### Routing - `routes.php` (strona publiczna) - `Admin/index.php` (trasy admina inline — kandydat do wyciagniecia do `Admin/routes.php`) - `core/temp/Strona/Router.cache`, `core/temp/Package/Router.cache` ### Tresci (SimpleArticle / News / Boxy) - Kontrolery: `controller/SimpleArticle/IndexController.php`, `Admin/controller/SimpleArticle/IndexController.php`, `Admin/controller/SimpleArticle_/IndexController.php`. - Modele: `core/model/SimpleArticle/MfArticle*`, `core/model/News*`, `core/model/MfArticleBox*`. - Szablony: `template/partial/SimpleArticle/Index/*`, `template/partial/Shared/News.tpl`. ### Produkty / katalog - Kontrolery: `controller/ProductController.php`, `Admin/controller/Product*Controller.php` (Product, ProductCategory, ProductAttribute, ProductSeries, ProductSpec). - Modele: `core/model/MfProduct*`, `core/model/ShopSeries*`, `core/model/Products*`. - Szablony: `template/partial/Product/*`. ### Struktura / menu - Kontrolery: `Admin/controller/StructureController.php` (+ wariant `.php_`). - Modele: `core/model/Structure*`, `core/model/MfLink*`, `core/model/MfRouter*`, `core/model/LinkLangDAL.class.php`. - Szablony: `Admin/template/partial/Structure/*` (do potwierdzenia). - Routy admina: `addStructure`, `editStructure`, `copyStructure`, `customerEdit{pl,en,ru,de}` w `Admin/index.php:30-36`. ### Strona glowna - `Admin/controller/HomeController.php`, `Admin/controller/HomeSiteController.php`, `Admin/controller/MainSiteController.php`. - Modele: `core/model/MfHomeSite*`. ### Wyszukiwarka - `controller/SearchController.php` - Biblioteka: `core/lib/Zend/Search/Lucene.php`. - Routy: `searchpl`, `searchen`, `searchde` w `routes.php:13-15`. - Szablon: `template/partial/Search/Index.tpl`. ### Pliki / obrazy / uploady - Kontrolery: `controller/FileController.php`, `controller/ImageController.php`, `Admin/controller/FileController.php`, `Admin/controller/ImageController.php`, `Admin/controller/UploaderController.php`. - Modele: `core/model/MfFile*`, `core/model/Image*`, `core/model/Picture*`, `core/model/Photo*`. - Storage: `Static/upload/Article/*`, `Static/thumbs/*`. - Lib: `core/lib/WideImage/`, `core/lib/mImage.class.php`. ### Mapy / strona mapy serwisu - `controller/MapsController.php`, `controller/IndexController::Maps` (`routes.php:11-12`). - Modele: `core/model/FkMaps*`. - Szablony: `template/partial/Index/Maps.tpl`, `template/partial/Module/Maps.tpl`, `template/partial/Module/AjaxMapsList.tpl`. ### Formularz kontaktowy / newsletter / captcha - `controller/IndexController.php` (`Newsletter`, `Forum`, `Captcha`, `AjaxRegisterCaptchaCheck`, `AjaxForm`). - `controller/SimpleArticle/IndexController.php::FormSent` (`routes.php:3`). - Szablony: `template/partial/Index/AjaxForm.tpl`, `template/partial/Index/Captcha.tpl`, `template/partial/Index/IndexSent.tpl`. ### Tlumaczenia JS - `controller/TranslateController.php` -> `template/partial/Translate/Js.tpl`. ### Autoryzacja / uzytkownicy - `Admin/controller/LoginController.php`, `Admin/controller/UserController.php`. - Moduly: `module/AuthDAL.mod.php`, `Admin/module/AuthDAL.mod.php`, `Admin/module/Admin.mod.php`, `Admin/module/AdminDAL.mod.php`. - Sesja: `core/class/SessionProxy.class.php`, `session_start()` w `Admin/index.php:24`. ### Konfiguracja runtime - `core/config/{Strona,Admin,Server,Package}/*.config.php`. - Konfiguracja w bazie: `SetupDAL::GetAllVariables()` (`core/core.php:77`) -> tabela `setup`. - Kontroler admin: `Admin/controller/SetupController.php`, `Admin/controller/ConfigController.php`. ### Logowanie / monitoring - `core/class/MFLog.class.php`, `core/lib/log4php/`. - Konfiguracja: `core/config/Log4PHPConfig*.xml`. - Plik `error_log` w roocie. ### Skrypty pomocnicze / archiwizacja - `pack.php`, `pack/`, `tar.php`, `zip.php`, `_unpack.php`, `makl.php`, `info.php` — standalone, omijaja FrontController. ## Ukryte sprzezenia (hidden coupling) - `Core::LoadClass()` (`core/core.php:173`) inteligentnie zgaduje sciezki na podstawie wielkich liter i `_` — przemianowanie klasy moze rozsynchronizowac autoloader, zwlaszcza dla modeli w `core/model//` (np. `SimpleArticle`). - `Registry::Set('db' | 'dbTemp' | 'smarty' | 'javascript' | 'title')` — globalny stan, kontrolery zalozono ze odczyta je z rejestru. - `Router::$parseLang` ustawiana w `index.php:35` (true) vs `Admin/index.php:46` (false) — bledne zalozenie moze rozbic linki jezykowe. - Tabela `setup` (przez `SetupDAL`) modyfikuje zachowanie w runtime; awaria bazy -> `Core::SetAppSafeMode()` cicho zmienia tryb. - `Admin/index.php` rejestruje tasy `customerEdit{pl,en,ru,de}` z twardo zakodowanymi `id` (18/52/30/40) — zmiana strukturow w bazie wymaga aktualizacji kodu. ## Obszary do reczne weryfikacji (UAT) - Glowne wejscia: `/`, `/index`, `/mapa_serwisu`, `/site_map`, `/wyszukaj`, `/search`, `/newsletter`, `/forum`, `/captcha`, `/translate/js`, `/ajaxForm`, `/formContactSent`. - Admin: `/Admin/`, `/Admin/Structure/Add`, `/Admin/Structure/Edit/id/`, `/Admin/Structure/Copy/id/`, `/Admin/customer/gallery/{pl,en,ru,de}`. - Logowanie admin (LoginController) i sesja po `session_start`. ## Konfiguracja, ktora niesie ryzyko zmian - `core/config/Strona/db.config.php`, `core/config/Admin/db.config.php` (poswiadczenia DB). - `core/config//path.config.php` — zmiana sciezek lamie autoloader. - `.htaccess` (root, `Admin/`, `core/`, `template/`).