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 2016/12/07 23:30:55 UTC
[2/6] incubator-trafficcontrol git commit: adds placeholder
functionality for experimental TO UI
adds placeholder functionality for experimental TO UI
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/829ce404
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/829ce404
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/829ce404
Branch: refs/heads/master
Commit: 829ce404f6fbe0b69eb30ecbbf8a715756b4ca9d
Parents: 93385ab
Author: Jeremy Mitchell <mi...@gmail.com>
Authored: Wed Dec 7 12:37:08 2016 -0700
Committer: Dan Kirkwood <da...@gmail.com>
Committed: Wed Dec 7 16:29:28 2016 -0700
----------------------------------------------------------------------
traffic_ops/experimental/ui/app/src/app.js | 13 +++-
.../src/common/api/ProfileParameterService.js | 29 ++++++++
.../ui/app/src/common/api/ServerService.js | 4 +-
.../experimental/ui/app/src/common/api/index.js | 1 +
.../form/cacheGroup/FormCacheGroupController.js | 10 ++-
.../form/cacheGroup/form.cacheGroup.tpl.html | 17 ++++-
.../modules/form/cdn/FormCDNController.js | 22 +++++-
.../common/modules/form/cdn/form.cdn.tpl.html | 20 +++++-
.../FormDeliveryServiceController.js | 24 ++++++-
.../form.deliveryService.tpl.html | 20 +++++-
.../form/division/FormDivisionController.js | 8 ++-
.../form/division/form.division.tpl.html | 3 +
.../form/profile/FormProfileController.js | 8 +++
.../modules/form/profile/form.profile.tpl.html | 15 +++-
.../modules/form/server/FormServerController.js | 30 ++++++--
.../modules/form/server/form.server.tpl.html | 18 ++++-
.../modules/form/user/FormUserController.js | 8 ++-
.../common/modules/form/user/form.user.tpl.html | 3 +
.../common/modules/header/HeaderController.js | 4 ++
.../src/common/modules/header/header.tpl.html | 5 ++
.../TableCacheGroupParametersController.js | 46 ++++++++++++
.../modules/table/cacheGroupParameters/index.js | 21 ++++++
.../table.cacheGroupParameters.tpl.html | 54 ++++++++++++++
.../TableCacheGroupServersController.js | 46 ++++++++++++
.../modules/table/cacheGroupServers/index.js | 21 ++++++
.../table.cacheGroupServers.tpl.html | 75 +++++++++++++++++++
.../TableDeliveryServiceServersController.js | 46 ++++++++++++
.../table/deliveryServiceServers/index.js | 21 ++++++
.../table.deliveryServiceServers.tpl.html | 75 +++++++++++++++++++
.../TableDivisionRegionsController.js | 46 ++++++++++++
.../modules/table/divisionRegions/index.js | 21 ++++++
.../table.divisionRegions.tpl.html | 52 ++++++++++++++
.../TableProfileParametersController.js | 46 ++++++++++++
.../modules/table/profileParameters/index.js | 21 ++++++
.../table.profileParameters.tpl.html | 54 ++++++++++++++
.../table/profiles/TableProfilesController.js | 8 +++
.../table/profiles/table.profiles.tpl.html | 3 +
.../TableServerDeliveryServicesController.js | 50 +++++++++++++
.../table/serverDeliveryServices/index.js | 21 ++++++
.../table.serverDeliveryServices.tpl.html | 76 ++++++++++++++++++++
.../table/servers/TableServersController.js | 4 ++
.../table/servers/table.servers.tpl.html | 9 ++-
.../TableUserDeliveryServicesController.js | 46 ++++++++++++
.../modules/table/userDeliveryServices/index.js | 21 ++++++
.../table.userDeliveryServices.tpl.html | 53 ++++++++++++++
.../modules/private/admin/asns/edit/index.js | 2 +-
.../modules/private/admin/cdns/edit/index.js | 2 +-
.../private/admin/divisions/edit/index.js | 2 +-
.../private/admin/divisions/regions/index.js | 42 +++++++++++
.../private/admin/locations/edit/index.js | 2 +-
.../private/admin/parameters/edit/index.js | 2 +-
.../private/admin/profiles/edit/index.js | 2 +-
.../private/admin/profiles/parameters/index.js | 11 +--
.../modules/private/admin/regions/edit/index.js | 2 +-
.../private/admin/statuses/edit/index.js | 2 +-
.../modules/private/admin/tenants/edit/index.js | 2 +-
.../modules/private/admin/types/edit/index.js | 2 +-
.../admin/users/deliveryServices/index.js | 42 +++++++++++
.../modules/private/admin/users/edit/index.js | 2 +-
.../private/configure/cacheGroups/edit/index.js | 2 +-
.../configure/cacheGroups/parameters/index.js | 7 +-
.../configure/cacheGroups/servers/index.js | 42 +++++++++++
.../configure/deliveryServices/edit/index.js | 2 +-
.../configure/deliveryServices/servers/index.js | 42 +++++++++++
.../configure/servers/deliveryServices/index.js | 42 +++++++++++
.../private/configure/servers/edit/index.js | 2 +-
.../experimental/ui/app/src/styles/main.scss | 6 +-
67 files changed, 1414 insertions(+), 46 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/app.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/app.js b/traffic_ops/experimental/ui/app/src/app.js
index d94cf81..9bbc457 100644
--- a/traffic_ops/experimental/ui/app/src/app.js
+++ b/traffic_ops/experimental/ui/app/src/app.js
@@ -65,6 +65,7 @@ var trafficOps = angular.module('trafficOps', [
require('./modules/private/admin/divisions/edit').name,
require('./modules/private/admin/divisions/list').name,
require('./modules/private/admin/divisions/new').name,
+ require('./modules/private/admin/divisions/regions').name,
require('./modules/private/admin/locations').name,
require('./modules/private/admin/locations/edit').name,
require('./modules/private/admin/locations/list').name,
@@ -95,6 +96,7 @@ var trafficOps = angular.module('trafficOps', [
require('./modules/private/admin/types/list').name,
require('./modules/private/admin/types/new').name,
require('./modules/private/admin/users').name,
+ require('./modules/private/admin/users/deliveryServices').name,
require('./modules/private/admin/users/edit').name,
require('./modules/private/admin/users/list').name,
require('./modules/private/admin/users/new').name,
@@ -106,11 +108,14 @@ var trafficOps = angular.module('trafficOps', [
require('./modules/private/configure/cacheGroups/list').name,
require('./modules/private/configure/cacheGroups/new').name,
require('./modules/private/configure/cacheGroups/parameters').name,
+ require('./modules/private/configure/cacheGroups/servers').name,
require('./modules/private/configure/deliveryServices').name,
require('./modules/private/configure/deliveryServices/edit').name,
require('./modules/private/configure/deliveryServices/list').name,
require('./modules/private/configure/deliveryServices/new').name,
+ require('./modules/private/configure/deliveryServices/servers').name,
require('./modules/private/configure/servers').name,
+ require('./modules/private/configure/servers/deliveryServices').name,
require('./modules/private/configure/servers/edit').name,
require('./modules/private/configure/servers/new').name,
require('./modules/private/configure/servers/list').name,
@@ -179,19 +184,25 @@ var trafficOps = angular.module('trafficOps', [
// tables
require('./common/modules/table/cacheGroups').name,
+ require('./common/modules/table/cacheGroupParameters').name,
+ require('./common/modules/table/cacheGroupServers').name,
require('./common/modules/table/asns').name,
require('./common/modules/table/cdns').name,
require('./common/modules/table/deliveryServices').name,
+ require('./common/modules/table/deliveryServiceServers').name,
require('./common/modules/table/divisions').name,
+ require('./common/modules/table/divisionRegions').name,
require('./common/modules/table/locations').name,
require('./common/modules/table/parameters').name,
+ require('./common/modules/table/profileParameters').name,
require('./common/modules/table/profiles').name,
require('./common/modules/table/regions').name,
require('./common/modules/table/servers').name,
- require('./common/modules/table/servers').name,
+ require('./common/modules/table/serverDeliveryServices').name,
require('./common/modules/table/statuses').name,
require('./common/modules/table/types').name,
require('./common/modules/table/users').name,
+ require('./common/modules/table/userDeliveryServices').name,
// models
require('./common/models').name,
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/api/ProfileParameterService.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/api/ProfileParameterService.js b/traffic_ops/experimental/ui/app/src/common/api/ProfileParameterService.js
new file mode 100644
index 0000000..fdb4341
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/api/ProfileParameterService.js
@@ -0,0 +1,29 @@
+/*
+ * 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 ProfileParameterService = function(Restangular) {
+
+ this.getProfileParameters = function(profileId) {
+ return Restangular.one('profiles', profileId).getList('parameters')
+ };
+
+};
+
+ProfileParameterService.$inject = ['Restangular'];
+module.exports = ProfileParameterService;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/api/ServerService.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/api/ServerService.js b/traffic_ops/experimental/ui/app/src/common/api/ServerService.js
index 1ec7ce6..831d835 100644
--- a/traffic_ops/experimental/ui/app/src/common/api/ServerService.js
+++ b/traffic_ops/experimental/ui/app/src/common/api/ServerService.js
@@ -19,8 +19,8 @@
var ServerService = function(Restangular, locationUtils, messageModel) {
- this.getServers = function() {
- return Restangular.all('servers').getList();
+ this.getServers = function(dsId) {
+ return Restangular.all('servers').getList({ dsId: dsId });
};
this.getServer = function(id) {
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/api/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/api/index.js b/traffic_ops/experimental/ui/app/src/common/api/index.js
index 857e598..79a6601 100644
--- a/traffic_ops/experimental/ui/app/src/common/api/index.js
+++ b/traffic_ops/experimental/ui/app/src/common/api/index.js
@@ -29,6 +29,7 @@ module.exports = angular.module('trafficOps.api', [])
.service('locationService', require('./LocationService'))
.service('parameterService', require('./ParameterService'))
.service('profileService', require('./ProfileService'))
+ .service('profileParameterService', require('./ProfileParameterService'))
.service('roleService', require('./RoleService'))
.service('regionService', require('./RegionService'))
.service('serverService', require('./ServerService'))
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/FormCacheGroupController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/FormCacheGroupController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/FormCacheGroupController.js
index 276e2f7..a26277d 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/FormCacheGroupController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/FormCacheGroupController.js
@@ -36,13 +36,21 @@ var FormCacheGroupController = function(cacheGroup, $scope, $location, formUtils
$scope.cacheGroup = cacheGroup;
$scope.queueUpdates = function() {
- alert('not implemented: queuing updates for all cachegroup servers');
+ alert('not hooked up yet: queuing updates for all cachegroup servers');
+ };
+
+ $scope.dequeueUpdates = function() {
+ alert('not hooked up yet: dequeuing updates for all cachegroup servers');
};
$scope.viewParams = function() {
$location.path($location.path() + '/parameters');
};
+ $scope.viewServers = function() {
+ $location.path($location.path() + '/servers');
+ };
+
$scope.navigateToPath = locationUtils.navigateToPath;
$scope.hasError = formUtils.hasError;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/form.cacheGroup.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/form.cacheGroup.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/form.cacheGroup.tpl.html
index 02ec33c..689287e 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/form.cacheGroup.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/cacheGroup/form.cacheGroup.tpl.html
@@ -23,8 +23,21 @@ under the License.
<li><a ng-click="navigateToPath('/configure/cache-groups')">Cache Groups</a></li>
<li class="active">{{cacheGroupName}}</li>
</ol>
- <button class="btn btn-default pull-right" ng-show="!settings.isNew" ng-click="viewParams()">View Params</button>
- <button class="btn btn-warning pull-right" ng-show="!settings.isNew" ng-click="queueUpdates()">Queue Server Updates</button>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="viewServers()">Servers</button>
+ <button class="btn btn-default" ng-click="viewParams()">Parameters</button>
+
+ <div class="btn-group" role="group" uib-dropdown is-open="more.isopen">
+ <button type="button" class="btn btn-default dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
+ More
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu-right dropdown-menu" uib-dropdown-menu>
+ <li role="menuitem"><a ng-click="queueUpdates()">Queue Server Updates</a></li>
+ <li role="menuitem"><a ng-click="dequeueUpdates()">Dequeue Server Updates</a></li>
+ </ul>
+ </div>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/FormCDNController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/FormCDNController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/FormCDNController.js
index 9166727..35ed8ee 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/FormCDNController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/FormCDNController.js
@@ -32,8 +32,28 @@ var FormCDNController = function(cdn, $scope, formUtils, stringUtils, locationUt
{ value: true, label: 'true' }
];
+ $scope.manageDNSSEC = function() {
+ alert('not hooked up yet: manageDNSSEC for CDN');
+ };
+
+ $scope.manageSSL = function() {
+ alert('not hooked up yet: manageSSL for cdn');
+ };
+
+ $scope.cachegroupHealth = function() {
+ alert('not hooked up yet: cachegroupHealth for CDN');
+ };
+
$scope.queueUpdates = function() {
- alert('not implemented: queuing updates for all cdn servers');
+ alert('not hooked up yet: queuing updates for all cdn servers');
+ };
+
+ $scope.dequeueUpdates = function() {
+ alert('not hooked up yet: dequeuing updates for all cdn servers');
+ };
+
+ $scope.manageSnapshots = function() {
+ alert('not hooked up yet: manageSnapshots for CDN');
};
$scope.navigateToPath = locationUtils.navigateToPath;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/form.cdn.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/form.cdn.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/form.cdn.tpl.html
index 50d2b7d..23f356e 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/form.cdn.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/cdn/form.cdn.tpl.html
@@ -23,7 +23,25 @@ under the License.
<li><a ng-click="navigateToPath('/admin/cdns')">CDNs</a></li>
<li class="active">{{cdnName}}</li>
</ol>
- <button class="btn btn-warning pull-right" ng-show="!settings.isNew" ng-click="queueUpdates()">Queue Server Updates</button>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="manageSnapshots()">Snapshot</button>
+
+ <div class="btn-group" role="group" uib-dropdown is-open="more.isopen">
+ <button type="button" class="btn btn-default dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
+ More
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu-right dropdown-menu" uib-dropdown-menu>
+ <li role="menuitem"><a ng-click="manageDNSSEC()">Manage DNSSEC Keys</a></li>
+ <li role="menuitem"><a ng-click="manageSSL()">Manage SSL Keys</a></li>
+ <li class="divider"></li>
+ <li role="menuitem"><a ng-click="queueUpdates()">Queue Server Updates</a></li>
+ <li role="menuitem"><a ng-click="dequeueUpdates()">Dequeue Server Updates</a></li>
+ <li class="divider"></li>
+ <li role="menuitem"><a ng-click="cachegroupHealth()">View Cachegroup Health</a></li>
+ </ul>
+ </div>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
index 82c9a7c..32843ee 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js
@@ -17,7 +17,7 @@
* under the License.
*/
-var FormDeliveryServiceController = function(deliveryService, $scope, formUtils, locationUtils, cdnService, profileService, typeService) {
+var FormDeliveryServiceController = function(deliveryService, $scope, $location, formUtils, locationUtils, cdnService, profileService, typeService) {
var getTypes = function() {
typeService.getTypes('deliveryservice')
@@ -122,6 +122,26 @@ var FormDeliveryServiceController = function(deliveryService, $scope, formUtils,
{ value: 4, label: "4 - Latch on Failover" }
];
+ $scope.assignServers = function() {
+ $location.path($location.path() + '/servers');
+ };
+
+ $scope.cachegroupHealth = function() {
+ alert('not hooked up yet: cachegroupHealth for DS');
+ };
+
+ $scope.invalidateContent = function() {
+ alert('not hooked up yet: invalidateContent for DS');
+ };
+
+ $scope.manageSslKeys = function() {
+ alert('not hooked up yet: manageSslKeys for DS');
+ };
+
+ $scope.manageUrlSigKeys = function() {
+ alert('not hooked up yet: manageUrlSigKeys for DS');
+ };
+
$scope.navigateToPath = locationUtils.navigateToPath;
$scope.hasError = formUtils.hasError;
@@ -137,5 +157,5 @@ var FormDeliveryServiceController = function(deliveryService, $scope, formUtils,
};
-FormDeliveryServiceController.$inject = ['deliveryService', '$scope', 'formUtils', 'locationUtils', 'cdnService', 'profileService', 'typeService'];
+FormDeliveryServiceController.$inject = ['deliveryService', '$scope', '$location', 'formUtils', 'locationUtils', 'cdnService', 'profileService', 'typeService'];
module.exports = FormDeliveryServiceController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/form.deliveryService.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/form.deliveryService.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/form.deliveryService.tpl.html
index 277c44b..f195bad 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/form.deliveryService.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/deliveryService/form.deliveryService.tpl.html
@@ -19,10 +19,28 @@ under the License.
<div class="x_panel">
<div class="x_title">
- <ol class="breadcrumb">
+ <ol class="breadcrumb pull-left">
<li><a ng-click="navigateToPath('/configure/delivery-services')">Delivery Services</a></li>
<li class="active">{{deliveryServiceName}}</li>
</ol>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="assignServers()">Servers</button>
+
+ <div class="btn-group" role="group" uib-dropdown is-open="more.isopen">
+ <button type="button" class="btn btn-default dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
+ More
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu-right dropdown-menu" uib-dropdown-menu>
+ <li role="menuitem"><a ng-click="manageSslKeys()">Manage SSL Keys</a></li>
+ <li role="menuitem"><a ng-click="manageUrlSigKeys()">Manage URL Sig Keys</a></li>
+ <li class="divider"></li>
+ <li role="menuitem"><a ng-click="invalidateContent()">Invalidate Content</a></li>
+ <li class="divider"></li>
+ <li role="menuitem"><a ng-click="cachegroupHealth()">View Cachegroup Health</a></li>
+ </ul>
+ </div>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/division/FormDivisionController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/division/FormDivisionController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/division/FormDivisionController.js
index 81d4031..b977a1b 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/division/FormDivisionController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/division/FormDivisionController.js
@@ -17,7 +17,7 @@
* under the License.
*/
-var FormDivisionController = function(division, $scope, formUtils, stringUtils, locationUtils) {
+var FormDivisionController = function(division, $scope, $location, formUtils, stringUtils, locationUtils) {
$scope.division = division;
@@ -27,6 +27,10 @@ var FormDivisionController = function(division, $scope, formUtils, stringUtils,
$scope.labelize = stringUtils.labelize;
+ $scope.viewRegions = function() {
+ $location.path($location.path() + '/regions');
+ };
+
$scope.navigateToPath = locationUtils.navigateToPath;
$scope.hasError = formUtils.hasError;
@@ -35,5 +39,5 @@ var FormDivisionController = function(division, $scope, formUtils, stringUtils,
};
-FormDivisionController.$inject = ['division', '$scope', 'formUtils', 'stringUtils', 'locationUtils'];
+FormDivisionController.$inject = ['division', '$scope', '$location', 'formUtils', 'stringUtils', 'locationUtils'];
module.exports = FormDivisionController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/division/form.division.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/division/form.division.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/division/form.division.tpl.html
index 5139493..839deb9 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/division/form.division.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/division/form.division.tpl.html
@@ -23,6 +23,9 @@ under the License.
<li><a ng-click="navigateToPath('/admin/divisions')">Divisions</a></li>
<li class="active">{{divisionName}}</li>
</ol>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="viewRegions()">Regions</button>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/profile/FormProfileController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/profile/FormProfileController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/profile/FormProfileController.js
index 7afedbe..8bef869 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/profile/FormProfileController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/profile/FormProfileController.js
@@ -31,6 +31,14 @@ var FormProfileController = function(profile, $scope, $location, formUtils, stri
$location.path($location.path() + '/parameters');
};
+ $scope.cloneProfile = function() {
+ alert('not hooked up yet: cloneProfile');
+ };
+
+ $scope.exportProfile = function() {
+ alert('not hooked up yet: exportProfile');
+ };
+
$scope.navigateToPath = locationUtils.navigateToPath;
$scope.hasError = formUtils.hasError;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/profile/form.profile.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/profile/form.profile.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/profile/form.profile.tpl.html
index d4b35db..735b8a2 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/profile/form.profile.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/profile/form.profile.tpl.html
@@ -23,7 +23,20 @@ under the License.
<li><a ng-click="navigateToPath('/admin/profiles')">Profiles</a></li>
<li class="active">{{profileName}}</li>
</ol>
- <button class="btn btn-default pull-right" ng-show="!settings.isNew" ng-click="viewParams()">View Params</button>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="viewParams()">Parameters</button>
+
+ <div class="btn-group" role="group" uib-dropdown is-open="more.isopen">
+ <button type="button" class="btn btn-default dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
+ More
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu-right dropdown-menu" uib-dropdown-menu>
+ <li role="menuitem"><a ng-click="clone()">Clone Profile</a></li>
+ <li role="menuitem"><a ng-click="export()">Export Profile</a></li>
+ </ul>
+ </div>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/server/FormServerController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/server/FormServerController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/server/FormServerController.js
index 60b0595..a6c22db 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/server/FormServerController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/server/FormServerController.js
@@ -17,7 +17,7 @@
* under the License.
*/
-var FormServerController = function(server, $scope, formUtils, stringUtils, locationUtils, cacheGroupService, cdnService, locationService, profileService, statusService, typeService) {
+var FormServerController = function(server, $scope, $location, formUtils, stringUtils, locationUtils, cacheGroupService, cdnService, locationService, profileService, statusService, typeService) {
var getLocations = function() {
locationService.getLocations()
@@ -76,8 +76,8 @@ var FormServerController = function(server, $scope, formUtils, stringUtils, loca
{ name: 'ipAddress', type: 'text', required: true, maxLength: 45, pattern: ipRegex, invalidMsg: 'Invalid' },
{ name: 'ipNetmask', type: 'text', required: true, maxLength: 45, pattern: ipRegex, invalidMsg: 'Invalid' },
{ name: 'ipGateway', type: 'text', required: true, maxLength: 45, pattern: ipRegex, invalidMsg: 'Invalid' },
- { name: 'ip6Address', type: 'text', required: false, maxLength: 50, pattern: ipRegex, invalidMsg: 'Invalid' },
- { name: 'ip6Gateway', type: 'text', required: false, maxLength: 50, pattern: ipRegex, invalidMsg: 'Invalid' },
+ { name: 'ip6Address', type: 'text', required: false, maxLength: 50 },
+ { name: 'ip6Gateway', type: 'text', required: false, maxLength: 50 },
{ name: 'interfaceMtu', type: 'text', required: true, maxLength: 11, pattern: new RegExp(/(^1500$|^9000$)/), invalidMsg: '1500 or 9000' },
{ name: 'rack', type: 'text', required: false, maxLength: 64 },
{ name: 'offlineReason', type: 'text', required: false, maxLength: 256 },
@@ -102,7 +102,27 @@ var FormServerController = function(server, $scope, formUtils, stringUtils, loca
];
$scope.queueUpdates = function() {
- alert('not implemented: queuing updates for server');
+ alert('not hooked up yet: queuing updates for server');
+ };
+
+ $scope.dequeueUpdates = function() {
+ alert('not hooked up yet: dequeuing updates for server');
+ };
+
+ $scope.viewConfig = function() {
+ alert('not hooked up yet: view config files for server');
+ };
+
+ $scope.offlineServer = function() {
+ alert('not hooked up yet: offlineServer for server');
+ };
+
+ $scope.onlineServer = function() {
+ alert('not hooked up yet: onlineServer for server');
+ };
+
+ $scope.viewDeliveryServices = function() {
+ $location.path($location.path() + '/delivery-services');
};
$scope.navigateToPath = locationUtils.navigateToPath;
@@ -123,5 +143,5 @@ var FormServerController = function(server, $scope, formUtils, stringUtils, loca
};
-FormServerController.$inject = ['server', '$scope', 'formUtils', 'stringUtils', 'locationUtils', 'cacheGroupService', 'cdnService', 'locationService', 'profileService', 'statusService', 'typeService'];
+FormServerController.$inject = ['server', '$scope', '$location', 'formUtils', 'stringUtils', 'locationUtils', 'cacheGroupService', 'cdnService', 'locationService', 'profileService', 'statusService', 'typeService'];
module.exports = FormServerController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/server/form.server.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/server/form.server.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/server/form.server.tpl.html
index 12ca2da..70afbfc 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/server/form.server.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/server/form.server.tpl.html
@@ -23,7 +23,23 @@ under the License.
<li><a ng-click="navigateToPath('/configure/servers')">Servers</a></li>
<li class="active">{{serverName}}</li>
</ol>
- <button class="btn btn-warning pull-right" ng-show="!settings.isNew" ng-click="queueUpdates()">Queue Server Updates</button>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-show="server.status == 'REPORTED'" ng-click="offlineServer()">Offline Server</button>
+ <button class="btn btn-default" ng-show="server.status != 'REPORTED'" ng-click="onlineServer()">Online Server</button>
+ <button class="btn btn-default" ng-show="!server.updPending" ng-click="queueUpdates()">Queue Updates</button>
+ <button class="btn btn-default" ng-show="server.updPending" ng-click="dequeueUpdates()">Dequeue Updates</button>
+
+ <div class="btn-group" role="group" uib-dropdown is-open="more.isopen">
+ <button type="button" class="btn btn-default dropdown-toggle" uib-dropdown-toggle aria-haspopup="true" aria-expanded="false">
+ More
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu-right dropdown-menu" uib-dropdown-menu>
+ <li><a ng-click="viewDeliveryServices()">View Delivery Services</a></li>
+ <li><a ng-click="viewConfig()">View Server Config Files</a></li>
+ </ul>
+ </div>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/user/FormUserController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/user/FormUserController.js b/traffic_ops/experimental/ui/app/src/common/modules/form/user/FormUserController.js
index 29e8b59..8ba1699 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/user/FormUserController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/user/FormUserController.js
@@ -17,7 +17,7 @@
* under the License.
*/
-var FormUserController = function(user, $scope, formUtils, stringUtils, locationUtils, roleService) {
+var FormUserController = function(user, $scope, $location, formUtils, stringUtils, locationUtils, roleService) {
var getRoles = function() {
roleService.getRoles()
@@ -30,6 +30,10 @@ var FormUserController = function(user, $scope, formUtils, stringUtils, location
$scope.labelize = stringUtils.labelize;
+ $scope.viewDeliveryServices = function() {
+ $location.path($location.path() + '/delivery-services');
+ };
+
$scope.navigateToPath = locationUtils.navigateToPath;
$scope.hasError = formUtils.hasError;
@@ -43,5 +47,5 @@ var FormUserController = function(user, $scope, formUtils, stringUtils, location
};
-FormUserController.$inject = ['user', '$scope', 'formUtils', 'stringUtils', 'locationUtils', 'roleService'];
+FormUserController.$inject = ['user', '$scope', '$location', 'formUtils', 'stringUtils', 'locationUtils', 'roleService'];
module.exports = FormUserController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/form/user/form.user.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/form/user/form.user.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/form/user/form.user.tpl.html
index 8faf59f..d9391b1 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/form/user/form.user.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/form/user/form.user.tpl.html
@@ -24,6 +24,9 @@ under the License.
<li><a ng-click="navigateToPath('/admin/users')">Users</a></li>
<li class="active">{{userName}}</li>
</ol>
+ <div class="btn-group pull-right" role="group" ng-show="!settings.isNew">
+ <button class="btn btn-default" ng-click="viewDeliveryServices()">Assigned Delivery Services</button>
+ </div>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/header/HeaderController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/header/HeaderController.js b/traffic_ops/experimental/ui/app/src/common/modules/header/HeaderController.js
index 498ee9d..3b7e547 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/header/HeaderController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/header/HeaderController.js
@@ -36,6 +36,10 @@ var HeaderController = function($rootScope, $scope, $log, $state, $anchorScroll,
authService.logout();
};
+ $scope.downloadDB = function() {
+ alert('not hooked up yet: downloadDB');
+ };
+
var scrollToTop = function() {
$anchorScroll(); // hacky?
};
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/header/header.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/header/header.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/header/header.tpl.html
index feb5ff7..8172197 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/header/header.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/header/header.tpl.html
@@ -62,6 +62,11 @@ under the License.
</ul>
</div>
</li>
+ <li>
+ <div class="btn-group" title="Download DB">
+ <button type="button" class="btn btn-link" ng-click="downloadDB()"><i class="fa fa-download"></i></button>
+ </div>
+ </li>
</ul>
</nav>
</div>
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/TableCacheGroupParametersController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/TableCacheGroupParametersController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/TableCacheGroupParametersController.js
new file mode 100644
index 0000000..401e5a7
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/TableCacheGroupParametersController.js
@@ -0,0 +1,46 @@
+/*
+ * 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 TableCacheGroupParametersController = function(cacheGroup, parameters, $scope, locationUtils) {
+
+ $scope.cacheGroup = cacheGroup;
+
+ $scope.parameters = parameters;
+
+ $scope.addParameter = function() {
+ alert('not hooked up yet: add parameter to cache group');
+ };
+
+ $scope.removeParameter = function() {
+ alert('not hooked up yet: remove Parameter from cache group');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#parametersTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableCacheGroupParametersController.$inject = ['cacheGroup', 'parameters', '$scope', 'locationUtils'];
+module.exports = TableCacheGroupParametersController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/index.js
new file mode 100644
index 0000000..0509780
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.cacheGroupParameters', [])
+ .controller('TableCacheGroupParametersController', require('./TableCacheGroupParametersController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/table.cacheGroupParameters.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/table.cacheGroupParameters.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/table.cacheGroupParameters.tpl.html
new file mode 100644
index 0000000..6cdf36f
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupParameters/table.cacheGroupParameters.tpl.html
@@ -0,0 +1,54 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/configure/cache-groups')">Cache Groups</a></li>
+ <li><a ng-click="navigateToPath('/configure/cache-groups/' + cacheGroup.id)">{{cacheGroup.name}}</a></li>
+ <li class="active">Parameters</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addParameter()">Add</button>
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="parametersTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>id</th>
+ <th>name</th>
+ <th>configFile</th>
+ <th>value</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="parameter in parameters">
+ <td>{{parameter.id}}</td>
+ <td>{{parameter.name}}</td>
+ <td>{{parameter.configFile}}</td>
+ <td>{{parameter.value}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Cache Group" ng-click="removeParameter()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/TableCacheGroupServersController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/TableCacheGroupServersController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/TableCacheGroupServersController.js
new file mode 100644
index 0000000..d1a135c
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/TableCacheGroupServersController.js
@@ -0,0 +1,46 @@
+/*
+ * 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 TableCacheGroupsServersController = function(cacheGroup, servers, $scope, locationUtils) {
+
+ $scope.cacheGroup = cacheGroup;
+
+ $scope.servers = servers;
+
+ $scope.addServer = function() {
+ alert('not hooked up yet: addServer to cg');
+ };
+
+ $scope.removeServer = function() {
+ alert('not hooked up yet: removeServer from cg');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#serversTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableCacheGroupsServersController.$inject = ['cacheGroup', 'servers', '$scope', 'locationUtils'];
+module.exports = TableCacheGroupsServersController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/index.js
new file mode 100644
index 0000000..081000c
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.cacheGroupServers', [])
+ .controller('TableCacheGroupServersController', require('./TableCacheGroupServersController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/table.cacheGroupServers.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/table.cacheGroupServers.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/table.cacheGroupServers.tpl.html
new file mode 100644
index 0000000..43c1b1d
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/cacheGroupServers/table.cacheGroupServers.tpl.html
@@ -0,0 +1,75 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/configure/cache-groups')">Cache Groups</a></li>
+ <li><a ng-click="navigateToPath('/configure/cache-groups/' + cacheGroup.id)">{{cacheGroup.name}}</a></li>
+ <li class="active">Servers</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addServer()">Add</button>
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="serversTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>Update?</th>
+ <th>hostName</th>
+ <th>domainName</th>
+ <th>cdn</th>
+ <th>cachegroup</th>
+ <th>type</th>
+ <th>location</th>
+ <th>ipAddress</th>
+ <th>ip6Address</th>
+ <th>status</th>
+ <th>profile</th>
+ <th>iloIpAddress</th>
+ <th>iloIpGateway</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="server in servers" ng-class="{'active': server.updPending}">
+ <td>{{server.updPending}}</td>
+ <td>{{server.hostName}}</td>
+ <td>{{server.domainName}}</td>
+ <td>{{server.cdnName}}</td>
+ <td>{{server.cachegroup}}</td>
+ <td>{{server.type}}</td>
+ <td>{{server.physLocation}}</td>
+ <td>{{server.ipAddress}}</td>
+ <td>{{server.ip6Address}}</td>
+ <td>{{server.status}}</td>
+ <td>{{server.profile}}</td>
+ <td>{{server.iloIpAddress}}</td>
+ <td>{{server.iloIpGateway}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Delivery Service" ng-click="removeServer()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
+
+
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/TableDeliveryServiceServersController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/TableDeliveryServiceServersController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/TableDeliveryServiceServersController.js
new file mode 100644
index 0000000..dc9e3d9
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/TableDeliveryServiceServersController.js
@@ -0,0 +1,46 @@
+/*
+ * 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 TableDeliveryServiceServersController = function(deliveryService, servers, $scope, locationUtils) {
+
+ $scope.deliveryService = deliveryService;
+
+ $scope.servers = servers;
+
+ $scope.addServer = function() {
+ alert('not hooked up yet: addServer to ds');
+ };
+
+ $scope.removeServer = function() {
+ alert('not hooked up yet: removeServer from ds');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#serversTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableDeliveryServiceServersController.$inject = ['deliveryService', 'servers', '$scope', 'locationUtils'];
+module.exports = TableDeliveryServiceServersController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/index.js
new file mode 100644
index 0000000..b4f353c
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.deliveryServiceServers', [])
+ .controller('TableDeliveryServiceServersController', require('./TableDeliveryServiceServersController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/table.deliveryServiceServers.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/table.deliveryServiceServers.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/table.deliveryServiceServers.tpl.html
new file mode 100644
index 0000000..cee878b
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/deliveryServiceServers/table.deliveryServiceServers.tpl.html
@@ -0,0 +1,75 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/configure/delivery-services')">Delivery Services</a></li>
+ <li><a ng-click="navigateToPath('/configure/delivery-services/' + deliveryService.id)">{{deliveryService.displayName}}</a></li>
+ <li class="active">Servers</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addServer()">Add</button>
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="serversTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>Update?</th>
+ <th>hostName</th>
+ <th>domainName</th>
+ <th>cdn</th>
+ <th>cachegroup</th>
+ <th>type</th>
+ <th>location</th>
+ <th>ipAddress</th>
+ <th>ip6Address</th>
+ <th>status</th>
+ <th>profile</th>
+ <th>iloIpAddress</th>
+ <th>iloIpGateway</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="server in servers" ng-class="{'active': server.updPending}">
+ <td>{{server.updPending}}</td>
+ <td>{{server.hostName}}</td>
+ <td>{{server.domainName}}</td>
+ <td>{{server.cdnName}}</td>
+ <td>{{server.cachegroup}}</td>
+ <td>{{server.type}}</td>
+ <td>{{server.physLocation}}</td>
+ <td>{{server.ipAddress}}</td>
+ <td>{{server.ip6Address}}</td>
+ <td>{{server.status}}</td>
+ <td>{{server.profile}}</td>
+ <td>{{server.iloIpAddress}}</td>
+ <td>{{server.iloIpGateway}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Delivery Service" ng-click="removeServer()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
+
+
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/TableDivisionRegionsController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/TableDivisionRegionsController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/TableDivisionRegionsController.js
new file mode 100644
index 0000000..b39ebdc
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/TableDivisionRegionsController.js
@@ -0,0 +1,46 @@
+/*
+ * 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 TableDivisionRegionsController = function(division, divisionRegions, $scope, locationUtils) {
+
+ $scope.division = division;
+
+ $scope.divisionRegions = divisionRegions;
+
+ $scope.addRegion = function() {
+ alert('not hooked up yet: addRegion to div');
+ };
+
+ $scope.removeRegion = function() {
+ alert('not hooked up yet: removeRegion from div');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#regionsTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableDivisionRegionsController.$inject = ['division', 'divisionRegions', '$scope', 'locationUtils'];
+module.exports = TableDivisionRegionsController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/index.js
new file mode 100644
index 0000000..144887b
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.divisionRegions', [])
+ .controller('TableDivisionRegionsController', require('./TableDivisionRegionsController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/table.divisionRegions.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/table.divisionRegions.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/table.divisionRegions.tpl.html
new file mode 100644
index 0000000..05e0bee
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/divisionRegions/table.divisionRegions.tpl.html
@@ -0,0 +1,52 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/admin/divisions')">Divisions</a></li>
+ <li><a ng-click="navigateToPath('/admin/divisions/' + division.id)">{{division.name}}</a></li>
+ <li class="active">Regions</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addRegion()">Add</button>
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="regionsTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>name</th>
+ <th>division</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="region in divisionRegions">
+ <td>{{region.name}}</td>
+ <td>{{region.divisionName}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Division" ng-click="removeRegion()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
+
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/TableProfileParametersController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/TableProfileParametersController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/TableProfileParametersController.js
new file mode 100644
index 0000000..8ae8018
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/TableProfileParametersController.js
@@ -0,0 +1,46 @@
+/*
+ * 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 TableProfileParametersController = function(profile, profileParameters, $scope, locationUtils) {
+
+ $scope.profile = profile;
+
+ $scope.profileParameters = profileParameters;
+
+ $scope.addParameter = function() {
+ alert('not hooked up yet: add parameter to profile');
+ };
+
+ $scope.removeParameter = function() {
+ alert('not hooked up yet: remove Parameter from profile');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#parametersTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableProfileParametersController.$inject = ['profile', 'profileParameters', '$scope', 'locationUtils'];
+module.exports = TableProfileParametersController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/index.js
new file mode 100644
index 0000000..b5d6584
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.profileParameters', [])
+ .controller('TableProfileParametersController', require('./TableProfileParametersController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/table.profileParameters.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/table.profileParameters.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/table.profileParameters.tpl.html
new file mode 100644
index 0000000..4b8575a
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/profileParameters/table.profileParameters.tpl.html
@@ -0,0 +1,54 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/admin/profiles')">Profiles</a></li>
+ <li><a ng-click="navigateToPath('/admin/profiles/' + profile.id)">{{profile.name}}</a></li>
+ <li class="active">Parameters</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addParameter()">Add</button>
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="parametersTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>id</th>
+ <th>name</th>
+ <th>configFile</th>
+ <th>value</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="parameter in profileParameters">
+ <td>{{parameter.id}}</td>
+ <td>{{parameter.name}}</td>
+ <td>{{parameter.configFile}}</td>
+ <td>{{parameter.value}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Profile" ng-click="removeParameter()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/TableProfilesController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/TableProfilesController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/TableProfilesController.js
index 1f267a1..507172c 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/TableProfilesController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/TableProfilesController.js
@@ -29,6 +29,14 @@ var TableProfilesController = function(profiles, $scope, locationUtils) {
locationUtils.navigateToPath('/admin/profiles/new');
};
+ $scope.importProfile = function() {
+ alert('not hooked up yet: importProfile');
+ };
+
+ $scope.compareProfiles = function() {
+ alert('not hooked up yet: compareProfiles');
+ };
+
angular.element(document).ready(function () {
$('#profilesTable').dataTable({
"aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/table.profiles.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/table.profiles.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/table.profiles.tpl.html
index 4430a6a..2d79fb4 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/table.profiles.tpl.html
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/profiles/table.profiles.tpl.html
@@ -22,7 +22,10 @@ under the License.
<ol class="breadcrumb pull-left">
<li class="active">Profiles</li>
</ol>
+
<button class="btn btn-primary pull-right" ng-click="createProfile()">New</button>
+ <button class="btn btn-default pull-right" ng-click="importProfile()">Import</button>
+ <button class="btn btn-default pull-right" ng-click="compareProfiles()">Compare</button>
<div class="clearfix"></div>
</div>
<div class="x_content">
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js
new file mode 100644
index 0000000..e6f565f
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js
@@ -0,0 +1,50 @@
+/*
+ * 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 TableServerDeliveryServicesController = function(server, serverDeliveryServices, $scope, locationUtils) {
+
+ $scope.server = server;
+
+ $scope.serverDeliveryServices = serverDeliveryServices;
+
+ $scope.cloneDsAssignments = function() {
+ alert('not hooked up yet: cloneDsAssignments');
+ };
+
+ $scope.addDeliveryService = function() {
+ alert('not hooked up yet: addDeliveryService to server');
+ };
+
+ $scope.removeDeliveryService = function() {
+ alert('not hooked up yet: removeDeliveryService from server');
+ };
+
+ $scope.navigateToPath = locationUtils.navigateToPath;
+
+ angular.element(document).ready(function () {
+ $('#deliveryServicesTable').dataTable({
+ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],
+ "iDisplayLength": 100
+ });
+ });
+
+};
+
+TableServerDeliveryServicesController.$inject = ['server', 'serverDeliveryServices', '$scope', 'locationUtils'];
+module.exports = TableServerDeliveryServicesController;
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/index.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/index.js b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/index.js
new file mode 100644
index 0000000..4367c89
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/index.js
@@ -0,0 +1,21 @@
+/*
+ * 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('trafficOps.table.serverDeliveryServices', [])
+ .controller('TableServerDeliveryServicesController', require('./TableServerDeliveryServicesController'));
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html
new file mode 100644
index 0000000..f8cde74
--- /dev/null
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html
@@ -0,0 +1,76 @@
+<!--
+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="x_panel">
+ <div class="x_title">
+ <ol class="breadcrumb pull-left">
+ <li><a ng-click="navigateToPath('/configure/servers')">Servers</a></li>
+ <li><a ng-click="navigateToPath('/configure/servers/' + server.id)">{{server.hostName}}</a></li>
+ <li class="active">Delivery Services</li>
+ </ol>
+ <button class="btn btn-primary pull-right" ng-click="addDeliveryService()">Add</button>
+ <button class="btn btn-default pull-right" ng-click="cloneDsAssignments()">Clone Assignments</button>
+
+ <div class="clearfix"></div>
+ </div>
+ <div class="x_content">
+ <br>
+ <table id="deliveryServicesTable" class="table responsive-utilities jambo_table">
+ <thead>
+ <tr class="headings">
+ <th>xmlId</th>
+ <th>orgServerFqdn</th>
+ <th>cdn</th>
+ <th>profile</th>
+ <th>ccrDnsTtl</th>
+ <th>active</th>
+ <th>type</th>
+ <th>dscp</th>
+ <th>signed</th>
+ <th>qstringIgnore</th>
+ <th>geoLimit</th>
+ <th>protocol</th>
+ <th>ipv6RoutingEnabled</th>
+ <th>rangeRequestHandling</th>
+ <th></th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="deliveryService in serverDeliveryServices">
+ <td>{{deliveryService.xmlId}}</td>
+ <td>{{deliveryService.orgServerFqdn}}</td>
+ <td>{{deliveryService.cdnName}}</td>
+ <td>{{deliveryService.profileName}}</td>
+ <td>{{deliveryService.ccrDnsTtl}}</td>
+ <td>{{deliveryService.active}}</td>
+ <td>{{deliveryService.type}}</td>
+ <td>{{deliveryService.dscp}}</td>
+ <td>{{deliveryService.signed}}</td>
+ <td>{{deliveryService.qstringIgnore}}</td>
+ <td>{{deliveryService.geoLimit}}</td>
+ <td>{{deliveryService.protocol}}</td>
+ <td>{{deliveryService.ipv6RoutingEnabled}}</td>
+ <td>{{deliveryService.rangeRequestHandling}}</td>
+ <td><button type="button" class="btn btn-link" title="Remove from Server" ng-click="removeDeliveryService()"><i class="fa fa-trash-o"></i></button></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+</div>
+
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/829ce404/traffic_ops/experimental/ui/app/src/common/modules/table/servers/TableServersController.js
----------------------------------------------------------------------
diff --git a/traffic_ops/experimental/ui/app/src/common/modules/table/servers/TableServersController.js b/traffic_ops/experimental/ui/app/src/common/modules/table/servers/TableServersController.js
index 7c627b5..ff2129c 100644
--- a/traffic_ops/experimental/ui/app/src/common/modules/table/servers/TableServersController.js
+++ b/traffic_ops/experimental/ui/app/src/common/modules/table/servers/TableServersController.js
@@ -29,6 +29,10 @@ var TableServersController = function(servers, $scope, locationUtils) {
locationUtils.navigateToPath('/configure/servers/new');
};
+ $scope.uploadServerCSV = function() {
+ alert('not hooked up yet: uploadServerCSV');
+ };
+
angular.element(document).ready(function () {
$('#serversTable').dataTable({
"aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]],