Remove user rename feature; add www-data hint in WebDAV edit modal

- Removed PATCH /api/users/<name> route (rename_user)
- Removed renameModal from index.html
- Removed openRenameModal/submitRename from users.js
- Removed Rename button from users table
- Removed rename docs from README
- Added green info box in WebDAV edit modal: set group=www-data, mode=775

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
marcandClaude Sonnet 4.6 committed 2026-06-20 17:01:56 +02:00
1 parent f081496b4b
commit b6179865b5
5 files changed
+5 -70

No files matched your search

-21
View File
@@ -936,27 +936,6 @@ def change_admin_credentials():
return jsonify({'status': 'updated'})
@app.route('/api/users/<name>', methods=['PATCH'])
@require_auth
def rename_user(name):
if not VALID_NAME.match(name):
return jsonify({'error': 'invalid username'}), 400
new_name = (request.json or {}).get('name', '').strip()
if not new_name or not VALID_NAME.match(new_name):
return jsonify({'error': 'invalid new username'}), 400
if new_name == name:
return jsonify({'status': 'no change'}), 200
r = subprocess.run(['usermod', '-l', new_name, name], capture_output=True, text=True)
if r.returncode != 0:
return jsonify({'error': r.stderr.strip() or 'usermod failed'}), 500
# Remove SMB and WebDAV entries — password must be reset after rename
subprocess.run(['smbpasswd', '-x', name], capture_output=True)
_remove_webdav_user(name)
return jsonify({'status': 'renamed',
'warning': 'SMB and WebDAV password must be reset for the renamed user.'})
@app.route('/api/users/<name>/password', methods=['POST'])
@require_auth