Conversation
…ty fixes
Groups:
- Add group creation modal (add_group_modal.tmpl) replacing inline form
- Add bulk member add modal with user list and checkboxes (group_add_members_modal.tmpl)
- Add delete-group and remove-member confirmation modals replacing alert()/confirm()
- Restyle group detail page: flush full-width layout, members table matches All Groups
style (zebra rows, flat rounded border, icon-only remove button)
- Remove back button from group detail header; title+buttons always in one row
- Show toast notifications for add-members success/error via HX-Trigger
Queues:
- Move queue detail page from /ui/groups/{id}/pcq to /ui/queues/{group_id}
(301 redirects kept for legacy paths)
- Add per-queue is_disabled flag (schema patch + idempotent ALTER TABLE)
- Disable/Enable toggle button on queue detail and overview table rows
- Disabled queues excluded from LoadPeerLimits/LoadPeerLimitsForGroup (AND p.is_disabled=0)
- Overview table shows "Limits Off" red badge for disabled queues
- Queue detail: tc preview collapsed by default with chevron toggle
- Queue detail: buttons moved to right, back button removed, description in header
- Hide "Groups without a queue preset" panel when every group has a preset
PCQ / NETPLUG_PCQ_DISABLE:
- reconcilePCQ() and startup pcq.Apply call are skipped entirely when PCQDisabled=true;
no tc commands run at all when the flag is set
- Auto-inject PCQDisabled into every view.Render call via view.SetPCQDisabled()
- Sidebar Queues item renders as a non-clickable disabled element with a body-level
fixed tooltip ("Queues is disabled") when NETPLUG_PCQ_DISABLE=1
- Queues pages show an amber banner explaining shaping is inactive
UI / UX:
- Rebuilt Tailwind CSS bundle (npm run build:css) — all emerald/amber/teal/red classes
now compiled; previously added classes were missing from the bundle
- Richer toast notifications: per-type color scheme (success/error/warning), left accent
stripe, SVG icon, close button, slide-in/out animation
- QR config modal: WireGuard syntax highlighting, trailing whitespace trimmed, copy
button shows "Config copied!" feedback and swaps to check icon
- Delete Group button style matches VPN User delete (border-red-700, transparent bg)
- Linux tc preview section: collapsed by default, click header to expand/collapse
- Sidebar active state follows sub-paths (/ui/groups/123 activates Groups item)
Docker:
- Add openresolv to Alpine runner image so wg-quick DNS= lines work (resolvconf)
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.
feat: groups/queues UI overhaul, per-queue disable, and PCQ reliability fixes
Groups:
style (zebra rows, flat rounded border, icon-only remove button)
Queues:
(301 redirects kept for legacy paths)
PCQ / NETPLUG_PCQ_DISABLE:
no tc commands run at all when the flag is set
fixed tooltip ("Queues is disabled") when NETPLUG_PCQ_DISABLE=1
UI / UX:
now compiled; previously added classes were missing from the bundle
stripe, SVG icon, close button, slide-in/out animation
button shows "Config copied!" feedback and swaps to check icon
Docker: