|
|
|
|
@ -239,11 +239,32 @@ module.exports = {
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return graphHelper.generateError(err)
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
async deleteFolder(obj, args, context) {
|
|
|
|
|
try {
|
|
|
|
|
const folderId = args.id;
|
|
|
|
|
|
|
|
|
|
// Check if the folder exists
|
|
|
|
|
const folder = await WIKI.models.assetFolders.query().findById(folderId);
|
|
|
|
|
if (!folder) {
|
|
|
|
|
throw new WIKI.Error.AssetFolderInvalid();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Check permissions
|
|
|
|
|
const folderPath = folder.slug;
|
|
|
|
|
if (!WIKI.auth.checkAccess(context.req.user, ['manage:assets'], { path: folderPath })) {
|
|
|
|
|
throw new WIKI.Error.AssetFolderDeleteForbidden();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Delete the folder (must be empty)
|
|
|
|
|
await WIKI.models.assetFolders.query().deleteById(folderId);
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
responseResult: graphHelper.generateSuccess('Asset Folder has been deleted successfully.')
|
|
|
|
|
};
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return graphHelper.generateError(err);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// File: {
|
|
|
|
|
// folder(fl) {
|
|
|
|
|
// return fl.getFolder()
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
}
|