Aggiornamento Traduzioni ...

This commit is contained in:
Paolo Arena
2020-03-31 20:34:24 +02:00
parent d59ee578c9
commit 8c9a5f7518
14 changed files with 946 additions and 269 deletions

View File

@@ -195,6 +195,7 @@ ExtraListSchema.statics.getUserNotRegisteredByNameSurname = function (idapp, nam
name_complete: nameandsurname,
registered: false,
}, {
lang: 1,
ind_order: 1,
name: 1,
surname: 1,

View File

@@ -10,6 +10,7 @@ const { ObjectID } = require('mongodb');
const { Nave } = require('./nave');
const shared_consts = require('../tools/shared_nodejs');
const queryclass = require('../classes/queryclass');
@@ -206,17 +207,27 @@ function getQueryProj(myfilter) {
}
ListaIngressoSchema.statics.showListaOrd = async function (idapp) {
ListaIngressoSchema.statics.showListaOrd = async function (idapp, solonuovi) {
const ListaIngresso = this;
const myquery = getQueryProj({ idapp });
const { User } = require('./user');
let myquery = '';
if (solonuovi)
myquery = getQueryProj({ idapp, added: false });
else
myquery = getQueryProj({ idapp });
arrrec = await ListaIngresso.aggregate(myquery).sort({ indprimario: 1 });
let mystr = '';
let conta = 1;
for (const rec of arrrec) {
mystr += '[' + conta + '] ' + rec.ind_order + ' (' + rec.ind_order + ') ' + rec.name + ' ' + rec.surname;
rec.numinvitati = await User.getnumInvitati(idapp, rec.username);
rec.numinvitatiattivi = await User.getnumInvitatiAttivi(idapp, rec.username);
mystr += '[' + conta + '] ' + rec.ind_order + ' [' + rec.numinvitatiattivi + '] - [' + rec.numinvitati + '] (' + rec.ind_order + ') ' + rec.name + ' ' + rec.surname;
if (rec.added)
mystr += ' (ADDED ++)';

View File

@@ -43,7 +43,7 @@ const NaveSchema = new mongoose.Schema({
parent_id: {
type: mongoose.Schema.Types.ObjectId,
},
date_start: {
/*date_start: {
type: Date
},
date_gift_chat_open: {
@@ -51,7 +51,7 @@ const NaveSchema = new mongoose.Schema({
},
link_chat: {
type: String,
},
},*/
sent_msg_howto_make_gift: {
type: Boolean,
default: false,
@@ -80,10 +80,10 @@ const NaveSchema = new mongoose.Schema({
note: {
type: String
},
provvisoria: {
/* provvisoria: {
type: Boolean
},
/* note_bot: {
note_bot: {
type: String
},
note_interne: {
@@ -438,14 +438,14 @@ function getQueryProj(myfilter) {
riga: 1,
col: 1,
created: 1,
date_start: 1,
date_gift_chat_open: 1,
link_chat: 1,
provvisoria: 1,
note_bot: 1,
note_interne: 1,
tutor: 1,
tutor_namesurname: 1,
// date_start: 1,
// date_gift_chat_open: 1,
// link_chat: 1,
// provvisoria: 1,
// note_bot: 1,
// note_interne: 1,
// tutor: 1,
// tutor_namesurname: 1,
};
const query = [
@@ -590,6 +590,7 @@ NaveSchema.statics.getPlaccaGenerica = async function (idapp, riga, col, offset,
let recfuoco = await Nave.findByRigaCol(idapp, indr, indc, true);
recfuoco = checkifNullThenEmpty(recfuoco, indr, indc);
arrdonatori.push({ index: ind, ...recfuoco });
mystr += await getusertextbyrec(recfuoco, symb.icona, symb.car, indr, indc, ind) + tools.ACAPO;
ind++;
}
@@ -677,7 +678,7 @@ function calcval(riga, col, quanti) {
return (quanti * (col - 1));
}
NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord, ind_order) {
const Nave = this;
if (riga <= 0)
@@ -685,6 +686,12 @@ NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
if (col <= 0)
col = 1;
let lang = 'it';
if (!!ind_order) {
const { User } = require('./user');
lang = await User.getLangByIndOrder(idapp, ind_order);
}
try {
let recsognatori = [await Nave.findRecByRigaColParent(idapp, riga, col, 3),
@@ -695,12 +702,12 @@ NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
let recnavepersistente = await NavePersistente.findByRigaCol(idapp, riga, col, 0);
mystr = '🌈SOGNATORE: ';
mystr = '🌈' + tools.get__('SOGNATORE', lang) + ': ';
for (let indsogn = 0; indsogn < recsognatori.length; indsogn++) {
mystr += 'A' + (3 - indsogn) + await getusertextbyrec(recsognatori[indsogn], '', '', riga, col, '') + tools.ACAPO;
}
mystr += tools.ACAPO + '🌀 MEDIATORE:' + await getusertextbyrec(recmediatore, '', '', riga, col, '') + tools.ACAPO + tools.ACAPO;
mystr += tools.ACAPO + '🌀 ' + tools.get__('MEDIATORE', lang) + ':' + await getusertextbyrec(recmediatore, '', '', riga, col, '') + tools.ACAPO + tools.ACAPO;
for (let indterra = 1; indterra <= 2; indterra++) {
miacol = calcval(riga, col, 2) + (indterra);
@@ -722,7 +729,7 @@ NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
let primofuoco = null;
mystr += '🎁 DONATORI:' + tools.ACAPO;
mystr += '🎁 ' + tools.get__('DONATORI', lang) + ':' + tools.ACAPO;
let donitotali = 0;
let donifatti = 0;
@@ -741,7 +748,7 @@ NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
}
if (!!recfuoco && recmediatore) {
if (recfuoco.ind_order === recmediatore.ind_order && recfuoco.num_tess === 2) {
mystr += await getusertextbyrec(recfuoco, '', 'TESS', miariga, miacol, '') + tools.ACAPO;
mystr += await getusertextbyrec(recfuoco, '', tools.get__('RITESSITURA', lang), miariga, miacol, '') + tools.ACAPO;
} else {
mystr += await getusertextbyrec(recfuoco, symbol, 'D', miariga, miacol, indfuoco) + tools.ACAPO;
donitotali++;
@@ -750,31 +757,33 @@ NaveSchema.statics.getNavePos = async function (idapp, riga, col, solorecord) {
}
if (donitotali > 0 && donifatti >= donitotali) {
mystr += tools.ACAPO + '💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫' + tools.ACAPO +
'✨✨✨ NAVE COMPLETATA (Doni Effettuati) ! ✨✨✨' + tools.ACAPO +
'💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫' + tools.ACAPO;
mystr += tools.ACAPO + '💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫' + tools.ACAPO +
'✨✨✨ ' + tools.get__('NAVE COMPLETATA', lang) + ' ' + ' (' + tools.get__('Doni Effettuati', lang) + ') ! ✨✨✨' + tools.ACAPO +
'💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫💫' + tools.ACAPO;
}
let data = "";
let mystrtemp = '';
if (primofuoco) {
data = '💬 Giorno di Apertura GIFT CHAT: ' + tools.getstrDateLong(recnavepersistente.date_gift_chat_open) + tools.ACAPO;
// tools.gettranslate('PLACCA_TUTOR', lang)
if (!!recnavepersistente.tutor_namesurname)
data += 'Il Mediatore sarà contattato 1 giorno prima dal Tutor ' + recnavepersistente.tutor_namesurname + tools.ACAPO;
data += '👤 ' + tools.get__('Tutor che affianchèra il Mediatore', lang) + ': "' + recnavepersistente.tutor_namesurname + '"' + tools.ACAPO;
data += "🎁 Giorno in cui Inviare il DONO : " + tools.getstrDateLong(recnavepersistente.date_start) + tools.ACAPO;
data += '💬 ' + tools.get__('Giorno di Apertura GIFT CHAT', lang) + ': ' + tools.getstrDateLong(recnavepersistente.date_gift_chat_open) + tools.ACAPO;
data += '🎁 ' + tools.get__('Giorno in cui Inviare il DONO', lang) + ' : ' + tools.getstrDateLong(recnavepersistente.date_start) + tools.ACAPO;
if (!!recnavepersistente.note_bot)
data += "Note: " + recnavepersistente.note_bot + tools.ACAPO;
data += tools.ACAPO;
data += tools.get__('Note', lang) + ": " + recnavepersistente.note_bot + tools.ACAPO;
if (recnavepersistente.provvisoria)
mystrtemp = 'TEMPORANEA ';
mystrtemp = tools.get__('TEMPORANEA', lang) + ' ';
} else
data = "";
mystr = tools.ACAPO + 'NAVE ' + '[' + riga + '.' + col + '] ' + mystrtemp + tools.ACAPO + data + tools.ACAPO + mystr;
mystr = tools.ACAPO + tools.get__('NAVE', lang) + ' ' + '[' + riga + '.' + col + '] ' + mystrtemp + tools.ACAPO + data + tools.ACAPO + mystr;
return mystr;
} catch (e) {
@@ -818,7 +827,6 @@ NaveSchema.statics.getArrPosizioniByIndOrder = async function (idapp, ind_order)
const Nave = this;
arrposizioni = await Nave.find({ 'idapp': idapp, ind_order }).sort({ riga: 1, col: 1 });
return arrposizioni;
@@ -843,8 +851,9 @@ NaveSchema.statics.showListaOrd = async function (idapp) {
let conta = 1;
for (const rec of arrrec) {
let recnavepersistente = await NavePersistente.findByRigaColByDonatore(idapp, rec.riga, rec.col, 0);
mystr += '[' + conta + '] [' + rec.riga + '.' + rec.col + '] ' + rec.ind_order + ' ' + rec.name + ' ' + rec.surname + ' (' + tools.getstrDateShort(recnavepersistente.date_start) + ')\n';
if (!!recnavepersistente) {
mystr += '[' + conta + '] [' + rec.riga + '.' + rec.col + '] ' + rec.ind_order + ' ' + rec.name + ' ' + rec.surname + ' (' + tools.getstrDateShort(recnavepersistente.date_start) + ')\n';
}
conta++;
}
@@ -859,18 +868,22 @@ NaveSchema.statics.getLastRigaCol = async function (idapp) {
async function addRecordNaveByParams(params, siRitesse) {
const { ListaIngresso } = require('./listaingresso');
let paramspers = { ...params };
let mypos = {
idapp: params.idapp,
riga: params.riga,
col: params.col,
numup: -3
numup: 3
};
tools.getRigaColByPosUp(mypos);
params.riga1don = mypos.riga;
params.col1don = mypos.col;
paramspers.riga1don = params.riga;
paramspers.col1don = params.col;
paramspers.riga = mypos.riga;
paramspers.col = mypos.col;
await NavePersistente.addRecordNavePersistenteByParams(params);
await NavePersistente.addRecordNavePersistenteByParams(paramspers);
if (!siRitesse) {
// Check if Exist:
@@ -924,7 +937,7 @@ async function addRecordNaveByParams(params, siRitesse) {
if ((params.col % 8) === 0) {
// Completed 8 people
if (!params.primavolta) {
await Fuochi8Completati(idapp, params);
// await Fuochi8Completati(idapp, params);
}
}
}
@@ -1087,7 +1100,6 @@ NaveSchema.statics.generaNave = async function (idapp, mydata) {
params.ind_order = reclista.ind_order;
params.id = reclista._id;
params.num_tess = reclista.num_tess;
params.provvisoria = mydata.provvisoria;
await Nave.addUserFromListaIngresso_IntoNave(index === 0, idapp, params, false);
index++;
@@ -1108,7 +1120,6 @@ async function addUserToNave(idapp, rec) {
params.ind_order = rec.ind_order;
params.id = rec._id;
params.num_tess = rec.num_tess;
params.provvisoria = false;
return await Nave.addUserFromListaIngresso_IntoNave(true, idapp, params, true);
@@ -1175,7 +1186,7 @@ NaveSchema.statics.getNaveByUser = async function (idapp, ind_order, lang, fuoco
};
tools.getRigaColByPosUp(mypos);
mystr += await Nave.getNavePos(idapp, mypos.riga, mypos.col, false);
mystr += await Nave.getNavePos(idapp, mypos.riga, mypos.col, false, ind_order);
// mystr += await Nave.getPlaccaPerDonatore(idapp, pos.riga, pos.col, false, rec);
// mystr += await Nave.getPlaccaPerMediatore(idapp, pos.riga, pos.col, false, rec);
}

View File

@@ -104,6 +104,25 @@ NavePersistenteSchema.statics.findAllIdApp = function (idapp) {
return NavePersistente.find(myfind).sort({ riga: 1, col: 1 });
};
NavePersistenteSchema.statics.getListaNavi = function (idapp) {
const NavePersistente = this;
const myfind = { idapp };
return NavePersistente.find(myfind,
{
index: 1,
riga: 1,
col: 1,
riga1don: 1,
col1don: 1,
date_start: 1,
provvisoria: 1,
DoniConfermati: 1,
}
).sort({ riga: 1, col: 1 });
};
NavePersistenteSchema.statics.findByRigaColByDonatore = function (idapp, riga, col, offset) {
const NavePersistente = this;
@@ -132,7 +151,7 @@ NavePersistenteSchema.statics.getLastRigaCol = async function (idapp) {
NavePersistenteSchema.pre('save', async function (next) {
if (this.isNew) {
const myrec = await NavePersistente.findOne().limit(1).sort({_id:-1});
const myrec = await NavePersistente.findOne().limit(1).sort({ _id: -1 });
if (!!myrec) {
this.index = myrec._doc.index + 1;
} else {
@@ -162,7 +181,7 @@ NavePersistenteSchema.statics.addRecordNavePersistenteByParams = async function
col1don: params.col1don,
date_start: params.date_start,
date_gift_chat_open: params.date_gift_chat_open,
provvisoria: params.provvisoria,
provvisoria: true,
});
return await myNavePersistente.save();
}

View File

@@ -9,6 +9,7 @@ const tools = require('../tools/general');
const { Settings } = require('../models/settings');
const { ListaIngresso } = require('../models/listaingresso');
const { Nave } = require('../models/nave');
const { NavePersistente } = require('../models/navepersistente');
const { ExtraList } = require('../models/extralist');
const { ObjectID } = require('mongodb');
@@ -360,6 +361,7 @@ UserSchema.statics.getUserShortDataByUsername = async function (idapp, username)
'idapp': idapp,
'username': username,
}, {
lang: 1,
ind_order: 1,
username: 1,
name: 1,
@@ -404,6 +406,7 @@ UserSchema.statics.getDownlineByUsername = async function (idapp, username) {
'idapp': idapp,
'aportador_solidario': username,
}, {
lang: 1,
aportador_solidario: 1,
ind_order: 1,
username: 1,
@@ -767,6 +770,34 @@ UserSchema.statics.SetTelegramIdSuccess = async function (idapp, id, teleg_id) {
};
UserSchema.statics.getLangByIndOrder = async function (idapp, ind_order) {
const User = this;
return await User.findOne({ idapp, ind_order }, { lang: 1 })
.then((rec) => {
return (!!rec) ? rec.lang : '';
}).catch((e) => {
return 'it';
});
};
UserSchema.statics.SetLang = async function (idapp, id, lang) {
const User = this;
const fields_to_update = {
lang,
};
return await User.findOneAndUpdate({
_id: id
}, { $set: fields_to_update }, { new: false }).then((record) => {
return record;
});
};
UserSchema.statics.SetTelegramWasBlocked = async function (idapp, teleg_id) {
const User = this;
@@ -1000,10 +1031,11 @@ UserSchema.statics.getDashboard = async function (idapp, aportador_solidario, us
dashboard.arrnavi = await Nave.getArrPosizioniByIndOrder(idapp, dashboard.myself.ind_order);
dashboard.navi_partenza = [];
for (let indriga = 0; indriga < 10; indriga++) {
dashboard.navi_partenza.push(await Nave.getPrimaNaveByRiga(idapp, indriga));
}
dashboard.navi_partenza = await NavePersistente.getListaNavi(idapp);
//for (let indriga = 0; indriga < 10; indriga++) {
// dashboard.navi_partenza.push(await Nave.getPrimaNaveByRiga(idapp, indriga));
//}
for (let mynave of dashboard.arrnavi) {
mynave._doc.rec = await Nave.getNaveByRigaCol(idapp, mynave.riga, mynave.col);