summaryrefslogtreecommitdiff
path: root/bucky/util
diff options
context:
space:
mode:
Diffstat (limited to 'bucky/util')
-rw-r--r--bucky/util/auth.js13
1 files changed, 11 insertions, 2 deletions
diff --git a/bucky/util/auth.js b/bucky/util/auth.js
index 2ca1b94..b49b176 100644
--- a/bucky/util/auth.js
+++ b/bucky/util/auth.js
@@ -1,5 +1,6 @@
var passport = require("passport");
var LocalStrategy = require("passport-local").Strategy;
+var useragent = require("express-useragent");
var crypto = require("crypto");
var crypt = require("unix-crypt-td-js");
var fs = require("fs");
@@ -109,13 +110,21 @@ var auth = (module.exports = {
login: function (req, res) {
if (req.isAuthenticated()) {
- var returnTo = req.session.returnTo;
+ let ua = useragent.parse(req.headers["user-agent"]);
+ let { returnTo } = req.session;
+ if (
+ !returnTo ||
+ returnTo.startsWith("/login") ||
+ returnTo.startsWith("/index")
+ ) {
+ returnTo = ua.isMobile ? "/stream" : "/index";
+ }
delete req.session.returnTo;
console.log(">> logged in", req.user.get("username"));
return res.json({
status: "OK",
user: util.sanitizeUser(req.user),
- returnTo: returnTo || "/index",
+ returnTo,
});
}
res.json({