Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jeremyrsellars/3133130 to your computer and use it in GitHub Desktop.
Save jeremyrsellars/3133130 to your computer and use it in GitHub Desktop.
Declarative Express Resources
addAllResources: ->
resources =
'courses':
module: require "./courses.coffee"
children:
'studentGroups':
module: require "./studentGroups.coffee"
'studentAudits':
module: require "./studentAudits.coffee"
'students':
module: require "./students.coffee"
children:
'audits':
module: require "./studentAudits.coffee"
'state':
module: require "./studentState.coffee"
'studentExams':
module: require "./studentExams.coffee"
'tags':
module: require "./studentTags.coffee"
'exams':
module: require "./exams.coffee"
children:
'audits':
module: require "./examAudits.coffee"
'tagnames':
module: require "./tags.coffee"
'diagnostics':
module: require "./diagnostics.coffee"
console.log resources
@addResourceList null, resources
addResourceList: (parent, resources) ->
@addResource parent, name, moduleAndChildren for name, moduleAndChildren of resources
addResource: (parent, name, moduleAndChildren) ->
resource = @app.resource name, moduleAndChildren.module
parent.add resource if (parent?)
moduleAndChildren.module.init(@appContext, resource) if (moduleAndChildren.module.init?)
@addResourceList resource, moduleAndChildren.children if moduleAndChildren.children?
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment