29 lines
647 B
JavaScript
Raw Normal View History

'use strict';
2022-05-13 16:10:18 +02:00
const { FOLDER_MODEL_UID, FILE_MODEL_UID } = require('../constants');
2022-04-26 11:23:07 +02:00
2022-05-13 16:10:18 +02:00
const { getService } = require('../utils');
2022-04-12 16:32:05 +02:00
const getFolderPath = async folderId => {
if (!folderId) return '/';
2022-05-13 16:10:18 +02:00
const parentFolder = await strapi.entityService.findOne(FOLDER_MODEL_UID, folderId);
2022-04-12 16:32:05 +02:00
return parentFolder.path;
};
2022-04-26 11:23:07 +02:00
const deleteByIds = async (ids = []) => {
2022-05-13 16:10:18 +02:00
const filesToDelete = await strapi.db
.query(FILE_MODEL_UID)
.findMany({ where: { id: { $in: ids } } });
2022-04-26 11:23:07 +02:00
await Promise.all(filesToDelete.map(file => getService('upload').remove(file)));
return filesToDelete;
};
module.exports = {
2022-04-12 16:32:05 +02:00
getFolderPath,
2022-04-26 11:23:07 +02:00
deleteByIds,
};