Guest User

Untitled

a guest
Jun 2nd, 2018
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.85 KB | None | 0 0
  1. app.coffee
  2. -----
  3. exports.getDataModel: (request) ->
  4. # admins or when security is bypassed
  5. if settings.security.bypass or settings.security.admins?[request?.remoteUser]
  6. request.user: {
  7. id: 'root'
  8. acl: () -> adminModel
  9. }
  10. return adminModel
  11. # vanilla user, have to wait for DB
  12. promise.when model.User.get(request?.remoteUser), (user) ->
  13. request.user: user or {}
  14. return publicModel unless user
  15. user.acl()
  16.  
  17. .....
  18.  
  19. model.coffee
  20. -----
  21. model: exports.DataModel: {
  22. User: Model Store({collection: 'User'}), {
  23. properties: {
  24. password: {type: 'string'},
  25. .....
  26. access: {'default': {
  27. #Foo: {r: true, w: true}
  28. Foo: {r: true}
  29. }}
  30. }
  31. prototype: {
  32. acl: () ->
  33. r: {}
  34. return r unless this.active
  35. for k, v of this.access
  36. if v.w
  37. r[k]: Facet.Permissive model[k]
  38. else if v.r
  39. r[k]: Restrictive model[k]
  40. r
  41. }
  42.  
  43. .....
Add Comment
Please, Sign In to add comment