Fixed more variable renaming issues

This commit is contained in:
Dunemask 2021-08-02 21:57:55 -06:00
parent a19b3f6603
commit 122f722ff6
3 changed files with 22 additions and 20 deletions

View file

@ -38,6 +38,7 @@ function getFile(userId, fileId) {
function deleteFiles(userId, fileIds) {
return files.find({ _id: { $in: fileIds } }).then((databaseFiles) => {
var failed = [];
var toRemove = [];
filesByOwner = {};
databaseFiles.forEach((file) => {
if (file.owner in filesByOwner) filesByOwner[file.owner].push(file);
@ -52,26 +53,27 @@ function deleteFiles(userId, fileIds) {
filesByOwner[owner].splice(i, 1);
} else deleteSize += file.size;
}
fileIds = fileIds.filter((fileId) => !failed.includes(fileId));
toRemove.concat(
databaseFiles.filter((file) => fileIds.includes(`${file._id}`))
);
// Update User's owned
users
.updateOne(
{ _id: owner, usedStorage: { $gte: deleteSize } },
{ cairoId: owner, usedStorage: { $gte: deleteSize } },
{
$pull: { owned: { $in: filesByOwner[owner] } },
$pull: { owned: { $in: fileIds } },
$inc: {
usedStorage: -deleteSize,
},
}
)
.exec();
fileIds = fileIds.filter((fileId) => !failed.includes(fileId));
rfiles = databaseFiles.filter((file) => fileIds.includes(`${file._id}`));
files
.deleteMany({
_id: { $in: fileIds },
})
.exec();
return { files: rfiles, failed };
// Update files DB
files.deleteMany({ _id: { $in: fileIds } }).exec();
console.log(toRemove);
}
return { files: toRemove, failed };
});
}
@ -108,11 +110,11 @@ function uploadFile(cairoId, fileData) {
return getUserByCairoId(cairoId).then((user) => {
if (user.usedStorage + fileData.size > user.storage) return null;
return users
.updateOne({ _id: cairoId }, { $inc: { usedStorage: fileData.size } })
.then(() => createFile(user._id, fileData))
.updateOne({ cairoId }, { $inc: { usedStorage: fileData.size } })
.then(() => createFile(cairoId, fileData))
.then((file) => {
if (file == null) return null;
users.updateOne({ _id: userId }, { $push: { owned: file._id } }).then();
users.updateOne({ cairoId }, { $push: { owned: file._id } }).then();
return file;
});
});

View file

@ -6,12 +6,12 @@ const multer = require("multer");
const config = require("../config.json");
//Multer Configs
const userUploadStorage = multer.diskStorage({
destination: (req, file, cb) => cb(null, userUploadDestination(req.user._id)),
destination: (req, file, cb) => cb(null, userUploadDestination(req.user.cairoId)),
filename: (req, file, cb) => {
const n = file.originalname.replaceAll(" ", "_");
const fileName = `${Date.now()}-${n}`;
req.on("aborted", () =>
cancelUpload(resolvePath(userUploadDestination(req.user._id), fileName))
cancelUpload(resolvePath(userUploadDestination(req.user.cairoId), fileName))
);
cb(null, fileName);
},

View file

@ -38,7 +38,7 @@ const authMiddleware = (req, res, next) => {
router.use(cairoMiddleware);
router.get("/files", authMiddleware, (req, res) =>
asUser.getOwnedFiles(req.user._id, req.user.owned).then((files) => {
asUser.getOwnedFiles(req.user.cairoId, req.user.owned).then((files) => {
res.status(200).json(files);
})
);
@ -46,7 +46,7 @@ router.get("/files", authMiddleware, (req, res) =>
router.post("/upload", authMiddleware, (req, res) => {
upload.userUpload(req, res, (err) => {
if (err || req.file == null) return res.sendStatus(500);
asUser.uploadFile(req.user._id, req.file).then((file) => {
asUser.uploadFile(req.user.cairoId, req.file).then((file) => {
if (file != null) return res.json(file);
upload.cancelUpload(req.file.path);
return res.sendStatus(500);
@ -56,7 +56,7 @@ router.post("/upload", authMiddleware, (req, res) => {
router.post("/delete", authMiddleware, (req, res) => {
if (!req.body || !(req.body instanceof Array)) return res.sendStatus(400);
asUser.deleteFiles(req.user._id, req.body).then((failed) => {
asUser.deleteFiles(req.user.cairoId, req.body).then((failed) => {
if (!failed) return res.sendStatus(200);
res.status(500).json(failed);
});
@ -65,7 +65,7 @@ router.post("/delete", authMiddleware, (req, res) => {
router.get("/download", (req, res) => {
if (!req.query || (!req.query.target && !req.query.zipTarget))
return res.sendStatus(404);
const userId = req.user == null ? null : req.user._id;
const userId = req.user == null ? null : req.user.cairoId;
if (req.query.target)
return storage.getFile(userId, req.query.target).then((file) => {
if (file) return res.download(file.path);
@ -76,7 +76,7 @@ router.get("/download", (req, res) => {
router.post("/public", authMiddleware, async (req, res) => {
if (!req.body || !(req.body instanceof Array)) return res.sendStatus(400);
const failed = asUser.publicfyFiles(req.user._id, req.body);
const failed = asUser.publicfyFiles(req.user.cairoId, req.body);
if (!failed) return res.sendStatus(200);
res.status(500).json(failed);
});