From cbc2462ea4f1fb0c2a1bff17211f9992c9ec7292 Mon Sep 17 00:00:00 2001 From: Jacek Pyziak Date: Sun, 26 Apr 2026 00:58:35 +0200 Subject: [PATCH] =?UTF-8?q?build(update):=20paczka=201.696=20=E2=80=94=20D?= =?UTF-8?q?omain=20layer=20kompletny=20(Phase=205)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- docs/PROJECT_STRUCTURE.md | 24 +++++++++++++++-------- updates/1.60/ver_1.696.zip | Bin 0 -> 7514 bytes updates/1.60/ver_1.696_manifest.json | 28 +++++++++++++++++++++++++++ updates/versions.php | 2 +- 4 files changed, 45 insertions(+), 9 deletions(-) create mode 100644 updates/1.60/ver_1.696.zip create mode 100644 updates/1.60/ver_1.696_manifest.json diff --git a/docs/PROJECT_STRUCTURE.md b/docs/PROJECT_STRUCTURE.md index b3f72a8..d1df427 100644 --- a/docs/PROJECT_STRUCTURE.md +++ b/docs/PROJECT_STRUCTURE.md @@ -60,19 +60,27 @@ Stare klasy (`class.S.php`, `class.Cache.php`, itd.) są teraz cienkimi wrapperami — zachowana pełna kompatybilność wsteczna. Helpers::send_email() → Email, Helpers::get_token()/is_token_valid() → CsrfToken. -### Faza 2 (w toku) - Domain Repositories (`autoload/Domain/`) +### Faza 2 ✓ — Domain Repositories (`autoload/Domain/`) — KOMPLETNE (13/13) ``` autoload/Domain/ -├── Languages/LanguagesRepository.php ← \Domain\Languages\LanguagesRepository ✓ -├── Settings/SettingsRepository.php ← \Domain\Settings\SettingsRepository ✓ -├── User/UserRepository.php ← \Domain\User\UserRepository ✓ -├── Pages/PagesRepository.php ← \Domain\Pages\PagesRepository ✓ -├── Layouts/LayoutsRepository.php ← \Domain\Layouts\LayoutsRepository ✓ -└── Articles/ArticlesRepository.php ← \Domain\Articles\ArticlesRepository ✓ +├── Articles/ArticlesRepository.php ← \Domain\Articles\ArticlesRepository ✓ +├── Authors/AuthorsRepository.php ← \Domain\Authors\AuthorsRepository ✓ +├── Banners/BannersRepository.php ← \Domain\Banners\BannersRepository ✓ +├── Cron/CronRepository.php ← \Domain\Cron\CronRepository ✓ +├── Languages/LanguagesRepository.php ← \Domain\Languages\LanguagesRepository ✓ +├── Layouts/LayoutsRepository.php ← \Domain\Layouts\LayoutsRepository ✓ +├── Newsletter/NewsletterRepository.php ← \Domain\Newsletter\NewsletterRepository ✓ +├── Pages/PagesRepository.php ← \Domain\Pages\PagesRepository ✓ +├── Releases/ReleasesRepository.php ← \Domain\Releases\ReleasesRepository ✓ +├── Releases/UpdateRepository.php ← \Domain\Releases\UpdateRepository ✓ +├── Scontainers/ScontainersRepository.php ← \Domain\Scontainers\ScontainersRepository ✓ +├── SeoAdditional/SeoAdditionalRepository.php ← \Domain\SeoAdditional\SeoAdditionalRepository ✓ +├── Settings/SettingsRepository.php ← \Domain\Settings\SettingsRepository ✓ +└── User/UserRepository.php ← \Domain\User\UserRepository ✓ ``` -Następne: `Domain\Scontainers`, `Domain\Banners`, `Domain\Authors`, `Domain\Newsletter`, ... +Następne: `Admin\` namespace (Fazy 6–13), `Frontend\` namespace (Fazy 14–16). --- ## Katalogi diff --git a/updates/1.60/ver_1.696.zip b/updates/1.60/ver_1.696.zip new file mode 100644 index 0000000000000000000000000000000000000000..7b00592c922d6d0787f20a6277dac27e1a81e714 GIT binary patch literal 7514 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 literal 0 HcmV?d00001 diff --git a/updates/1.60/ver_1.696_manifest.json b/updates/1.60/ver_1.696_manifest.json new file mode 100644 index 0000000..ed76c08 --- /dev/null +++ b/updates/1.60/ver_1.696_manifest.json @@ -0,0 +1,28 @@ +{ + "changelog": "NEW - Domain layer kompletny: SeoAdditional, Cron, Releases, Update repositories", + "version": "1.696", + "files": { + "added": [ + "autoload/Domain/Cron/CronRepository.php", + "autoload/Domain/Releases/ReleasesRepository.php", + "autoload/Domain/Releases/UpdateRepository.php", + "autoload/Domain/SeoAdditional/SeoAdditionalRepository.php" + ], + "deleted": [ + + ], + "modified": [ + "autoload/admin/factory/class.SeoAdditional.php", + "autoload/admin/factory/class.Update.php", + "autoload/class.Cron.php" + ] + }, + "checksum_zip": "sha256:9480c32af77c687863be5c690d2a65a241b95358bc77fb9b51b2c392e6040bc0", + "sql": [ + + ], + "date": "2026-04-26", + "directories_deleted": [ + + ] +} \ No newline at end of file diff --git a/updates/versions.php b/updates/versions.php index 9be339d..3186669 100644 --- a/updates/versions.php +++ b/updates/versions.php @@ -11,7 +11,7 @@ $mdb = new medoo( [ 'charset' => 'utf8' ] ); -$current_ver = 1695; // aktualizowane automatycznie przez build-update.ps1 +$current_ver = 1696; // aktualizowane automatycznie przez build-update.ps1 // 1. Skan filesystem — lista istniejÄ…cych ZIPĂłw $versions = [];