This commit is contained in:
Vito0912 2025-06-12 08:44:28 +02:00
parent 67e0a6a945
commit 4e67d56cd5
No known key found for this signature in database
GPG key ID: 29A3D509FE70B237
3 changed files with 101 additions and 79 deletions

View file

@ -6,11 +6,12 @@ const Logger = require('../Logger')
const SocketAuthority = require('../SocketAuthority')
const Database = require('../Database')
const Watcher = require('../Watcher')
const globals = require('../utils/globals')
const libraryItemFilters = require('../utils/queries/libraryItemFilters')
const patternValidation = require('../libs/nodeCron/pattern-validation')
const { isObject, getTitleIgnorePrefix } = require('../utils/index')
const { sanitizeFilename } = require('../utils/fileUtils')
const { sanitizeFilename, validatePathExists } = require('../utils/fileUtils')
const TaskManager = require('../managers/TaskManager')
const adminStats = require('../utils/queries/adminStats')
@ -78,6 +79,16 @@ class MiscController {
const cleanedOutputDirectoryParts = outputDirectoryParts.filter(Boolean).map((part) => sanitizeFilename(part))
const outputDirectory = Path.join(...[folder.path, ...cleanedOutputDirectoryParts])
const containsBook = files.some(file => globals.SupportedEbookTypes.includes(Path.extname(file.name).toLowerCase()))
const containsAudio = files.some(file => globals.SupportedAudioTypes.includes(Path.extname(file.name).toLowerCase()))
console.log(`Uploading files to ${outputDirectory} with containsBook: ${containsBook}, containsAudio: ${containsAudio}`)
if ((await validatePathExists(folder, outputDirectory, undefined, !containsBook, !containsAudio)).exists) {
Logger.error(`Upload path already exists: ${outputDirectory}`)
return res.status(400).send('Uploaded file already exists')
}
await fs.ensureDir(outputDirectory)
Logger.info(`Uploading ${files.length} files to`, outputDirectory)