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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -30,6 +30,23 @@ var resourceGetHandler = withUser(func(w http.ResponseWriter, r *http.Request, d
Checker: d, Checker: d,
Content: true, 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 { if err != nil {
return errToStatus(err), err return errToStatus(err), err
} }