Fixed: le reactions devono stare in una tabella a parte (reactions).
- cambiata la gestione dei seen, fav, book, attend
This commit is contained in:
99
src/server/router/reactions_router.js
Executable file
99
src/server/router/reactions_router.js
Executable file
@@ -0,0 +1,99 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
|
||||
const { Reaction } = require('../models/reaction');
|
||||
|
||||
const { User } = require('../models/user');
|
||||
|
||||
const Hours = require('../models/hours');
|
||||
const { ObjectID } = require('mongodb');
|
||||
|
||||
const sendemail = require('../sendemail');
|
||||
|
||||
const { Settings } = require('../models/settings');
|
||||
|
||||
const { SendNotif } = require('../models/sendnotif');
|
||||
|
||||
const tools = require('../tools/general');
|
||||
const shared_consts = require('../tools/shared_nodejs');
|
||||
|
||||
const server_constants = require('../tools/server_constants');
|
||||
|
||||
const telegrambot = require('../telegram/telegrambot');
|
||||
|
||||
const _ = require('lodash');
|
||||
|
||||
const reg = require('../reg/registration');
|
||||
|
||||
const { authenticate } = require('../middleware/authenticate');
|
||||
|
||||
const TypedError = require('../modules/ErrorHandler');
|
||||
|
||||
const mongoose = require('mongoose').set('debug', false);
|
||||
|
||||
router.post('/cmd', authenticate, async (req, res) => {
|
||||
|
||||
const mydata = req.body.mydata;
|
||||
const idapp = req.body.idapp;
|
||||
const cmd = req.body.cmd;
|
||||
const id = req.body.id;
|
||||
const tab = req.body.tab;
|
||||
const num = req.body.num;
|
||||
const value = req.body.value;
|
||||
|
||||
|
||||
try {
|
||||
const username = req.user.username;
|
||||
|
||||
let ris = null;
|
||||
let record = null;
|
||||
|
||||
if (cmd === shared_consts.CMD_REACTION.SET_FAVORITE) {
|
||||
if (tab) {
|
||||
if (value)
|
||||
ris = await Reaction.addFavorite(req, idapp, username, id, tab);
|
||||
else
|
||||
ris = await Reaction.removeFavorite(idapp, username, id, tab);
|
||||
}
|
||||
|
||||
} else if (cmd === shared_consts.CMD_REACTION.SET_BOOKMARK) {
|
||||
if (tab) {
|
||||
if (value)
|
||||
ris = await Reaction.addBookmark(req, idapp, username, id, tab);
|
||||
else
|
||||
ris = await Reaction.removeBookmark(idapp, username, id, tab);
|
||||
}
|
||||
} else if (cmd === shared_consts.CMD_REACTION.SET_ATTEND) {
|
||||
if (tab) {
|
||||
if (value)
|
||||
ris = await Reaction.addAttend(req, idapp, username, id, tab, num);
|
||||
else
|
||||
ris = await Reaction.removeAttend(idapp, username, id, tab);
|
||||
}
|
||||
} else if (cmd === shared_consts.CMD_REACTION.SET_SEEN) {
|
||||
if (tab) {
|
||||
if (value) {
|
||||
ris = await Reaction.addSeen(req, idapp, username, id, tab);
|
||||
}
|
||||
const tabtofind = tools.getNumTabByTable('mybachecas');
|
||||
if (tab === tabtofind) {
|
||||
const { MyBacheca } = require('../models/mybacheca');
|
||||
record = await MyBacheca.getCompleteRecord(idapp, id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let state = (value && ris && ris.ok === 1) ? 1 : ((!value && ris && ris.ok === 1) ? -1 : 0);
|
||||
|
||||
return res.send({ state, record });
|
||||
|
||||
} catch (e) {
|
||||
res.status(400).send();
|
||||
res.send({ code: server_constants.RIS_CODE_ERR, msg: e, state: null, record: null });
|
||||
|
||||
console.log(e.message);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
Reference in New Issue
Block a user