summaryrefslogtreecommitdiff
path: root/bucky/util/auth.js
diff options
context:
space:
mode:
authorjulian laplace <julescarbon@gmail.com>2022-10-31 12:00:16 +0100
committerjulian laplace <julescarbon@gmail.com>2022-10-31 12:00:16 +0100
commit341393513dc3622b6d59e5512a7ab11d82c7e6c3 (patch)
tree25eac45533edbf406f6afe7adcb707e7ad9726cd /bucky/util/auth.js
parenta2bf5ad8689fb0f9c662cf2bb17a6d4890aba349 (diff)
redirect to /stream on mobile
Diffstat (limited to 'bucky/util/auth.js')
-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({