added delete dir ep

This commit is contained in:
mrfry 2022-08-24 18:43:41 +02:00
parent 5c2b46f2a3
commit f10953e8ec
3 changed files with 35 additions and 1 deletions

View file

@ -314,6 +314,31 @@ function setup(data: SubmoduleData): void {
const result = listDir(publicDir, dir, userFilesDir)
res.json(result)
})
app.post('/deleteDir', (req: Request<{ name: string }>, res) => {
logger.LogReq(req)
const { name } = req.body
const safeName = name.replace(/\.+/g, '').replace(/\/+/g, '')
if (!utils.FileExists(userFilesDir + '/' + safeName)) {
res.json({
success: false,
msg: `Dir ${name} does not exist!`,
})
return
}
utils.CreatePath(userFilesDir + '/' + safeName, true)
const result = listDir(publicDir, name, userFilesDir)
if (result.files.length === 0) {
utils.deleteDir(userFilesDir + '/' + safeName)
} else {
res.json({ succes: false, msg: `Dir ${name} is not empty!` })
return
}
res.json({ succes: true })
})
}
export default {

View file

@ -35,6 +35,7 @@ export default {
uploadFile: uploadFile,
statFile: statFile,
renameFile: renameFile,
deleteDir: deleteDir,
}
import fs from 'fs'
@ -207,6 +208,14 @@ function deleteFile(fname: string): Boolean {
return false
}
function deleteDir(dirName: string): Boolean {
if (FileExists(dirName)) {
fs.rmSync(dirName, { recursive: true })
return true
}
return false
}
function uploadFile(
req: Request,
path: string

@ -1 +1 @@
Subproject commit 9c333008c7049b032e4e3d0dbf5fd5893542ffb7
Subproject commit 281d0e00ce054d46444f377876786b913b8c1a08