Merge pull request #1013 from eldiddio/develop

Fixed foreach loop on session IDs, was breaking EP on single session in cookie
This commit is contained in:
John McLear 2012-09-18 08:53:43 -07:00
commit f81a110229

View file

@ -123,26 +123,29 @@ exports.checkAccess = function (padID, sessionCookie, token, password, callback)
} }
var sessionIDs = sessionCookie.split(','); var sessionIDs = sessionCookie.split(',');
async.foreach(sessionIDs, function(sessionID) { if (sessionIDs){
sessionManager.getSessionInfo(sessionID, function(err, sessionInfo) { async.forEach(sessionIDs, function(sessionID, cb){
//skip session if it doesn't exist sessionManager.getSessionInfo(sessionID, function(err, sessionInfo) {
if(err && err.message == "sessionID does not exist") return; //skip session if it doesn't exist
if(err && err.message == "sessionID does not exist") return;
if(ERR(err, callback)) return; if(ERR(err, callback)) return;
var now = Math.floor(new Date().getTime()/1000); var now = Math.floor(new Date().getTime()/1000);
//is it for this group? //is it for this group?
if(sessionInfo.groupID != groupID) return; if(sessionInfo.groupID != groupID) return;
//is validUntil still ok? //is validUntil still ok?
if(sessionInfo.validUntil <= now) return; if(sessionInfo.validUntil <= now) return;
// There is a valid session // There is a valid session
validSession = true; validSession = true;
sessionAuthor = sessionInfo.authorID; sessionAuthor = sessionInfo.authorID;
}); cb(); // finish the current value and go to next
}, callback) });
}, callback)
}
}, },
//get author for token //get author for token
function(callback) function(callback)