2020-05-01 15:58:01 -04:00
|
|
|
'use strict';
|
|
|
|
|
|
2020-10-16 10:34:37 -04:00
|
|
|
const api = require('../../api');
|
2020-05-01 15:58:01 -04:00
|
|
|
const topics = require('../../topics');
|
|
|
|
|
|
|
|
|
|
const helpers = require('../helpers');
|
|
|
|
|
|
|
|
|
|
const Topics = module.exports;
|
|
|
|
|
|
|
|
|
|
Topics.create = async (req, res) => {
|
2020-10-16 10:34:37 -04:00
|
|
|
const payload = await api.topics.create(req, req.body);
|
|
|
|
|
if (payload.queued) {
|
|
|
|
|
helpers.formatApiResponse(202, res, payload);
|
|
|
|
|
} else {
|
|
|
|
|
helpers.formatApiResponse(200, res, payload);
|
2020-05-01 15:58:01 -04:00
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.reply = async (req, res) => {
|
2020-10-16 11:01:10 -04:00
|
|
|
const payload = await api.topics.reply(req, { ...req.body, tid: req.params.tid });
|
|
|
|
|
helpers.formatApiResponse(200, res, payload);
|
2020-05-01 15:58:01 -04:00
|
|
|
};
|
2020-10-02 16:35:45 -04:00
|
|
|
|
|
|
|
|
Topics.delete = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.delete(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.restore = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.restore(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.purge = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.purge(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.pin = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.pin(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.unpin = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.unpin(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.lock = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.lock(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.unlock = async (req, res) => {
|
2020-10-16 12:02:51 -04:00
|
|
|
await api.topics.unlock(req, req.params);
|
2020-10-02 16:35:45 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
2020-10-06 11:36:52 -04:00
|
|
|
Topics.follow = async (req, res) => {
|
2020-10-16 12:30:14 -04:00
|
|
|
await api.topics.follow(req, req.params);
|
2020-10-06 11:36:52 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.ignore = async (req, res) => {
|
2020-10-16 12:30:14 -04:00
|
|
|
await api.topics.ignore(req, req.params);
|
2020-10-06 11:36:52 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.unfollow = async (req, res) => {
|
2020-10-16 12:30:14 -04:00
|
|
|
await api.topics.unfollow(req, req.params);
|
2020-10-06 11:36:52 -04:00
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
2020-10-06 11:54:25 -04:00
|
|
|
Topics.addTags = async (req, res) => {
|
|
|
|
|
await topics.createTags(req.body.tags, req.params.tid, Date.now());
|
|
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Topics.deleteTags = async (req, res) => {
|
|
|
|
|
await topics.deleteTopicTags(req.params.tid);
|
|
|
|
|
helpers.formatApiResponse(200, res);
|
|
|
|
|
};
|