70 lines
1.7 KiB
JavaScript
70 lines
1.7 KiB
JavaScript
const express = require("express");
|
|
const DBUtils = require('../../Utils/DBUtil');
|
|
const AuthUtil = require('../../Utils/AuthUtil');
|
|
const Logger = require('../../Utils/Logger');
|
|
|
|
const router = express.Router();
|
|
const TAG = '[UserRouter]'
|
|
|
|
router.get('/framez', (req, res) => {
|
|
const token = req.get('token');
|
|
Logger.debug(TAG, 'GET: /framez');
|
|
AuthUtil.getAccountByToken(token)
|
|
.then(account => {
|
|
DBUtils.Models.Frame.find({admin:account._id}, (err, docs) => {
|
|
if (err) {
|
|
Logger.error(TAG, 'Failed to query DB. ERROR:', err);
|
|
res.status(500).json({
|
|
message: err.message
|
|
});
|
|
}
|
|
else{
|
|
Logger.debug(TAG, 'responding with frames');
|
|
let frames = docs.map(f=>{
|
|
let frame = f.toObject()
|
|
delete frame.viewerKeys
|
|
return frame
|
|
})
|
|
res.json({frames:frames});
|
|
}
|
|
});
|
|
})
|
|
.catch(reason => {
|
|
Logger.warn(TAG, 'Invalid token');
|
|
res.status(401).json({
|
|
message: reason
|
|
});
|
|
})
|
|
})
|
|
|
|
router.get('/:accountId', (req, res) => {
|
|
const token = req.get('token');
|
|
const accountId = req.params.accountId;
|
|
if(!accountId){
|
|
res.status(400).json({
|
|
message: 'Invalid account id'
|
|
});
|
|
return;
|
|
}
|
|
AuthUtil.getAccountByToken(token)
|
|
.then(account => {
|
|
AuthUtil.getUserByAccountId(accountId)
|
|
.then(user => {
|
|
res.json(user);
|
|
})
|
|
.catch(reason => {
|
|
res.status(400).json({
|
|
message: reason
|
|
});
|
|
})
|
|
})
|
|
.catch(reason => {
|
|
res.status(401).json({
|
|
message: reason
|
|
});
|
|
})
|
|
});
|
|
|
|
|
|
|
|
module.exports = router;
|