|
|
var express = require('express'); var app = express(); var jwt = require('jsonwebtoken'); var config = require('../config/config'); var crypto = require('crypto');
app.set('superSecret', config.secret);
/*******MODELS*********/ //var trainerModel = require('../models/trainerModel');
var userModel = require('../models/userModel'); var dietModel = require('../models/dietModel'); var routineModel = require('../models/routineModel');
/** GET '/admin/users/' **/ exports.getUsers = function (req, res) { userModel.find() .limit(Number(req.query.pageSize)) .skip(Number(req.query.pageSize) * Number(req.query.page)) .exec(function (err, users) { if (err) return res.send(500, err.message); res.status(200).jsonp(users); }); }; /** GET '/admin/users/:userid' **/ exports.getUserById = function (req, res) { userModel.findOne({_id: req.params.userid}) .lean() .populate('followers', 'name avatar') .populate('following', 'name avatar') .exec(function (err, user) { if (err) return res.send(500, err.message); if (!user) { res.json({success: false, message: 'User not found.'}); } else if (user) { var nodes=[]; var edges=[]; var node={ title: user.name, label: user.name, image: user.avatar, shape: "image", id: user._id }; nodes.push(node); for(var i=0; i<user.followers.length; i++) { var node={ title: user.followers[i].name, label: user.followers[i].name, image: user.followers[i].avatar, shape: "image", id: user.followers[i]._id }; nodes.push(node); var edge={ from: user._id, to: user.followers[i]._id, arrows: { from: user._id }, color: { color: "#36bc9b" } }; edges.push(edge); }
for(var i=0; i<user.following.length; i++) { var indexJ=-1 for(var j=0; j<nodes.length; j++) { if(nodes[j].id.equals(user.following[i]._id)) { indexJ=JSON.parse(JSON.stringify(j)); } } if(indexJ==-1) {//el node no estava als followers, afegim el node
var node={ title: user.following[i].name, label: user.following[i].name, image: user.following[i].avatar, shape: "image", id: user.following[i]._id }; nodes.push(node); } var edge={ from: user._id, to: user.following[i]._id, arrows: { to: user.following[i]._id }, color: { color: "#4876b4" } }; edges.push(edge); }
res.status(200).jsonp({ nodes: nodes, edges: edges }); } }); };
|