Filter out volumes that don't match the chosen namespace
This commit is contained in:
parent
62b7a07189
commit
62aa943a95
|
@ -1,4 +1,5 @@
|
|||
import { inject as service } from '@ember/service';
|
||||
import { computed } from '@ember/object';
|
||||
import { alias, readOnly } from '@ember/object/computed';
|
||||
import Controller, { inject as controller } from '@ember/controller';
|
||||
import SortableFactory from 'nomad-ui/mixins/sortable-factory';
|
||||
|
@ -30,7 +31,23 @@ export default Controller.extend(
|
|||
sortProperty: 'id',
|
||||
sortDescending: false,
|
||||
|
||||
listToSort: alias('model'),
|
||||
/**
|
||||
Visible volumes are those that match the selected namespace
|
||||
*/
|
||||
visibleVolumes: computed('model.[]', 'model.@each.parent', function() {
|
||||
if (!this.model) return [];
|
||||
|
||||
// Namespace related properties are ommitted from the dependent keys
|
||||
// due to a prop invalidation bug caused by region switching.
|
||||
const hasNamespaces = this.get('system.namespaces.length');
|
||||
const activeNamespace = this.get('system.activeNamespace.id') || 'default';
|
||||
|
||||
return this.model
|
||||
.compact()
|
||||
.filter(volume => !hasNamespaces || volume.get('namespace.id') === activeNamespace);
|
||||
}),
|
||||
|
||||
listToSort: alias('visibleVolumes'),
|
||||
sortedVolumes: alias('listSorted'),
|
||||
|
||||
// TODO: Remove once this page gets search capability
|
||||
|
|
Loading…
Reference in a new issue