- sistemato anche il users/profile ed aggiunto /users/activities

This commit is contained in:
Surya Paolo
2024-03-21 22:58:46 +01:00
parent bd95e4457f
commit 22771c1ea7
3 changed files with 762 additions and 680 deletions

View File

@@ -443,7 +443,7 @@ router.post('/receiveris', authenticate, (req, res) => {
};
});
router.post('/profile', authenticate_noerror, (req, res) => {
router.post('/profile', authenticate, (req, res) => {
const usernameOrig = req.user ? req.user.username : '';
const perm = req.user ? req.user.perm : tools.Perm.PERM_NONE;
const username = req.body['username'];
@@ -464,7 +464,7 @@ router.post('/profile', authenticate_noerror, (req, res) => {
return User.getFriendsByUsername(idapp, usernameOrig).
then(async (friends) => {
if (username === usernameOrig) {
const userprofile = await User.getExtraInfoByUsername(idapp, username);
const userprofile = await User.getExtraInfoByUsername(idapp, ris.username);
ris.profile = userprofile;
}
@@ -485,6 +485,54 @@ router.post('/profile', authenticate_noerror, (req, res) => {
});
router.post('/activities', authenticate_noerror, (req, res) => {
const usernameOrig = req.user ? req.user.username : '';
const perm = req.user ? req.user.perm : tools.Perm.PERM_NONE;
const username = req.body['username'];
const idapp = req.body.idapp;
const locale = req.body.locale;
//++Todo: controlla che tipo di dati ha il permesso di leggere
try {
// Check if ìs a Notif to read
const idnotif = req.body['idnotif'] ? req.body['idnotif'] : '';
SendNotif.setNotifAsRead(idapp, usernameOrig, idnotif);
return User.getUserProfileByUsername(idapp, username, usernameOrig,
false, perm).
then((ris) => {
return User.getFriendsByUsername(idapp, usernameOrig).
then(async (friends) => {
let userprofile = null;
if (req.user) {
userprofile = await User.getExtraInfoByUsername(idapp, ris.username);
} else {
userprofile = await User.getProfilePerActivitiesByUsername(idapp, ris.username);
ris.aportador_solidario = '';
ris.date_reg = '';
ris.email = '';
}
ris.profile = userprofile;
return { ris, friends };
}).then(tot => {
return res.send({ user: tot.ris, friends: tot.friends });
});
}).catch((e) => {
tools.mylog('ERRORE IN Profile: ' + e.message);
res.status(400).send();
});
} catch (e) {
tools.mylogserr('Error profile: ', e);
res.status(400).send();
}
});
router.post('/panel', authenticate, async (req, res) => {
const username = req.body['username'];
idapp = req.body.idapp;