You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by da...@apache.org on 2017/06/30 22:41:35 UTC
[05/52] [partial] incubator-trafficcontrol git commit: promotes TO
experimental UI to the new Traffic Portal
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/deliveryService/view/overview/deliveryService.view.overview.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/deliveryService/view/overview/deliveryService.view.overview.tpl.html b/traffic_portal/app/src/modules/private/deliveryService/view/overview/deliveryService.view.overview.tpl.html
deleted file mode 100644
index fbc3ea3..0000000
--- a/traffic_portal/app/src/modules/private/deliveryService/view/overview/deliveryService.view.overview.tpl.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<!--
-
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-
-<div id="dsOverviewContainer" ng-show="deliveryService">
- <div class="ds-header">
- <ol class="breadcrumb">
- <li class="active"><span class="ds-name" title="{{deliveryService.displayName}} ({{deliveryService.id}} | {{deliveryService.xmlId}})">{{deliveryService.displayName}}</span> <a class="link" title="View Delivery Service Config" ng-click="viewConfig(deliveryService)"><i class="fa fa-cog fa-fw"></i></a></li>
- </ol>
- <div ng-if="properties.deliveryService.invalidateContent.show && user.localUser" class="invalidate-content-btn btn-group" uib-dropdown is-open="invalidate.isopen">
- <button id="invalidate-button" type="button" class="action-btn-dropdown btn" uib-dropdown-toggle>
- Invalidate Content <i class="fa fa-angle-down fa-lg"></i>
- </button>
- <ul class="action-btn-dialog uib-dropdown-menu scrollable-purge-container scrollable dropdown-menu-right" role="menu" aria-labelledby="invalidate-button">
- <li>
- <div class="panel-body">
- <div ui-view="purgeContent"></div>
- </div>
- </li>
- </ul>
- </div>
- <div class="more-charts-btn btn-group" uib-dropdown is-open="moreCharts.isopen">
- <button id="moreCharts-button" type="button" class="action-btn-dropdown btn" uib-dropdown-toggle>
- Delivery Service Charts <i class="fa fa-angle-down fa-lg"></i>
- </button>
- <ul class="action-btn-menu uib-dropdown-menu dropdown-menu-right" role="menu" aria-labelledby="moreCharts-button">
- <li ng-if="properties.charts.bandwidthPerSecond.show"><a ng-click="navigateToChart(deliveryService.id, 'bandwidth-per-second')">{{properties.charts.bandwidthPerSecond.name}}</a></li>
- <li ng-if="properties.charts.transactionsPerSecond.show"><a ng-click="navigateToChart(deliveryService.id, 'transactions-per-second')">{{properties.charts.transactionsPerSecond.name}}</a></li>
- <li ng-if="properties.charts.httpStatus.show"><a ng-click="navigateToChart(deliveryService.id, 'http-status-by-class')">{{properties.charts.httpStatus.name}}</a></li>
- </ul>
- </div>
- </div>
- <div class="alert alert-danger" role="alert" ng-show="failover.configured && failover.enabled">Failover Status: ON <span ng-show="failover.destination.location"> - destination: {{failover.destination.location}} ({{failover.destination.type}})</span></div>
- <div ng-if="properties.charts.bandwidthPerSecond.show">
- <div ui-view="chartDatesContent"></div>
- <div ui-view="bandwidthContent" class="bandwidth-content"></div>
- </div>
- <hr>
- <div class="capacity-and-routing row" ng-show="deliveryService.active">
- <div class="col-sm-6 col-md-6" ui-view="capacityContent"></div>
- <div class="col-sm-6 col-md-6" ui-view="routingContent"></div>
- </div>
- <hr>
- <div ng-show="deliveryService.active" ui-view="cacheGroupsContent" class="ds-cachegroups"></div>
-</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/deliveryService/view/overview/detail/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/deliveryService/view/overview/detail/index.js b/traffic_portal/app/src/modules/private/deliveryService/view/overview/detail/index.js
deleted file mode 100644
index 508dd00..0000000
--- a/traffic_portal/app/src/modules/private/deliveryService/view/overview/detail/index.js
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-module.exports = angular.module('trafficPortal.deliveryService.view.overview.detail', [])
- .config(function($stateProvider, $urlRouterProvider) {
- $stateProvider
- .state('trafficPortal.private.deliveryService.view.overview.detail', {
- url: '',
- views: {
- chartDatesContent: {
- templateUrl: 'common/modules/chart/dates/chart.dates.tpl.html',
- controller: 'ChartDatesController',
- resolve: {
- customLabel: function() {
- return 'Delivery Service Bandwidth';
- },
- showAutoRefreshBtn: function() {
- return true;
- }
- }
- },
- bandwidthContent: {
- templateUrl: 'common/modules/chart/bandwidthPerSecond/chart.bandwidthPerSecond.tpl.html',
- controller: 'ChartBandwidthPerSecondController',
- resolve: {
- entity: function(user, $stateParams, deliveryServicesModel) {
- return deliveryServicesModel.getDeliveryService($stateParams.deliveryServiceId);
- },
- showSummary: function() {
- return true;
- }
- }
- },
- purgeContent: {
- templateUrl: 'common/modules/tools/purge/tools.purge.tpl.html',
- controller: 'ToolsPurgeController'
- },
- capacityContent: {
- templateUrl: 'common/modules/chart/capacity/chart.capacity.tpl.html',
- controller: 'ChartCapacityController',
- resolve: {
- entityId: function($stateParams) {
- return $stateParams.deliveryServiceId;
- },
- service: function(deliveryServiceService) {
- return deliveryServiceService;
- }
- }
- },
- cacheGroupsContent: {
- templateUrl: 'common/modules/cacheGroups/cacheGroups.tpl.html',
- controller: 'CacheGroupsController',
- resolve: {
- entityId: function($stateParams) {
- return $stateParams.deliveryServiceId;
- },
- service: function(deliveryServiceService) {
- return deliveryServiceService;
- },
- showDownload: function() {
- return true;
- }
- }
- },
- routingContent: {
- templateUrl: 'common/modules/chart/routing/chart.routing.tpl.html',
- controller: 'ChartRoutingController',
- resolve: {
- entityId: function($stateParams) {
- return $stateParams.deliveryServiceId;
- },
- service: function(deliveryServiceService) {
- return deliveryServiceService;
- }
- }
- }
- }
- })
- ;
- $urlRouterProvider.otherwise('/');
- });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/deliveryService/view/overview/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/deliveryService/view/overview/index.js b/traffic_portal/app/src/modules/private/deliveryService/view/overview/index.js
deleted file mode 100644
index 452f37b..0000000
--- a/traffic_portal/app/src/modules/private/deliveryService/view/overview/index.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-module.exports = angular.module('trafficPortal.deliveryService.view.overview', [])
- .controller('DeliveryServiceViewOverviewController', require('./DeliveryServiceViewOverviewController'))
- .config(function($stateProvider, $urlRouterProvider) {
- $stateProvider
- .state('trafficPortal.private.deliveryService.view.overview', {
- url: '',
- abstract: true,
- views: {
- deliveryServiceViewContent: {
- templateUrl: 'modules/private/deliveryService/view/overview/deliveryService.view.overview.tpl.html',
- controller: 'DeliveryServiceViewOverviewController'
- }
- }
- });
- $urlRouterProvider.otherwise('/');
- });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/index.js b/traffic_portal/app/src/modules/private/index.js
index 9a71075..7ba33c3 100644
--- a/traffic_portal/app/src/modules/private/index.js
+++ b/traffic_portal/app/src/modules/private/index.js
@@ -1,18 +1,20 @@
/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
module.exports = angular.module('trafficPortal.private', [])
@@ -22,6 +24,10 @@ module.exports = angular.module('trafficPortal.private', [])
url: '',
abstract: true,
views: {
+ navigation: {
+ templateUrl: 'common/modules/navigation/navigation.tpl.html',
+ controller: 'NavigationController'
+ },
header: {
templateUrl: 'common/modules/header/header.tpl.html',
controller: 'HeaderController'
@@ -32,23 +38,14 @@ module.exports = angular.module('trafficPortal.private', [])
},
content: {
templateUrl: 'modules/private/private.tpl.html'
- },
- footer: {
- templateUrl: 'common/modules/footer/footer.tpl.html',
- controller: 'FooterController'
}
},
resolve: {
- user: function($state, userService, deliveryServiceService, userModel, deliveryServicesModel) {
- if (userModel.user.loaded) {
+ currentUser: function($state, userService, userModel) {
+ if (userModel.loaded) {
return userModel.user;
} else {
- return userService.getCurrentUser()
- .then(function() {
- if (!deliveryServicesModel.loaded) {
- return deliveryServiceService.getDeliveryServices();
- }
- });
+ return userService.getCurrentUser();
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/MonitorController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/MonitorController.js b/traffic_portal/app/src/modules/private/monitor/MonitorController.js
new file mode 100644
index 0000000..695fdbb
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/MonitorController.js
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+var MonitorController = function() {};
+
+MonitorController.$inject = [];
+module.exports = MonitorController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/_monitor.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/_monitor.scss b/traffic_portal/app/src/modules/private/monitor/_monitor.scss
new file mode 100644
index 0000000..d57b9c6
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/_monitor.scss
@@ -0,0 +1,16 @@
+/*
+
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/dashboard/DashboardController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/dashboard/DashboardController.js b/traffic_portal/app/src/modules/private/monitor/dashboard/DashboardController.js
new file mode 100644
index 0000000..c08a4e6
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/dashboard/DashboardController.js
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+var DashboardController = function(cacheGroupHealth, cdns, currentStats, serverCount, $scope) {
+
+ $scope.cacheGroupHealth = cacheGroupHealth;
+
+ $scope.cdns = cdns;
+
+ $scope.totalStats = _.find(currentStats.currentStats, function(item) {
+ // total stats are buried in a hash where cdn = total
+ return item.cdn == 'total';
+ });
+
+ $scope.serverCount = serverCount;
+
+};
+
+DashboardController.$inject = ['cacheGroupHealth', 'cdns', 'currentStats', 'serverCount', '$scope'];
+module.exports = DashboardController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/dashboard/_dashboard.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/dashboard/_dashboard.scss b/traffic_portal/app/src/modules/private/monitor/dashboard/_dashboard.scss
new file mode 100644
index 0000000..d57b9c6
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/dashboard/_dashboard.scss
@@ -0,0 +1,16 @@
+/*
+
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/dashboard/dashboard.tpl.html b/traffic_portal/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
new file mode 100644
index 0000000..3b09283
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/dashboard/dashboard.tpl.html
@@ -0,0 +1,85 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<div role="main">
+ <div class="row tile_count">
+ <div class="col-md-4 col-sm-6 col-xs-12">
+ <div class="col-md-6 col-sm-12 col-xs-12 tile_stats_count current">
+ <span class="count_top">Current Bandwidth</span>
+ <div class="count">{{totalStats.bandwidth | number:2}} Gbps</div>
+ </div>
+ <div class="col-md-6 col-sm-12 col-xs-12 tile_stats_count current">
+ <span class="count_top">Current Connections</span>
+ <div class="count">{{totalStats.connections | number:0}}</div>
+ </div>
+ </div>
+ <div class="col-md-8 col-sm-6 col-xs-12">
+ <div class="col-md-4 col-sm-12 col-xs-12 tile_stats_count">
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Healthy Caches</span>
+ <div class="count green">{{cacheGroupHealth.totalOnline | number:0}}</div>
+ </div>
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Unhealthy Caches</span>
+ <div class="count red">{{cacheGroupHealth.totalOffline | number:0}}</div>
+ </div>
+ </div>
+ <div class="col-md-4 col-sm-12 col-xs-12 tile_stats_count">
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Online Caches</span>
+ <div class="count">{{serverCount.ONLINE | number:0}}</div>
+ </div>
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Reported Caches</span>
+ <div class="count">{{serverCount.REPORTED | number:0}}</div>
+ </div>
+ </div>
+ <div class="col-md-4 col-sm-12 col-xs-12 tile_stats_count">
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Offline Caches</span>
+ <div class="count">{{serverCount.OFFLINE | number:0}}</div>
+ </div>
+ <div class="col-md-6 col-sm-6 col-xs-6">
+ <span class="count_top">Admin Down Caches</span>
+ <div class="count">{{serverCount.ADMIN_DOWN | number:0}}</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div ng-repeat="cdn in ::cdns">
+ <div class="row">
+ <div class="col-md-12 col-sm-12 col-xs-12 chartContainer" data-cdnid="{{::cdn.id}}" ui-view="cdnChartContent"></div>
+ </div>
+ <br>
+ </div>
+ <div class="row">
+ <div class="col-md-4 col-sm-4 col-xs-12">
+ <div class="x_panel tile fixed_height_320" ui-view="capacityContent"></div>
+ <div class="x_panel tile" ui-view="routingContent"></div>
+ </div>
+ <div class="col-md-8 col-sm-8 col-xs-12">
+ <div class="row">
+ <div class="col-md-12 col-sm-12 col-xs-12">
+ <div class="x_panel" ui-view="cacheGroupsContent"></div>
+ <div class="x_panel" ui-view="changeLogsContent"></div>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/dashboard/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/dashboard/index.js b/traffic_portal/app/src/modules/private/monitor/dashboard/index.js
new file mode 100644
index 0000000..6848d17
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/dashboard/index.js
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+module.exports = angular.module('trafficPortal.private.monitor.dashboard', [])
+ .controller('DashboardController', require('./DashboardController'))
+ .config(function($stateProvider, $urlRouterProvider) {
+ $stateProvider
+ .state('trafficPortal.private.monitor.dashboard', {
+ url: '/dashboard',
+ abstract: true,
+ views: {
+ monitorContent: {
+ templateUrl: 'modules/private/monitor/dashboard/dashboard.tpl.html',
+ controller: 'DashboardController',
+ resolve: {
+ cacheGroupHealth: function(cacheGroupService) {
+ return cacheGroupService.getCacheGroupHealth();
+ },
+ cdns: function(cdnService) {
+ return cdnService.getCDNs();
+ },
+ currentStats: function(cdnService) {
+ return cdnService.getCurrentStats();
+ },
+ serverCount: function(serverService) {
+ return serverService.getStatusCount();
+ }
+ }
+
+ }
+ }
+ })
+ ;
+ $urlRouterProvider.otherwise('/');
+ });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/dashboard/view/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/dashboard/view/index.js b/traffic_portal/app/src/modules/private/monitor/dashboard/view/index.js
new file mode 100644
index 0000000..52479aa
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/dashboard/view/index.js
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+module.exports = angular.module('trafficPortal.private.monitor.dashboard.view', [])
+ .config(function($stateProvider, $urlRouterProvider) {
+ $stateProvider
+ .state('trafficPortal.private.monitor.dashboard.view', {
+ url: '',
+ views: {
+ cacheGroupsContent: {
+ templateUrl: 'common/modules/widget/cacheGroups/widget.cacheGroups.tpl.html',
+ controller: 'WidgetCacheGroupsController',
+ resolve: {
+ cacheGroupHealth: function() {
+ // this is already defined in a parent template that shares the $scope
+ return null;
+ }
+ }
+ },
+ capacityContent: {
+ templateUrl: 'common/modules/widget/capacity/widget.capacity.tpl.html',
+ controller: 'WidgetCapacityController'
+ },
+ cdnChartContent: {
+ templateUrl: 'common/modules/widget/cdnChart/widget.cdnChart.tpl.html',
+ controller: 'WidgetCDNChartController',
+ resolve: {
+ cdn: function() {
+ // the controller will take care of fetching the cdn
+ return null;
+ }
+ }
+ },
+ changeLogsContent: {
+ templateUrl: 'common/modules/widget/changeLogs/widget.changeLogs.tpl.html',
+ controller: 'WidgetChangeLogsController',
+ resolve: {
+ changeLogs: function(changeLogService) {
+ return changeLogService.getChangeLogs({ limit: 5 });
+ }
+ }
+ },
+ routingContent: {
+ templateUrl: 'common/modules/widget/routing/widget.routing.tpl.html',
+ controller: 'WidgetRoutingController',
+ resolve: {
+ routing: function() {
+ return [];
+ }
+ }
+ },
+ }
+ })
+ ;
+ $urlRouterProvider.otherwise('/');
+ });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/index.js b/traffic_portal/app/src/modules/private/monitor/index.js
new file mode 100644
index 0000000..c76b0a4
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/index.js
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+module.exports = angular.module('trafficPortal.private.monitor', [])
+ .controller('MonitorController', require('./MonitorController'))
+ .config(function($stateProvider, $urlRouterProvider) {
+ $stateProvider
+ .state('trafficPortal.private.monitor', {
+ url: 'monitor',
+ abstract: true,
+ views: {
+ privateContent: {
+ templateUrl: 'modules/private/monitor/monitor.tpl.html',
+ controller: 'MonitorController'
+ }
+ }
+ });
+ $urlRouterProvider.otherwise('/');
+ });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/map/MapController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/map/MapController.js b/traffic_portal/app/src/modules/private/monitor/map/MapController.js
new file mode 100644
index 0000000..8258d83
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/map/MapController.js
@@ -0,0 +1,101 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+var MapController = function(cacheGroups, cacheGroupHealth, $scope, locationUtils, NgMap) {
+
+ $scope.map = NgMap.getMap('cgMap');
+
+ $scope.cacheGroups = [];
+
+ $scope.cacheGroupTypes = [];
+
+ $scope.cgTitle = function(cg) {
+ return cg.name + ' (' + cg.type + ')';
+ };
+
+ $scope.parentCg = function(cg) {
+ return cg.parent ? cg.parent : 'None'
+ };
+
+ $scope.secondaryParentCg = function(cg) {
+ return cg.secondaryParent ? cg.secondaryParent : 'None'
+ };
+
+ $scope.icon = function(cg) {
+ var properties = {
+ path: 'M8 2.1c1.1 0 2.2 0.5 3 1.3 0.8 0.9 1.3 1.9 1.3 3.1s-0.5 2.5-1.3 3.3l-3 3.1-3-3.1c-0.8-0.8-1.3-2-1.3-3.3 0-1.2 0.4-2.2 1.3-3.1 0.8-0.8 1.9-1.3 3-1.3z',
+ fillOpacity: 0.8,
+ scale: 3,
+ strokeColor: 'white',
+ strokeWeight: 2
+ }
+ // color map markers by type UNLESS there are offline caches, then make red and bigger
+ if (parseInt(cg.offline) > 0) {
+ properties['fillColor'] = 'red';
+ properties['scale'] = 5;
+ } else {
+ properties['fillColor'] = colors[_.indexOf($scope.cacheGroupTypes, cg.type)];
+ }
+ return properties;
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ var massageCacheGroups = function() {
+ var cgHealthCacheGroups = cacheGroupHealth.cachegroups,
+ cgHealth;
+ var cgTypes = [];
+ _.each(cacheGroups, function(cg) {
+ cgTypes.push(cg.typeName);
+ cgHealth = _.find(cgHealthCacheGroups, function(cghcg){ return cghcg.name == cg.name });
+ $scope.cacheGroups.push(
+ {
+ id: cg.id,
+ name: cg.name,
+ parent: cg.parentCachegroupName,
+ secondaryParent: cg.secondaryParentCachegroupName,
+ pos: [ cg.latitude, cg.longitude ],
+ type: cg.typeName,
+ offline: cgHealth ? cgHealth.offline : '-',
+ online: cgHealth ? cgHealth.online : '-'
+ }
+ );
+ });
+ $scope.cacheGroupTypes = _.uniq(cgTypes);
+ };
+
+ var colors = [
+ '#3F51B5', // blue
+ '#00AAA0', // turquoise
+ '#FF7A5A', // orangish
+ '#FFB85F', // yellowish
+ '#462066', // purple
+ '#FCF4D9' // whitish
+ ];
+
+ var init = function() {
+ massageCacheGroups();
+ };
+ init();
+
+
+};
+
+MapController.$inject = ['cacheGroups', 'cacheGroupHealth', '$scope', 'locationUtils', 'NgMap'];
+module.exports = MapController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/map/_map.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/map/_map.scss b/traffic_portal/app/src/modules/private/monitor/map/_map.scss
new file mode 100644
index 0000000..72d3f1b
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/map/_map.scss
@@ -0,0 +1,21 @@
+/*
+
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
+ng-map {
+ position: absolute;
+ width:100%;
+ height:100%;
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/map/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/map/index.js b/traffic_portal/app/src/modules/private/monitor/map/index.js
new file mode 100644
index 0000000..c4c736d
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/map/index.js
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+module.exports = angular.module('trafficPortal.private.monitor.map', [])
+ .controller('MapController', require('./MapController'))
+ .config(function($stateProvider, $urlRouterProvider) {
+ $stateProvider
+ .state('trafficPortal.private.monitor.map', {
+ url: '/map',
+ views: {
+ monitorContent: {
+ templateUrl: 'modules/private/monitor/map/map.tpl.html',
+ controller: 'MapController',
+ resolve: {
+ cacheGroups: function(cacheGroupService) {
+ return cacheGroupService.getCacheGroups();
+ },
+ cacheGroupHealth: function(cacheGroupService) {
+ return cacheGroupService.getCacheGroupHealth();
+ }
+ }
+ }
+ }
+ })
+ ;
+ $urlRouterProvider.otherwise('/');
+ });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/map/map.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/map/map.tpl.html b/traffic_portal/app/src/modules/private/monitor/map/map.tpl.html
new file mode 100644
index 0000000..6d16c9c
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/map/map.tpl.html
@@ -0,0 +1,38 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<div class="angular-google-map-container" map-lazy-load="https://maps.google.com/maps/api/js">
+ <ng-map id="cgMap" zoom="5" center="[37,-91]">
+ <marker ng-repeat="cg in ::cacheGroups"
+ position="{{::cg.pos}}"
+ on-click="map.showInfoWindow(event, cg.name)"
+ icon="{{::icon(cg)}}"></marker>
+ <info-window id="{{::cg.name}}" ng-repeat="cg in ::cacheGroups">
+ <div>
+ <h3><a ng-click="navigateToPath('/configure/cache-groups/' + cg.id)">{{::cgTitle(cg)}}</a></h3>
+ <hr>
+ <h5>Coordinates: {{::cg.pos}}</h5>
+ <h5>1st Parent: {{::parentCg(cg)}}</h5>
+ <h5>2nd Parent: {{::secondaryParentCg(cg)}}</h5>
+ <h5>Online Caches: {{::cg.online}}</h5>
+ <h5>Offline Caches: {{::cg.offline}}</h5>
+ </div>
+ </info-window>
+ </ng-map>
+</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/monitor/monitor.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/monitor/monitor.tpl.html b/traffic_portal/app/src/modules/private/monitor/monitor.tpl.html
new file mode 100644
index 0000000..6b509ab
--- /dev/null
+++ b/traffic_portal/app/src/modules/private/monitor/monitor.tpl.html
@@ -0,0 +1,22 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<div id="monitorContainer">
+ <div ui-view="monitorContent"></div>
+</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/private.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/private.tpl.html b/traffic_portal/app/src/modules/private/private.tpl.html
index 95afc8f..fe3c966 100644
--- a/traffic_portal/app/src/modules/private/private.tpl.html
+++ b/traffic_portal/app/src/modules/private/private.tpl.html
@@ -1,18 +1,20 @@
<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
-->
<div id="privateContainer">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/UserController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/UserController.js b/traffic_portal/app/src/modules/private/user/UserController.js
index 34ca4e5..01439f9 100644
--- a/traffic_portal/app/src/modules/private/user/UserController.js
+++ b/traffic_portal/app/src/modules/private/user/UserController.js
@@ -1,25 +1,26 @@
/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
-var UserController = function($scope, $state, $uibModal, $timeout, formUtils, deliveryServicesModel, userService, authService, userModel) {
+var UserController = function($scope, $state, $location, $uibModal, formUtils, locationUtils, userService, authService, roleService, tenantService, userModel) {
var updateUser = function(user, options) {
- user.token = null; // this will null out any token the user may have had
- userService.updateCurrentUser(user)
+ userService.updateUser(user)
.then(function() {
if (options.signout) {
authService.logout();
@@ -27,13 +28,25 @@ var UserController = function($scope, $state, $uibModal, $timeout, formUtils, de
});
};
- $scope.deliveryServices = deliveryServicesModel.deliveryServices;
+ var getRoles = function() {
+ roleService.getRoles()
+ .then(function(result) {
+ $scope.roles = result;
+ });
+ };
- $scope.showDS = function(dsId) {
- $state.go('trafficPortal.private.deliveryService.view.overview.detail', { deliveryServiceId: dsId } );
+ var getTenants = function() {
+ tenantService.getTenants()
+ .then(function(result) {
+ $scope.tenants = result;
+ });
};
- $scope.confirmUpdate = function(user, usernameField) {
+ $scope.userName = angular.copy(userModel.user.username);
+
+ $scope.user = userModel.user;
+
+ $scope.confirmSave = function(user, usernameField) {
if (usernameField.$dirty) {
var params = {
title: 'Reauthentication Required',
@@ -52,28 +65,30 @@ var UserController = function($scope, $state, $uibModal, $timeout, formUtils, de
modalInstance.result.then(function() {
updateUser(user, { signout : true });
}, function () {
+ // do nothing
});
} else {
updateUser(user, { signout : false });
}
};
+ $scope.viewDeliveryServices = function() {
+ $location.path('/admin/users/' + $scope.user.id + '/delivery-services');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
$scope.hasError = formUtils.hasError;
$scope.hasPropertyError = formUtils.hasPropertyError;
- $scope.resetUser = function() {
- $timeout(function() {
- $scope.userData = angular.copy(userModel.user);
- });
+ var init = function () {
+ getRoles();
+ getTenants();
};
- $scope.resetUser();
-
- $scope.$on('userModel::userUpdated', function() {
- $scope.resetUser();
- });
+ init();
};
-UserController.$inject = ['$scope', '$state', '$uibModal', '$timeout', 'formUtils', 'deliveryServicesModel', 'userService', 'authService', 'userModel'];
+UserController.$inject = ['$scope', '$state', '$location', '$uibModal', 'formUtils', 'locationUtils', 'userService', 'authService', 'roleService', 'tenantService', 'userModel'];
module.exports = UserController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/_user.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/_user.scss b/traffic_portal/app/src/modules/private/user/_user.scss
index ccc785b..279883d 100644
--- a/traffic_portal/app/src/modules/private/user/_user.scss
+++ b/traffic_portal/app/src/modules/private/user/_user.scss
@@ -14,14 +14,19 @@
limitations under the License.
*/
+/*
+
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
-.ds-status {
- font-size: 11px;
- color: #999;
-}
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
-.user-ds-list-group {
- height: auto;
- max-height: 830px;
- overflow-y: auto;
-}
\ No newline at end of file
+*/
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/edit/UserEditController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/edit/UserEditController.js b/traffic_portal/app/src/modules/private/user/edit/UserEditController.js
index 4eb5cb8..b52613e 100644
--- a/traffic_portal/app/src/modules/private/user/edit/UserEditController.js
+++ b/traffic_portal/app/src/modules/private/user/edit/UserEditController.js
@@ -1,23 +1,28 @@
/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
var UserEditController = function($scope) {
- $scope.title = 'Edit User Profile';
+ $scope.settings = {
+ isNew: false,
+ saveLabel: 'Update'
+ };
};
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/edit/_user.edit.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/edit/_user.edit.scss b/traffic_portal/app/src/modules/private/user/edit/_user.edit.scss
deleted file mode 100644
index 0d2d003..0000000
--- a/traffic_portal/app/src/modules/private/user/edit/_user.edit.scss
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-*/
-
-.edit-user-btn {
- float: right;
- margin-left: 5px;
- margin-top: 20px;
-}
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/edit/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/edit/index.js b/traffic_portal/app/src/modules/private/user/edit/index.js
index 9015f48..9f16577 100644
--- a/traffic_portal/app/src/modules/private/user/edit/index.js
+++ b/traffic_portal/app/src/modules/private/user/edit/index.js
@@ -1,21 +1,23 @@
/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
-module.exports = angular.module('trafficPortal.user.edit', [])
+module.exports = angular.module('trafficPortal.private.user.edit', [])
.controller('UserEditController', require('./UserEditController'))
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
@@ -23,7 +25,7 @@ module.exports = angular.module('trafficPortal.user.edit', [])
url: '',
views: {
userContent: {
- templateUrl: 'modules/private/user/edit/user.edit.tpl.html',
+ templateUrl: 'common/modules/form/user/form.user.tpl.html',
controller: 'UserEditController'
}
}
@@ -31,3 +33,4 @@ module.exports = angular.module('trafficPortal.user.edit', [])
;
$urlRouterProvider.otherwise('/');
});
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/edit/user.edit.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/edit/user.edit.tpl.html b/traffic_portal/app/src/modules/private/user/edit/user.edit.tpl.html
deleted file mode 100644
index 1687963..0000000
--- a/traffic_portal/app/src/modules/private/user/edit/user.edit.tpl.html
+++ /dev/null
@@ -1,182 +0,0 @@
-<!--
-
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-
-<div class="row">
- <div class="col-sm-8 col-md-8">
- <h3>{{title}}</h3>
- </div>
- <div class="col-sm-4 col-md-4">
- <button type="button" class="edit-user-btn btn action-btn" ng-disabled="userForm.$pristine || userForm.$invalid" ng-click="confirmUpdate(userData, userForm.username)">Update</button>
- <button type="button" class="edit-user-btn btn btn-link" ng-click="resetUser()">Reset</button>
- </div>
-</div>
-
-<hr>
-
-<form class="register-form col-sm-8 col-md-8" name="userForm" role="form" novalidate>
-
- <fieldset>
-
- <legend>User Details</legend>
-
- <div class="row">
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.fullName), 'has-feedback': hasError(userForm.fullName)}">
- <label class="control-label" for="fullName">Full Name
- <small ng-show="hasPropertyError(userForm.fullName, 'required')">[ Required ]</small>
- <small ng-show="hasPropertyError(userForm.fullName, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="fullName" name="fullName" type="text" class="form-control" ng-model="userData.fullName" ng-maxlength="256" autofocus required>
- <span ng-show="hasError(userForm.fullName)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.company), 'has-feedback': hasError(userForm.company)}">
- <label class="control-label" for="company">Company (optional)
- <small ng-show="hasPropertyError(userForm.company, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="company" name="company" type="text" class="form-control" ng-model="userData.company" ng-maxlength="256">
- <span ng-show="hasError(userForm.company)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.email), 'has-feedback': hasError(userForm.email)}">
- <label class="control-label" for="email">Email
- <small ng-show="hasPropertyError(userForm.email, 'required')">[ Required ]</small>
- <small ng-show="hasPropertyError(userForm.email, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="email" name="email" type="email" class="form-control" ng-model="userData.email" ng-maxlength="128" required>
- <span ng-show="hasError(userForm.email)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.username), 'has-feedback': hasError(userForm.username)}">
- <label class="control-label" for="userName">Username
- <small ng-show="hasPropertyError(userForm.username, 'required')">[ Required ]</small>
- <small ng-show="hasPropertyError(userForm.username, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="username" name="username" type="text" class="form-control" ng-model="userData.username" ng-maxlength="128" required>
- <span ng-show="hasError(userForm.username)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.password), 'has-feedback': hasError(userForm.password)}">
- <label class="control-label" for="password">New Password <span ng-show="!registration && !reset">(optional)</span>
- <small ng-show="hasPropertyError(userForm.password, 'minlength')">[ Too Short ]</small>
- </label>
- <input id="password" name="password" type="password" class="form-control" ng-model="userData.localPasswd" ng-required="registration || reset" ng-minlength="6">
- <span ng-show="hasError(userForm.password)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.confirmPassword), 'has-feedback': hasError(userForm.confirmPassword)}">
- <label class="control-label" for="confirmPassword">Confirm New Password <span ng-show="!registration && !reset && !userData.localPasswd">(optional)</span>
- <small ng-show="hasPropertyError(userForm.confirmPassword, 'match')">[ Doesn't Match ]</small>
- </label>
- <input id="confirmPassword" name="confirmPassword" type="password" class="form-control" ng-model="userData.confirmLocalPasswd" match="userData.localPasswd">
- <span ng-show="hasError(userForm.confirmPassword)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-12 col-md-12">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.addressLine1), 'has-feedback': hasError(userForm.addressLine1)}">
- <label class="control-label" for="addressLine1">Address Line 1 (optional)
- <small ng-show="hasPropertyError(userForm.addressLine1, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="addressLine1" name="addressLine1" type="text" class="form-control" ng-model="userData.addressLine1" ng-maxlength="256">
- <span ng-show="hasError(userForm.addressLine1)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-12 col-md-12">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.addressLine2), 'has-feedback': hasError(userForm.addressLine2)}">
- <label class="control-label" for="addressLine2">Address Line 2 (optional)
- <small ng-show="hasPropertyError(userForm.addressLine2, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="addressLine2" name="addressLine2" type="text" class="form-control" ng-model="userData.addressLine2" ng-maxlength="256">
- <span ng-show="hasError(userForm.addressLine2)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-12 col-md-12">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.city), 'has-feedback': hasError(userForm.city)}">
- <label class="control-label" for="city">City (optional)
- <small ng-show="hasPropertyError(userForm.city, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="city" name="city" type="text" class="form-control" ng-model="userData.city" ng-maxlength="128">
- <span ng-show="hasError(userForm.city)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.stateOrProvince), 'has-feedback': hasError(userForm.stateOrProvince)}">
- <label class="control-label" for="stateOrProvince">State or Province (optional)
- <small ng-show="hasPropertyError(userForm.stateOrProvince, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="stateOrProvince" name="stateOrProvince" type="text" class="form-control" ng-model="userData.stateOrProvince" ng-maxlength="128">
- <span ng-show="hasError(userForm.stateOrProvince)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.postalCode), 'has-feedback': hasError(userForm.postalCode)}">
- <label class="control-label" for="postalCode">Postal Code (optional)
- <small ng-show="hasPropertyError(userForm.postalCode, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="postalCode" name="postalCode" type="text" class="form-control" ng-model="userData.postalCode" ng-maxlength="11">
- <span ng-show="hasError(userForm.postalCode)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- <div class="row">
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.country), 'has-feedback': hasError(userForm.country)}">
- <label class="control-label" for="country">Country (optional)
- <small ng-show="hasPropertyError(userForm.country, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="country" name="country" type="text" class="form-control" ng-model="userData.country" ng-maxlength="256">
- <span ng-show="hasError(userForm.country)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- <div class="col-sm-6 col-md-6">
- <div class="form-group" ng-class="{'has-error': hasError(userForm.phoneNumber), 'has-feedback': hasError(userForm.phoneNumber)}">
- <label class="control-label" for="phoneNumber">Primary Phone (optional)
- <small ng-show="hasPropertyError(userForm.phoneNumber, 'maxlength')">[ Too Long ]</small>
- </label>
- <input id="phoneNumber" name="phoneNumber" type="text" class="form-control" ng-model="userData.phoneNumber" ng-maxlength="25">
- <span ng-show="hasError(userForm.phoneNumber)" class="form-control-feedback"><i class="fa fa-times"></i></span>
- </div>
- </div>
- </div>
-
- </fieldset>
-
-</form>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/index.js b/traffic_portal/app/src/modules/private/user/index.js
index 934212e..15840cc 100644
--- a/traffic_portal/app/src/modules/private/user/index.js
+++ b/traffic_portal/app/src/modules/private/user/index.js
@@ -1,21 +1,23 @@
/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
*/
-module.exports = angular.module('trafficPortal.user', [])
+module.exports = angular.module('trafficPortal.private.user', [])
.controller('UserController', require('./UserController'))
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/register/UserRegisterController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/register/UserRegisterController.js b/traffic_portal/app/src/modules/private/user/register/UserRegisterController.js
deleted file mode 100644
index b9e4aa5..0000000
--- a/traffic_portal/app/src/modules/private/user/register/UserRegisterController.js
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-var UserRegisterController = function($scope) {
-
- $scope.title = 'Complete User Registration';
-
- $scope.registration = true;
-
-};
-
-UserRegisterController.$inject = ['$scope'];
-module.exports = UserRegisterController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/register/_user.register.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/register/_user.register.scss b/traffic_portal/app/src/modules/private/user/register/_user.register.scss
deleted file mode 100644
index fff23b4..0000000
--- a/traffic_portal/app/src/modules/private/user/register/_user.register.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-*/
-
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/register/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/register/index.js b/traffic_portal/app/src/modules/private/user/register/index.js
deleted file mode 100644
index 933a7ad..0000000
--- a/traffic_portal/app/src/modules/private/user/register/index.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-module.exports = angular.module('trafficPortal.user.register', [])
- .controller('UserRegisterController', require('./UserRegisterController'))
- .config(function($stateProvider, $urlRouterProvider) {
- $stateProvider
- .state('trafficPortal.private.user.register', {
- url: '/register',
- views: {
- userContent: {
- templateUrl: 'modules/private/user/edit/user.edit.tpl.html',
- controller: 'UserRegisterController'
- }
- }
- })
- ;
- $urlRouterProvider.otherwise('/');
- });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/reset/UserResetController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/reset/UserResetController.js b/traffic_portal/app/src/modules/private/user/reset/UserResetController.js
deleted file mode 100644
index 24f5e12..0000000
--- a/traffic_portal/app/src/modules/private/user/reset/UserResetController.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-var UserResetController = function($scope, $timeout, userModel) {
-
- $scope.title = 'Reset User Password';
-
- $scope.reset = true;
-
- $scope.resetUser = function() {
- $timeout(function() {
- $scope.userData = angular.copy(userModel.user);
- });
- };
- $scope.resetUser();
-
- $scope.$on('userModel::userUpdated', function() {
- $scope.resetUser();
- });
-
-};
-
-UserResetController.$inject = ['$scope', '$timeout', 'userModel'];
-module.exports = UserResetController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/reset/_user.reset.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/reset/_user.reset.scss b/traffic_portal/app/src/modules/private/user/reset/_user.reset.scss
deleted file mode 100644
index fff23b4..0000000
--- a/traffic_portal/app/src/modules/private/user/reset/_user.reset.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-*/
-
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/reset/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/reset/index.js b/traffic_portal/app/src/modules/private/user/reset/index.js
deleted file mode 100644
index 3d4af61..0000000
--- a/traffic_portal/app/src/modules/private/user/reset/index.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-module.exports = angular.module('trafficPortal.user.reset', [])
- .controller('UserResetController', require('./UserResetController'))
- .config(function($stateProvider, $urlRouterProvider) {
- $stateProvider
- .state('trafficPortal.private.user.reset', {
- url: '/reset',
- views: {
- userContent: {
- templateUrl: 'modules/private/user/edit/user.edit.tpl.html',
- controller: 'UserResetController'
- }
- }
- })
- ;
- $urlRouterProvider.otherwise('/');
- });
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/private/user/user.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/private/user/user.tpl.html b/traffic_portal/app/src/modules/private/user/user.tpl.html
index 5fe0c27..57c0cde 100644
--- a/traffic_portal/app/src/modules/private/user/user.tpl.html
+++ b/traffic_portal/app/src/modules/private/user/user.tpl.html
@@ -1,32 +1,22 @@
<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
-->
<div id="userContainer">
- <div class="alert alert-warning" ng-show="userData.loaded && !userData.localUser">LDAP user profiles cannot be modified.</div>
<div ui-view="userContent"></div>
- <div class="ds-panel col-sm-4 col-md-4">
- <fieldset>
- <legend>Assigned Delivery Services ({{deliveryServices.length}})</legend>
- <div class="list-group user-ds-list-group scrollable">
- <a title="{{ds.displayName}} ({{ds.id}} | {{ds.xmlId}})" ng-repeat="ds in deliveryServices | orderBy:'displayName'" class="list-group-item" ng-click="showDS(ds.id)">{{ds.displayName}}</a>
- </div>
- <div class="alert alert-info" ng-show="deliveryServices.length == 0">
- No delivery services assigned
- </div>
- </fieldset>
- </div>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/public/about/AboutController.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/public/about/AboutController.js b/traffic_portal/app/src/modules/public/about/AboutController.js
deleted file mode 100644
index 9fcddb1..0000000
--- a/traffic_portal/app/src/modules/public/about/AboutController.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-var AboutController = function($scope, $sce, $timeout, propertiesModel) {
-
- var pinIframe = function() {
- var headerHeight = $('#header').css("height"),
- footerHeight = $('#footer').css("height");
-
- $('#aboutFrameWrapper').css("top", headerHeight);
- $('#aboutFrameWrapper').css("bottom", footerHeight);
- };
-
- $scope.properties = propertiesModel.properties;
-
- $scope.trustSrc = function(src) {
- return $sce.trustAsResourceUrl(src);
- };
-
- var init = function () {
- $timeout(function () {
- pinIframe();
- }, 200);
- };
- init();
-
-};
-
-AboutController.$inject = ['$scope', '$sce', '$timeout', 'propertiesModel'];
-module.exports = AboutController;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/public/about/_about.scss
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/public/about/_about.scss b/traffic_portal/app/src/modules/public/about/_about.scss
deleted file mode 100644
index c372d2f..0000000
--- a/traffic_portal/app/src/modules/public/about/_about.scss
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-*/
-
-#aboutFrameWrapper {
- position:absolute;
- // header and footer height are dynamic. see AboutController.js
- left:0;
- right:0;
-}
-
-#aboutFrame {
- height:100%;
- width:100%;
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/public/about/about.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/public/about/about.tpl.html b/traffic_portal/app/src/modules/public/about/about.tpl.html
deleted file mode 100644
index 16d02b7..0000000
--- a/traffic_portal/app/src/modules/public/about/about.tpl.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!--
-
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
--->
-
-<div id="aboutFrameWrapper">
- <iframe id="aboutFrame" ng-src="{{trustSrc(properties.about.url)}}" frameborder="0"/>
-</div>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/3195e0cc/traffic_portal/app/src/modules/public/about/index.js
----------------------------------------------------------------------
diff --git a/traffic_portal/app/src/modules/public/about/index.js b/traffic_portal/app/src/modules/public/about/index.js
deleted file mode 100644
index 3ce1f0d..0000000
--- a/traffic_portal/app/src/modules/public/about/index.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
-
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- */
-
-module.exports = angular.module('trafficPortal.public.about', [])
- .controller('AboutController', require('./AboutController'))
- .config(function($stateProvider, $urlRouterProvider) {
- $stateProvider
- .state('trafficPortal.public.about', {
- url: 'about',
- views: {
- publicContent: {
- templateUrl: 'modules/public/about/about.tpl.html',
- controller: 'AboutController'
- }
- }
- })
- ;
- $urlRouterProvider.otherwise('/');
- });
\ No newline at end of file