add logout, team selection
This commit is contained in:
@@ -5,6 +5,7 @@ utils = require("../lib/utils");
|
|||||||
exports.getTeams = async (req, res, next) => {
|
exports.getTeams = async (req, res, next) => {
|
||||||
const {layout} = req
|
const {layout} = req
|
||||||
const {user_id} = req.params
|
const {user_id} = req.params
|
||||||
|
req.session.current_team_id = null
|
||||||
promise = teamsnap.loadTeams({'userId':user_id},
|
promise = teamsnap.loadTeams({'userId':user_id},
|
||||||
(err, items) =>{
|
(err, items) =>{
|
||||||
teamsnapCallback(err,items);
|
teamsnapCallback(err,items);
|
||||||
|
|||||||
@@ -149,4 +149,11 @@ router.get('/auth/teamsnap/session_storage', (req,res)=>{
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
router.post('/logout', function(req, res, next){
|
||||||
|
req.logout(function(err) {
|
||||||
|
if (err) { return next(err); }
|
||||||
|
res.redirect('/');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
module.exports = {router, ensureLoggedIn};
|
module.exports = {router, ensureLoggedIn};
|
||||||
|
|||||||
@@ -15,12 +15,12 @@ const membersController = require("../controllers/member");
|
|||||||
router.use("/", ensureLoggedIn, (req,res,next) => {req.layout="layouts/main";req.promises=[];next();})
|
router.use("/", ensureLoggedIn, (req,res,next) => {req.layout="layouts/main";req.promises=[];next();})
|
||||||
|
|
||||||
router.get("/", (req,res,next) => {
|
router.get("/", (req,res,next) => {
|
||||||
if (!req.session.current_team){
|
if (!req.session.current_team_id){
|
||||||
res.redirect(`/user/${req.session.passport.user.id}/teams`)
|
res.redirect(`/user/${req.session.passport.user.id}/teams`)
|
||||||
next();
|
next();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
res.redirect(`/${req.session.current_team}/home`)
|
res.redirect(`/${req.session.current_team_id}/home`)
|
||||||
next();
|
next();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -17,7 +17,17 @@
|
|||||||
<h6 class="h6 title u-textNoWrap u-fontSizeSm u-textSemiBold">{{user.first_name}} {{user.last_name}}</h6>
|
<h6 class="h6 title u-textNoWrap u-fontSizeSm u-textSemiBold">{{user.first_name}} {{user.last_name}}</h6>
|
||||||
<div class="u-textNoWrap u-fontSizeSm">{{user.email}}</div>
|
<div class="u-textNoWrap u-fontSizeSm">{{user.email}}</div>
|
||||||
<hr class="Divider u-spaceEndsNone">
|
<hr class="Divider u-spaceEndsNone">
|
||||||
<a href="/logout">Logout</a>
|
<div class="u-padBottomSm u-padTopSm">
|
||||||
|
<a href="/user/{{user.id}}/teams" class="u-spaceBottomSm Button Button--small">
|
||||||
|
<span>{{{embeddedSvgFromPath "/teamsnap-ui/assets/icons/team.svg"}}}</span>
|
||||||
|
Teams
|
||||||
|
</a>
|
||||||
|
<form method="post" action="/logout">
|
||||||
|
<button type="submit" name="logout" class="u-spaceBottomSm Button Button--small">
|
||||||
|
Logout
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class=" Grid-cell u-sizeFit">
|
<div class=" Grid-cell u-sizeFit u-padTopSm u-padBottomSm">
|
||||||
<div class=" u-flex u-flexAlignItemsCenter u-flexJustifyEnd">
|
<div class=" u-flex u-flexAlignItemsCenter u-flexJustifyEnd">
|
||||||
<div class="ButtonGroup">
|
<div class="ButtonGroup">
|
||||||
<a class="Button" href="schedule">
|
<a class="Button" href="schedule">
|
||||||
|
|||||||
Reference in New Issue
Block a user