diff --git a/app/services/catalog.js b/app/services/catalog.js index c9c7933dd..3c6254594 100644 --- a/app/services/catalog.js +++ b/app/services/catalog.js @@ -79,7 +79,7 @@ export default Ember.Service.extend({ filter(data, category, templateBase, plusInfra) { let bases = []; - category = category.toLowerCase(); + category = (category||'all').toLowerCase(); if ( templateBase === 'cattle' ) { bases.push(''); diff --git a/app/stacks/index/controller.js b/app/stacks/index/controller.js index 632ffbc0e..f726bacee 100644 --- a/app/stacks/index/controller.js +++ b/app/stacks/index/controller.js @@ -4,13 +4,15 @@ import C from 'ui/utils/constants'; import { tagsToArray, normalizedChoices } from 'ui/models/stack'; export default Ember.Controller.extend(Sortable, { - stacks: Ember.inject.controller(), + stacksController: Ember.inject.controller('stacks'), projects: Ember.inject.service(), prefs: Ember.inject.service(), intl: Ember.inject.service(), - which: Ember.computed.alias('stacks.which'), - tags: Ember.computed.alias('stacks.tags'), + stacks: Ember.computed.alias('stacksController.stacks'), + infraTemplates: Ember.computed.alias('stacksController.infraTemplates'), + which: Ember.computed.alias('stacksController.which'), + tags: Ember.computed.alias('stacksController.tags'), showAddtlInfo: false, selectedService: null, @@ -103,7 +105,7 @@ export default Ember.Controller.extend(Sortable, { filteredStacks: function() { var which = this.get('which'); var needTags = tagsToArray(this.get('tags')); - var out = this.get('model'); + var out = this.get('model.stacks'); if ( which !== C.EXTERNAL_ID.KIND_ALL ) { diff --git a/app/stacks/route.js b/app/stacks/route.js index 60fa690ee..c2cedf982 100644 --- a/app/stacks/route.js +++ b/app/stacks/route.js @@ -3,9 +3,13 @@ import C from 'ui/utils/constants'; export default Ember.Route.extend({ projects: Ember.inject.service(), + catalog: Ember.inject.service(), model: function() { - return this.get('store').findAll('stack'); + return Ember.RSVP.hash({ + stacks: this.get('store').findAll('stack'), + infraTemplates: this.get('catalog').fetchTemplates({plusInfra: true, allowFailure: true}), + }); }, resetController: function (controller/*, isExisting, transition*/) {