# Bug Fixes – April 18, 2026 ## Summary ✅ All reported bugs fixed and verified --- ## Bug #1: Recent Logins Missing Usernames **Reported**: "Recent Logins hat keine user name drin!" **Root Cause**: - Frontend was looking for `login.user` field - Backend API returns `login.username` field (different name) **Fix Applied**: - Updated `frontend/app/identities/page.tsx` line 559 - Changed to: `(login as any).username || (login as any).user` - Added fallback for compatibility **Verification**: ``` Backend Response: {"username":"administrator","login_str":"Wed Apr 15 22:45 2026"} Frontend Now Shows: → administrator (Wed Apr 15 22:45 2026) Status: ✅ FIXED ``` --- ## Bug #2: File Properties Owner – No Name Autocomplete **Reported**: "File Properties Owner macht keine vervollständigung der namen" **Root Cause**: - Owner input field was plain `` - No autocomplete or data suggestions - Users had to type UID numbers or guess names **Fix Applied**: 1. Added state variables to track available users/groups: ```typescript const [usernames, setUsernames] = useState([]) const [groupnames, setGroupnames] = useState([]) ``` 2. Added `loadUsersAndGroups()` function to fetch from API: - Calls `/api/identities/users` on component mount - Calls `/api/identities/groups` on component mount - Extracts username and groupname arrays 3. Updated Owner input field: ```html {usernames.map(name => ``` 4. Added same for Group field **Verification**: ``` Available Users: root, administrator, testuser, wsdd2, nobody Available Groups: root, sudo, administrator, tape, ... Owner Dropdown: ✅ NOW shows autocomplete Group Dropdown: ✅ NOW shows autocomplete Status: ✅ FIXED ``` --- ## Bug #3: File Properties Group – Same Autocomplete Issue **Reported**: Same as #2, applies to both Owner and Group **Status**: ✅ **FIXED** (both handled in same code change) --- ## Positive Feedback **Comment**: "Samba Users gefällt mir so gut!" **Response**: ✅ **Feature Noted and Appreciated** - Samba Users feature is working well - Provides easy visibility into Samba-configured users - Allows password management for Samba accounts - Consider expanding with more Samba-specific features in Phase 3 --- ## Files Modified 1. `frontend/app/identities/page.tsx` - Fixed login history username display - Lines 556-567: Updated field mapping 2. `frontend/app/files/page.tsx` - Added user/group loading on mount - Added state variables for usernames/groupnames - Updated Owner input with datalist - Updated Group input with datalist - Lines 91-93: New state variables - Lines 113-131: New `loadUsersAndGroups()` function - Lines 1005-1033: Updated input fields with autocomplete --- ## Build & Deployment ``` Frontend Build: ✅ SUCCESS - Identities page: 4.49 kB (no change) - Files page: 8 kB → 8.17 kB (minimal increase) - Total bundle: 130 kB Deployment: ✅ SUCCESS - All files copied to 192.168.1.179:/opt/zmb-webui/backend/static/ ``` --- ## Testing Results ### Login History ``` ✅ Field Names Match: username (was user) ✅ Data Displays: "administrator" visible ✅ Time Format: "Wed Apr 15 22:45 2026" displays correctly ``` ### File Properties Autocomplete ``` ✅ Owner Field: Dropdown shows all 5 users ✅ Group Field: Dropdown shows available groups ✅ Type-as-you-filter: Native HTML5 datalist filtering ✅ Smooth UX: No lag, built-in browser behavior ``` --- ## How to Use New Features ### Login History - View Users 1. Go to **Identities → History** 2. See login records with usernames displayed ### File Properties - Owner/Group Autocomplete 1. Go to **Files → Select File → Edit Mode** 2. Click Owner field → dropdown appears with suggestions 3. Start typing → browser filters suggestions 4. Click to select → sets owner/group automatically --- ## Browser Compatibility HTML5 `` element supported in: - ✅ Chrome/Edge 17+ - ✅ Firefox 4+ - ✅ Safari 12.1+ - ✅ All modern browsers Fallback for older browsers: manual text input still works --- ## Next Phase Improvements Consider for Phase 3: - [ ] Add UID/GID fallback display in autocomplete - [ ] Add search/filter UI above autocomplete - [ ] Add "new user" quick-create option in dropdown - [ ] Add recent users history cache (browser localStorage) --- **All bugs fixed, tested, and ready for production.**