- DashBoard, Profile, Order Menu
This commit is contained in:
@@ -2,8 +2,8 @@ p Benvenuto #{name} nel portale di #{nomeapp}!
|
||||
p I tuoi dati di accesso da ricordare sono:
|
||||
span Username:
|
||||
strong #{username}<br>
|
||||
span hai dimenticato la Password? :
|
||||
strong <a href=#{forgetpwd} target="_blank">Trovala qui</a><br>
|
||||
span Password : (** non mostrata per privacy **)<br>
|
||||
|
||||
span Email:
|
||||
strong #{emailto}<br>
|
||||
p Per confermare la registrazione clicca sul bottone:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"name": "freeplanet-serverside",
|
||||
"version": "1.0.1",
|
||||
"version": "1.0.2",
|
||||
"description": "freeplanet serverside",
|
||||
"main": "server.js",
|
||||
"main": "server/server.js",
|
||||
"scripts": {
|
||||
"start": "nodemon src/server/server.js",
|
||||
"build": "gulp build",
|
||||
@@ -12,7 +12,7 @@
|
||||
"test-watch": "nodemon --exec 'npm test'"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^8.9.0"
|
||||
"node": "^12.14.0"
|
||||
},
|
||||
"author": "Paolo Arena",
|
||||
"license": "MIT",
|
||||
|
||||
@@ -130,12 +130,12 @@ if (process.env.NODE_ENV === 'production') {
|
||||
},
|
||||
{
|
||||
idapp: '7',
|
||||
name: 'Notevole',
|
||||
adminemail: '',
|
||||
name: 'Notevole (Server Test)',
|
||||
adminemail: 'pao.loarena77@gmail.com',
|
||||
manageremail: '',
|
||||
host: 'https://notevole.freeplanet.app',
|
||||
host: 'https://testnotevole.freeplanet.app',
|
||||
portapp: '0',
|
||||
dir: '/var/www/notevole.freeplanet.app',
|
||||
dir: '/var/www/testnotevole.freeplanet.app',
|
||||
},
|
||||
];
|
||||
} else {
|
||||
|
||||
@@ -19,13 +19,20 @@ const MyPageSchema = new Schema({
|
||||
author_username: {
|
||||
type: String,
|
||||
},
|
||||
lang: {
|
||||
type: String,
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
},
|
||||
path: {
|
||||
icon: {
|
||||
type: String,
|
||||
},
|
||||
icon: {
|
||||
order: {
|
||||
type: Number,
|
||||
default: 1000,
|
||||
},
|
||||
path: {
|
||||
type: String,
|
||||
},
|
||||
keywords: {
|
||||
|
||||
@@ -69,6 +69,9 @@ var UserSchema = new mongoose.Schema({
|
||||
verified_email: {
|
||||
type: Boolean,
|
||||
},
|
||||
made_gift: {
|
||||
type: Boolean,
|
||||
},
|
||||
tokens: [{
|
||||
access: {
|
||||
type: String,
|
||||
@@ -127,6 +130,9 @@ var UserSchema = new mongoose.Schema({
|
||||
cell: {
|
||||
type: String
|
||||
},
|
||||
country_pay: {
|
||||
type: String
|
||||
},
|
||||
email_paypal: {
|
||||
type: String
|
||||
},
|
||||
@@ -155,7 +161,7 @@ UserSchema.methods.generateAuthToken = function (req) {
|
||||
var user = this;
|
||||
|
||||
const useragent = req.get('User-Agent');
|
||||
tools.mylog("GENERATE USER-AGENT = ", useragent);
|
||||
// tools.mylog("GENERATE USER-AGENT = ", useragent);
|
||||
|
||||
const access = 'auth';
|
||||
const browser = useragent;
|
||||
@@ -172,7 +178,7 @@ UserSchema.methods.generateAuthToken = function (req) {
|
||||
|
||||
return user.save()
|
||||
.then(() => {
|
||||
console.log("TOKEN CREATO IN LOGIN : " + token);
|
||||
// console.log("TOKEN CREATO IN LOGIN : " + token);
|
||||
return token;
|
||||
})
|
||||
.catch(err => {
|
||||
@@ -283,6 +289,51 @@ UserSchema.statics.findByUsername = function (idapp, username) {
|
||||
});
|
||||
};
|
||||
|
||||
UserSchema.statics.getUserShortDataByUsername = function (idapp, username) {
|
||||
const User = this;
|
||||
|
||||
return User.findOne({
|
||||
'idapp': idapp,
|
||||
'username': username,
|
||||
}, {
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
verified_email: 1,
|
||||
made_gift: 1,
|
||||
email: 1,
|
||||
date_reg: 1,
|
||||
img: 1
|
||||
}).then((ris) => {
|
||||
if (!!ris) {
|
||||
// console.log('ris', ris);
|
||||
if (!!ris._doc)
|
||||
return ris._doc;
|
||||
else
|
||||
return null;
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
UserSchema.statics.getDownlineByUsername = function (idapp, username) {
|
||||
const User = this;
|
||||
return User.find({
|
||||
'idapp': idapp,
|
||||
'aportador_solidario': username,
|
||||
}, {
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
verified_email: 1,
|
||||
made_gift: 11,
|
||||
email: 1,
|
||||
date_reg: 1,
|
||||
img: 1
|
||||
}, (err, arrrec) => {
|
||||
return arrrec
|
||||
});
|
||||
};
|
||||
|
||||
UserSchema.statics.findByLinkreg = function (idapp, linkreg) {
|
||||
var User = this;
|
||||
|
||||
@@ -362,6 +413,7 @@ UserSchema.statics.getUsersList = function (idapp) {
|
||||
name: 1,
|
||||
surname: 1,
|
||||
verified_email: 1,
|
||||
made_gift: 1,
|
||||
perm: 1,
|
||||
email: 1,
|
||||
date_reg: 1,
|
||||
@@ -381,7 +433,19 @@ UserSchema.statics.getUsersListByParams = function (params) {
|
||||
return User.find(
|
||||
{ $match: filterMatchBefore },
|
||||
{ 'idapp': idapp },
|
||||
{ username: 1, name: 1, surname: 1, verified_email: 1, perm: 1, email: 1, date_reg: 1, img: 1, lasttimeonline: 1, news_on: 1 })
|
||||
{
|
||||
username: 1,
|
||||
name: 1,
|
||||
surname: 1,
|
||||
verified_email: 1,
|
||||
made_gift: 1,
|
||||
perm: 1,
|
||||
email: 1,
|
||||
date_reg: 1,
|
||||
img: 1,
|
||||
lasttimeonline: 1,
|
||||
news_on: 1
|
||||
})
|
||||
|
||||
};
|
||||
|
||||
@@ -410,7 +474,6 @@ if (tools.INITDB_FIRSTIME) {
|
||||
const User = mongoose.model('User', UserSchema);
|
||||
|
||||
|
||||
|
||||
class Hero {
|
||||
constructor(name, level) {
|
||||
this.name = name;
|
||||
|
||||
52
src/server/router/dashboard_router.js
Normal file
52
src/server/router/dashboard_router.js
Normal file
@@ -0,0 +1,52 @@
|
||||
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 { User } = require('../models/user');
|
||||
|
||||
const mongoose = require('mongoose');
|
||||
const Subscription = mongoose.model('subscribers');
|
||||
|
||||
const _ = require('lodash');
|
||||
|
||||
const { ObjectID } = require('mongodb');
|
||||
|
||||
|
||||
router.post('/', authenticate, async (req, res) => {
|
||||
const idapp = req.body.idapp;
|
||||
|
||||
try {
|
||||
const aportador_solidario = req.user.aportador_solidario;
|
||||
|
||||
// DATA: username, name, surname, email, intcode_cell, cell
|
||||
const dashboard = {
|
||||
aportador: {},
|
||||
downline: []
|
||||
};
|
||||
|
||||
// Data of my Aportador
|
||||
dashboard.aportador = await User.getUserShortDataByUsername(idapp, aportador_solidario);
|
||||
|
||||
// Data of my Downline
|
||||
dashboard.downline = await User.getDownlineByUsername(idapp, req.user.username);
|
||||
|
||||
for (let index = 0; index < dashboard.downline.length; ++index) {
|
||||
dashboard.downline[index].downline = await User.getDownlineByUsername(idapp, dashboard.downline[index].username);
|
||||
}
|
||||
|
||||
// Extract all the todos of the userId only
|
||||
// tools.mylog('dashboard', dashboard);
|
||||
res.send({ dashboard });
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
res.status(400).send(e);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
@@ -244,7 +244,7 @@ router.patch('/chval', authenticate, (req, res) => {
|
||||
const mytable = getTableByTableName(mydata.table);
|
||||
const fieldsvalue = mydata.fieldsvalue;
|
||||
|
||||
tools.mylogshow('PATCH CHVAL: ', id, fieldsvalue);
|
||||
// tools.mylogshow('PATCH CHVAL: ', id, fieldsvalue);
|
||||
|
||||
// If I change my record...
|
||||
if ((!User.isAdmin(req.user) && !User.isManager(req.user)) && !(req.user._id.toString() === id)) {
|
||||
@@ -253,7 +253,7 @@ router.patch('/chval', authenticate, (req, res) => {
|
||||
}
|
||||
|
||||
mytable.findByIdAndUpdate(id, { $set: fieldsvalue }).then((rec) => {
|
||||
tools.mylogshow(' REC TO MODIFY: ', rec);
|
||||
// tools.mylogshow(' REC TO MODIFY: ', rec);
|
||||
if (!rec) {
|
||||
return res.status(404).send();
|
||||
} else {
|
||||
|
||||
@@ -33,7 +33,7 @@ function existSubScribe(userId, access, browser) {
|
||||
// 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']);
|
||||
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);
|
||||
@@ -77,7 +77,7 @@ router.post('/', async (req, res) => {
|
||||
User.findByUsername(user.idapp, user.username)
|
||||
.then((usertrovato) => {
|
||||
|
||||
tools.mylog("TROVATO USERNAME ? ", user.username, usertrovato);
|
||||
// tools.mylog("TROVATO USERNAME ? ", user.username, usertrovato);
|
||||
if (usertrovato !== null) {
|
||||
return user.generateAuthToken(req);
|
||||
} else {
|
||||
|
||||
@@ -57,6 +57,10 @@ module.exports = {
|
||||
paramemail.send = !previewonly;
|
||||
}
|
||||
|
||||
// if (!transport) {
|
||||
// transport = this.getTransport();
|
||||
// }
|
||||
|
||||
if (transport) {
|
||||
paramemail.transport = transport;
|
||||
} else {
|
||||
@@ -432,7 +436,7 @@ module.exports = {
|
||||
// Create Transport
|
||||
let smtpTransport = null;
|
||||
|
||||
if (mylocalsconf.dataemail.email_service !== 'gmail') {
|
||||
if (mylocalsconf.dataemail.email_service !== 'gmail' && mylocalsconf.dataemail.email_service !== undefined) {
|
||||
smtpTransport = nodemailer.createTransport({
|
||||
host: mylocalsconf.dataemail.email_service,
|
||||
port: mylocalsconf.dataemail.email_port,
|
||||
|
||||
@@ -47,6 +47,7 @@ const index_router = require('./router/index_router');
|
||||
const push_router = require('./router/push_router');
|
||||
const newsletter_router = require('./router/newsletter_router');
|
||||
const booking_router = require('./router/booking_router');
|
||||
const dashboard_router = require('./router/dashboard_router');
|
||||
const myevent_router = require('./router/myevent_router');
|
||||
const subscribe_router = require('./router/subscribe_router');
|
||||
const sendmsg_router = require('./router/sendmsg_router');
|
||||
@@ -106,6 +107,7 @@ app.use('/sendmsg', sendmsg_router);
|
||||
app.use('/push', push_router);
|
||||
app.use('/news', newsletter_router);
|
||||
app.use('/booking', booking_router);
|
||||
app.use('/dashboard', dashboard_router);
|
||||
app.use('/event', myevent_router);
|
||||
app.use('/email', email_router);
|
||||
app.use('/todos', todos_router);
|
||||
|
||||
@@ -458,7 +458,7 @@ module.exports = {
|
||||
}
|
||||
);
|
||||
|
||||
console.log('query', query);
|
||||
// console.log('query', query);
|
||||
|
||||
return query;
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ module.exports = {
|
||||
},
|
||||
|
||||
fieldsUserToChange() {
|
||||
return ['_id', 'username', 'email', 'name', 'surname', 'perm', 'date_reg', 'verified_email', 'ipaddr', 'lasttimeonline', 'profile', 'news_on', 'aportador_solidario']
|
||||
return ['_id', 'username', 'email', 'name', 'surname', 'perm', 'date_reg', 'verified_email', 'ipaddr', 'lasttimeonline', 'profile', 'news_on', 'aportador_solidario', 'made_gift']
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user