- Gruppi
This commit is contained in:
@@ -1,10 +1,9 @@
|
||||
const mongoose = require('mongoose').set('debug', false)
|
||||
const Subscription = mongoose.model('subscribers');
|
||||
|
||||
const { ListaIngresso } = require('../../models/listaingresso');
|
||||
//const { ListaIngresso } = require('../../models/listaingresso');
|
||||
const { Graduatoria } = require('../../models/graduatoria');
|
||||
const { User } = require('../../models/user');
|
||||
const { Nave } = require('../../models/nave');
|
||||
|
||||
const { ObjectID } = require('mongodb');
|
||||
|
||||
@@ -20,11 +19,11 @@ module.exports = {
|
||||
|
||||
let ris = null;
|
||||
|
||||
const { ListaIngresso } = require('../../models/listaingresso');
|
||||
// const { ListaIngresso } = require('../../models/listaingresso');
|
||||
|
||||
if (tablename === 'users') {
|
||||
|
||||
await ListaIngresso.deleteUserInListaIngresso(rec.idapp, rec.username);
|
||||
// await ListaIngresso.deleteUserInListaIngresso(rec.idapp, rec.username);
|
||||
|
||||
// Controlla se aveva invitati, li regala a quello sopra
|
||||
const arrap = await User.getDownlineByUsername(rec.idapp, rec.username);
|
||||
@@ -43,28 +42,6 @@ module.exports = {
|
||||
ris = Subscription.deleteOne({ userId: rec._id })
|
||||
}
|
||||
|
||||
if (tablename === 'listaingressos') {
|
||||
// Rimuovi anche nella Tabella Graduatoria
|
||||
ris = await Graduatoria.deleteOne({ idListaIngresso: ObjectID(rec._id) });
|
||||
if (!!ris) {
|
||||
|
||||
let msg = 'Eliminato dalla Graduatoria di ' + rec.name + ' ' + rec.surname + ' (ind_order=' + rec.ind_order + ', num_tess=' + rec.num_tess + ') [Num = ' + rec.index + `] (da ${req.user.name} ${req.user.surname} )` ;
|
||||
await telegrambot.sendMsgTelegramToTheManagers(rec.idapp, msg);
|
||||
tools.writeSostituzioniLog(msg);
|
||||
}
|
||||
|
||||
// Elimina anche la Nave se è temporanea!
|
||||
const arrnave = await Nave.find({ idapp: rec.idapp, ind_order: rec.ind_order, num_tess: rec.num_tess });
|
||||
for (const mynave of arrnave) {
|
||||
if (!!mynave) {
|
||||
if (!await Nave.isDefinitiva(rec.idapp, mynave)) {
|
||||
await Nave.findByIdAndUpdate(mynave.id, { $set: { ind_order: -1 } });
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!!ris) {
|
||||
|
||||
if (notifBot) {
|
||||
|
||||
@@ -9,9 +9,6 @@ const { authenticate } = require('../middleware/authenticate');
|
||||
|
||||
const { User } = require('../models/user');
|
||||
|
||||
const { Nave } = require('../models/nave');
|
||||
const { Flotta } = require('../models/flotta');
|
||||
const { NavePersistente } = require('../models/navepersistente');
|
||||
const { MsgTemplate } = require('../models/msg_template');
|
||||
|
||||
const mongoose = require('mongoose').set('debug', false)
|
||||
@@ -137,76 +134,6 @@ router.post('/msgflotta', authenticate, async (req, res) => {
|
||||
|
||||
});
|
||||
|
||||
router.post('/getnave', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
const riga = req.body.riga;
|
||||
const col = req.body.col;
|
||||
const riga1don = req.body.riga1don;
|
||||
const col1don = req.body.col1don;
|
||||
const ind_order = req.body.ind_order;
|
||||
|
||||
const nave = await NavePersistente.findByRigaCol(idapp, riga, col);
|
||||
if (!!nave) {
|
||||
nave._doc.rec = await Nave.getNaveByRigaCol(idapp, riga1don, col1don);
|
||||
if (ind_order >= 0)
|
||||
nave._doc.ind_order = ind_order;
|
||||
|
||||
nave._doc.listadonatoridelsognatore = await Nave.getDonatoridelSognatore(idapp, riga1don, col1don);
|
||||
}
|
||||
|
||||
const navi_partenza = await NavePersistente.findAllIdApp(idapp);
|
||||
|
||||
ris = { nave, navi_partenza };
|
||||
|
||||
if (ris)
|
||||
res.send({ code: server_constants.RIS_CODE_OK, ris });
|
||||
else
|
||||
res.status(400).send(e);
|
||||
|
||||
});
|
||||
|
||||
router.post('/getnavi', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
|
||||
const { Flotta } = require('../models/flotta');
|
||||
|
||||
|
||||
let arrnavi = await NavePersistente.findAllIdApp(idapp);
|
||||
|
||||
// let arrnavi = await NavePersistente.find({idapp, date_gift_chat_open: { $gte: tools.IncDateNow(-1000 * 3600 * 24 * 7 ) } }).sort({ riga: 1, col: 1 });
|
||||
|
||||
for (nave of arrnavi) {
|
||||
//nave.rec = await Nave.getNaveByRigaCol(idapp, nave.riga, nave.col);
|
||||
nave._doc.rec = {
|
||||
donatore: {},
|
||||
mediatore: null
|
||||
};
|
||||
|
||||
let riganave = nave.riga;
|
||||
let colnave = nave.col;
|
||||
// if (riganave < 4) {
|
||||
// riganave = 4;
|
||||
// colnave = 1;
|
||||
// }
|
||||
// nave._doc.rec.donatore.navepersistente = await NavePersistente.findByRigaColByDonatore(idapp, riganave, colnave, 0);
|
||||
nave._doc.rec.donatore.navepersistente = await NavePersistente.findOne({ idapp, riga: riganave, col: colnave });
|
||||
if (!!nave._doc.rec) {
|
||||
if (!!nave._doc.rec.donatore.navepersistente)
|
||||
nave._doc.rec.donatore.flotta = await Flotta.getFlottaByNavePersistente(idapp, nave._doc.rec.donatore.navepersistente);
|
||||
}
|
||||
}
|
||||
|
||||
const navi_partenza = await NavePersistente.findAllIdApp(idapp);
|
||||
|
||||
ris = { arrnavi, navi_partenza };
|
||||
|
||||
if (ris)
|
||||
res.send({ code: server_constants.RIS_CODE_OK, ris });
|
||||
else
|
||||
res.status(400).send(e);
|
||||
|
||||
});
|
||||
|
||||
router.post('/getmsg_templates', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
|
||||
@@ -232,84 +159,6 @@ router.post('/getflotte', authenticate, async (req, res) => {
|
||||
|
||||
});
|
||||
|
||||
router.post('/getflotta', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
const riga = req.body.riga;
|
||||
const col_prima = req.body.col_prima;
|
||||
const col_ultima = req.body.col_ultima;
|
||||
|
||||
// const ris2 = await NavePersistente.aggiornaFlottaByNavePersistente(idapp, {riga, col1don: col_prima });
|
||||
|
||||
let ris = await Nave.getFlotta(idapp, riga, col_prima, col_ultima);
|
||||
|
||||
ris.flotta._doc.log_attivita = tools.readFlottaLog(idapp, ris.flotta.riga, ris.flotta.col_prima);
|
||||
|
||||
if (!!ris)
|
||||
res.send({ code: server_constants.RIS_CODE_OK, flotta: ris.flotta, arrdonatori: ris.arrdonatori, arrmediatori: ris.arrmediatori });
|
||||
else
|
||||
res.status(400).send(e);
|
||||
|
||||
});
|
||||
|
||||
router.post('/getdoninavi', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
const ricalcola = req.body.ricalcola;
|
||||
const showall = req.body.showall;
|
||||
|
||||
let arrnavi = null;
|
||||
if (showall)
|
||||
arrnavi = await NavePersistente.findAllIdApp(idapp);
|
||||
else
|
||||
arrnavi = await NavePersistente.find({idapp, date_gift_chat_open: { $gte: tools.IncDateNow(-1000 * 3600 * 24 * 10 ) } }).sort({ riga: 1, col: 1 });
|
||||
|
||||
let test = false;
|
||||
|
||||
//arrnavi.push({ riga: indriga, col: indcol, rigadon: indriga + 3, coldon: (indcol * 8) - 7 });
|
||||
|
||||
try {
|
||||
if (ricalcola) {
|
||||
let index = 1;
|
||||
|
||||
for (nave of arrnavi) {
|
||||
nave = await Nave.ricalcolaNave(idapp, nave, 0, 0, ricalcola, index);
|
||||
index++;
|
||||
}
|
||||
} else {
|
||||
// arrnavi = await NavePersistente.findAllIdApp(idapp);
|
||||
let index = 1;
|
||||
for (nave of arrnavi) {
|
||||
if (nave.provvisoria || nave.DoniTotali !== nave.DoniConfermati) {
|
||||
nave._doc.rec = await Nave.getNaveByRigaCol(idapp, nave.riga1don, nave.col1don);
|
||||
} else {
|
||||
let rigapos = nave.riga1don;
|
||||
let colpos = nave.col1don;
|
||||
if (rigapos < 4) {
|
||||
rigapos = 4;
|
||||
colpos = 1;
|
||||
}
|
||||
nave._doc.rec = {};
|
||||
nave._doc.rec.donatore = {};
|
||||
nave._doc.rec.donatore.navepersistente = await NavePersistente.findByRigaColByDonatore(idapp, rigapos, colpos, tools.Placca.SONOFUOCO);
|
||||
index++;
|
||||
}
|
||||
if (index > 8 * 6 ) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ris = { arrnavi };
|
||||
|
||||
if (ris)
|
||||
res.send({ code: server_constants.RIS_CODE_OK, ris });
|
||||
else
|
||||
res.status(400).send(e);
|
||||
} catch (e) {
|
||||
console.log(e.message)
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
router.post('/getdata', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
|
||||
@@ -15,7 +15,7 @@ const {authenticate, authenticate_noerror} = require(
|
||||
'../middleware/authenticate');
|
||||
|
||||
const {ObjectID} = require('mongodb');
|
||||
const {ListaIngresso} = require('../models/listaingresso');
|
||||
// const {ListaIngresso} = require('../models/listaingresso');
|
||||
const {Graduatoria} = require('../models/graduatoria');
|
||||
|
||||
const mongoose = require('mongoose').set('debug', false);
|
||||
@@ -34,9 +34,7 @@ if (!fs.existsSync(folder)) {
|
||||
const _ = require('lodash');
|
||||
|
||||
const {User} = require('../models/user');
|
||||
const {Nave} = require('../models/nave');
|
||||
const {Flotta} = require('../models/flotta');
|
||||
const {NavePersistente} = require('../models/navepersistente');
|
||||
const {MyGroup} = require('../models/mygroup');
|
||||
// const { ExtraList } = require('../models/extralist');
|
||||
const {Booking} = require('../models/booking');
|
||||
const {Operator} = require('../models/operator');
|
||||
@@ -103,7 +101,6 @@ const UserCost = {
|
||||
'profile.paymenttypes'],
|
||||
};
|
||||
|
||||
|
||||
router.post(process.env.LINKVERIF_REG, (req, res) => {
|
||||
const body = _.pick(req.body, ['idapp', 'idlink']);
|
||||
const idapp = body.idapp;
|
||||
@@ -222,6 +219,8 @@ function getTableByTableName(tablename) {
|
||||
let mytable = '';
|
||||
if (tablename === 'users')
|
||||
mytable = User;
|
||||
else if (tablename === 'mygroups')
|
||||
mytable = MyGroup;
|
||||
else if (tablename === 'tessitura')
|
||||
mytable = Tessitura;
|
||||
// else if (tablename === 'extralist')
|
||||
@@ -294,16 +293,12 @@ function getTableByTableName(tablename) {
|
||||
mytable = Permission;
|
||||
else if (tablename === 'mailinglist')
|
||||
mytable = MailingList;
|
||||
else if (tablename === 'navi')
|
||||
mytable = Nave;
|
||||
else if (tablename === 'flotte')
|
||||
mytable = Flotta;
|
||||
else if (tablename === 'msg_templates')
|
||||
mytable = MsgTemplate;
|
||||
else if (tablename === 'navepersistente')
|
||||
mytable = NavePersistente;
|
||||
else if (tablename === 'listaingressos')
|
||||
mytable = ListaIngresso;
|
||||
// else if (tablename === 'listaingressos')
|
||||
// mytable = ListaIngresso;
|
||||
else if (tablename === 'graduatorias')
|
||||
mytable = Graduatoria;
|
||||
else if (tablename === 'skills')
|
||||
@@ -365,6 +360,23 @@ router.post('/settable', authenticate, (req, res) => {
|
||||
}
|
||||
}
|
||||
|
||||
if (shared_consts.TABLES_USER_INCLUDE_MY.includes(params.table)) {
|
||||
if (!mydata.admins) {
|
||||
mydata.admins = [];
|
||||
} else {
|
||||
const arrnew = [];
|
||||
for (const username of mydata.admins) {
|
||||
arrnew.push({username});
|
||||
}
|
||||
mydata.admins = arrnew;
|
||||
}
|
||||
const indfind = mydata.admins.findIndex((rec) => (rec.username === req.user.username));
|
||||
|
||||
if (indfind < 0) {
|
||||
mydata.admins.push({_id: new ObjectID(), username: req.user.username});
|
||||
}
|
||||
}
|
||||
|
||||
delete mydata['__v'];
|
||||
delete mydata['__proto__'];
|
||||
|
||||
@@ -411,7 +423,7 @@ router.post('/settable', authenticate, (req, res) => {
|
||||
}
|
||||
});
|
||||
|
||||
}catch (e) {
|
||||
} catch (e) {
|
||||
return res.status(400).send(e);
|
||||
}
|
||||
|
||||
@@ -627,7 +639,8 @@ router.patch('/chval', authenticate, async (req, res) => {
|
||||
|
||||
if (mydata.table === shared_consts.TAB_SITES) {
|
||||
if (shared_consts.SITES_KEY_TO_CRYPTED in fieldsvalue) {
|
||||
fieldsvalue[shared_consts.SITES_KEY_TO_CRYPTED] = tools.cryptdata(fieldsvalue[shared_consts.SITES_KEY_TO_CRYPTED]);
|
||||
fieldsvalue[shared_consts.SITES_KEY_TO_CRYPTED] = tools.cryptdata(
|
||||
fieldsvalue[shared_consts.SITES_KEY_TO_CRYPTED]);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -810,272 +823,7 @@ router.patch('/callfunz', authenticate, async (req, res) => {
|
||||
|
||||
let fieldsvalue = {};
|
||||
|
||||
if (mydata.myfunc === shared_consts.CallFunz.SOSTITUISCI) { // SOSTITUISCI
|
||||
|
||||
let username_da_sostituire = mydata.data.username_da_sostituire;
|
||||
|
||||
let myuservecchio = await User.findOne(
|
||||
{idapp, username: username_da_sostituire});
|
||||
|
||||
let mianavedasost = await Nave.findOne(
|
||||
{idapp, riga: mydata.data.riga, col: mydata.data.col});
|
||||
if (!!mianavedasost) {
|
||||
|
||||
// Sostituisci l'Utente
|
||||
let myusernuovo = await User.getUserShortDataByUsername(idapp,
|
||||
mydata.data.username);
|
||||
let navepersistente = await NavePersistente.findByRigaColByDonatore(
|
||||
idapp, mydata.data.riga, mydata.data.col, 0);
|
||||
|
||||
if (myusernuovo) {
|
||||
|
||||
if (!mydata.data.AddImbarco && mianavedasost.ind_order > 0) {
|
||||
|
||||
// Controlla prima se è in una Nave Temporanea, allora lo elimina dall'ultima Nave Temporanea
|
||||
|
||||
let miaarrnavi = await Nave.getArrPosizioniByUsername(idapp,
|
||||
username);
|
||||
if (miaarrnavi) {
|
||||
miaarrnavi = miaarrnavi.reverse(); // parto dall'ultima
|
||||
for (const mianave of miaarrnavi) {
|
||||
let persistente = await NavePersistente.findByRigaColByDonatore(
|
||||
idapp, mianave.riga, mianave.col, 0);
|
||||
if (persistente.provvisoria) {
|
||||
fieldsvalue = {
|
||||
ind_order: -1,
|
||||
};
|
||||
|
||||
let ris = await Nave.findByIdAndUpdate(mianave._id,
|
||||
{$set: fieldsvalue});
|
||||
if (!!ris) {
|
||||
// rimosso++;
|
||||
break; // Rimuovilo solo 1 !
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mianavedasost.ind_order >= 0) {
|
||||
|
||||
// ELIMINO LA LISTAINGRESSO CHE STO SOSTITUENDO (SOLO SE NON VIENE USATA DA ALTRA NAVE!)
|
||||
let eliminatoingr = await ListaIngresso.eliminaListaIngresso(idapp,
|
||||
mianavedasost.ind_order, req, mianavedasost.num_tess);
|
||||
|
||||
if (!eliminatoingr) {
|
||||
return res.send({
|
||||
code: server_constants.RIS_CODE_ERR,
|
||||
msg: 'La Sostituzione non può avvenire ! Contattare Paolo. (ind_order=' +
|
||||
mianavedasost.ind_order + ')',
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (!!myuservecchio) {
|
||||
if (mydata.data.notifBot) {
|
||||
|
||||
const mydatamsg = {
|
||||
tipomsg: tools.TipoMsg.SEND_MSG_A_UTENTE_SOSTITUITO,
|
||||
navemediatore: {
|
||||
riga: navepersistente.riga,
|
||||
col: navepersistente.col,
|
||||
},
|
||||
};
|
||||
|
||||
mydatamsg.flotta = await Flotta.getFlottaByNavePersistente(idapp,
|
||||
navepersistente);
|
||||
|
||||
const rismsg = await telegrambot.getMsgByTipoMsg(mydatamsg,
|
||||
myuservecchio.lang, myuservecchio, false);
|
||||
|
||||
if (!!rismsg) {
|
||||
let messaggio = rismsg.body;
|
||||
// let mytitle = rismsg.title;
|
||||
if (!!messaggio) {
|
||||
await telegrambot.sendMsgTelegram(idapp, myusernuovo.username,
|
||||
messaggio);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Se ha gia delle altre navi, non cancellarlo!
|
||||
if (!await Nave.checkIfMadeGift(idapp, myuservecchio.username)) {
|
||||
|
||||
if (mydata.data.deleteUser && mianavedasost.ind_order > 0) {
|
||||
// Metti Deleted allo User
|
||||
fieldsvalue = {
|
||||
deleted: true,
|
||||
date_deleted: new Date(),
|
||||
};
|
||||
|
||||
await User.findByIdAndUpdate(myuservecchio.id,
|
||||
{$set: fieldsvalue});
|
||||
await telegrambot.sendMsgTelegramToTheManagers(idapp,
|
||||
`L\'utente ${myuservecchio.name} ${myuservecchio.surname} (${myuservecchio.username}) è stato cancellato (nascosto) perchè sostituito (da ${req.user.name} ${req.user.surname} )`);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
let ind_order = -1;
|
||||
let myingr = null;
|
||||
// Estrai un ind_order dalla Lista, se era ancora in attesa
|
||||
if (!mydata.data.AddImbarco)
|
||||
myingr = await ListaIngresso.findOne(
|
||||
{idapp, added: false, username: myusernuovo.username});
|
||||
|
||||
if (!!myingr) {
|
||||
ind_order = myingr.ind_order;
|
||||
|
||||
myingr.added = true;
|
||||
await myingr.save();
|
||||
} else {
|
||||
// Crea un nuovo Ingresso
|
||||
myingr = await ListaIngresso.addUserInListaIngresso(idapp,
|
||||
myuser.username, myuser.username, myuser.lang, false, true,
|
||||
null, null, true);
|
||||
ind_order = myingr.ind_order;
|
||||
|
||||
await myingr.save();
|
||||
|
||||
}
|
||||
|
||||
// Togliolo dalla Graduatoria!
|
||||
await Graduatoria.findOneAndUpdate({
|
||||
idapp,
|
||||
idListaIngresso: myingr._id,
|
||||
}, {$set: {ind_order: -1}}, {new: false});
|
||||
|
||||
// Aggiorna la Nave con il Nuovo
|
||||
fieldsvalue = {
|
||||
ind_order,
|
||||
};
|
||||
|
||||
const dachi = req.user.name + ' ' + req.user.surname;
|
||||
|
||||
return await Nave.findByIdAndUpdate(mianavedasost.id,
|
||||
{$set: fieldsvalue}).then(async (nave) => {
|
||||
// tools.mylogshow(' REC TO MODIFY: ', rec);
|
||||
if (!nave) {
|
||||
return res.status(404).send();
|
||||
} else {
|
||||
|
||||
const mydatamsg = {
|
||||
tipomsg: tools.TipoMsg.SEND_MSG_EFFETTUA_IL_DONO,
|
||||
navemediatore: {
|
||||
riga: navepersistente.riga,
|
||||
col: navepersistente.col,
|
||||
},
|
||||
};
|
||||
|
||||
mydatamsg.flotta = await Flotta.getFlottaByNavePersistente(idapp,
|
||||
navepersistente);
|
||||
|
||||
const rismsg = await telegrambot.getMsgByTipoMsg(mydatamsg,
|
||||
myusernuovo.lang, myusernuovo, false);
|
||||
|
||||
let messaggio = rismsg.body;
|
||||
let mytitle = rismsg.title;
|
||||
|
||||
// const myplacca = await Nave.getNavePos(idapp, navepersistente.riga, navepersistente.col);
|
||||
// messaggio += tools.ACAPO + myplacca;
|
||||
|
||||
let testostaff = '';
|
||||
if (mydata.notifBot)
|
||||
testostaff = mydata.notifBot.txt;
|
||||
|
||||
const mymsg = testostaff + ' ' + myusernuovo.name + ' ' +
|
||||
myusernuovo.surname + ' [da ' + dachi + ']' + tools.ACAPO +
|
||||
'Inviato messaggio: ' + messaggio;
|
||||
|
||||
if (mydata.data.notifBot) {
|
||||
|
||||
await telegrambot.sendMsgTelegram(idapp, myusernuovo.username,
|
||||
messaggio);
|
||||
|
||||
if (mydata.data.inviaemail) {
|
||||
await sendemail.sendEmail_ByText(myusernuovo.lang,
|
||||
myusernuovo.email, myusernuovo, idapp, {
|
||||
emailbody: messaggio,
|
||||
emailtitle: mytitle,
|
||||
});
|
||||
}
|
||||
|
||||
await telegrambot.sendMsgTelegramToTheManagers(idapp,
|
||||
testostaff);
|
||||
await telegrambot.sendMsgTelegram(idapp, req.user.username,
|
||||
testostaff);
|
||||
// await telegrambot.sendMsgTelegram(idapp, req.user.username, myplacca);
|
||||
} else {
|
||||
tools.writeManagersLog(mymsg);
|
||||
}
|
||||
|
||||
const msgsost = '[NAVE ' + navepersistente.riga + '.' +
|
||||
navepersistente.col + '] Sostituito ' +
|
||||
myuservecchio.username + ' (' + myuservecchio.name + ' ' +
|
||||
myuservecchio.surname + ') ' + ' con -> ' +
|
||||
myusernuovo.username + ' (' + myusernuovo.name + ' ' +
|
||||
myusernuovo.surname + '' +
|
||||
') [Posiz. ' + nave.riga + '.' + nave.col + ' ind_order=' +
|
||||
nave.ind_order + '] ' + ' [da ' + dachi + ']';
|
||||
tools.writeSostituzioniLog(msgsost);
|
||||
tools.writeFlottaLog(idapp, msgsost, mydatamsg.flotta.riga,
|
||||
mydatamsg.flotta.col_prima);
|
||||
await telegrambot.sendMsgTelegramToTheManagers(idapp, msgsost,
|
||||
false);
|
||||
|
||||
// const nomecognomeprima = myuser.name + ' ' + myuser.surname + '(' + myuser.username + ')';
|
||||
// const nomecognomenuovo = await User.getNameSurnameByUsername(idapp,);
|
||||
|
||||
res.send({code: server_constants.RIS_CODE_OK, msg: ''});
|
||||
}
|
||||
|
||||
}).catch((e) => {
|
||||
tools.mylogserr('Error patch USER: ', e.message);
|
||||
res.status(400).send();
|
||||
});
|
||||
}
|
||||
}
|
||||
} else if (mydata.myfunc ===
|
||||
shared_consts.CallFunz.AGGIUNGI_NUOVO_IMBARCO) {
|
||||
// Ottieni il prossimo Numero di Tessitura
|
||||
//let num_tess = await Nave.getNextNumTess(idapp, ind_order);
|
||||
// const num_tess = 1;
|
||||
|
||||
/*
|
||||
let listaingr = await ListaIngresso.find({ idapp, ind_order }).sort({ num_tess: 1 });
|
||||
const trovato = listaingr.find((rec) => rec.num_tess === num_tess);
|
||||
if (trovato) {
|
||||
num_tess = listaingr.slice(-1)[0].num_tess + 2;
|
||||
}
|
||||
*/
|
||||
|
||||
// metti l'invitante inizialmente a Te stesso !
|
||||
const invitante_username = req.body.data.invitante_username;
|
||||
|
||||
await ListaIngresso.addUserInListaIngresso(idapp, username,
|
||||
invitante_username, myuser.lang, true, true);
|
||||
|
||||
let arrimbarchi = await ListaIngresso.findAllByUsername(idapp, username);
|
||||
return res.send({code: server_constants.RIS_CODE_OK, arrimbarchi});
|
||||
|
||||
} else if (mydata.myfunc === shared_consts.CallFunz.CANCELLA_IMBARCO) {
|
||||
|
||||
const myrec = await ListaIngresso.getIngrEUserByFilter(idapp,
|
||||
{idapp, _id: ObjectID(mydata.data.id)});
|
||||
|
||||
if (!!myrec) {
|
||||
await ListaIngresso.find({_id: mydata.data.id});
|
||||
|
||||
const risdel = await ListaIngresso.eliminaListaIngresso(idapp,
|
||||
mydata.ind_order, req, mydata.data.num_tess);
|
||||
|
||||
if (risdel) {
|
||||
return res.send({code: server_constants.RIS_CODE_OK, msg: ''});
|
||||
}
|
||||
}
|
||||
|
||||
} else if (mydata.myfunc === shared_consts.CallFunz.ZOOM_GIA_PARTECIPATO) {
|
||||
if (mydata.myfunc === shared_consts.CallFunz.ZOOM_GIA_PARTECIPATO) {
|
||||
|
||||
if (!!myuser.username) {
|
||||
let FormDaMostrare = telegrambot.getFormDaMostrare(idapp, mydata.myfunc,
|
||||
@@ -1152,7 +900,8 @@ router.delete('/delrec/:table/:id', authenticate, async (req, res) => {
|
||||
|
||||
let cancellato = false;
|
||||
|
||||
// tools.NotifyIfDelRecord(tablename);
|
||||
//++Tools: Notify...
|
||||
tools.NotifyIfDelRecord(tablename);
|
||||
|
||||
if (!User.isAdmin(req.user.perm) && !User.isManager(req.user.perm)) {
|
||||
if (tablename === 'users') {
|
||||
@@ -1276,7 +1025,8 @@ function load(req, res, version) {
|
||||
|
||||
let gestoredelSito = '0';
|
||||
if (!!req.user) {
|
||||
gestoredelSito = (User.isAdmin(req.user.perm) || User.isManager(req.user.perm) ||
|
||||
gestoredelSito = (User.isAdmin(req.user.perm) ||
|
||||
User.isManager(req.user.perm) ||
|
||||
User.isEditor(req.user.perm)) ? '1' : '0';
|
||||
}
|
||||
|
||||
@@ -1284,7 +1034,6 @@ function load(req, res, version) {
|
||||
|
||||
// tools.mylog('loadsite : ', req.params);
|
||||
|
||||
|
||||
let bookedevent = [];
|
||||
// let msgs = [];
|
||||
|
||||
@@ -1295,7 +1044,8 @@ function load(req, res, version) {
|
||||
|
||||
if (userId !== '0') {
|
||||
// LOGGED WITH USERID
|
||||
bookedevent = Booking.findAllByUserIdAndIdApp(userId, idapp, gestoredelSito);
|
||||
bookedevent = Booking.findAllByUserIdAndIdApp(userId, idapp,
|
||||
gestoredelSito);
|
||||
}
|
||||
|
||||
// Extract all the todos of the userId only
|
||||
@@ -1357,7 +1107,7 @@ function load(req, res, version) {
|
||||
orderscart = OrdersCart.getOrdersCartByUserId(req.user.id, idapp, 0);
|
||||
}
|
||||
}
|
||||
let askedfriends = []
|
||||
let askedfriends = [];
|
||||
let myuserextra = null;
|
||||
if (req.user) {
|
||||
// askedfriends = User.getAskedFriendsByUsername(idapp, req.user.username);
|
||||
@@ -1506,7 +1256,6 @@ router.get(process.env.LINK_CHECK_UPDATES, authenticate, async (req, res) => {
|
||||
if (User.isAdmin(req.user.perm) || User.isEditor(req.user.perm) ||
|
||||
User.isManager(req.user.perm)) {
|
||||
|
||||
|
||||
// Send UsersList
|
||||
usersList = User.getUsersList(req.user.idapp);
|
||||
// usersList = null;
|
||||
@@ -1621,7 +1370,8 @@ function uploadFile(req, res, version) {
|
||||
form.on('file', async function(name, file) {
|
||||
try {
|
||||
console.log('Uploaded ' + file.name);
|
||||
const mydir = tools.getdirByIdApp(idapp) + dirmain + server_constants.DIR_UPLOAD + '/' + dir;
|
||||
const mydir = tools.getdirByIdApp(idapp) + dirmain +
|
||||
server_constants.DIR_UPLOAD + '/' + dir;
|
||||
|
||||
// Create Dir if doesn't exist:
|
||||
tools.mkdirpath(mydir);
|
||||
@@ -1634,7 +1384,7 @@ function uploadFile(req, res, version) {
|
||||
// filename = uuidv4() + ext;
|
||||
//}
|
||||
|
||||
file.name = filename
|
||||
file.name = filename;
|
||||
let newname = mydir + '/' + file.name;
|
||||
let resized_img = mydir + '/' + server_constants.PREFIX_IMG + filename;
|
||||
|
||||
@@ -1643,7 +1393,7 @@ function uploadFile(req, res, version) {
|
||||
// For local: ... resolve this... sending through the static folder...
|
||||
// res.sendFile(path.resolve(filename));
|
||||
|
||||
oldpath = file.path
|
||||
oldpath = file.path;
|
||||
file.path = newname;
|
||||
|
||||
// Move in the folder application !
|
||||
@@ -1675,13 +1425,13 @@ function uploadFile(req, res, version) {
|
||||
const ris = await resizer(newname, setup_image_compress);
|
||||
|
||||
if (ris) {
|
||||
tools.delete(newname, false, () => {})
|
||||
tools.delete(newname, false, () => {});
|
||||
|
||||
tools.move(resized_img, newname, (err) => {
|
||||
|
||||
})
|
||||
});
|
||||
}
|
||||
}catch (e) {
|
||||
} catch (e) {
|
||||
console.error('newname', e);
|
||||
}
|
||||
|
||||
|
||||
39
src/server/router/mygroups_router.js
Executable file
39
src/server/router/mygroups_router.js
Executable file
@@ -0,0 +1,39 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
|
||||
const tools = require('../tools/general');
|
||||
|
||||
const server_constants = require('../tools/server_constants');
|
||||
|
||||
const { authenticate } = require('../middleware/authenticate');
|
||||
|
||||
const mongoose = require('mongoose').set('debug', false)
|
||||
|
||||
const { User } = require('../models/user');
|
||||
const { MyGroup } = require('../models/mygroup');
|
||||
|
||||
const _ = require('lodash');
|
||||
|
||||
const { ObjectID } = require('mongodb');
|
||||
|
||||
|
||||
router.post('/load', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
const groupname = req.body.groupname;
|
||||
|
||||
try{
|
||||
data = await MyGroup.findOne({idapp, groupname}).lean();
|
||||
|
||||
res.send(data);
|
||||
|
||||
}catch (e) {
|
||||
console.error('Error in MyGroups');
|
||||
return res.status(400).send(e);
|
||||
}
|
||||
|
||||
const ris = null
|
||||
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
@@ -10,8 +10,8 @@ const { authenticate } = require('../middleware/authenticate');
|
||||
const mongoose = require('mongoose').set('debug', false)
|
||||
|
||||
const { User } = require('../models/user');
|
||||
const { Nave } = require('../models/nave');
|
||||
const { ListaIngresso } = require('../models/listaingresso');
|
||||
// const { Nave } = require('../models/nave');
|
||||
// const { ListaIngresso } = require('../models/listaingresso');
|
||||
|
||||
const _ = require('lodash');
|
||||
|
||||
@@ -26,8 +26,8 @@ router.post('/load', async (req, res) => {
|
||||
|
||||
let datastat = {
|
||||
num_reg: await User.getUsersRegistered(idapp),
|
||||
num_passeggeri: await Nave.getTotInLista(idapp),
|
||||
num_imbarcati: await ListaIngresso.getTotInLista(idapp),
|
||||
num_passeggeri: await 0,
|
||||
num_imbarcati: 0,
|
||||
email_non_verif: await User.getEmailNotVerified(idapp),
|
||||
num_teleg_attivo: await User.getUsersTelegramAttivo(idapp),
|
||||
num_teleg_pending: await User.getUsersTelegramPending(idapp),
|
||||
@@ -39,8 +39,8 @@ router.post('/load', async (req, res) => {
|
||||
arr_nations: await User.findAllDistinctNationality(idapp),
|
||||
numreg_untilday: await User.calcnumRegUntilDay(idapp),
|
||||
reg_daily: await User.calcRegDaily(idapp),
|
||||
imbarcati_daily: await ListaIngresso.ImbarcatiDaily(idapp),
|
||||
imbarcati_weekly: await ListaIngresso.ImbarcatiWeekly(idapp),
|
||||
imbarcati_daily: 0,
|
||||
imbarcati_weekly: 0,
|
||||
reg_weekly: await User.calcRegWeekly(idapp),
|
||||
lastsreg: await User.getLastUsers(idapp),
|
||||
checkuser: await User.checkUser(idapp, username),
|
||||
|
||||
@@ -33,6 +33,8 @@ const Product = require('../models/product');
|
||||
const Variant = require('../models/variant');
|
||||
const TypedError = require('../modules/ErrorHandler');
|
||||
|
||||
const { MyGroup } = require('../models/mygroup');
|
||||
|
||||
const mongoose = require('mongoose').set('debug', false);
|
||||
const Subscription = mongoose.model('subscribers');
|
||||
|
||||
@@ -491,6 +493,21 @@ router.post('/friends', authenticate, (req, res) => {
|
||||
|
||||
});
|
||||
|
||||
router.post('/groups', authenticate, (req, res) => {
|
||||
const username = req.user.username;
|
||||
idapp = req.body.idapp;
|
||||
locale = req.body.locale;
|
||||
|
||||
|
||||
return MyGroup.getGroupsByUsername(idapp, username).then((ris) => {
|
||||
res.send(ris);
|
||||
}).catch((e) => {
|
||||
tools.mylog('ERRORE IN groups: ' + e.message);
|
||||
res.status(400).send();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
router.post('/friends/cmd', authenticate, (req, res) => {
|
||||
const usernameLogged = req.user.username;
|
||||
const idapp = req.body.idapp;
|
||||
@@ -516,6 +533,31 @@ router.post('/friends/cmd', authenticate, (req, res) => {
|
||||
|
||||
});
|
||||
|
||||
router.post('/groups/cmd', authenticate, (req, res) => {
|
||||
const usernameLogged = req.user.username;
|
||||
const idapp = req.body.idapp;
|
||||
const locale = req.body.locale;
|
||||
const usernameOrig = req.body.usernameOrig;
|
||||
const groupnameDest = req.body.groupnameDest;
|
||||
const cmd = req.body.cmd;
|
||||
const value = req.body.value;
|
||||
|
||||
if (!User.isAdmin(req.user.perm) || !User.isManager(req.user.perm)) {
|
||||
// If without permissions, exit
|
||||
if (usernameOrig !== usernameLogged) {
|
||||
return res.status(404).send({code: server_constants.RIS_CODE_ERR_UNAUTHORIZED, msg: ''});
|
||||
}
|
||||
}
|
||||
|
||||
return MyGroup.setGroupsCmd(idapp, usernameOrig, groupnameDest, cmd, value).then((ris) => {
|
||||
res.send(ris);
|
||||
}).catch((e) => {
|
||||
tools.mylog('ERRORE IN groups/cmd: ' + e.message);
|
||||
res.status(400).send();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
async function eseguiDbOp(idapp, mydata, locale) {
|
||||
|
||||
let ris = await User.DbOp(idapp, mydata);
|
||||
@@ -529,7 +571,7 @@ async function eseguiDbOp(idapp, mydata, locale) {
|
||||
// } else if (mydata.dbop === 'rigeneraTutto') {
|
||||
// await ListaIngresso.Esegui_CronTab(idapp, mydata);
|
||||
} else if (mydata.dbop === 'visuStat') {
|
||||
ris = await User.visuUtentiNonInNavi(idapp);
|
||||
// ris = await User.visuUtentiNonInNavi(idapp);
|
||||
//} else if (mydata.dbop === 'creaNavi') {
|
||||
// const num = await Nave.generaNave(idapp, mydata, false);
|
||||
// ris = { num };
|
||||
|
||||
Reference in New Issue
Block a user