diff --git a/Plugin/unraid/README-unraid.md b/Plugin/unraid/README-unraid.md index 052fef1..b6a484b 100644 --- a/Plugin/unraid/README-unraid.md +++ b/Plugin/unraid/README-unraid.md @@ -85,14 +85,19 @@ templates, and the WebGUI install path. ## ━━━ THE WEB UI — THREE LAYERS ━━━ ``` - pages/*.php what you look at ── requires ──► include/ + pages/*.php what you look at ── polls ─────► api/ api/*.php what the page fetches ── requires ──► include/ - include/*.php the actual logic — vv_*() functions, shared by both + include/*.php the actual logic — vv_*() functions ``` -The split matters: a page and its API endpoint call **the same** `vv_*()` builders, so a -cached response and a live one cannot disagree in shape. Adding a metric means adding it in -`include/` once, and both the page and the endpoint get it. +**Most pages hold no logic at all.** Eight of the eleven are pure view — markup, CSS and a +poll loop, with every value arriving as JSON from `api/`. Only `auth.php`, `monitor.php` and +`scheduler.php` require an `include/` file directly, and then only to server-render their +initial state; their mutations still go through endpoints. + +That is why the layer split holds: a page and its endpoint cannot disagree about what a value +means, because the page does not compute it. Adding a metric means adding it in `include/` +once, and the endpoint, the cache writer, and the page all pick it up together. | Layer | Files | Role | |-------|-------|------| diff --git a/Plugin/unraid/pages/arrs.php b/Plugin/unraid/pages/arrs.php index 9272796..00d8556 100644 --- a/Plugin/unraid/pages/arrs.php +++ b/Plugin/unraid/pages/arrs.php @@ -1,3 +1,31 @@ +