Update Web UI Explore
Hide blank label dropdowns Escape characters in group descriptions and label selectors Update label selectors
This commit is contained in:
@@ -38,7 +38,7 @@ app.controller('GroupCtrl', [
|
||||
$scope.clearSelector = function(grouping) { $location.path("/dashboard/groups/" + grouping + "/selector/"); };
|
||||
|
||||
$scope.changeGroupBy = function() {
|
||||
var grouping = $scope.selectedGroupBy;
|
||||
var grouping = encodeURIComponent($scope.selectedGroupBy);
|
||||
|
||||
var s = _.clone($location.search());
|
||||
if ($scope.routeParams.grouping != grouping)
|
||||
@@ -63,14 +63,16 @@ app.controller('GroupCtrl', [
|
||||
$scope.groupBy = parts;
|
||||
$scope.loading = true;
|
||||
$scope.selector = selector;
|
||||
$scope.selectorName = decodeURIComponent(selector);
|
||||
var args = [];
|
||||
var type = "";
|
||||
var selectedHost = "";
|
||||
if (selector && selector.length > 0) {
|
||||
$scope.selectorPieces = selector.split(",");
|
||||
var labels = [];
|
||||
var fields = [];
|
||||
for (var i = 0; i < $scope.selectorPieces.length; i++) {
|
||||
var piece = $scope.selectorPieces[i];
|
||||
var piece = decodeURIComponent($scope.selectorPieces[i]);
|
||||
if (piece[0] == '$') {
|
||||
fields.push(piece.slice(2));
|
||||
} else {
|
||||
@@ -79,13 +81,21 @@ app.controller('GroupCtrl', [
|
||||
if (labelParts.length > 1) {
|
||||
type = labelParts[1];
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else if (piece.indexOf("host=") === 0){
|
||||
var labelParts = piece.split("=");
|
||||
if (labelParts.length > 1) {
|
||||
selectedHost = labelParts[1];
|
||||
}
|
||||
}
|
||||
else {
|
||||
labels.push(piece);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (labels.length > 0) {
|
||||
args.push("labels=" + encodeURI(labels.join(",")));
|
||||
args.push("labelSelector=" + encodeURI(labels.join(",")));
|
||||
}
|
||||
if (fields.length > 0) {
|
||||
args.push("fields=" + encodeURI(fields.join(",")));
|
||||
@@ -94,6 +104,9 @@ app.controller('GroupCtrl', [
|
||||
var query = "?" + args.join("&");
|
||||
var list = [];
|
||||
var count = type.length > 0 ? 1 : 3;
|
||||
|
||||
$scope.selectedGroupByName = decodeURIComponent($routeParams.grouping)
|
||||
|
||||
var barrier = $scope.createBarrier(count, function() {
|
||||
$scope.groups = $scope.groupData(list, 0);
|
||||
$scope.loading = false;
|
||||
@@ -105,8 +118,9 @@ app.controller('GroupCtrl', [
|
||||
k8sApi.getPods(query).success(function(data) {
|
||||
$scope.addLabel("type", "pod", data.items);
|
||||
for (var i = 0; data.items && i < data.items.length; ++i) {
|
||||
data.items[i].metadata.labels.host = data.items[i].spec.host;
|
||||
list.push(data.items[i]);
|
||||
data.items[i].metadata.labels.host = data.items[i].spec.nodeName;
|
||||
if(selectedHost.length == 0 || selectedHost == data.items[i].metadata.labels.host)
|
||||
list.push(data.items[i]);
|
||||
}
|
||||
barrier();
|
||||
}).error($scope.handleError);
|
||||
@@ -137,7 +151,7 @@ app.controller('GroupCtrl', [
|
||||
}
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
if (!items[i].metadata.labels) {
|
||||
items[i].metadata.labels = [];
|
||||
items[i].metadata.labels = {};
|
||||
}
|
||||
items[i].metadata.labels[key] = value;
|
||||
}
|
||||
@@ -149,7 +163,7 @@ app.controller('GroupCtrl', [
|
||||
"kind": "grouping"
|
||||
};
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
key = items[i].metadata.labels[$scope.groupBy[index]];
|
||||
key = items[i].metadata.labels[decodeURIComponent($scope.groupBy[index])];
|
||||
if (!key) {
|
||||
key = "";
|
||||
}
|
||||
|
Reference in New Issue
Block a user