slate/pages/api/data/archive.js

54 lines
1.1 KiB
JavaScript
Raw Normal View History

import * as Data from "~/node_common/data";
import * as Utilities from "~/node_common/utilities";
export default async (req, res) => {
const id = Utilities.getIdFromCookie(req);
if (!id) {
return res
.status(403)
.send({ decorator: "SERVER_REMOVE_DATA_NOT_ALLOWED", error: true });
}
const user = await Data.getUserById({
id,
});
if (!user) {
return res.status(404).send({
decorator: "SERVER_BUCKET_ARCHIVE_DEAL_USER_NOT_FOUND",
error: true,
});
}
if (user.error) {
return res.status(500).send({
decorator: "SERVER_BUCKET_ARCHIVE_DEAL_USER_NOT_FOUND",
error: true,
});
}
const {
buckets,
bucketKey,
bucketName,
bucketRoot,
} = await Utilities.getBucketAPIFromUserToken(user.data.tokens.api);
// bucketRoot.root.key
// bucketRoot.root.path
2020-09-09 20:56:35 +03:00
let response = {};
let error = {};
try {
response = await buckets.archive(bucketRoot.root.key);
} catch (e) {
error.message = e.message;
error.code = e.code;
}
return res.status(200).send({
decorator: "SERVER_BUCKET_ARCHIVE_DEAL",
2020-09-09 20:56:35 +03:00
data: { response, error },
});
};