fix Registrazione data
fix linkref fix controllo login
This commit is contained in:
@@ -3,6 +3,9 @@ const router = express.Router(),
|
||||
fs = require('fs'),
|
||||
path = require('path');
|
||||
|
||||
const jwt = require('jsonwebtoken');
|
||||
|
||||
const sendemail = require('../sendemail');
|
||||
|
||||
const { authenticate, authenticate_noerror } = require('../middleware/authenticate');
|
||||
|
||||
@@ -51,7 +54,7 @@ router.post(process.env.LINKVERIF_REG, (req, res) => {
|
||||
const body = _.pick(req.body, ['idapp', 'idlink']);
|
||||
const idapp = body.idapp;
|
||||
const idlink = body.idlink;
|
||||
console.log("LINKVERIF_REG POST " + process.env.LINKVERIF_REG + " idapp= " + idapp + " idlink = " + idlink);
|
||||
// console.log("LINKVERIF_REG POST " + process.env.LINKVERIF_REG + " idapp= " + idapp + " idlink = " + idlink);
|
||||
|
||||
// Cerco l'idlink se è ancora da Verificare
|
||||
|
||||
@@ -60,17 +63,18 @@ router.post(process.env.LINKVERIF_REG, (req, res) => {
|
||||
//console.log("NON TROVATO!");
|
||||
return res.status(404).send();
|
||||
} else {
|
||||
console.log('user', user);
|
||||
if (user.verified_email) {
|
||||
res.send({
|
||||
code: server_constants.RIS_CODE_EMAIL_ALREADY_VERIFIED,
|
||||
msg: res.__("L'Email è già stata Verificata.")
|
||||
msg: tools.getres__("L'Email è già stata Verificata", res)
|
||||
});
|
||||
} else {
|
||||
user.verified_email = true;
|
||||
user.lasttimeonline = new Date();
|
||||
user.save().then(() => {
|
||||
//console.log("TROVATOOOOOO!");
|
||||
res.send({ code: server_constants.RIS_CODE_EMAIL_VERIFIED, msg: res.__('Email Verificata!') });
|
||||
res.send({ code: server_constants.RIS_CODE_EMAIL_VERIFIED, msg: tools.getres__('EMAIL_VERIF', res) });
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -91,14 +95,14 @@ router.post(process.env.LINK_REQUEST_NEWPASSWORD, (req, res) => {
|
||||
|
||||
User.findByEmail(idapp, email).then((user) => {
|
||||
if (!user) {
|
||||
return res.status(404).send();
|
||||
return res.status(200).send({ code: server_constants.RIS_CODE_EMAIL_NOT_EXIST, msg: '' });
|
||||
} else {
|
||||
// Creo il tokenforgot
|
||||
user.tokenforgot = jwt.sign(user._id.toHexString(), process.env.SIGNCODE).toString();
|
||||
user.date_tokenforgot = new Date();
|
||||
user.lasttimeonline = new Date();
|
||||
user.save().then(async () => {
|
||||
await sendemail.sendEmail_RequestNewPassword(res.locale, user.email, user.idapp, user.tokenforgot);
|
||||
await sendemail.sendEmail_RequestNewPassword(res.locale, user, user.email, user.idapp, user.tokenforgot);
|
||||
res.send({ code: server_constants.RIS_CODE_OK, msg: '' });
|
||||
});
|
||||
}
|
||||
@@ -426,12 +430,18 @@ router.get('/loadsite/:userId/:idapp/:sall', authenticate_noerror, (req, res) =>
|
||||
newstosent = Newstosent.findAllIdApp(idapp);
|
||||
}
|
||||
|
||||
return Promise.all([bookedevent, eventlist, operators, wheres, contribtype, settings, permissions, disciplines, newstosent, mailinglist, mypage, gallery, paymenttype])
|
||||
let calcstat = null;
|
||||
if (req.user)
|
||||
calcstat = User.calculateStat(idapp, req.user.username);
|
||||
|
||||
|
||||
return Promise.all([bookedevent, eventlist, operators, wheres, contribtype, settings, permissions, disciplines, newstosent, mailinglist, mypage, gallery, paymenttype, calcstat])
|
||||
.then((arrdata) => {
|
||||
// console.table(arrdata);
|
||||
const myuser = req.user;
|
||||
if (myuser) {
|
||||
myuser.password = '';
|
||||
myuser._doc.calcstat = arrdata[13];
|
||||
}
|
||||
|
||||
res.send({
|
||||
|
||||
53
src/server/router/notevole_router.js
Normal file
53
src/server/router/notevole_router.js
Normal file
@@ -0,0 +1,53 @@
|
||||
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');
|
||||
|
||||
const { User } = require('../models/user');
|
||||
|
||||
const _ = require('lodash');
|
||||
|
||||
const { ObjectID } = require('mongodb');
|
||||
|
||||
const { ExtraList } = require('../models/extralist');
|
||||
|
||||
router.post('/load', async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
const username = req.body.username;
|
||||
|
||||
|
||||
let datastat = {
|
||||
num_tot_lista: await ExtraList.getTotInLista(idapp),
|
||||
num_reg_lista: await ExtraList.getRegDellaLista(idapp),
|
||||
num_reg: await User.getUsersRegistered(idapp),
|
||||
lastsreg: await User.getLastUsers(idapp),
|
||||
checkuser: await User.checkUser(idapp, username),
|
||||
};
|
||||
|
||||
// console.table(datastat.lastsreg);
|
||||
|
||||
/*
|
||||
let datastat = {
|
||||
num_tot_lista: 80,
|
||||
num_reg: 40,
|
||||
lastsreg: [
|
||||
{ username: 'prova3', name: 'Datti', surname: 'Una Mossa', nationality: 'gb', date_reg: new Date()},
|
||||
{ username: 'prova2', name: 'Pinco', surname: 'Pallino', nationality: 'de', date_reg: new Date()},
|
||||
{ username: 'paoloar77', name: 'Paolo', surname: 'Arena', nationality: 'it', date_reg: new Date()},
|
||||
{ username: 'mariorossi', name: 'Mario', surname: 'Rossi', nationality: 'es', date_reg: new Date()},
|
||||
{ username: 'prova4', name: 'Quanto', surname: 'Siamo Fighi', nationality: 'uk', date_reg: new Date()},
|
||||
{ username: 'prova5', name: 'Secondo', surname: 'PPP', nationality: 'sl', date_reg: new Date()},
|
||||
]
|
||||
};
|
||||
*/
|
||||
|
||||
res.send({ datastat });
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
@@ -11,6 +11,8 @@ 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');
|
||||
@@ -44,7 +46,7 @@ function getMobileComplete(user) {
|
||||
// POST /users
|
||||
router.post('/', async (req, res) => {
|
||||
tools.mylog("POST /users");
|
||||
const body = _.pick(req.body, ['email', 'password', 'username', 'name', 'surname', 'idapp', 'keyappid', 'lang', 'profile', 'aportador_solidario', 'already_registered']);
|
||||
const body = _.pick(req.body, ['email', 'password', 'username', 'name', 'surname', 'idapp', 'keyappid', 'lang', 'profile', 'aportador_solidario']);
|
||||
const user = new User(body);
|
||||
|
||||
// tools.mylog("LANG PASSATO = " + user.lang, "IDAPP", user.idapp);
|
||||
@@ -53,6 +55,8 @@ router.post('/', async (req, res) => {
|
||||
user.verified_email = false;
|
||||
user.ipaddr = reg.getiPAddressUser(req);
|
||||
user.lasttimeonline = new Date();
|
||||
user.date_reg = new Date();
|
||||
user.date_temp_reg = new Date();
|
||||
// user.perm = 3;
|
||||
if (tools.testing()) {
|
||||
user.verified_email = true;
|
||||
@@ -86,9 +90,34 @@ router.post('/', async (req, res) => {
|
||||
|
||||
let recextra = null;
|
||||
|
||||
if (user.already_registered) {
|
||||
recextra = await ExtraList.findByCellAndNameSurname(user.idapp, getMobileComplete(user), user.name, user.surname);
|
||||
let nomeaportador_corretto = "";
|
||||
if (recextra) {
|
||||
nomeaportador_corretto = recextra.aportador_solidario_name_surname;
|
||||
if (nomeaportador_corretto === '')
|
||||
nomeaportador_corretto = recextra.aportador_solidario_originale_name_surname;
|
||||
}
|
||||
|
||||
|
||||
namesurname_aportador_reg = await User.getNameSurnameByUsername(user.idapp, user.aportador_solidario);
|
||||
|
||||
if (namesurname_aportador_reg !== '' && namesurname_aportador_reg !== nomeaportador_corretto) {
|
||||
// Si sta tentando di registrare una persona sotto che non corrisponde!
|
||||
let msg = 'L\'utente ' + user.name + ' ' + user.surname + ' si sta registrando con il link di ' + user.aportador_solidario + ' (' + namesurname_aportador_reg + ') ' +
|
||||
'invece è assegnato a ' + nomeaportador_corretto;
|
||||
|
||||
telegrambot.sendMsgTelegramToTheManagers(user.idapp, msg);
|
||||
res.status(400).send({ code: server_constants.RIS_CODE_USER_NOT_THIS_APORTADOR, msg: '' });
|
||||
return 1;
|
||||
}
|
||||
|
||||
const already_registered = recextra;
|
||||
|
||||
|
||||
// Check if is an other people aportador_solidario
|
||||
|
||||
if (already_registered) {
|
||||
// Check in the extraList if is present!
|
||||
recextra = await ExtraList.findByCellAndNameSurname(user.idapp, getMobileComplete(user), user.name, user.surname);
|
||||
if (!recextra) {
|
||||
res.status(400).send({ code: server_constants.RIS_CODE_USER_EXTRALIST_NOTFOUND, msg: '' });
|
||||
return 1;
|
||||
@@ -102,6 +131,15 @@ router.post('/', async (req, res) => {
|
||||
|
||||
user.aportador_solidario_ind_order = recextra.aportador_solidario_ind_order;
|
||||
|
||||
user.note = recextra.note;
|
||||
|
||||
if (recextra.is_staff) {
|
||||
user.perm = shared_consts.Permissions.Manager;
|
||||
}
|
||||
if (recextra.username === 'paoloar77') {
|
||||
user.perm = shared_consts.Permissions.Manager + shared_consts.Permissions.Admin;
|
||||
}
|
||||
|
||||
const useraportador = await ExtraList.findByIndOrder(user.idapp, user.aportador_solidario_ind_order);
|
||||
if (useraportador)
|
||||
user.aportador_solidario = useraportador.username;
|
||||
|
||||
Reference in New Issue
Block a user