diff --git a/CHANGES b/CHANGES index 94113240e..d96797c2c 100644 --- a/CHANGES +++ b/CHANGES @@ -2667,3 +2667,5 @@ * backups: encrypted backups must have .enc extension * mail: add virtual all mail mailbox * redirections: use 301 (permanent) instead of 302 (temporary) for redirections. this is better for SEO links +* graphs: show old backup size if > 1GB + diff --git a/dashboard/src/views/system.html b/dashboard/src/views/system.html index 189acebf5..3a2a2d4fb 100644 --- a/dashboard/src/views/system.html +++ b/dashboard/src/views/system.html @@ -84,6 +84,7 @@

  + {{ content.path }} (Old Backups) {{ content.label || content.id }} {{ content.id }} diff --git a/dashboard/src/views/system.js b/dashboard/src/views/system.js index 7753eefcb..1167e12bb 100644 --- a/dashboard/src/views/system.js +++ b/dashboard/src/views/system.js @@ -85,14 +85,18 @@ angular.module('Application').controller('SystemController', ['$scope', '$locati disk.contents.forEach(function (content) { if (content.path === disk.mountpoint) disk.volume = $scope.volumesById[content.id]; }); disk.contents = disk.contents.filter(function (content) { return content.path !== disk.mountpoint; }); + // only show old backups if the size is significant + disk.contents = disk.contents.filter(function (content) { return content.id !== 'cloudron-backup-default' || content.usage > 1024*1024*1024; }); + disk.contents.forEach(function (content) { content.color = getNextColor(); if (content.type === 'app') { content.app = Client.getInstalledAppsByAppId()[content.id]; if (!content.app) content.uninstalled = true; + } else if (content.type === 'volume') { + content.volume = $scope.volumesById[content.id]; } - if (content.type === 'volume') content.volume = $scope.volumesById[content.id]; usageOther -= content.usage; }); diff --git a/src/system.js b/src/system.js index 0558c4e53..417307317 100644 --- a/src/system.js +++ b/src/system.js @@ -119,7 +119,7 @@ async function getDisks() { if (backupConfig.provider !== 'filesystem' || backupConfig.backupFolder !== paths.DEFAULT_BACKUP_DIR) { const [, dfResult] = await safe(df.file(paths.DEFAULT_BACKUP_DIR)); const filesystem = dfResult?.filesystem || rootDisk.filesystem; - if (disks[filesystem]) disks[filesystem].contents.push({ type: 'standard', id: 'cloudron-backup-default', path: paths.DEFAULT_BACKUP_DIR }); + if (disks[filesystem]) disks[filesystem].contents.push({ type: 'cloudron-backup-default', id: 'cloudron-backup-default', path: paths.DEFAULT_BACKUP_DIR }); } const [dockerError, dockerInfo] = await safe(docker.info());