eSite
Modulární editor webů pro eWeb a eUpdate. Vývojová alpha.
Documentation and check-in manual
Releases
Older versions (38)
- 0.1.0-rc.15 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.14 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.13 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.12 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.11 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.10 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.9 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.8 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.7 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.6 · 2026-11-07 · ZIP · JSON
- 0.1.0-rc.5 · 2026-11-06 · ZIP · JSON
- 0.1.0-rc.4 · 2026-11-06 · ZIP · JSON
- 0.1.0-rc.3 · 2026-11-06 · ZIP · JSON
- 0.1.0-rc.2 · 2026-11-06 · ZIP · JSON
- 0.1.0-rc.1 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.24 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.23 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.22 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.21 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.20 · 2026-11-06 · ZIP · JSON
- 0.1.0-beta.19 · 2026-11-05 · ZIP · JSON
- 0.1.0-beta.18 · 2026-11-05 · ZIP · JSON
- 0.1.0-alpha.17 · 2026-11-05 · ZIP · JSON
- 0.1.0-alpha.16 · 2026-11-04 · ZIP · JSON
- 0.1.0-alpha.15 · 2026-11-04 · ZIP · JSON
- 0.1.0-alpha.13 · 2026-11-04 · ZIP · JSON
- 0.1.0-alpha.12 · 2026-10-30 · ZIP · JSON
- 0.1.0-alpha.11 · 2026-10-30 · ZIP · JSON
- 0.1.0-alpha.10 · 2026-10-30 · ZIP · JSON
- 0.1.0-alpha.9 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.8 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.7 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.6 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.5 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.4 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.3 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.2 · 2026-10-29 · ZIP · JSON
- 0.1.0-alpha.1 · 2026-10-29 · ZIP · JSON
README
# eSite 0.1.0-alpha.1
První vývojový základ modulárního editoru webů pro PHP 8, eWeb a eUpdate. Jedna instalace obsluhuje jednu doménu. Obsah a nastavení zůstávají v JSON; bazar a články mohou používat MySQL. Obsahuje deset responzivních vzhledů v `html/` a integraci `pavel852/php-templates` 2.6.1.
**Stav:** zdrojová alpha určená pro testovací doménu. PHP ani Composer nejsou v prostředí autora této dodávky dostupné, proto nebyl proveden PHP lint, spuštění aplikace, SQL test ani živá integrace eUpdate/eWeb. JavaScript a datové/balíčkové struktury byly kontrolovány samostatně. Automatická kontrola přístupu neumožnila dokončit prohlížečové QA. Přiložené testy je nutné spustit na PHP serveru.
## Obsah
- `docs/PROJEKT_CZ.md`: architektura, úplná specifikace a konkrétní hranice alpha verze.
- `docs/EUPDATE.md`: registrace jádra/modulů, licencování, check-in a balíčky.
- `docs/TEMPLATES.md`: skutečné API knihovny, původ offline závislostí a Composer.
- `html/`: 10 vzhledů. Každý obsahuje HTML šablonu, CSS a JSON manifest.
- `public/`: jediný veřejný document root, frontend controller a administrační assets.
- `src/`: JSON úložiště, správci obsahu, auth, moduly, SQL adaptér, zálohy a aktualizace.
- `tests/run.php`: připravené PHP regresní testy bez sítě.
## Instalace na testovací eWeb
Požadavky: PHP 8.0–8.x, `json`, `mbstring`, `fileinfo`, `curl`, `zip`; pro MySQL též `pdo_mysql`. CLI PHP i PHP-FPM musí mít stejné potřebné moduly. Souborové zámky vyžadují lokální filesystem; aktivní/aktivní zápis z více serverů není podporován.
1. Rozbalte core ZIP do neveřejné pracovní složky. Neměňte document root existujícího produkčního webu.
2. Pod uživatelem domény, pod kterým běží PHP-FPM, spusťte:
```bash
php bin/install.php --target=/srv/web/test.cz/esite --origin=https://test.cz --login=admin --name=eSite
```
Heslo o délce alespoň 12 znaků se načte ze standardního vstupu; nevkládá se do argumentů procesu. Instalátor vytvoří privátní data, náhodnou identitu a check-in klíč. Odmítne již existující instalaci. Přiložený offline snapshot knihoven umožňuje instalaci bez sítě k Composeru.
3. V eWeb nastavte document root na `/srv/web/test.cz/esite/current/public`. Doplňte správný socket PHP poolu podle `packaging/nginx.conf.example`. Pro Apache je přiložen `.htaccess`; povolte mod_rewrite a příslušný AllowOverride.
4. Pro PHP upload nastavte `upload_max_filesize=100M`, `post_max_size=110M`; pro import větších záloh je potřeba vyšší limit podle velikosti souboru. `memory_limit` nastavte nejméně na `256M`; u větších JSON katalogů a záloh ověřte reálnou spotřebu. AI volání může vyžadovat delší timeout poolu i proxy.
5. Otevřete `https://test.cz/admin`, zkontrolujte nastavení názvu, domény a jazyků. V Nastavení zadejte AI připojení a podle potřeby MySQL. Aplikace neposkytuje veřejný webový instalační formulář.
6. Odešlete check-in a schvalte instalaci v eUpdate. Samostatné modulové ZIPy nahrajte do projektu `esite` jako placené moduly. Přiřaďte licence, znovu načtěte nabídku a nainstalujte modul přes administraci.
7. Přidejte cron podle `packaging/cron.example`. Kontroluje eUpdate denně, tvoří denní zálohu a ponechává posledních 14 ZIPů.
Nespouštějte PHP pool jako root. Privátní JSON, média a zálohy žijí v `shared/var` mimo veřejný kořen; webserver nesmí zpřístupnit celý instalační adresář. Dokumentace nepožaduje vypnutí kontroly HTTPS certifikátů ani práva 0777.
## Kontroly na PHP serveru
```bash
find src public bin tests modules -name '*.php' -print0 | xargs -0 -n1 php -l
php tests/run.php
node tests/admin-smoke.cjs
php /srv/web/test.cz/esite/current/bin/console.php status
php /srv/web/test.cz/esite/current/bin/console.php checkin
php /srv/web/test.cz/esite/current/bin/console.php backup
```
Testy připravují vlastní dočasný adresář a nevyžadují produkční přístupy. Samostatně ověřte přihlášení, mobilní navigaci všech motivů, upload, XML, souhlasy měření, JSON/MySQL režim, migraci, zálohu a obnovu. Funkční test aktualizace potřebuje druhé vydání a skutečné eUpdate.
## Návrat na předchozí kód
Předchozí složka pod `releases/` zůstává zachována. Pod uživatelem domény lze připravit nový symbolický odkaz a atomicky jím nahradit `current`. To vrací kód; nevrací samo data. Při budoucích změnách schématu bude nutná odpovídající obnova zálohy. Obnova ZIP v alpha verzi vyžaduje přesně stejnou verzi eSite.
## Rozsah první verze
Editor je blokový, ne volné kreslicí plátno. Moduly obsahují zdrojovou implementaci a placené manifesty, jejich ceny a licenční podmínky musí stanovit vlastník. Registrace nemá ověřovací e-mail; seznamy v administraci a uživatelském účtu zatím zobrazují prvních 20 záznamů. Automatické nasazení do konkrétního eWebu a jeho případného clusteru není ověřeno. Detaily a další vývojové kroky jsou v `docs/PROJEKT_CZ.md`.
Nové jádro a moduly nemají automaticky přidělenou veřejnou softwarovou licenci; o podmínkách rozhodne vlastník eSite. Původní knihovny v `vendor/pavel852` si zachovávají své licence MIT.