- FTP: Use FTPUtilities.submitFTPCreation/submitFTPDeletion (was wrong
class name and nonexistent methods)
- DNS: Use DNS.createDNSRecord with zone object (was wrong class, wrong
first param type)
- SSL: Use virtualHostUtilities.issueSSL with correct 3 params (was
wrong module, missing params)
- Backup: Use submitBackupCreation module function with correct params
(was nonexistent method)
- Config/PHP: Use vhost.changePHP with vhost file path (was wrong module)
- Domains: Delegate to WebsiteManager.submitDomainCreation/Deletion
(was nonexistent childDomain methods)
- Security: Pass correct string values to changeOpenBasedir ('Disable'
or path, not 0/1)
New Django app with Alpine.js frontend providing site-centric navigation
(select site first, then manage features) coexisting with the classic panel.
- 14 page views + 10 AJAX API endpoints under /v2/
- Dual-mode sidebar (site list vs site context)
- Full feature pages: databases, email, FTP, DNS, SSL, backup, domains,
files, logs, config, apps, security, server management
- Dark mode support via CSS variables
- Reuses existing ACL, httpProc, and all backend utilities