ONOS-2202 - GUI -- Moved flow, port, and group navigation buttons out of device …
…details panel. Created tab-like behavior to switch between the three views when viewing any of them. Change-Id: Ibc4291689e913a3537bd621e8e579f5e198ae5f2
Showing
16 changed files
with
154 additions
and
65 deletions
... | @@ -47,6 +47,9 @@ | ... | @@ -47,6 +47,9 @@ |
47 | 47 | ||
48 | devIcon_SWITCH: 'switch', | 48 | devIcon_SWITCH: 'switch', |
49 | devIcon_ROADM: 'roadm', | 49 | devIcon_ROADM: 'roadm', |
50 | + flowTable: 'flowTable', | ||
51 | + portTable: 'portTable', | ||
52 | + groupTable: 'groupTable', | ||
50 | 53 | ||
51 | hostIcon_endstation: 'endstation', | 54 | hostIcon_endstation: 'endstation', |
52 | hostIcon_router: 'router', | 55 | hostIcon_router: 'router', | ... | ... |
... | @@ -115,6 +115,12 @@ div.ctrl-btns div { | ... | @@ -115,6 +115,12 @@ div.ctrl-btns div { |
115 | cursor: pointer; | 115 | cursor: pointer; |
116 | } | 116 | } |
117 | 117 | ||
118 | +div.ctrl-btns div.separator { | ||
119 | + cursor: auto; | ||
120 | + width: 24px; | ||
121 | + border: none; | ||
122 | +} | ||
123 | + | ||
118 | /* Inactive */ | 124 | /* Inactive */ |
119 | .light .ctrl-btns div g.icon rect, | 125 | .light .ctrl-btns div g.icon rect, |
120 | .light .ctrl-btns div:hover g.icon rect { | 126 | .light .ctrl-btns div:hover g.icon rect { | ... | ... |
... | @@ -26,12 +26,6 @@ | ... | @@ -26,12 +26,6 @@ |
26 | width: 290px; | 26 | width: 290px; |
27 | } | 27 | } |
28 | 28 | ||
29 | -#ov-app div.ctrl-btns div.separator { | ||
30 | - cursor: auto; | ||
31 | - width: 24px; | ||
32 | - border: none; | ||
33 | -} | ||
34 | - | ||
35 | #ov-app form#inputFileForm, | 29 | #ov-app form#inputFileForm, |
36 | #ov-app input#uploadFile { | 30 | #ov-app input#uploadFile { |
37 | display: none; | 31 | display: none; | ... | ... |
... | @@ -4,8 +4,21 @@ | ... | @@ -4,8 +4,21 @@ |
4 | <h2>Devices ({{tableData.length}} total)</h2> | 4 | <h2>Devices ({{tableData.length}} total)</h2> |
5 | <div class="ctrl-btns"> | 5 | <div class="ctrl-btns"> |
6 | <div class="refresh" ng-class="{active: autoRefresh}" | 6 | <div class="refresh" ng-class="{active: autoRefresh}" |
7 | - icon icon-size="36" icon-id="refresh" | 7 | + icon icon-id="refresh" icon-size="36" |
8 | ng-click="toggleRefresh()"></div> | 8 | ng-click="toggleRefresh()"></div> |
9 | + <div class="separator"></div> | ||
10 | + | ||
11 | + <div ng-class="{active: !!selId}" | ||
12 | + icon icon-id="flowTable" icon-size="36" | ||
13 | + ng-click="nav('flow')"></div> | ||
14 | + | ||
15 | + <div ng-class="{active: !!selId}" | ||
16 | + icon icon-id="portTable" icon-size="36" | ||
17 | + ng-click="nav('port')"></div> | ||
18 | + | ||
19 | + <div ng-class="{active: !!selId}" | ||
20 | + icon icon-id="groupTable" icon-size="36" | ||
21 | + ng-click="nav('group')"></div> | ||
9 | </div> | 22 | </div> |
10 | </div> | 23 | </div> |
11 | 24 | ... | ... |
... | @@ -22,7 +22,7 @@ | ... | @@ -22,7 +22,7 @@ |
22 | 'use strict'; | 22 | 'use strict'; |
23 | 23 | ||
24 | // injected refs | 24 | // injected refs |
25 | - var $log, $scope, fs, mast, ps, wss, is, bns, ns, ttip; | 25 | + var $log, $scope, fs, mast, ps, wss, is, ns; |
26 | 26 | ||
27 | // internal state | 27 | // internal state |
28 | var detailsPanel, | 28 | var detailsPanel, |
... | @@ -35,12 +35,8 @@ | ... | @@ -35,12 +35,8 @@ |
35 | ctnrPdg = 24, | 35 | ctnrPdg = 24, |
36 | scrollSize = 17, | 36 | scrollSize = 17, |
37 | portsTblPdg = 50, | 37 | portsTblPdg = 50, |
38 | - flowPath = 'flow', | ||
39 | - portPath = 'port', | ||
40 | - groupPath = 'group', | ||
41 | 38 | ||
42 | pName = 'device-details-panel', | 39 | pName = 'device-details-panel', |
43 | - bName = 'dev-dets-p', | ||
44 | detailsReq = 'deviceDetailsRequest', | 40 | detailsReq = 'deviceDetailsRequest', |
45 | detailsResp = 'deviceDetailsResponse', | 41 | detailsResp = 'deviceDetailsResponse', |
46 | 42 | ||
... | @@ -85,7 +81,6 @@ | ... | @@ -85,7 +81,6 @@ |
85 | tblDiv.append('div').classed('left', true).append('table'); | 81 | tblDiv.append('div').classed('left', true).append('table'); |
86 | tblDiv.append('div').classed('right', true).append('table'); | 82 | tblDiv.append('div').classed('right', true).append('table'); |
87 | 83 | ||
88 | - top.append('div').classed('actionBtns', true); | ||
89 | top.append('hr'); | 84 | top.append('hr'); |
90 | 85 | ||
91 | bottom = container.append('div').classed('bottom', true); | 86 | bottom = container.append('div').classed('bottom', true); |
... | @@ -103,7 +98,7 @@ | ... | @@ -103,7 +98,7 @@ |
103 | addCell('value', value); | 98 | addCell('value', value); |
104 | } | 99 | } |
105 | 100 | ||
106 | - function populateTop(tblDiv, btnsDiv, details) { | 101 | + function populateTop(tblDiv, details) { |
107 | var leftTbl = tblDiv.select('.left') | 102 | var leftTbl = tblDiv.select('.left') |
108 | .select('table') | 103 | .select('table') |
109 | .append('tbody'), | 104 | .append('tbody'), |
... | @@ -118,34 +113,6 @@ | ... | @@ -118,34 +113,6 @@ |
118 | // properties are split into two tables | 113 | // properties are split into two tables |
119 | addProp(i < 3 ? leftTbl : rightTbl, i, details[prop]); | 114 | addProp(i < 3 ? leftTbl : rightTbl, i, details[prop]); |
120 | }); | 115 | }); |
121 | - | ||
122 | - bns.button( | ||
123 | - btnsDiv, | ||
124 | - bName + '-flows', | ||
125 | - 'flowTable', | ||
126 | - function () { | ||
127 | - ns.navTo(flowPath, { devId: details.id }); | ||
128 | - }, | ||
129 | - 'Show flow view for this device' | ||
130 | - ); | ||
131 | - bns.button( | ||
132 | - btnsDiv, | ||
133 | - bName + '-ports', | ||
134 | - 'portTable', | ||
135 | - function () { | ||
136 | - ns.navTo(portPath, { devId: details.id }); | ||
137 | - }, | ||
138 | - 'Show port view for this device' | ||
139 | - ); | ||
140 | - bns.button( | ||
141 | - btnsDiv, | ||
142 | - bName + '-groups', | ||
143 | - 'groupTable', | ||
144 | - function () { | ||
145 | - ns.navTo(groupPath, { devId: details.id }); | ||
146 | - }, | ||
147 | - 'Show group view for this device' | ||
148 | - ); | ||
149 | } | 116 | } |
150 | 117 | ||
151 | function addPortRow(tbody, port) { | 118 | function addPortRow(tbody, port) { |
... | @@ -187,15 +154,14 @@ | ... | @@ -187,15 +154,14 @@ |
187 | } | 154 | } |
188 | 155 | ||
189 | function populateDetails(details) { | 156 | function populateDetails(details) { |
190 | - var topTbs, btnsDiv, btmTbl, ports; | 157 | + var topTbs, btmTbl, ports; |
191 | setUpPanel(); | 158 | setUpPanel(); |
192 | 159 | ||
193 | topTbs = top.select('.top-tables'); | 160 | topTbs = top.select('.top-tables'); |
194 | - btnsDiv = top.select('.actionBtns'); | ||
195 | btmTbl = bottom.select('table'); | 161 | btmTbl = bottom.select('table'); |
196 | ports = details.ports; | 162 | ports = details.ports; |
197 | 163 | ||
198 | - populateTop(topTbs, btnsDiv, details); | 164 | + populateTop(topTbs, details); |
199 | populateBottom(btmTbl, ports); | 165 | populateBottom(btmTbl, ports); |
200 | 166 | ||
201 | detailsPanel.height(pHeight); | 167 | detailsPanel.height(pHeight); |
... | @@ -223,10 +189,10 @@ | ... | @@ -223,10 +189,10 @@ |
223 | .controller('OvDeviceCtrl', | 189 | .controller('OvDeviceCtrl', |
224 | ['$log', '$scope', 'TableBuilderService', 'FnService', | 190 | ['$log', '$scope', 'TableBuilderService', 'FnService', |
225 | 'MastService', 'PanelService', 'WebSocketService', 'IconService', | 191 | 'MastService', 'PanelService', 'WebSocketService', 'IconService', |
226 | - 'ButtonService', 'NavService', 'TooltipService', | 192 | + 'NavService', |
227 | 193 | ||
228 | function (_$log_, _$scope_, | 194 | function (_$log_, _$scope_, |
229 | - tbs, _fs_, _mast_, _ps_, _wss_, _is_, _bns_, _ns_, _ttip_) { | 195 | + tbs, _fs_, _mast_, _ps_, _wss_, _is_, _ns_) { |
230 | $log = _$log_; | 196 | $log = _$log_; |
231 | $scope = _$scope_; | 197 | $scope = _$scope_; |
232 | fs = _fs_; | 198 | fs = _fs_; |
... | @@ -234,9 +200,7 @@ | ... | @@ -234,9 +200,7 @@ |
234 | ps = _ps_; | 200 | ps = _ps_; |
235 | wss = _wss_; | 201 | wss = _wss_; |
236 | is = _is_; | 202 | is = _is_; |
237 | - bns = _bns_; | ||
238 | ns = _ns_; | 203 | ns = _ns_; |
239 | - ttip = _ttip_; | ||
240 | var handlers = {}; | 204 | var handlers = {}; |
241 | $scope.panelData = []; | 205 | $scope.panelData = []; |
242 | 206 | ||
... | @@ -260,6 +224,12 @@ | ... | @@ -260,6 +224,12 @@ |
260 | handlers[detailsResp] = respDetailsCb; | 224 | handlers[detailsResp] = respDetailsCb; |
261 | wss.bindHandlers(handlers); | 225 | wss.bindHandlers(handlers); |
262 | 226 | ||
227 | + $scope.nav = function (path) { | ||
228 | + if ($scope.selId) { | ||
229 | + ns.navTo(path, { devId: $scope.selId }); | ||
230 | + } | ||
231 | + }; | ||
232 | + | ||
263 | $scope.$on('$destroy', function () { | 233 | $scope.$on('$destroy', function () { |
264 | wss.unbindHandlers(handlers); | 234 | wss.unbindHandlers(handlers); |
265 | }); | 235 | }); |
... | @@ -293,7 +263,7 @@ | ... | @@ -293,7 +263,7 @@ |
293 | return { | 263 | return { |
294 | h: $window.innerHeight, | 264 | h: $window.innerHeight, |
295 | w: $window.innerWidth | 265 | w: $window.innerWidth |
296 | - } | 266 | + }; |
297 | }, function () { | 267 | }, function () { |
298 | if (!fs.isEmptyObject(scope.panelData)) { | 268 | if (!fs.isEmptyObject(scope.panelData)) { |
299 | heightCalc(); | 269 | heightCalc(); | ... | ... |
... | @@ -23,7 +23,21 @@ | ... | @@ -23,7 +23,21 @@ |
23 | } | 23 | } |
24 | 24 | ||
25 | #ov-flow div.ctrl-btns { | 25 | #ov-flow div.ctrl-btns { |
26 | - width: 45px; | 26 | + width: 240px; |
27 | +} | ||
28 | + | ||
29 | +.light #ov-flow .current-view use { | ||
30 | + fill: white; | ||
31 | +} | ||
32 | +.dark #ov-flow .current-view use { | ||
33 | + fill: #304860; | ||
34 | +} | ||
35 | + | ||
36 | +.light #ov-flow .current-view rect { | ||
37 | + fill: deepskyblue; | ||
38 | +} | ||
39 | +.dark #ov-flow .current-view rect { | ||
40 | + fill: #eee; | ||
27 | } | 41 | } |
28 | 42 | ||
29 | .light #ov-flow tr:nth-child(6n + 1), | 43 | .light #ov-flow tr:nth-child(6n + 1), | ... | ... |
... | @@ -9,6 +9,19 @@ | ... | @@ -9,6 +9,19 @@ |
9 | <div class="refresh" ng-class="{active: autoRefresh}" | 9 | <div class="refresh" ng-class="{active: autoRefresh}" |
10 | icon icon-size="36" icon-id="refresh" | 10 | icon icon-size="36" icon-id="refresh" |
11 | ng-click="toggleRefresh()"></div> | 11 | ng-click="toggleRefresh()"></div> |
12 | + | ||
13 | + <div class="separator"></div> | ||
14 | + | ||
15 | + <div class="current-view" | ||
16 | + icon icon-id="flowTable" icon-size="36"></div> | ||
17 | + | ||
18 | + <div class="active" | ||
19 | + icon icon-id="portTable" icon-size="36" | ||
20 | + ng-click="nav('port')"></div> | ||
21 | + | ||
22 | + <div class="active" | ||
23 | + icon icon-id="groupTable" icon-size="36" | ||
24 | + ng-click="nav('group')"></div> | ||
12 | </div> | 25 | </div> |
13 | </div> | 26 | </div> |
14 | 27 | ... | ... |
... | @@ -22,20 +22,21 @@ | ... | @@ -22,20 +22,21 @@ |
22 | 'use strict'; | 22 | 'use strict'; |
23 | 23 | ||
24 | // injected references | 24 | // injected references |
25 | - var $log, $scope, $location, fs, tbs; | 25 | + var $log, $scope, $location, fs, tbs, ns; |
26 | 26 | ||
27 | angular.module('ovFlow', []) | 27 | angular.module('ovFlow', []) |
28 | .controller('OvFlowCtrl', | 28 | .controller('OvFlowCtrl', |
29 | ['$log', '$scope', '$location', | 29 | ['$log', '$scope', '$location', |
30 | - 'FnService', 'TableBuilderService', | 30 | + 'FnService', 'TableBuilderService', 'NavService', |
31 | 31 | ||
32 | - function (_$log_, _$scope_, _$location_, _fs_, _tbs_) { | 32 | + function (_$log_, _$scope_, _$location_, _fs_, _tbs_, _ns_) { |
33 | var params; | 33 | var params; |
34 | $log = _$log_; | 34 | $log = _$log_; |
35 | $scope = _$scope_; | 35 | $scope = _$scope_; |
36 | $location = _$location_; | 36 | $location = _$location_; |
37 | fs = _fs_; | 37 | fs = _fs_; |
38 | tbs = _tbs_; | 38 | tbs = _tbs_; |
39 | + ns = _ns_; | ||
39 | 40 | ||
40 | params = $location.search(); | 41 | params = $location.search(); |
41 | if (params.hasOwnProperty('devId')) { | 42 | if (params.hasOwnProperty('devId')) { |
... | @@ -48,6 +49,12 @@ | ... | @@ -48,6 +49,12 @@ |
48 | query: params | 49 | query: params |
49 | }); | 50 | }); |
50 | 51 | ||
52 | + $scope.nav = function (path) { | ||
53 | + if ($scope.devId) { | ||
54 | + ns.navTo(path, { devId: $scope.devId }); | ||
55 | + } | ||
56 | + }; | ||
57 | + | ||
51 | $log.log('OvFlowCtrl has been created'); | 58 | $log.log('OvFlowCtrl has been created'); |
52 | }]); | 59 | }]); |
53 | }()); | 60 | }()); | ... | ... |
... | @@ -23,7 +23,21 @@ | ... | @@ -23,7 +23,21 @@ |
23 | } | 23 | } |
24 | 24 | ||
25 | #ov-group div.ctrl-btns { | 25 | #ov-group div.ctrl-btns { |
26 | - width: 45px; | 26 | + width: 240px; |
27 | +} | ||
28 | + | ||
29 | +.light #ov-group .current-view use { | ||
30 | + fill: white; | ||
31 | +} | ||
32 | +.dark #ov-group .current-view use { | ||
33 | + fill: #304860; | ||
34 | +} | ||
35 | + | ||
36 | +.light #ov-group .current-view rect { | ||
37 | + fill: deepskyblue; | ||
38 | +} | ||
39 | +.dark #ov-group .current-view rect { | ||
40 | + fill: #eee; | ||
27 | } | 41 | } |
28 | 42 | ||
29 | .light #ov-group tr:nth-child(4n + 1), | 43 | .light #ov-group tr:nth-child(4n + 1), | ... | ... |
... | @@ -25,6 +25,19 @@ | ... | @@ -25,6 +25,19 @@ |
25 | <div class="refresh" ng-class="{active: autoRefresh}" | 25 | <div class="refresh" ng-class="{active: autoRefresh}" |
26 | icon icon-size="36" icon-id="refresh" | 26 | icon icon-size="36" icon-id="refresh" |
27 | ng-click="toggleRefresh()"></div> | 27 | ng-click="toggleRefresh()"></div> |
28 | + | ||
29 | + <div class="separator"></div> | ||
30 | + | ||
31 | + <div class="active" | ||
32 | + icon icon-id="flowTable" icon-size="36" | ||
33 | + ng-click="nav('flow')"></div> | ||
34 | + | ||
35 | + <div class="active" | ||
36 | + icon icon-id="portTable" icon-size="36" | ||
37 | + ng-click="nav('port')"></div> | ||
38 | + | ||
39 | + <div class="current-view" | ||
40 | + icon icon-id="groupTable" icon-size="36"></div> | ||
28 | </div> | 41 | </div> |
29 | </div> | 42 | </div> |
30 | 43 | ... | ... |
... | @@ -22,20 +22,21 @@ | ... | @@ -22,20 +22,21 @@ |
22 | 'use strict'; | 22 | 'use strict'; |
23 | 23 | ||
24 | // injected references | 24 | // injected references |
25 | - var $log, $scope, $location, fs, tbs; | 25 | + var $log, $scope, $location, fs, tbs, ns; |
26 | 26 | ||
27 | angular.module('ovGroup', []) | 27 | angular.module('ovGroup', []) |
28 | .controller('OvGroupCtrl', | 28 | .controller('OvGroupCtrl', |
29 | ['$log', '$scope', '$location', '$sce', | 29 | ['$log', '$scope', '$location', '$sce', |
30 | - 'FnService', 'TableBuilderService', | 30 | + 'FnService', 'TableBuilderService', 'NavService', |
31 | 31 | ||
32 | - function (_$log_, _$scope_, _$location_, $sce, _fs_, _tbs_) { | 32 | + function (_$log_, _$scope_, _$location_, $sce, _fs_, _tbs_, _ns_) { |
33 | var params; | 33 | var params; |
34 | $log = _$log_; | 34 | $log = _$log_; |
35 | $scope = _$scope_; | 35 | $scope = _$scope_; |
36 | $location = _$location_; | 36 | $location = _$location_; |
37 | fs = _fs_; | 37 | fs = _fs_; |
38 | tbs = _tbs_; | 38 | tbs = _tbs_; |
39 | + ns = _ns_; | ||
39 | 40 | ||
40 | params = $location.search(); | 41 | params = $location.search(); |
41 | if (params.hasOwnProperty('devId')) { | 42 | if (params.hasOwnProperty('devId')) { |
... | @@ -56,6 +57,12 @@ | ... | @@ -56,6 +57,12 @@ |
56 | } | 57 | } |
57 | }); | 58 | }); |
58 | 59 | ||
60 | + $scope.nav = function (path) { | ||
61 | + if ($scope.devId) { | ||
62 | + ns.navTo(path, { devId: $scope.devId }); | ||
63 | + } | ||
64 | + }; | ||
65 | + | ||
59 | $log.log('OvGroupCtrl has been created'); | 66 | $log.log('OvGroupCtrl has been created'); |
60 | }]); | 67 | }]); |
61 | }()); | 68 | }()); | ... | ... |
... | @@ -23,9 +23,23 @@ | ... | @@ -23,9 +23,23 @@ |
23 | } | 23 | } |
24 | 24 | ||
25 | #ov-port div.ctrl-btns { | 25 | #ov-port div.ctrl-btns { |
26 | - width: 45px; | 26 | + width: 240px; |
27 | } | 27 | } |
28 | 28 | ||
29 | -#ov-port tr:not(.no-data) td { | 29 | +.light #ov-port .current-view use { |
30 | + fill: white; | ||
31 | +} | ||
32 | +.dark #ov-port .current-view use { | ||
33 | + fill: #304860; | ||
34 | +} | ||
35 | + | ||
36 | +.light #ov-port .current-view rect { | ||
37 | + fill: deepskyblue; | ||
38 | +} | ||
39 | +.dark #ov-port .current-view rect { | ||
40 | + fill: #eee; | ||
41 | +} | ||
42 | + | ||
43 | +#ov-port td { | ||
30 | text-align: right; | 44 | text-align: right; |
31 | } | 45 | } |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -25,6 +25,19 @@ | ... | @@ -25,6 +25,19 @@ |
25 | <div class="refresh" ng-class="{active: autoRefresh}" | 25 | <div class="refresh" ng-class="{active: autoRefresh}" |
26 | icon icon-size="36" icon-id="refresh" | 26 | icon icon-size="36" icon-id="refresh" |
27 | ng-click="toggleRefresh()"></div> | 27 | ng-click="toggleRefresh()"></div> |
28 | + | ||
29 | + <div class="separator"></div> | ||
30 | + | ||
31 | + <div class="active" | ||
32 | + icon icon-id="flowTable" icon-size="36" | ||
33 | + ng-click="nav('flow')"></div> | ||
34 | + | ||
35 | + <div class="current-view" | ||
36 | + icon icon-id="portTable" icon-size="36"></div> | ||
37 | + | ||
38 | + <div class="active" | ||
39 | + icon icon-id="groupTable" icon-size="36" | ||
40 | + ng-click="nav('group')"></div> | ||
28 | </div> | 41 | </div> |
29 | </div> | 42 | </div> |
30 | 43 | ... | ... |
... | @@ -22,19 +22,21 @@ | ... | @@ -22,19 +22,21 @@ |
22 | 'use strict'; | 22 | 'use strict'; |
23 | 23 | ||
24 | // injected references | 24 | // injected references |
25 | - var $log, $scope, $location, fs, tbs; | 25 | + var $log, $scope, $location, fs, tbs, ns; |
26 | 26 | ||
27 | angular.module('ovPort', []) | 27 | angular.module('ovPort', []) |
28 | .controller('OvPortCtrl', | 28 | .controller('OvPortCtrl', |
29 | - ['$log', '$scope', '$location', 'FnService', 'TableBuilderService', | 29 | + ['$log', '$scope', '$location', |
30 | + 'FnService', 'TableBuilderService', 'NavService', | ||
30 | 31 | ||
31 | - function (_$log_, _$scope_, _$location_, _fs_, _tbs_) { | 32 | + function (_$log_, _$scope_, _$location_, _fs_, _tbs_, _ns_) { |
32 | var params; | 33 | var params; |
33 | $log = _$log_; | 34 | $log = _$log_; |
34 | $scope = _$scope_; | 35 | $scope = _$scope_; |
35 | $location = _$location_; | 36 | $location = _$location_; |
36 | fs = _fs_; | 37 | fs = _fs_; |
37 | tbs = _tbs_; | 38 | tbs = _tbs_; |
39 | + ns = _ns_; | ||
38 | 40 | ||
39 | params = $location.search(); | 41 | params = $location.search(); |
40 | if (params.hasOwnProperty('devId')) { | 42 | if (params.hasOwnProperty('devId')) { |
... | @@ -47,6 +49,12 @@ | ... | @@ -47,6 +49,12 @@ |
47 | query: params | 49 | query: params |
48 | }); | 50 | }); |
49 | 51 | ||
52 | + $scope.nav = function (path) { | ||
53 | + if ($scope.devId) { | ||
54 | + ns.navTo(path, { devId: $scope.devId }); | ||
55 | + } | ||
56 | + }; | ||
57 | + | ||
50 | $log.log('OvPortCtrl has been created'); | 58 | $log.log('OvPortCtrl has been created'); |
51 | }]); | 59 | }]); |
52 | }()); | 60 | }()); | ... | ... |
... | @@ -81,7 +81,7 @@ | ... | @@ -81,7 +81,7 @@ |
81 | self.$route = $route; | 81 | self.$route = $route; |
82 | self.$routeParams = $routeParams; | 82 | self.$routeParams = $routeParams; |
83 | self.$location = $location; | 83 | self.$location = $location; |
84 | - self.version = '1.2.0'; | 84 | + self.version = '1.3.0'; |
85 | 85 | ||
86 | // initialize services... | 86 | // initialize services... |
87 | ts.init(); | 87 | ts.init(); | ... | ... |
-
Please register or login to post a comment