# 22-Apr-2026 —  Per-store app download visibility toggles and reflow  [#226](https://github.com/nbarrett/ngx-ramblers/issues/226)

## [build 619](https://github.com/nbarrett/ngx-ramblers/actions/runs/24768904941) — [commit 2bd5b18](https://github.com/nbarrett/ngx-ramblers/commit/2bd5b181d379060c9469958f701692cd11a18475)

_____

Adds optional Show in footer checkboxes next to the Apple and Google
URL fields in [Admin > System Settings > Footer](https://ngx-ramblers.org.uk/admin/system-settings?tab=footer), matching the style of
other footer link options. Each store can now be independently hidden
without having to clear its URL.

### Footer rendering changes:
- a store link is shown only when its URL is set and its show-in-footer
flag is not explicitly false
- the whole Download the app column is removed when neither store is
visible, rather than rendering as an empty column
- the remaining columns (Quick links, Legals, and optionally Download
the app) reflow to use the available space via Bootstrap col-lg with
col-sm-6 when only two extras are visible, instead of the previous
hardcoded four-equal-column grid leaving a gap where the app
download column used to sit

- Backwards compatibility: config-service migration seeds the new flags
from the existing URLs on first load, so existing sites continue to
show whatever app download links they currently have until the admin
chooses to hide them.
- See screenshot below for default App Store download images & visibility:

![](https://ngx-ramblers.org.uk/api/aws/s3/site-content/83e66c97-eb30-4c1f-9b41-dc905628bad0.jpeg)

- See screenshot below for App Store download images hidden causing footer columns to reflow from 3 to 2:

![](https://ngx-ramblers.org.uk/api/aws/s3/site-content/1ad454ce-af38-492f-a816-06ebbf1dca99.jpeg)

### integration-worker: detect changes against last-deployed ref

Replace the previous-push-based diff with a diff against the last
commit that actually deployed the integration worker, tracked via a
`refs/heads/worker-deployed` branch that advances only after a
successful worker deploy.

Previously `detect-worker-changes.ts` compared HEAD against
`GITHUB_EVENT_BEFORE` (or `HEAD~1` as fallback) and intersected the
changed files with the worker's madge-derived dependency graph. Because
the graph reaches shared models under `projects/ngx-ramblers/src/app/
models/*`, almost every push mutated some file in it, so the worker
redeployed on essentially every build even when its own behaviour was
unchanged.