Repository navigation
Release: merge development into beta - #1372
Open
github-actions[bot] wants to merge 223 commits into
Open
github-actions[bot] wants to merge 223 commits into
github-actions[bot] wants to merge 223 commits into
Conversation
ActionAuthService::requireAction() throws OCSForbiddenException. The news,
newsletter, activity and event controllers let it escape, and since they
extend the plain Controller, Nextcloud's OCSMiddleware rethrows it: a
signed-in user without the action got a 500 page and an error-level log
line instead of a 403. PortalAuthMiddleware now maps the exception to the
same {"error": "forbidden"} 403 that PollController and
EmergencyPushController return, which covers all their call sites. Portaliq
has no OCSController, so no OCS envelope is replaced.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The error envelope requires a human-readable, localised message next to
the machine-readable slug. The middleware now gets IL10N and answers
{message, error: forbidden}; en/nl catalogues and their .js are rebuilt.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…bidden-403 # Conflicts: # l10n/en.js # l10n/en.json # l10n/nl.js # l10n/nl.json
Every cell of both columns checked against the current release and stamped with its read date. 60 unknown cells settled (39 Open Inwoner, 21 NL Portal), 27 Open Inwoner line numbers moved to v2.4.5, two placeholder paths resolved. NL Portal graded source-read with readVersion; 4.0.0 on main is unreleased and noted per cell.
…new boards 41 unreferenced portaliq boards on canvas part 1 now sit on the rows they deliver; 12 rows that had no board get one. Every row with a board already carried the part-1 canvas id. Seven boards deliver no row and are listed for a decision, not added.
docs(parity): re-drive Open Inwoner and NL Portal, link capabilities to the split design canvas
github-actions
Bot
requested review from
Rem-Dam and
rubenvdlinde
as code owners
October 8, 2026 05:44
…and the unmapped boards, case page and contacts changes
…templates, actions, password reset, search suggestions, FAQ and finder, help, untranslated names
docs(openspec): rows and specs for capabilities the design canvas draws
…0261008070435 chore(sync): carry beta back into development
…ny set (site-content-blocks-styled) (#1363) * wip(site): link list landmark and table container * fix(site): a table, a melding and a link list look like the design on any set (site-content-blocks-styled) * test(site): the pixel baseline of a link list carries its landmark name
rubenvdlinde
requested review from
SudoThijn,
WilcoLouwerse,
bbrands02,
remko48 and
rjzondervan
as code owners
October 8, 2026 07:28
…ows-its-heading) (#1367) * wip(site): the hero shows heading, lead and search together; hero type scale * fix(site): a visible hero heading keeps its distance from the search card
…s unknown until rated Decision 97. System entry with readVersion (tag 4.0.1, 0582e697; SDK 4.0.2 pinned by .sdk-release), sources with null reasons, roadmap from the GitHub milestones and four TenderNed e-formulieren tenders. Every row carries an unknown cell with a not-checked reason until the column is rated.
Source read at 4.0.1 (backend) and SDK 4.0.2, path:line on every cell. 46 yes, 66 partial, 183 no, 5 unknown. Rows outside a form product (resident accounts, case lists, inbox, CMS, site search) are no with the reason on the cell. Intake rows the Open Inwoner column rates partial via Open Forms are yes here where the form product delivers them; payment cites Worldline, since the Ogone plugin is gone at 4.0.1.
docs(parity): Open Formulieren as a competitor column (decision 97)
…rmulieren rows (decision 104)
…rmulieren rows (decision 104)
… keeps its columns on one row (site-page-layout) (#1368)
… key (collection-column-labels) (#1369)
…at quotes the error (dexie-check-reads-dev-bundles) (#1370)
… for a Nextcloud user (an-app-provisions-a-nextcloud-account) (#1381)
… their changes (decision 104)
feat: build open OpenSpec changes (portaliq, part 3)
Conflicts: PortalSessionService (the per-account revoke moves onto PortalSessionRevoker::revokeAll(subjectRef:)), l10n en/nl (both sides' keys kept, js rebuilt). example-site spec expects register 0.93.0.
…s endpoint, lazy-load the email-link form, mark the token ledger demo-exempt
* chore(deps): nextcloud-vue ^2.74.0 for the board look * feat(design): board look, Dutch labels, nav chrome and list setup for the beheer screens * fix(design): footer sections and dashboard icon follow the chrome gates, nl catalogue keys, menu test ignores captions * fix(design): Documentation, Store and Features stay in the footer section (ADR-114) * fix(design): Reports goes back to the settings foldout (ADR-112/114 amended)
…ss, EmailLinkLimits, EmailLinkRequestJob
…ubmission, message, portal headers follow the boards (#1464)
Ruben, 2026-10-09: Woo request handling moves to dossiq as a case type and residents work with us on their Woo dossier. The change woo-dossier-in-my-cases puts the open question with its answer form on the case page, shows the sentence the case app writes about the term, and links to where the result is public. All three are generic; the Woo case is the first to use them.
feat: build open OpenSpec changes (portaliq, part 4)
…h strings follow the boards (#1479) * feat(design): detail pages in the v2 shape (tab strip, Historie last, side column), account and news dialogs follow the boards, lib translations no longer overwritten by English * fix(design): account stat titles in Dutch * feat(design): Account, Message, Submission as body cards with a side column, Dashboard attention card and list cards, lint accepts banner, table and stat * fix(design): header buttons that name a header action carry a label, so the primary buttons show * chore(deps): nextcloud-vue ^2.77.0 (board look topbar and brand block) * feat(design): brand block, withdraw card and Dutch side-column titles on the account page * fix(l10n): example hint for the audience field in Dutch
…extcloud-vue 2.78.0, shared library and integrations strings (#1483)
…nd setup text follow the boards, nextcloud-vue 2.79.0 (#1484)
…ing header and layout (#1486)
…form icon and dialog padding (#1488)
…olumn, tabs, composites) (#1489)
…ec for domains and editors (#1490)
…t patches only what changed (#1491) Certificate probe in PortalDomainVerifier (injectable, no private hosts), portal schema 0.25.0 (domains[].certificateValidUntil/CheckedAt, editors), Domeinen and Beheerders cards on the Instellingen tab, Beheerders and certificate rows in the side summary card. Gegevens van de portal now sends a PATCH with the changed keys instead of a full PUT.
…es (#1492) nextcloud-vue 2.80.0's resolveFilterTokens imports widgetVisibility, which brings @nextcloud/axios and generateOcsUrl into visibleWhen.js's import chain. The embed entry grew past its 160 KiB budget and the node specs that mount the intake and embed forms failed on axios reading the request token on import. The public bundles' stub now covers axios and generateOcsUrl too, and the node mounter applies the same swap with a resolve hook.
… as field-list (#1495) * chore(deps): nextcloud-vue 2.80.0, and stub axios in the public bundles nextcloud-vue 2.80.0's resolveFilterTokens imports widgetVisibility, which brings @nextcloud/axios and generateOcsUrl into visibleWhen.js's import chain. The embed entry grew past its 160 KiB budget and the node specs that mount the intake and embed forms failed on axios reading the request token on import. The public bundles' stub now covers axios and generateOcsUrl too, and the node mounter applies the same swap with a resolve hook. * feat(settings): the Instellingen tab is a sections widget, Domeinen and Beheerders are field-list widgets PortalSettings, PortalDomains and PortalEditors give way to nextcloud-vue's sections and field-list widgets, configured in the manifest (lane A note migrate-portaliq). The six other settings parts stay app widgets, each now registered on its own; PortalDetailsForm gets its registry entry. - Domeinen keeps a remove button (the board has a row menu); host names are refused unless lower case, by the pattern. - POST /api/cms/domains/verify answers a translated message, which the list shows after Check again. The parameters ride in the query string, because the 2.80 manifest schema refuses an @Row token in a request payload. - The details section is titled 'Details of the portal': the manifest's i18n already maps 'Portal details' to 'Instellingen' for the Overzicht data. - The tab strip and the home-page banner size to their content (sizeToContent: true), so the long settings stack no longer scrolls inside a fixed cell. A number there is GridStack's MAXIMUM, not a minimum. - placement.mjs and validate-manifest.js count sections children as placed.
… not scroll inside its cell (#1498) The attention banner drew 122 px of content in an 86 px body (two 80 px rows) and scrolled inside the cell. It now spans three rows; the cells below it move down one row.
…'s sections instead of an empty Algemeen (#1500)
…saved, not the page as it loaded (#1502)
…title with e-mail line, approval banner, five filters (#1504)
…u card, date and badge cells in the submissions list (#1507)
…host, pages count, last published (#1509)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated PR to sync development changes to beta for beta release.
Merging this PR will trigger the beta release workflow.