Got accessControl working!!!

This commit is contained in:
Tyler Renelle
2012-08-26 11:58:03 -04:00
parent cb6c6f424b
commit 0e4e306046
4 changed files with 23 additions and 19 deletions
+1
View File
@@ -53,6 +53,7 @@ habitrpgMiddleware = function(req, res, next) {
model.setNull('_userId', req.session.userId);
model.set('_mobileDevice', /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(req.header('User-Agent')));
model.set('_nodeEnv', process.env.NODE_ENV);
require('./setupStore').accessControl(store);
return next();
};
+10 -6
View File
@@ -7,12 +7,16 @@ module.exports.queries = function(store) {
};
module.exports.accessControl = function(store) {
store.readPathAccess('users.*', function(userId, accept) {
console.log(accept, 'read.accept');
return accept(userId === this.session.userId);
store.accessControl = true;
store.readPathAccess('users.*', function(captures, next) {
var allowed;
allowed = captures === this.session.userId;
return next(allowed);
});
return store.writeAccess('*', 'users.*', function(mutator, userId, accept) {
console.log(accept, 'write.accept');
return accept(userId === this.session.userId);
return store.writeAccess('*', 'users.*', function(captures, value, next) {
var allowed, pathArray;
pathArray = captures.split('.');
allowed = pathArray[0] === this.session.userId;
return next(allowed);
});
};