fix: Handle non-existing trash dir entry (#27)

pull/3756/head
Laurynas Gadliauskas 2021-11-04 15:14:22 +02:00 committed by GitHub
parent b820df8dbc
commit 36f8a7021a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 67 additions and 35 deletions

View File

@ -63,6 +63,7 @@
"body": "الصفحة",
"clear": "مسح",
"closePreview": "إغلاق العرض",
"emptyFolder": "This folder is empty",
"files": "الملفات",
"folders": "المجلدات",
"home": "الصفحة الأولى",
@ -170,8 +171,8 @@
"size": "الحجم",
"skipTrashMessage": "تخطى سلة المهملات واحذف فورا",
"unarchive": "حذف من الأرشيف",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "حدد الوجهة:",
"unarchiveFolderNameMessage": "اختر اسم المجلد:",
"unarchiveMessage": "اختر اسم المجلد الوجهة:",
"unarchiveOverwriteExisting": "الكتابة فوق الملفات الموجودة",
"unsavedChanges": "قد لا يتم حفظ التغييرات التي قمت بها. هل تريد مغادرة الصفحة؟",
@ -284,7 +285,7 @@
"settings": "الإعدادات",
"signup": "Signup",
"siteSettings": "إعدادات الموقع",
"tmpDir": "Temporary folder",
"tmpDir": "المجلد المؤقت",
"trashBin": "سلة المهملات"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "Body",
"clear": "Clear",
"closePreview": "Close preview",
"emptyFolder": "This folder is empty",
"files": "Files",
"folders": "Folders",
"home": "Home",

View File

@ -63,6 +63,7 @@
"body": "Cuerpo",
"clear": "Limpiar",
"closePreview": "Cerrar vista previa",
"emptyFolder": "This folder is empty",
"files": "Archivos",
"folders": "Carpetas",
"home": "Inicio",
@ -170,8 +171,8 @@
"size": "Tamaño",
"skipTrashMessage": "Omitir papelera y eliminar inmediatamente",
"unarchive": "Desarchiva",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Selecciona el destino:",
"unarchiveFolderNameMessage": "Elige el nombre de la carpeta:",
"unarchiveMessage": "Elige el nombre de la carpeta de destino:",
"unarchiveOverwriteExisting": "Sobrescribir archivos existentes",
"unsavedChanges": "Los cambios que realizaste podrían no guardarse. ¿Abandonar página?",

View File

@ -63,6 +63,7 @@
"body": "Cuerpo",
"clear": "Limpiar",
"closePreview": "Cerrar vista previa",
"emptyFolder": "This folder is empty",
"files": "Archivos",
"folders": "Carpetas",
"home": "Inicio",
@ -170,8 +171,8 @@
"size": "Tamaño",
"skipTrashMessage": "Omitir papelera y eliminar inmediatamente",
"unarchive": "Desarchiva",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Selecciona el destino:",
"unarchiveFolderNameMessage": "Elige el nombre de la carpeta:",
"unarchiveMessage": "Elige el nombre de la carpeta de destino:",
"unarchiveOverwriteExisting": "Sobrescribir archivos existentes",
"unsavedChanges": "Los cambios que realizaste podrían no guardarse. ¿Abandonar página?",

View File

@ -63,6 +63,7 @@
"body": "Cuerpo",
"clear": "Limpiar",
"closePreview": "Cerrar vista previa",
"emptyFolder": "This folder is empty",
"files": "Archivos",
"folders": "Carpetas",
"home": "Inicio",
@ -170,8 +171,8 @@
"size": "Tamaño",
"skipTrashMessage": "Omitir papelera y eliminar inmediatamente",
"unarchive": "Desarchiva",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Selecciona el destino:",
"unarchiveFolderNameMessage": "Elige el nombre de la carpeta:",
"unarchiveMessage": "Elige el nombre de la carpeta de destino:",
"unarchiveOverwriteExisting": "Sobrescribir archivos existentes",
"unsavedChanges": "Los cambios que realizaste podrían no guardarse. ¿Abandonar página?",

View File

@ -63,6 +63,7 @@
"body": "Cuerpo",
"clear": "Limpiar",
"closePreview": "Cerrar vista previa",
"emptyFolder": "This folder is empty",
"files": "Archivos",
"folders": "Carpetas",
"home": "Inicio",
@ -170,8 +171,8 @@
"size": "Tamaño",
"skipTrashMessage": "Omitir papelera y eliminar inmediatamente",
"unarchive": "Desarchiva",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Selecciona el destino:",
"unarchiveFolderNameMessage": "Elige el nombre de la carpeta:",
"unarchiveMessage": "Elige el nombre de la carpeta de destino:",
"unarchiveOverwriteExisting": "Sobrescribir archivos existentes",
"unsavedChanges": "Los cambios que realizaste podrían no guardarse. ¿Abandonar página?",

View File

@ -63,6 +63,7 @@
"body": "Corps",
"clear": "Fermer",
"closePreview": "Fermer la prévisualisation",
"emptyFolder": "This folder is empty",
"files": "Fichiers",
"folders": "Dossiers",
"home": "Accueil",
@ -170,8 +171,8 @@
"size": "Taille",
"skipTrashMessage": "Ignorer la corbeille et supprimer immédiatement",
"unarchive": "Extraire",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Sélectionnez la destination :",
"unarchiveFolderNameMessage": "Choisissez un nom de dossier :",
"unarchiveMessage": "Choisissez le nom du dossier de destination :",
"unarchiveOverwriteExisting": "Écraser les fichiers existants",
"unsavedChanges": "Les modifications que vous avez apportées peuvent ne pas être enregistrées. Quitter la page ?",
@ -284,7 +285,7 @@
"settings": "Paramètres",
"signup": "S'inscrire",
"siteSettings": "Paramètres du site",
"tmpDir": "Temporary folder",
"tmpDir": "Dossier temporaire",
"trashBin": "Corbeille"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "Body",
"clear": "Hapus",
"closePreview": "Tutup pratinjau",
"emptyFolder": "This folder is empty",
"files": "File",
"folders": "Folder",
"home": "Beranda",
@ -170,8 +171,8 @@
"size": "Ukuran",
"skipTrashMessage": "Lewati keranjang sampah dan langsung hapus saja",
"unarchive": "Buka arsip",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Pilih folder tujuan:",
"unarchiveFolderNameMessage": "Pilih nama folder:",
"unarchiveMessage": "Pilih nama folder tujuan:",
"unarchiveOverwriteExisting": "Timpa file yang sudah ada",
"unsavedChanges": "Perubahan yang Anda buat mungkin tidak tersimpan. Tinggalkan halaman?",
@ -284,7 +285,7 @@
"settings": "Pengaturan",
"signup": "Daftar",
"siteSettings": "Pengaturan Situs",
"tmpDir": "Temporary folder",
"tmpDir": "Folder sementara",
"trashBin": "Keranjang sampah"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "Tekstas",
"clear": "Ištrinti",
"closePreview": "Uždaryti peržiūrą",
"emptyFolder": "This folder is empty",
"files": "Failai",
"folders": "Aplankai",
"home": "Pagrindinis",
@ -170,8 +171,8 @@
"size": "Dydis",
"skipTrashMessage": "Ištrinti visam laikui",
"unarchive": "Išarchyvuoti",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Pasirinkite vietą:",
"unarchiveFolderNameMessage": "Pasirinkite aplanko pavadinimą:",
"unarchiveMessage": "Pasirinkite aplanko pavadinimą:",
"unarchiveOverwriteExisting": "Perrašyti esamus failus",
"unsavedChanges": "Atlikti pakeitimai gali būti neišsaugoti. Norite išeiti iš puslapio?",

View File

@ -63,6 +63,7 @@
"body": "Corpo",
"clear": "Limpar",
"closePreview": "Fechar pré-visualização",
"emptyFolder": "This folder is empty",
"files": "Arquivos",
"folders": "Pastas",
"home": "Início",

View File

@ -63,6 +63,7 @@
"body": "Corpo",
"clear": "Limpar",
"closePreview": "Fechar pré-visualização",
"emptyFolder": "This folder is empty",
"files": "Ficheiros",
"folders": "Pastas",
"home": "Início",
@ -170,8 +171,8 @@
"size": "Tamanho",
"skipTrashMessage": "Saltar o caixote do lixo e apagar imediatamente",
"unarchive": "Desarquivar",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Selecione o destino:",
"unarchiveFolderNameMessage": "Escolha o nome da pasta:",
"unarchiveMessage": "Escolha o nome da pasta de destino:",
"unarchiveOverwriteExisting": "Sobrepor os ficheiros existentes",
"unsavedChanges": "As alterações que fez poderão não ser guardadas. Deixar a página?",

View File

@ -63,6 +63,7 @@
"body": "Тело",
"clear": "Очистить",
"closePreview": "Закрыть",
"emptyFolder": "This folder is empty",
"files": "Файлы",
"folders": "Папки",
"home": "Главная",
@ -170,8 +171,8 @@
"size": "Размер",
"skipTrashMessage": "Удалить, не сохраняя в корзину",
"unarchive": "Разархивирование",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Виберіть місце призначення:",
"unarchiveFolderNameMessage": "Виберіть назву папки:",
"unarchiveMessage": "Выберите имя папки назначения:",
"unarchiveOverwriteExisting": "Перезаписать существующие файлы",
"unsavedChanges": "Невозможно сохранить внесённые изменения. Покинуть страницу?",
@ -284,7 +285,7 @@
"settings": "Настройки",
"signup": "Зарегистрироваться",
"siteSettings": "Настройки сайта",
"tmpDir": "Temporary folder",
"tmpDir": "Тимчасова папка",
"trashBin": "Корзина"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "Gövde",
"clear": "Temizle",
"closePreview": "Önizlemeyi kapat",
"emptyFolder": "This folder is empty",
"files": "Dosyalar",
"folders": "Klasörler",
"home": "Anasayfa",
@ -170,8 +171,8 @@
"size": "Boyut",
"skipTrashMessage": "Çöp kutusunu atlayıp hemen sil",
"unarchive": "Arşivden çıkar",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Hedefi seçin:",
"unarchiveFolderNameMessage": "Klasör adını seçin:",
"unarchiveMessage": "Hedef klasör adını seçin:",
"unarchiveOverwriteExisting": "Mevcut dosyaların üzerine yaz",
"unsavedChanges": "Yaptığınız değişiklikler kaydedilmeyecek. Çıkılsın mı?",
@ -284,7 +285,7 @@
"settings": "Ayarlar",
"signup": "Kayıt Ol",
"siteSettings": "Site Ayarları",
"tmpDir": "Temporary folder",
"tmpDir": "Geçici dosya",
"trashBin": "Çöp Kutusu"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "Тіло",
"clear": "Очистити",
"closePreview": "Закрити попередній перегляд",
"emptyFolder": "This folder is empty",
"files": "Файли",
"folders": "Папки",
"home": "Головна",
@ -170,8 +171,8 @@
"size": "Розмір",
"skipTrashMessage": "Видалити без збереження в кошик",
"unarchive": "Розархівування",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "Виберіть місце призначення:",
"unarchiveFolderNameMessage": "Виберіть назву папки:",
"unarchiveMessage": "Виберіть назву папки призначення:",
"unarchiveOverwriteExisting": "Перезаписати наявні файли",
"unsavedChanges": "Неможливо зберегти внесені зміни. Покинути сторінку?",
@ -284,7 +285,7 @@
"settings": "Налаштування",
"signup": "Зареєструватися",
"siteSettings": "Налаштування сайту",
"tmpDir": "Temporary folder",
"tmpDir": "Тимчасова папка",
"trashBin": "Кошик"
},
"success": {

View File

@ -63,6 +63,7 @@
"body": "内容",
"clear": "清空",
"closePreview": "关闭预览",
"emptyFolder": "This folder is empty",
"files": "文件",
"folders": "文件夹",
"home": "主页",
@ -170,8 +171,8 @@
"size": "大小",
"skipTrashMessage": "跳过回收站并立即删除",
"unarchive": "解压缩",
"unarchiveDestinationLocationMessage": "Select the destination:",
"unarchiveFolderNameMessage": "Choose folder name:",
"unarchiveDestinationLocationMessage": "选择目的地:",
"unarchiveFolderNameMessage": "选择文件夹名称:",
"unarchiveMessage": "选择目标文件夹名字:",
"unarchiveOverwriteExisting": "覆盖现有文件",
"unsavedChanges": "您所做的修改将不会被保存, 丢弃更改吗?",
@ -284,7 +285,7 @@
"settings": "设置",
"signup": "注册",
"siteSettings": "网站设置",
"tmpDir": "Temporary folder",
"tmpDir": "临时文件夹",
"trashBin": "回收站"
},
"success": {

View File

@ -154,8 +154,8 @@
<template v-else>
<div v-if="req.numDirs + req.numFiles == 0">
<h2 class="message">
<i class="material-icons">sentiment_dissatisfied</i>
<span>{{ $t("files.lonely") }}</span>
<i class="material-icons">folder_open</i>
<span>{{ $t("files.emptyFolder") }}</span>
</h2>
<input
style="display: none"

View File

@ -30,6 +30,23 @@ var resourceGetHandler = withUser(func(w http.ResponseWriter, r *http.Request, d
Checker: d,
Content: true,
})
// if the path does not exist and its the trash dir - create it
if os.IsNotExist(err) && d.user.TrashDir != "" {
if d.user.FullPath(r.URL.Path) == d.user.FullPath(d.user.TrashDir) {
d.user.Fs.MkdirAll(d.user.TrashDir, 0755)
file, err = files.NewFileInfo(files.FileOptions{
Fs: d.user.Fs,
Path: r.URL.Path,
Modify: d.user.Perm.Modify,
Expand: true,
ReadHeader: d.server.TypeDetectionByHeader,
Checker: d,
Content: true,
})
}
}
if err != nil {
return errToStatus(err), err
}