This commit is contained in:
2026-05-20 13:30:10 +02:00
parent bc5cae7e82
commit 22c886b8f4
20 changed files with 1154 additions and 7 deletions

View File

@@ -0,0 +1,115 @@
# 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/<domena>/` (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/<id>`, `/Admin/Structure/Copy/id/<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/<Site>/path.config.php` — zmiana sciezek lamie autoloader.
- `.htaccess` (root, `Admin/`, `core/`, `template/`).