Merge "Bug 1857 - Support dlux topology with or without prefixes in the json response"
[dlux.git] / modules / node-resources / src / main / resources / node / nodes.module.js
1 /*\r
2  * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 \r
9 define(['angularAMD', 'app/routingConfig', 'Restangular', 'angular-translate', 'angular-translate-loader-static-files', 'app/core/core.services', 'common/config/env.module'], function(ng) {\r
10   var nodes = angular.module('app.nodes', ['app.core', 'pascalprecht.translate', 'ui.router.state', 'restangular', 'config']);\r
11   nodes.register = nodes;// for unit test\r
12 \r
13   nodes.config(function($stateProvider, $compileProvider, $controllerProvider, $provide, NavHelperProvider, $translateProvider) {\r
14     nodes.register = {\r
15       controller : $controllerProvider.register,\r
16       directive : $compileProvider.directive,\r
17       factory : $provide.factory,\r
18       service : $provide.service\r
19 \r
20     };\r
21 \r
22     $translateProvider.useStaticFilesLoader({\r
23       prefix: 'assets/data/locale-',\r
24       suffix: '.json'\r
25     });\r
26 \r
27     NavHelperProvider.addControllerUrl('app/node/nodes.controller');\r
28     NavHelperProvider.addToMenu('nodes', {\r
29      "link" : "#/node/index",\r
30      "active" : "main.node.*",\r
31      "title" : "NODES",\r
32      "icon" : "icon-sitemap",\r
33      "page" : {\r
34         "title" : "NODES",\r
35         "description" : "NODES"\r
36      }\r
37     });\r
38 \r
39     var access = routingConfig.accessLevels;\r
40     $stateProvider.state('main.node', {\r
41       url: 'node',\r
42       abstract: true,\r
43       views : {\r
44         'content' : {\r
45           templateUrl: 'src/app/node/root.tpl.html',\r
46           controller: 'rootNodeCtrl'\r
47         }\r
48       }\r
49     });\r
50 \r
51     $stateProvider.state('main.node.index', {\r
52       url: '/index',\r
53       access: access.admin,\r
54       views: {\r
55         '': {\r
56           templateUrl: 'src/app/node/index.tpl.html',\r
57           controller: 'allNodesCtrl'\r
58         }\r
59       }\r
60     });\r
61 \r
62     $stateProvider.state('main.node.detail', {\r
63       url: '/:nodeId/detail',\r
64       access: access.admin,\r
65       views: {\r
66         '': {\r
67           templateUrl: 'src/app/node/detail.tpl.html',\r
68           controller: 'nodeConnectorCtrl'\r
69         }\r
70       }\r
71     });\r
72 \r
73     $stateProvider.state('main.node.flow-stat', {\r
74       url: '/:nodeId/flow-stat',\r
75       access: access.admin,\r
76       views: {\r
77         '': {\r
78           templateUrl: 'src/app/node/flow-stat.tpl.html',\r
79           controller: 'nodeConnectorCtrl'\r
80         }\r
81       }\r
82     });\r
83 \r
84     $stateProvider.state('main.node.port-stat', {\r
85       url: '/:nodeId/port-stat',\r
86       access: access.admin,\r
87       views: {\r
88         '': {\r
89           templateUrl: 'src/app/node/port-stat.tpl.html',\r
90           controller: 'nodeConnectorCtrl'\r
91         }\r
92       }\r
93     });\r
94 \r
95   });\r
96 \r
97   return nodes;\r
98 });\r