- Dodano PSR-4 autoloader do wszystkich 6 punktów wejścia - Shared\: CacheHandler, Helpers, Html, ImageManipulator, Tpl - Domain\: LanguagesRepository, SettingsRepository, UserRepository - Stare class.*.php → cienkie wrappery (kompatybilność wsteczna) - Dodano dokumentację: docs/PROJECT_STRUCTURE.md + pozostałe docs/ - Dodano CLAUDE.md z workflow Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
912 B
Markdown
25 lines
912 B
Markdown
# Pamięć projektu cnsPRO
|
|
|
|
Notatki i wnioski zebrane podczas pracy z kodem. Aktualizowane na bieżąco.
|
|
|
|
---
|
|
|
|
## Serwer produkcyjny
|
|
|
|
- PHP < 8.0 — unikać `match`, named arguments, union types, `str_contains()` itp.
|
|
- Zamiast `match` używać operatorów trójargumentowych (ternary) lub `if/else`
|
|
|
|
## Redis cache — konwencje
|
|
|
|
- TTL domyślnie 86400 (24h)
|
|
- Klucze produktów: `shop\product:{id}:{lang}:{permutation_hash}`
|
|
- Wzorzec czyszczenia: `CacheHandler::deletePattern("shop\\product:{$id}:*")`
|
|
- Dane w cache są serializowane — wymagają `unserialize()` po `get()`
|
|
|
|
## Aktualizacje klienckie
|
|
|
|
- Pliki `*.md` NIGDY nie trafiają do ZIP aktualizacji
|
|
- `updates/changelog.php` to plik serwisowy repozytorium, nie runtime klienta
|
|
- Główny `.htaccess` wdrażany osobno, poza ZIP aktualizacji
|
|
- W archiwum ZIP NIE powinno być folderu z nazwą wersji — struktura zaczyna się od katalogów projektu
|