This is an automated email from the ASF dual-hosted git repository. dewrich pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-trafficcontrol.git
The following commit(s) were added to refs/heads/master by this push: new 5bcd8a5 adds chart link to each ds table 5bcd8a5 is described below commit 5bcd8a54a75b6a1ee101b1ca3af8197f74d2b6e4 Author: Jeremy Mitchell <mitchell...@gmail.com> AuthorDate: Tue Apr 17 08:59:19 2018 -0600 adds chart link to each ds table --- .../form/deliveryService/FormDeliveryServiceController.js | 13 ++++--------- .../TableCDNDeliveryServicesController.js | 11 +++++++++-- .../cdnDeliveryServices/table.cdnDeliveryServices.tpl.html | 4 ++++ .../deliveryServices/TableDeliveryServicesController.js | 11 +++++++++-- .../table/deliveryServices/table.deliveryServices.tpl.html | 4 ++++ .../TableProfileDeliveryServicesController.js | 11 +++++++++-- .../table.profileDeliveryServices.tpl.html | 5 ++++- .../TableServerDeliveryServicesController.js | 12 +++++++++--- .../table.serverDeliveryServices.tpl.html | 7 +++++-- .../TableTenantDeliveryServicesController.js | 11 +++++++++-- .../table.tenantDeliveryServices.tpl.html | 4 ++++ .../TableTypeDeliveryServicesController.js | 11 +++++++++-- .../table.typeDeliveryServices.tpl.html | 4 ++++ .../TableUserDeliveryServicesController.js | 12 +++++++++--- .../table.userDeliveryServices.tpl.html | 7 +++++-- .../app/src/common/service/utils/DeliveryServiceUtils.js | 14 ++++++++++++-- traffic_portal/app/src/common/service/utils/ServerUtils.js | 4 +++- 17 files changed, 112 insertions(+), 33 deletions(-) diff --git a/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js b/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js index 834949b..377c934 100644 --- a/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js +++ b/traffic_portal/app/src/common/modules/form/deliveryService/FormDeliveryServiceController.js @@ -17,7 +17,7 @@ * under the License. */ -var FormDeliveryServiceController = function(deliveryService, dsCurrent, type, types, $scope, $location, $uibModal, $window, formUtils, locationUtils, tenantUtils, cdnService, profileService, tenantService, propertiesModel) { +var FormDeliveryServiceController = function(deliveryService, dsCurrent, type, types, $scope, $location, $uibModal, $window, formUtils, locationUtils, tenantUtils, deliveryServiceUtils, cdnService, profileService, tenantService, propertiesModel) { var getCDNs = function() { cdnService.getCDNs() @@ -49,6 +49,8 @@ var FormDeliveryServiceController = function(deliveryService, dsCurrent, type, t $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.dsRequestsEnabled = propertiesModel.properties.dsRequests.enabled; $scope.edgeFQDNs = function(ds) { @@ -200,13 +202,6 @@ var FormDeliveryServiceController = function(deliveryService, dsCurrent, type, t return '-'.repeat(tenant.level) + ' ' + tenant.name; }; - $scope.openCharts = function(ds) { - $window.open( - propertiesModel.properties.deliveryServices.charts.baseUrl + ds.xmlId, - '_blank' - ); - }; - $scope.clone = function(ds) { var params = { title: 'Clone Delivery Service: ' + ds.xmlId, @@ -286,5 +281,5 @@ var FormDeliveryServiceController = function(deliveryService, dsCurrent, type, t }; -FormDeliveryServiceController.$inject = ['deliveryService', 'dsCurrent', 'type', 'types', '$scope', '$location', '$uibModal', '$window', 'formUtils', 'locationUtils', 'tenantUtils', 'cdnService', 'profileService', 'tenantService', 'propertiesModel']; +FormDeliveryServiceController.$inject = ['deliveryService', 'dsCurrent', 'type', 'types', '$scope', '$location', '$uibModal', '$window', 'formUtils', 'locationUtils', 'tenantUtils', 'deliveryServiceUtils', 'cdnService', 'profileService', 'tenantService', 'propertiesModel']; module.exports = FormDeliveryServiceController; diff --git a/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/TableCDNDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/TableCDNDeliveryServicesController.js index 74d477b..1e29df4 100644 --- a/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/TableCDNDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/TableCDNDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableCDNDeliveryServicesController = function(cdn, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils) { +var TableCDNDeliveryServicesController = function(cdn, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -27,6 +27,10 @@ var TableCDNDeliveryServicesController = function(cdn, deliveryServices, $scope, $scope.deliveryServices = deliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.protocol = function(ds) { return protocols[ds.protocol]; }; @@ -51,11 +55,14 @@ var TableCDNDeliveryServicesController = function(cdn, deliveryServices, $scope, $('#deliveryServicesTable').dataTable({ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]], "iDisplayLength": 25, + "columnDefs": [ + { 'orderable': false, 'targets': 12 } + ], "aaSorting": [] }); }); }; -TableCDNDeliveryServicesController.$inject = ['cdn', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils']; +TableCDNDeliveryServicesController.$inject = ['cdn', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'propertiesModel']; module.exports = TableCDNDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/table.cdnDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/table.cdnDeliveryServices.tpl.html index 8bde966..1ef942e 100644 --- a/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/table.cdnDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/cdnDeliveryServices/table.cdnDeliveryServices.tpl.html @@ -46,6 +46,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -62,6 +63,9 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> + <td style="text-align: right;"> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/deliveryServices/TableDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/deliveryServices/TableDeliveryServicesController.js index ada2c39..558d28f 100644 --- a/traffic_portal/app/src/common/modules/table/deliveryServices/TableDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/deliveryServices/TableDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableDeliveryServicesController = function(deliveryServices, $scope, $state, $location, $uibModal, dateUtils, deliveryServiceUtils, locationUtils) { +var TableDeliveryServicesController = function(deliveryServices, $scope, $state, $location, $uibModal, dateUtils, deliveryServiceUtils, locationUtils, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -30,6 +30,10 @@ var TableDeliveryServicesController = function(deliveryServices, $scope, $state, $scope.deliveryServices = deliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.getRelativeTime = dateUtils.getRelativeTime; $scope.editDeliveryService = function(ds) { @@ -111,11 +115,14 @@ var TableDeliveryServicesController = function(deliveryServices, $scope, $state, $('#deliveryServicesTable').dataTable({ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]], "iDisplayLength": 25, + "columnDefs": [ + { 'orderable': false, 'targets': 12 } + ], "aaSorting": [] }); }); }; -TableDeliveryServicesController.$inject = ['deliveryServices', '$scope', '$state', '$location', '$uibModal', 'dateUtils', 'deliveryServiceUtils', 'locationUtils']; +TableDeliveryServicesController.$inject = ['deliveryServices', '$scope', '$state', '$location', '$uibModal', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'propertiesModel']; module.exports = TableDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/deliveryServices/table.deliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/deliveryServices/table.deliveryServices.tpl.html index 91ba83e..af43709 100644 --- a/traffic_portal/app/src/common/modules/table/deliveryServices/table.deliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/deliveryServices/table.deliveryServices.tpl.html @@ -54,6 +54,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -70,6 +71,9 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> + <td style="text-align: right;"> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/profileDeliveryServices/TableProfileDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/profileDeliveryServices/TableProfileDeliveryServicesController.js index c0760aa..96f581b 100644 --- a/traffic_portal/app/src/common/modules/table/profileDeliveryServices/TableProfileDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/profileDeliveryServices/TableProfileDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableProfileDeliveryServicesController = function(profile, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils) { +var TableProfileDeliveryServicesController = function(profile, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -27,6 +27,10 @@ var TableProfileDeliveryServicesController = function(profile, deliveryServices, $scope.deliveryServices = deliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.protocol = function(ds) { return protocols[ds.protocol]; }; @@ -51,11 +55,14 @@ var TableProfileDeliveryServicesController = function(profile, deliveryServices, $('#deliveryServicesTable').dataTable({ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]], "iDisplayLength": 25, + "columnDefs": [ + { 'orderable': false, 'targets': 12 } + ], "aaSorting": [] }); }); }; -TableProfileDeliveryServicesController.$inject = ['profile', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils']; +TableProfileDeliveryServicesController.$inject = ['profile', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'propertiesModel']; module.exports = TableProfileDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/profileDeliveryServices/table.profileDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/profileDeliveryServices/table.profileDeliveryServices.tpl.html index d8b49b0..61cf502 100644 --- a/traffic_portal/app/src/common/modules/table/profileDeliveryServices/table.profileDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/profileDeliveryServices/table.profileDeliveryServices.tpl.html @@ -40,13 +40,13 @@ under the License. <th>Active</th> <th>Type</th> <th>Protocol</th> - <th>Profile</th> <th>CDN</th> <th>IPv6 Enabled</th> <th>DSCP</th> <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -63,6 +63,9 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> + <td style="text-align: right;"> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js index 31187f0..f33da87 100644 --- a/traffic_portal/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/serverDeliveryServices/TableServerDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableServerDeliveryServicesController = function(server, serverDeliveryServices, $scope, $state, $uibModal, dateUtils, deliveryServiceUtils, locationUtils, serverUtils, deliveryServiceService, serverService) { +var TableServerDeliveryServicesController = function(server, serverDeliveryServices, $scope, $state, $uibModal, dateUtils, deliveryServiceUtils, locationUtils, serverUtils, deliveryServiceService, serverService, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -36,6 +36,10 @@ var TableServerDeliveryServicesController = function(server, serverDeliveryServi $scope.serverDeliveryServices = serverDeliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.isEdge = serverUtils.isEdge; $scope.protocol = function(ds) { @@ -110,7 +114,9 @@ var TableServerDeliveryServicesController = function(server, serverDeliveryServi }); }; - $scope.confirmRemoveDS = function(ds) { + $scope.confirmRemoveDS = function(ds, $event) { + $event.stopPropagation(); // this kills the click event so it doesn't trigger anything else + var params = { title: 'Remove Delivery Service from Server?', message: 'Are you sure you want to remove ' + ds.xmlId + ' from this server?' @@ -152,5 +158,5 @@ var TableServerDeliveryServicesController = function(server, serverDeliveryServi }; -TableServerDeliveryServicesController.$inject = ['server', 'serverDeliveryServices', '$scope', '$state', '$uibModal', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'serverUtils', 'deliveryServiceService', 'serverService']; +TableServerDeliveryServicesController.$inject = ['server', 'serverDeliveryServices', '$scope', '$state', '$uibModal', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'serverUtils', 'deliveryServiceService', 'serverService', 'propertiesModel']; module.exports = TableServerDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html index 2d45912..3b86fa8 100644 --- a/traffic_portal/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/serverDeliveryServices/table.serverDeliveryServices.tpl.html @@ -56,7 +56,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> - <th></th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -73,7 +73,10 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> - <td><button type="button" class="btn btn-link" title="Unlink Delivery Service from Server" ng-click="confirmRemoveDS(ds)"><i class="fa fa-chain-broken"></i></button></td> + <td style="text-align: right;"> + <a class="link action-link" title="Unlink Delivery Service from Server" ng-click="confirmRemoveDS(ds, $event)"><i class="fa fa-sm fa-chain-broken"></i></a> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/TableTenantDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/TableTenantDeliveryServicesController.js index de6690c..d6a0ce1 100644 --- a/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/TableTenantDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/TableTenantDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableTenantDeliveryServicesController = function(tenant, tenantDeliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils) { +var TableTenantDeliveryServicesController = function(tenant, tenantDeliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -27,6 +27,10 @@ var TableTenantDeliveryServicesController = function(tenant, tenantDeliveryServi $scope.tenantDeliveryServices = tenantDeliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.protocol = function(ds) { return protocols[ds.protocol]; }; @@ -51,11 +55,14 @@ var TableTenantDeliveryServicesController = function(tenant, tenantDeliveryServi $('#tenantDSsTable').dataTable({ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]], "iDisplayLength": 25, + "columnDefs": [ + { 'orderable': false, 'targets': 12 } + ], "aaSorting": [] }); }); }; -TableTenantDeliveryServicesController.$inject = ['tenant', 'tenantDeliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils']; +TableTenantDeliveryServicesController.$inject = ['tenant', 'tenantDeliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'propertiesModel']; module.exports = TableTenantDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/table.tenantDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/table.tenantDeliveryServices.tpl.html index b01633a..4b84c18 100644 --- a/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/table.tenantDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/tenantDeliveryServices/table.tenantDeliveryServices.tpl.html @@ -46,6 +46,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -62,6 +63,9 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> + <td style="text-align: right;"> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/typeDeliveryServices/TableTypeDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/typeDeliveryServices/TableTypeDeliveryServicesController.js index 2cf03f9..26bd088 100644 --- a/traffic_portal/app/src/common/modules/table/typeDeliveryServices/TableTypeDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/typeDeliveryServices/TableTypeDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableTypeDeliveryServicesController = function(type, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils) { +var TableTypeDeliveryServicesController = function(type, deliveryServices, $scope, $state, dateUtils, deliveryServiceUtils, locationUtils, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -27,6 +27,10 @@ var TableTypeDeliveryServicesController = function(type, deliveryServices, $scop $scope.deliveryServices = deliveryServices; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.protocol = function(ds) { return protocols[ds.protocol]; }; @@ -51,11 +55,14 @@ var TableTypeDeliveryServicesController = function(type, deliveryServices, $scop $('#deliveryServicesTable').dataTable({ "aLengthMenu": [[25, 50, 100, -1], [25, 50, 100, "All"]], "iDisplayLength": 25, + "columnDefs": [ + { 'orderable': false, 'targets': 12 } + ], "aaSorting": [] }); }); }; -TableTypeDeliveryServicesController.$inject = ['type', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils']; +TableTypeDeliveryServicesController.$inject = ['type', 'deliveryServices', '$scope', '$state', 'dateUtils', 'deliveryServiceUtils', 'locationUtils', 'propertiesModel']; module.exports = TableTypeDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/typeDeliveryServices/table.typeDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/typeDeliveryServices/table.typeDeliveryServices.tpl.html index e127ab7..8507f7b 100644 --- a/traffic_portal/app/src/common/modules/table/typeDeliveryServices/table.typeDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/typeDeliveryServices/table.typeDeliveryServices.tpl.html @@ -46,6 +46,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -62,6 +63,9 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> + <td style="text-align: right;"> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/modules/table/userDeliveryServices/TableUserDeliveryServicesController.js b/traffic_portal/app/src/common/modules/table/userDeliveryServices/TableUserDeliveryServicesController.js index 067e055..5171a85 100644 --- a/traffic_portal/app/src/common/modules/table/userDeliveryServices/TableUserDeliveryServicesController.js +++ b/traffic_portal/app/src/common/modules/table/userDeliveryServices/TableUserDeliveryServicesController.js @@ -17,7 +17,7 @@ * under the License. */ -var TableUserDeliveryServicesController = function(user, userDeliveryServices, useTenancy, $scope, $state, $uibModal, dateUtils, deliveryServiceUtils, locationUtils, userService) { +var TableUserDeliveryServicesController = function(user, userDeliveryServices, useTenancy, $scope, $state, $uibModal, dateUtils, deliveryServiceUtils, locationUtils, userService, propertiesModel) { var protocols = deliveryServiceUtils.protocols; @@ -29,6 +29,10 @@ var TableUserDeliveryServicesController = function(user, userDeliveryServices, u $scope.useTenancy = useTenancy[0].value; + $scope.showChartsButton = propertiesModel.properties.deliveryServices.charts.show; + + $scope.openCharts = deliveryServiceUtils.openCharts; + $scope.protocol = function(ds) { return protocols[ds.protocol]; }; @@ -39,7 +43,9 @@ var TableUserDeliveryServicesController = function(user, userDeliveryServices, u $scope.getRelativeTime = dateUtils.getRelativeTime; - $scope.removeDS = function(dsId) { + $scope.removeDS = function(dsId, $event) { + $event.stopPropagation(); // this kills the click event so it doesn't trigger anything else + userService.deleteUserDeliveryService(user.id, dsId) .then( function() { @@ -94,5 +100,5 @@ var TableUserDeliveryServicesController = function(user, userDeliveryServices, u }; -TableUserDeliveryServicesController.$inject = ['user', 'userDeliveryServices', 'useTenancy', '$scope', '$state', '$uibModal', 'dateUtils', 'deliveryServiceUtils','locationUtils', 'userService']; +TableUserDeliveryServicesController.$inject = ['user', 'userDeliveryServices', 'useTenancy', '$scope', '$state', '$uibModal', 'dateUtils', 'deliveryServiceUtils','locationUtils', 'userService', 'propertiesModel']; module.exports = TableUserDeliveryServicesController; diff --git a/traffic_portal/app/src/common/modules/table/userDeliveryServices/table.userDeliveryServices.tpl.html b/traffic_portal/app/src/common/modules/table/userDeliveryServices/table.userDeliveryServices.tpl.html index b16e11a..bf2b2f5 100644 --- a/traffic_portal/app/src/common/modules/table/userDeliveryServices/table.userDeliveryServices.tpl.html +++ b/traffic_portal/app/src/common/modules/table/userDeliveryServices/table.userDeliveryServices.tpl.html @@ -47,7 +47,7 @@ under the License. <th>Signing Algorithm</th> <th>Qstring Handling</th> <th>Last Updated</th> - <th ng-if="useTenancy == '0'"></th> + <th style="text-align: right;">Actions</th> </tr> </thead> <tbody> @@ -64,7 +64,10 @@ under the License. <td data-search="^{{::ds.signingAlgorithm}}$">{{::ds.signingAlgorithm}}</td> <td data-search="^{{::qstring(ds)}}$">{{::qstring(ds)}}</td> <td data-search="^{{::getRelativeTime(ds.lastUpdated)}}$" data-order="{{::ds.lastUpdated}}">{{::getRelativeTime(ds.lastUpdated)}}</td> - <td ng-if="useTenancy == '0'"><button type="button" class="btn btn-link" title="Unlink Delivery Service from User" ng-click="removeDS(ds.id)"><i class="fa fa-chain-broken"></i></button></td> + <td style="text-align: right;"> + <a ng-if="useTenancy == '0'" class="link action-link" title="Unlink Delivery Service from User" ng-click="removeDS(ds.id, $event)"><i class="fa fa-sm fa-chain-broken"></i></a> + <span ng-if="showChartsButton"><a class="link action-link" title="View Charts" ng-click="openCharts(ds, $event)"><i class="fa fa-sm fa-bar-chart"></i></a></span> + </td> </tr> </tbody> </table> diff --git a/traffic_portal/app/src/common/service/utils/DeliveryServiceUtils.js b/traffic_portal/app/src/common/service/utils/DeliveryServiceUtils.js index f4e5e34..25816b9 100644 --- a/traffic_portal/app/src/common/service/utils/DeliveryServiceUtils.js +++ b/traffic_portal/app/src/common/service/utils/DeliveryServiceUtils.js @@ -17,7 +17,7 @@ * under the License. */ -var DeliveryServiceUtils = function() { +var DeliveryServiceUtils = function($window, propertiesModel) { this.protocols = { 0: "HTTP", @@ -32,7 +32,17 @@ var DeliveryServiceUtils = function() { 2: "DROP" }; + this.openCharts = function(ds, $event) { + if ($event) { + $event.stopPropagation(); // this kills the click event so it doesn't trigger anything else + } + $window.open( + propertiesModel.properties.deliveryServices.charts.baseUrl + ds.xmlId, + '_blank' + ); + }; + }; -DeliveryServiceUtils.$inject = []; +DeliveryServiceUtils.$inject = ['$window', 'propertiesModel']; module.exports = DeliveryServiceUtils; diff --git a/traffic_portal/app/src/common/service/utils/ServerUtils.js b/traffic_portal/app/src/common/service/utils/ServerUtils.js index 74d0f4c..87a7dcd 100644 --- a/traffic_portal/app/src/common/service/utils/ServerUtils.js +++ b/traffic_portal/app/src/common/service/utils/ServerUtils.js @@ -43,7 +43,9 @@ var ServerUtils = function($window, propertiesModel, userModel) { }; this.openCharts = function(server, $event) { - $event.stopPropagation(); // this kills the click event so it doesn't trigger anything else + if ($event) { + $event.stopPropagation(); // this kills the click event so it doesn't trigger anything else + } $window.open( propertiesModel.properties.servers.charts.baseUrl + server.hostName, '_blank' -- To stop receiving notification emails like this one, please contact dewr...@apache.org.