mirror of
https://github.com/nextcloud/server.git
synced 2026-02-23 01:40:59 -05:00
feat(files): show quota warning on page load or if storage becomes full
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
This commit is contained in:
parent
21042c3e0f
commit
129cd5e09c
1 changed files with 18 additions and 0 deletions
|
|
@ -27,6 +27,7 @@ import { showError } from '@nextcloud/dialogs'
|
|||
import { subscribe } from '@nextcloud/event-bus'
|
||||
import { translate } from '@nextcloud/l10n'
|
||||
import axios from '@nextcloud/axios'
|
||||
|
||||
import ChartPie from 'vue-material-design-icons/ChartPie.vue'
|
||||
import NcAppNavigationItem from '@nextcloud/vue/dist/Components/NcAppNavigationItem.js'
|
||||
import NcProgressBar from '@nextcloud/vue/dist/Components/NcProgressBar.js'
|
||||
|
|
@ -86,6 +87,13 @@ export default {
|
|||
subscribe('files:node:updated', this.throttleUpdateStorageStats)
|
||||
},
|
||||
|
||||
mounted() {
|
||||
// Warn the user if the available storage is 0 on page load
|
||||
if (this.storageStats?.free === 0) {
|
||||
this.showStorageFullWarning()
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
// From user input
|
||||
debounceUpdateStorageStats: debounce(200, function(event) {
|
||||
|
|
@ -113,6 +121,12 @@ export default {
|
|||
if (!response?.data?.data) {
|
||||
throw new Error('Invalid storage stats')
|
||||
}
|
||||
|
||||
// Warn the user if the available storage changed from > 0 to 0
|
||||
if (this.storageStats?.free !== 0 && response.data.data?.free === 0) {
|
||||
this.showStorageFullWarning()
|
||||
}
|
||||
|
||||
this.storageStats = response.data.data
|
||||
} catch (error) {
|
||||
logger.error('Could not refresh storage stats', { error })
|
||||
|
|
@ -125,6 +139,10 @@ export default {
|
|||
}
|
||||
},
|
||||
|
||||
showStorageFullWarning() {
|
||||
showError(this.t('files', 'Your storage is full, files can not be updated or synced anymore!'))
|
||||
},
|
||||
|
||||
t: translate,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue