53 lines
1.4 KiB
JavaScript
53 lines
1.4 KiB
JavaScript
|
|
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;
|