Skip to content

Commit

Permalink
Environment From Fix Drag & Order Display
Browse files Browse the repository at this point in the history
Fix for making sure the drag and order handles are hidden
within a read only display
  • Loading branch information
cdcabrera committed Oct 9, 2017
1 parent 866d582 commit cda77e6
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 21 deletions.
15 changes: 5 additions & 10 deletions app/scripts/directives/editEnvironmentFrom.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,12 @@
ctrl.editEnvironmentFromForm.$setDirty();
};

ctrl.hasOptions = function() {
return !_.isEmpty(ctrl.envFromSelectorOptions);
};

ctrl.isEnvFromReadonly = function(entry) {
return ctrl.isReadonlyAny ||
entry.isReadonlyValue === true ||
((entry.secretRef || entry.configMapRef) && !entry.selectedEnvFrom) ||
_.isEmpty(ctrl.envFromSelectorOptions);
return entry.isReadonlyValue === true || ((entry.secretRef || entry.configMapRef) && !entry.selectedEnvFrom);
};

ctrl.groupByKind = function(object) {
Expand Down Expand Up @@ -143,8 +144,6 @@
};

var findReferenceValueForEntries = function(entries, envFromSelectorOptions) {
ctrl.cannotAdd = (ctrl.isReadonlyAny || _.isEmpty(envFromSelectorOptions));

if(envFromSelectorOptions) {
_.each(envFromSelectorOptions, function(option) {
var referenceValue = getReferenceValue(option);
Expand All @@ -168,10 +167,6 @@
ctrl.cannotSort = true;
}

if('isReadonly' in $attrs) {
ctrl.isReadonlyAny = true;
}

if('showHeader' in $attrs) {
ctrl.showHeader = true;
}
Expand Down
8 changes: 4 additions & 4 deletions app/views/directives/edit-environment-from.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<div class="form-group environment-from-input">
<div ng-if="$ctrl.isEnvFromReadonly(entry)" class="faux-input-group">
<div ng-if="!entry.configMapRef.name && !entry.secretRef.name">
No secrets or config maps have been added as Environment From.
No config maps or secrets have been added as Environment From.
</div>
<div ng-if="entry.configMapRef.name || entry.secretRef.name" class="faux-form-control readonly">
Use all keys and values from
Expand All @@ -29,7 +29,7 @@
</div>
</div>

<div ng-if="!$ctrl.isEnvFromReadonly(entry)">
<div ng-if="$ctrl.hasOptions() && !$ctrl.isEnvFromReadonly(entry)">
<div class="ui-select">
<ui-select ng-model="entry.selectedEnvFrom"
ng-required="entry.selectedEnvFrom"
Expand All @@ -52,7 +52,7 @@
</div>
</div>

<div ng-if="!$ctrl.isReadonlyAny && !entry.isReadonlyValue" class="environment-from-editor-button">
<div ng-if="$ctrl.hasOptions() || !$ctrl.isEnvFromReadonly(entry)" class="environment-from-editor-button">
<span
ng-if="!$ctrl.cannotSort && $ctrl.entries.length > 1"
class="fa fa-bars sort-row"
Expand All @@ -70,7 +70,7 @@
</div>
</div>

<div class="environment-from-entry form-group" ng-if="!$ctrl.cannotAdd">
<div class="environment-from-entry form-group" ng-if="$ctrl.hasOptions()">
<a
href=""
class="add-row-link"
Expand Down
8 changes: 5 additions & 3 deletions dist/scripts/scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -9147,8 +9147,10 @@ a.onAddRow = function() {
s(a.envFromEntries), n.setFocusOn("." + a.setFocusClass);
}, a.deleteEntry = function(e, t) {
a.envFromEntries && !a.envFromEntries.length || (a.envFromEntries.splice(e, t), !a.envFromEntries.length && a.addRowLink && s(a.envFromEntries), a.updateEntries(a.envFromEntries), a.editEnvironmentFromForm.$setDirty());
}, a.hasOptions = function() {
return !_.isEmpty(a.envFromSelectorOptions);
}, a.isEnvFromReadonly = function(e) {
return a.isReadonlyAny || !0 === e.isReadonlyValue || (e.secretRef || e.configMapRef) && !e.selectedEnvFrom || _.isEmpty(a.envFromSelectorOptions);
return !0 === e.isReadonlyValue || (e.secretRef || e.configMapRef) && !e.selectedEnvFrom;
}, a.groupByKind = function(e) {
return o(e.kind);
}, a.dragControlListeners = {
Expand Down Expand Up @@ -9206,13 +9208,13 @@ a.checkEntries = function(e, t) {
return e !== t && !!l(e);
};
var u = function(e, t) {
a.cannotAdd = a.isReadonlyAny || _.isEmpty(t), t && _.each(t, function(e) {
t && _.each(t, function(e) {
var t = l(e);
t && _.set(t, "selectedEnvFrom", e);
});
};
a.$onInit = function() {
c(a.entries), u(a.entries, a.envFromSelectorOptions), "cannotDelete" in e && (a.cannotDeleteAny = !0), "cannotSort" in e && (a.cannotSort = !0), "isReadonly" in e && (a.isReadonlyAny = !0), "showHeader" in e && (a.showHeader = !0), a.envFromEntries && !a.envFromEntries.length && s(a.envFromEntries);
c(a.entries), u(a.entries, a.envFromSelectorOptions), "cannotDelete" in e && (a.cannotDeleteAny = !0), "cannotSort" in e && (a.cannotSort = !0), "showHeader" in e && (a.showHeader = !0), a.envFromEntries && !a.envFromEntries.length && s(a.envFromEntries);
}, a.$onChanges = function(e) {
e.entries && c(e.entries.currentValue), e.envFromSelectorOptions && u(a.envFromEntries, e.envFromSelectorOptions.currentValue);
};
Expand Down
8 changes: 4 additions & 4 deletions dist/scripts/templates.js
Original file line number Diff line number Diff line change
Expand Up @@ -6613,15 +6613,15 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
"<div class=\"form-group environment-from-input\">\n" +
"<div ng-if=\"$ctrl.isEnvFromReadonly(entry)\" class=\"faux-input-group\">\n" +
"<div ng-if=\"!entry.configMapRef.name && !entry.secretRef.name\">\n" +
"No secrets or config maps have been added as Environment From.\n" +
"No config maps or secrets have been added as Environment From.\n" +
"</div>\n" +
"<div ng-if=\"entry.configMapRef.name || entry.secretRef.name\" class=\"faux-form-control readonly\">\n" +
"Use all keys and values from\n" +
"<span ng-if=\"entry.configMapRef.name\">config map {{entry.configMapRef.name}}</span>\n" +
"<span ng-if=\"entry.secretRef.name\">secret {{entry.secretRef.name}}</span>\n" +
"</div>\n" +
"</div>\n" +
"<div ng-if=\"!$ctrl.isEnvFromReadonly(entry)\">\n" +
"<div ng-if=\"$ctrl.hasOptions() && !$ctrl.isEnvFromReadonly(entry)\">\n" +
"<div class=\"ui-select\">\n" +
"<ui-select ng-model=\"entry.selectedEnvFrom\" ng-required=\"entry.selectedEnvFrom\" on-select=\"$ctrl.envFromObjectSelected($index, entry, $select.selected)\" ng-class=\"{'{{$ctrl.setFocusClass}}' : $last}\">\n" +
"<ui-select-match placeholder=\"Select a resource\">\n" +
Expand All @@ -6637,12 +6637,12 @@ angular.module('openshiftConsoleTemplates', []).run(['$templateCache', function(
"</div>\n" +
"</div>\n" +
"</div>\n" +
"<div ng-if=\"!$ctrl.isReadonlyAny && !entry.isReadonlyValue\" class=\"environment-from-editor-button\">\n" +
"<div ng-if=\"$ctrl.hasOptions() || !$ctrl.isEnvFromReadonly(entry)\" class=\"environment-from-editor-button\">\n" +
"<span ng-if=\"!$ctrl.cannotSort && $ctrl.entries.length > 1\" class=\"fa fa-bars sort-row\" role=\"button\" aria-label=\"Move row\" aria-grabbed=\"false\" as-sortable-item-handle></span>\n" +
"<a ng-if=\"!$ctrl.cannotDeleteAny\" href=\"\" class=\"pficon pficon-close delete-row as-sortable-item-delete\" role=\"button\" aria-label=\"Delete row\" ng-click=\"$ctrl.deleteEntry($index, 1)\"></a>\n" +
"</div>\n" +
"</div>\n" +
"<div class=\"environment-from-entry form-group\" ng-if=\"!$ctrl.cannotAdd\">\n" +
"<div class=\"environment-from-entry form-group\" ng-if=\"$ctrl.hasOptions()\">\n" +
"<a href=\"\" class=\"add-row-link\" role=\"button\" ng-click=\"$ctrl.onAddRow()\">{{ $ctrl.addRowLink }}</a>\n" +
"</div>\n" +
"</div>\n" +
Expand Down

0 comments on commit cda77e6

Please sign in to comment.