From a0611297fa37f4a77cbb38ee0568f19e303d22c5 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Fri, 7 Sep 2012 19:34:18 -0400 Subject: [PATCH] necessary changes to get everyauth working (since can't run model.fetch() on the server). revisit, this might not be the case --- lib/app/index.js | 12 +++++++++++- src/app/index.coffee | 10 +++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/app/index.js b/lib/app/index.js index 7304380bb6..eb29a9ce60 100644 --- a/lib/app/index.js +++ b/lib/app/index.js @@ -20,11 +20,21 @@ helpers = require('./helpers'); helpers.viewHelpers(view); get('/:uidParam?', function(page, model, _arg, next) { - var uidParam, userId; + var q, sess, uidParam, userId; uidParam = _arg.uidParam; if (uidParam === 'privacy' || uidParam === 'terms') { return next(); } + sess = model.session; + if (sess.auth && sess.auth.facebook) { + q = model.query('users').withEveryauth('facebook', sess.auth.facebook.id); + model.fetch(q, function(err, user) { + if (user && user.get('id') !== sess.auth.id) { + sess.auth.id = user.get('id'); + return page.redirect('/'); + } + }); + } userId = model.get('_userId'); return model.subscribe("users." + userId, function(err, user) { var guid, newUser, task, _i, _len, _ref1; diff --git a/src/app/index.coffee b/src/app/index.coffee index d625357cce..ac9a1067e4 100644 --- a/src/app/index.coffee +++ b/src/app/index.coffee @@ -16,7 +16,15 @@ helpers.viewHelpers(view) get '/:uidParam?', (page, model, {uidParam}, next) -> #FIXME figure out a better way to do this - return next() if (uidParam == 'privacy' or uidParam == 'terms') + return next() if (uidParam == 'privacy' or uidParam == 'terms') + + sess = model.session + if sess.auth && sess.auth.facebook + q = model.query('users').withEveryauth('facebook', sess.auth.facebook.id) + model.fetch q, (err, user) -> + if (user && user.get('id')!=sess.auth.id) + sess.auth.id = user.get('id') + return page.redirect('/') userId = model.get '_userId'