eHealthAfrica/direct-delivery-dashboard

View on GitHub
src/app/users/users.states.js

Summary

Maintainability
A
0 mins
Test Coverage
'use strict'

angular.module('users')
  .config(function ($stateProvider, authProvider) {
    $stateProvider.state('users', {
      abstract: true,
      parent: 'index',
      url: '/users',
      templateUrl: 'app/users/users.html',
      resolve: {
        // TODO: remove after #169 is resolved
        disabled: function () {
          throw new Error('user module temporarily disabled')
        },
        authentication: authProvider.requireAuthenticatedUser,
        authorization: authProvider.requireAdminUser,
        users: function (usersService, log) {
          return usersService.all()
            .then(function (usersObj) {
              var users = []

              angular.forEach(usersObj, function (user) {
                users.push(user)
              })

              return users
            })
            .catch(function (reason) {
              log.error('userLoadErr')
              return []
            })
        }
      },
      data: {
        roles: [
          'direct_delivery_dashboard_super'
        ]
      }
    })
  })