summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.json2
-rw-r--r--public/js/protocols_site.js52
-rw-r--r--server/auth/index.js15
-rw-r--r--server/index.js9
4 files changed, 42 insertions, 36 deletions
diff --git a/config.json b/config.json
index 6d6c27d..621ff52 100644
--- a/config.json
+++ b/config.json
@@ -1,6 +1,6 @@
{
"name": "protocols",
"secret": "ummagumma",
- "host": "localhost",
+ "host": "lvh.me",
"port": 3000
}
diff --git a/public/js/protocols_site.js b/public/js/protocols_site.js
index b5d3352..5d3d95c 100644
--- a/public/js/protocols_site.js
+++ b/public/js/protocols_site.js
@@ -17,6 +17,7 @@ function scrollToBottom (div)
function warn(s)
{
// return
+ console.log(s)
var h = document.getElementById('msg').innerHTML
h = s + '<br/>' + h
document.getElementById('msg').innerHTML = h
@@ -770,28 +771,19 @@ var Auth =
isHost: false,
loginPrompt: false,
hosts: {},
- init: function ()
- {
- if (document.cookie.indexOf("sid.protocols") !== -1)
- {
- warn('got cookie')
- $.post(URL.auth.login, {}, Auth.loginCallback)
- return
- }
- Auth.load()
- },
- unload: function ()
- {
- if (Auth.loginPrompt)
- {
+ init: function () {
+ $.post(URL.auth.login, {}, Auth.loginCallback)
+ },
+ unload: function () {
+ if (Auth.loginPrompt) {
Auth.loginPrompt = false
$('#login').fadeOut(1000, function(){ Main.load()} )
- }
- else
+ }
+ else {
Main.load()
- },
- load: function ()
- {
+ }
+ },
+ load: function () {
$('#login').fadeIn(1000)
$('#login-email').focus()
$('#login-email').keydown(Main.kp)
@@ -800,37 +792,35 @@ var Auth =
Auth.loginPrompt = true
Main.saveFunction = Auth.login
Main.saving = false
- },
- login: function ()
- {
+ },
+ login: function () {
if (Main.saving)
return
Main.saving = true
warn("attempting login")
- var data =
- {
+ var data = {
username: $('#login-email').val(),
password: $('#login-password').val(),
- }
+ }
$('#login-password').val(''),
$.post(URL.auth.login, data, Auth.loginCallback)
- },
- loginCallback: function (json)
- {
+ },
+ loginCallback: function (json) {
Main.saving = false
- if (json.error)
- {
+ if (! json || json.error) {
if (! Auth.loginPrompt)
Auth.load()
else
warn("bad login!")
return
- }
+ }
// 0 id 1 name 2 firstname 3 email 4 access
var user = Auth.user = json.user
+console.log(user)
+
var name = user.name.split(' ')[0] || user.email.split('@')[0]
warn( "Logged in! Hello "+name )
Auth.userID = user.id
diff --git a/server/auth/index.js b/server/auth/index.js
index 4a0e9d2..e5cb2ea 100644
--- a/server/auth/index.js
+++ b/server/auth/index.js
@@ -22,9 +22,19 @@ var auth = module.exports = {
},
login: function (req, res, next) {
+ if (req.isAuthenticated()) {
+ console.log(req.user)
+ return User.findAll({ where: { access: 2 }, attributes: ['id','name'] }).success(function(hosts){
+ res.json({
+ status: "OK",
+ user: req.user,
+ hosts: hosts
+ })
+ })
+ }
passport.authenticate("local", function(err, user, info){
if (err || ! user) {
- return res.json({ error: err });
+ return res.json({ error: err || "no user" });
}
req.logIn(user, function(err) {
@@ -42,6 +52,7 @@ var auth = module.exports = {
logout: function (req, res) {
req.logout();
+ req.session.destroy()
res.redirect('/');
},
@@ -51,7 +62,7 @@ var auth = module.exports = {
deserializeUser: function (id, done) {
if (id == "guest") {
- return auth.guestUser
+ done(null, auth.guestUser)
}
User.find({ id: id }, function (err, user) {
done(err, user)
diff --git a/server/index.js b/server/index.js
index e85d395..542363d 100644
--- a/server/index.js
+++ b/server/index.js
@@ -55,9 +55,14 @@ site.setup = function(){
app.use(session({
key: config.name + '.sid',
secret: config.secret,
- cookie: { domain: '.' + config.host, maxAge: 60*60*24*365 },
+ cookie: {
+ domain: '.' + config.host,
+ maxAge: 365*24*60*60*1000,
+ httpOnly: false,
+ secure: false
+ },
resave: true,
- saveUninitialized: false,
+ saveUninitialized: true,
// store: SessionStore
}));
app.use(bodyParser());