fix: upload_share_logs Schritt entfernt - Dateien bereits in files Tabelle
This commit is contained in:
@@ -306,31 +306,8 @@ router.post('/webdav/sync', authenticate, requireAdmin, async (req, res) => {
|
||||
}
|
||||
}
|
||||
|
||||
// ── Schritt 3: Upload-Freigabe Dateien ────────────────────────────────
|
||||
const uploadLogs = db.prepare(`
|
||||
SELECT l.filename, l.originalname, l.mimetype, u.username
|
||||
FROM upload_share_logs l
|
||||
JOIN upload_shares s ON s.id = l.share_id
|
||||
JOIN users u ON u.id = s.user_id
|
||||
WHERE l.filename IS NOT NULL
|
||||
`).all();
|
||||
|
||||
for (const log of uploadLogs) {
|
||||
const localPath = nodePath.join(UPLOAD_DIR, log.filename);
|
||||
if (!fs.existsSync(localPath)) continue;
|
||||
try {
|
||||
const buf = fs.readFileSync(localPath);
|
||||
const base = webdav.userPath(cfg, log.username);
|
||||
await webdav.uploadFile(buf, `${base}/_Upload-Freigaben/${log.originalname || log.filename}`, log.mimetype || 'application/octet-stream');
|
||||
results.ok++;
|
||||
} catch(e) {
|
||||
results.failed++;
|
||||
results.errors.push(`Upload-Freigabe ${log.originalname}: ${e.message}`);
|
||||
}
|
||||
}
|
||||
|
||||
res.json({
|
||||
total: files.length + uploadLogs.length,
|
||||
total: files.length,
|
||||
...results,
|
||||
message: `${results.folders} Ordner angelegt, ${results.ok} Dateien kopiert${results.failed ? ', ' + results.failed + ' fehlgeschlagen' : ' – alles erfolgreich ✓'}`,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user