mirror of
https://github.com/myronblair/novacpx
synced 2026-07-27 20:53:33 -05:00
Fix multiple user panel 500 errors
- domains: VhostManager::create() called with array instead of 4 params - PHPManager: VhostManager not required; pool writes use sudo tee (permission); updateConfig creates pool if missing instead of throwing - DatabaseManager: MySQL ops used SQLite panel PDO; add dedicated mysqlPdo() using MariaDB socket auth - BackupManager: column name is size_mb not size; diskUsage returns float - DB.php: add LAST_INSERT_ID() → last_insert_rowid() translation - user.js: SSL issue/submit used Nova.api (JSON) but endpoint streams SSE; add _sslStream() helper matching admin panel behavior - schema/migration: add enc_password column to email_accounts Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -46,9 +46,10 @@ class BackupManager {
|
||||
}
|
||||
}
|
||||
|
||||
$size = file_exists($filepath) ? filesize($filepath) : 0;
|
||||
$this->db->prepare("UPDATE backups SET status='complete', size=? WHERE id=?")->execute([$size, $backupId]);
|
||||
return ['id' => $backupId, 'filename' => $filename, 'size' => $size];
|
||||
$bytes = file_exists($filepath) ? filesize($filepath) : 0;
|
||||
$sizeMb = round($bytes / 1048576, 2);
|
||||
$this->db->prepare("UPDATE backups SET status='complete', size_mb=? WHERE id=?")->execute([$sizeMb, $backupId]);
|
||||
return ['id' => $backupId, 'filename' => $filename, 'size_mb' => $sizeMb];
|
||||
|
||||
} catch (RuntimeException $e) {
|
||||
$this->db->prepare("UPDATE backups SET status='failed' WHERE id=?")->execute([$backupId]);
|
||||
@@ -147,14 +148,14 @@ class BackupManager {
|
||||
}
|
||||
|
||||
// ── Disk usage ────────────────────────────────────────────────────────────
|
||||
public function diskUsage(int $accountId = 0): int {
|
||||
public function diskUsage(int $accountId = 0): float {
|
||||
if ($accountId) {
|
||||
$stmt = $this->db->prepare("SELECT COALESCE(SUM(size),0) FROM backups WHERE account_id=? AND status='complete'");
|
||||
$stmt = $this->db->prepare("SELECT COALESCE(SUM(size_mb),0) FROM backups WHERE account_id=? AND status='complete'");
|
||||
$stmt->execute([$accountId]);
|
||||
} else {
|
||||
$stmt = $this->db->query("SELECT COALESCE(SUM(size),0) FROM backups WHERE status='complete'");
|
||||
$stmt = $this->db->query("SELECT COALESCE(SUM(size_mb),0) FROM backups WHERE status='complete'");
|
||||
}
|
||||
return (int)$stmt->fetchColumn();
|
||||
return (float)$stmt->fetchColumn();
|
||||
}
|
||||
|
||||
private function getAccount(int $id): array {
|
||||
|
||||
Reference in New Issue
Block a user