mirror of
https://github.com/muerwre/orchidmap-front.git
synced 2025-04-25 19:16:41 +07:00
32 lines
831 B
JavaScript
32 lines
831 B
JavaScript
const { User } = require('../../models');
|
|
const { generateGuest, generateRandomUrl } = require('./guest');
|
|
|
|
module.exports = async (req, res) => {
|
|
const { id, token } = req.query;
|
|
|
|
const user = await User.findOne({ _id: id, token })
|
|
.populate({
|
|
path: 'routes',
|
|
select: '_id title distance owner updated_at',
|
|
options: {
|
|
limit: 200,
|
|
sort: { updated_at: -1 },
|
|
}
|
|
});
|
|
|
|
const random_url = await generateRandomUrl();
|
|
|
|
if (user) {
|
|
return res.send({
|
|
success: true, ...user.toObject(), id: user._id, random_url
|
|
});
|
|
}
|
|
|
|
const guest = await generateGuest();
|
|
const created = await User.create(guest).then(result => result.toObject());
|
|
|
|
return res.send({
|
|
success: false, error: 'user not found', error_code: 1231, ...created, id: created._id, random_url
|
|
});
|
|
};
|
|
|