diff --git a/dashboard/public/translation/de.json b/dashboard/public/translation/de.json index 35dcc236f..5925194c4 100644 --- a/dashboard/public/translation/de.json +++ b/dashboard/public/translation/de.json @@ -1029,9 +1029,6 @@ }, "deleteArchive": { "deleteAction": "Löschen" - }, - "archive": { - "description": "Gelöschte Archive werden basierend auf der Aufbewahrungsrichtlinie bereinigt." } }, "appstore": { diff --git a/dashboard/public/translation/en.json b/dashboard/public/translation/en.json index b848c9d47..31d823e87 100644 --- a/dashboard/public/translation/en.json +++ b/dashboard/public/translation/en.json @@ -669,9 +669,6 @@ "title": "App Archive", "info": "Info" }, - "archive": { - "description": "Deleted archives are cleaned up based on the backup policy." - }, "deleteArchiveDialog": { "title": "Delete Archive of {{appTitle}} ({{fqdn}})", "description": "After deletion, the archive will be cleaned up based on the backup policy." @@ -2078,7 +2075,7 @@ }, "archives": { "listing": { - "placeholder": "No app archives" + "placeholder": "No archived apps" } }, "backup": { diff --git a/dashboard/public/translation/es.json b/dashboard/public/translation/es.json index e98d0983c..b02dfa583 100644 --- a/dashboard/public/translation/es.json +++ b/dashboard/public/translation/es.json @@ -541,9 +541,6 @@ "title": "Archivo de aplicación", "info": "Información" }, - "archive": { - "description": "Los archivos eliminados se limpian según la política de copia de seguridad." - }, "deleteArchiveDialog": { "description": "Después de la eliminación, el archivo se limpiará según la política de copia de seguridad.", "title": "Eliminar archivo de {{appTitle}} ({{fqdn}})" diff --git a/dashboard/public/translation/nl.json b/dashboard/public/translation/nl.json index c2d2d2d3f..0f4efb330 100644 --- a/dashboard/public/translation/nl.json +++ b/dashboard/public/translation/nl.json @@ -209,7 +209,7 @@ "superadminTooltip": "Deze gebruiker is superadmin", "notActivatedYetTooltip": "Gebruiker is nog niet geactiveerd", "transferOwnershipTooltip": "Eigenaarschap overdragen", - "invitationTooltip": "Gebruiker uitnodigen", + "invitationTooltip": "Uitnodigen", "setGhostTooltip": "Nabootsen", "mailmanagerTooltip": "Deze gebruiker kan gebruikers en mailboxen beheren" }, @@ -564,7 +564,7 @@ "backupNow": "Backup maken", "stopTask": "Stop Backup", "appCount": "{{ appCount }} apps", - "tooltipDownloadBackupConfig": "Download Backup Configuratie", + "tooltipDownloadBackupConfig": "Download Configuratie", "tooltipEditBackup": "Bewerk Backup", "tooltipPreservedBackup": "Deze backup blijft behouden" }, @@ -669,9 +669,6 @@ "title": "App Archief", "info": "Info" }, - "archive": { - "description": "Verwijderde archieven worden opgeschoond op basis van het backup-beleid." - }, "deleteArchive": { "deleteAction": "Verwijder" }, @@ -1116,13 +1113,13 @@ "title": "Backups", "packageVersion": "Pakketversie", "time": "Aangemaakt op", - "downloadConfigTooltip": "Download backup configuratie", + "downloadConfigTooltip": "Download configuratie", "createBackupAction": "Maak backup", "importAction": "Importeer backup", "description": "Backups zijn complete momentopnamen van de app. Je kunt deze app backups gebruiken voor herstel of om de app te klonen.", - "cloneTooltip": "Maak een kloon van deze backup", - "restoreTooltip": "Herstel met deze backup", - "downloadBackupTooltip": "Download Backup", + "cloneTooltip": "Kloon", + "restoreTooltip": "Herstel", + "downloadBackupTooltip": "Download", "checkIntegrity": "Controleer integriteit" }, "import": { @@ -1131,7 +1128,7 @@ }, "auto": { "title": "Automatische backups", - "description": "Backups worden periodiek gemaakt op basis van dit Backup Schema.", + "description": "Apps worden periodiek geback-upt op basis van het Backup Schema.", "enabled": "Automatische backups zijn momenteel ingeschakeld.", "disabled": "Automatische backups zijn momenteel uitgeschakeld.", "disableAction": "Automatische backups uitschakelen", @@ -1202,10 +1199,11 @@ }, "importBackupDialog": { "title": "Importeer backup", - "uploadAction": "Upload backup configuratie", + "uploadAction": "upload een backup configuratie", "importAction": "Importeer", "description": "Alle gegevens tussen nu en de laatst bekende backup zullen onherstelbaar verloren gaan. Het is aanbevolen om eerst handmatig een backup te maken van de gegevens vóór de import.", - "remotePath": "Backup pad" + "remotePath": "Backup pad", + "provideBackupInfo": "Lever de backup informatie aan om vanaf te herstellen, of" }, "updateDialog": { "title": "Update {{ app }}", @@ -2029,7 +2027,7 @@ }, "storage": { "mounts": { - "description": "Apps kunnen toegang krijgen tot volumes via /media/(volume name) map. Deze data is niet opgenomen in de app backup." + "description": "Gekoppelde volumes kunnen bereikt worden via /media/(volume name) . Gekoppelde data is niet opgenomen in de app's backup." } }, "oidc": { diff --git a/dashboard/public/translation/pt.json b/dashboard/public/translation/pt.json index 76f78b3c0..ee863f947 100644 --- a/dashboard/public/translation/pt.json +++ b/dashboard/public/translation/pt.json @@ -790,9 +790,6 @@ "version": "Versão", "format": "Formato" }, - "archive": { - "description": "Os arquivos eliminados são limpos de acordo com a política da cópia de segurança." - }, "target": { "addDialog": { "title": "Adicionar Armazenamento de Cópias de Segurança" diff --git a/dashboard/public/translation/ru.json b/dashboard/public/translation/ru.json index 05918df9e..507c8f453 100644 --- a/dashboard/public/translation/ru.json +++ b/dashboard/public/translation/ru.json @@ -1048,9 +1048,6 @@ "title": "Архив приложения", "info": "Информация" }, - "archive": { - "description": "Удаленные архивы очищаются в соответствии с политикой резервного копирования." - }, "deleteArchiveDialog": { "title": "Удаление Архива {{appTitle}} ({{fqdn}})", "description": "После удаления, архивы будут очищены в соответствии с политикой резервного копирования." diff --git a/dashboard/public/translation/vi.json b/dashboard/public/translation/vi.json index af4ce343b..7bad53404 100644 --- a/dashboard/public/translation/vi.json +++ b/dashboard/public/translation/vi.json @@ -668,9 +668,6 @@ "restoreAction": "Khôi phục", "restoreActionOverwrite": "Khôi phục và tạo DNS mới" }, - "archive": { - "description": "Những lưu trữ app bị xóa sẽ được dọn dẹp dựa trên chính sách sao lưu." - }, "deleteArchive": { "deleteAction": "Xóa" } diff --git a/dashboard/src/Index.vue b/dashboard/src/Index.vue index dbe8d104d..a7e29f834 100644 --- a/dashboard/src/Index.vue +++ b/dashboard/src/Index.vue @@ -17,7 +17,7 @@ import AppConfigureView from './views/AppConfigureView.vue'; import AppearanceView from './views/AppearanceView.vue'; import AppstoreView from './views/AppstoreView.vue'; import BackupSitesView from './views/BackupSitesView.vue'; -import BackupAppArchivesView from './views/BackupAppArchivesView.vue'; +import BackupAppArchiveView from './views/BackupAppArchiveView.vue'; import BackupListView from './views/BackupListView.vue'; import CloudronAccountView from './views/CloudronAccountView.vue'; import DomainsView from './views/DomainsView.vue'; @@ -49,7 +49,7 @@ const VIEWS = { APPSTORE: 'appstore', BACKUP_SITES: 'backup-sites', BACKUP_LIST: 'backup-list', - BACKUP_APP_ARCHIVES: 'backup-app-archives', + BACKUP_APP_ARCHIVE: 'backup-app-archive', CLOUDRON_ACCOUNT: 'cloudron-account', DOMAINS: 'domains', EMAIL_DOMAIN: 'email-domain', @@ -152,8 +152,8 @@ function onHashChange() { view.value = VIEWS.BACKUP_SITES; } else if (v === VIEWS.BACKUP_LIST && profile.value.isAtLeastAdmin) { view.value = VIEWS.BACKUP_LIST; - } else if (v === VIEWS.BACKUP_APP_ARCHIVES && profile.value.isAtLeastAdmin) { - view.value = VIEWS.BACKUP_APP_ARCHIVES; + } else if (v === VIEWS.BACKUP_APP_ARCHIVE && profile.value.isAtLeastAdmin) { + view.value = VIEWS.BACKUP_APP_ARCHIVE; } else if (v === VIEWS.CLOUDRON_ACCOUNT && profile.value.isAtLeastOwner) { view.value = VIEWS.CLOUDRON_ACCOUNT; } else if (v === VIEWS.DOMAINS && profile.value.isAtLeastAdmin) { @@ -288,7 +288,7 @@ onMounted(async () => { @@ -356,7 +356,7 @@ onMounted(async () => { - + diff --git a/dashboard/src/views/BackupAppArchivesView.vue b/dashboard/src/views/BackupAppArchiveView.vue similarity index 98% rename from dashboard/src/views/BackupAppArchivesView.vue rename to dashboard/src/views/BackupAppArchiveView.vue index 40e521ea4..599ca5050 100644 --- a/dashboard/src/views/BackupAppArchivesView.vue +++ b/dashboard/src/views/BackupAppArchiveView.vue @@ -42,10 +42,14 @@ function onActionMenu(archive, event) { label: t('backups.restoreArchiveDialog.restoreAction'), action: onRestore.bind(null, archive), }, { + separator: true, + },{ icon: 'fa-solid fa-file-alt', label: t('backups.listing.tooltipDownloadBackupConfig'), action: onDownloadConfig.bind(null, archive), }, { + separator: true, + },{ icon: 'fa-solid fa-trash-alt', label: t('main.action.remove'), action: onRemove.bind(null, archive), @@ -124,8 +128,6 @@ onMounted(async () => { -

-