Add dashboard IPs/restart/connections, SMB read-only and recycle bin
Dashboard: - Server IPs card showing all non-loopback IPv4 interfaces - Restart buttons next to smbd/nfsd status dots (POST /api/service/<name>/restart) - Active SMB connections table (smbstatus -b parsed in backend) SMB edit modal: - Read only toggle (writable vs read only in smb.conf) - Recycle Bin toggle (vfs objects = recycle, files go to .recycle folder) Docs: PLANNING.md phase 3.5, README recycle bin + read-only, CLAUDE.md JS overview Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
1810d60d21
commit
1be6a05cef
7 files changed
+171
-21
No files matched your search
+14
-1
@@ -89,7 +89,20 @@ MicroNAS/
|
||||
- [x] Status indicator per share row (green/red dot, reduced opacity when
|
||||
disabled).
|
||||
|
||||
### Phase 4 — Nice-to-have
|
||||
### Phase 3.5 — Share & dashboard polish ✅
|
||||
- [x] **Permission editor in edit modal** — owner, group, chmod mode per share
|
||||
folder. Owner/Group are dropdowns from live system users/groups.
|
||||
- [x] **Group management** — create/delete groups, add/remove members. Users tab.
|
||||
- [x] **SMB extra settings** — force user, force group, guest ok, read only,
|
||||
recycle bin (vfs objects = recycle, files go to .recycle inside share).
|
||||
- [x] **NFS extra settings** — no_root_squash, all_squash toggles.
|
||||
- [x] **Server IPs on dashboard** — shows all non-loopback IPv4 addresses.
|
||||
- [x] **Service restart buttons** — restart smbd / nfsd from the dashboard.
|
||||
- [x] **Active SMB connections** — live table on dashboard via smbstatus.
|
||||
- [x] **Delete confirmation modal** — replaces browser confirm().
|
||||
- [x] **Auto-refresh countdown** — 30 s timer with live seconds display.
|
||||
|
||||
### Phase 4 — WebDAV + extras
|
||||
- [ ] **WebDAV** support. Preferred approach: drop an Apache/nginx config
|
||||
snippet — don't build it in Flask.
|
||||
- [ ] Simple in-browser file browser for `/srv`.
|
||||
|
||||
Reference in new issue
Block a user