Profile pages now display user status.
This commit is contained in:
parent
6445950f90
commit
1384b02f4d
11 changed files with 119 additions and 5 deletions
|
|
@ -18,6 +18,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.*/
|
|||
const {validationResult, matchedData} = require('express-validator');
|
||||
|
||||
//local imports
|
||||
const presenceUtils = require('../../utils/presenceUtils');
|
||||
const {userModel} = require('../../schemas/user/userSchema');
|
||||
const {exceptionHandler, errorHandler} = require('../../utils/loggerUtils');
|
||||
|
||||
|
|
@ -30,7 +31,10 @@ module.exports.get = async function(req, res){
|
|||
const data = matchedData(req);
|
||||
const profile = await userModel.findProfile({user: data.user});
|
||||
|
||||
return res.render('partial/panels/profile', {profile});
|
||||
//Pull presence (should be quick since everyone whos been on since last startup will be backed in RAM)
|
||||
const presence = await presenceUtils.getPresence(profile.user);
|
||||
|
||||
return res.render('partial/panels/profile', {profile, presence});
|
||||
}else{
|
||||
res.status(400);
|
||||
return res.send({errors: validResult.array()})
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.*/
|
|||
//Local Imports
|
||||
const {userModel} = require('../schemas/user/userSchema');
|
||||
const csrfUtils = require('../utils/csrfUtils');
|
||||
const presenceUtils = require('../utils/presenceUtils');
|
||||
const {exceptionHandler, errorHandler} = require('../utils/loggerUtils');
|
||||
|
||||
//Config
|
||||
|
|
@ -34,11 +35,15 @@ module.exports.get = async function(req, res){
|
|||
//If we have a user, check if the is looking at their own profile
|
||||
const selfProfile = req.session.user ? profile.user == req.session.user.user : false;
|
||||
|
||||
//Pull presence (should be quick since everyone whos been on since last startup will be backed in RAM)
|
||||
const presence = await presenceUtils.getPresence(profile.user);
|
||||
|
||||
res.render('profile', {
|
||||
instance: config.instanceName,
|
||||
user: req.session.user,
|
||||
profile,
|
||||
selfProfile,
|
||||
presence,
|
||||
csrfToken: csrfUtils.generateToken(req)
|
||||
});
|
||||
}else{
|
||||
|
|
@ -47,6 +52,7 @@ module.exports.get = async function(req, res){
|
|||
user: req.session.user,
|
||||
profile: null,
|
||||
selfProfile: false,
|
||||
presence: null,
|
||||
csrfToken: csrfUtils.generateToken(req)
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue