stats.coffee 753 B

123456789101112131415161718192021222324252627
  1. class App.DashboardStats extends App.Controller
  2. constructor: ->
  3. super
  4. @load()
  5. @bind('dashboard_stats_rebuild', @load)
  6. load: =>
  7. @setupStatsWidget('Stats', 'stats', @el)
  8. setupStatsWidget: (config, event, el) ->
  9. # load all statsWidgets ./stats/*
  10. App.Event.trigger(event + ':init')
  11. statsWidgets = App.Config.get(config)
  12. if statsWidgets
  13. widgets = $.map(statsWidgets, (v) -> v )
  14. widgets = _.sortBy(widgets, (item) -> return item.prio)
  15. for widget in widgets
  16. if @permissionCheck(widget.permission)
  17. try
  18. new widget.controller(
  19. el: el
  20. )
  21. catch e
  22. @log 'error', "statsWidgets #{key}:", e
  23. App.Event.trigger(event + ':ready')