From e7067f0cc94cbcbdc35e45a80e7c45cb37e0896c Mon Sep 17 00:00:00 2001 From: Michael Lange Date: Thu, 30 Jan 2020 16:06:35 -0800 Subject: [PATCH] Fix token referencing from the token controller, as well as resetting --- ui/app/controllers/settings/tokens.js | 7 +++---- ui/app/services/system.js | 7 ++----- ui/app/services/token.js | 10 +++++++++- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/ui/app/controllers/settings/tokens.js b/ui/app/controllers/settings/tokens.js index 6480d36ff..8caab695f 100644 --- a/ui/app/controllers/settings/tokens.js +++ b/ui/app/controllers/settings/tokens.js @@ -2,6 +2,7 @@ import { inject as service } from '@ember/service'; import { reads } from '@ember/object/computed'; import Controller from '@ember/controller'; import { getOwner } from '@ember/application'; +import { alias } from '@ember/object/computed'; export default Controller.extend({ token: service(), @@ -12,7 +13,7 @@ export default Controller.extend({ tokenIsValid: false, tokenIsInvalid: false, - tokenRecord: null, + tokenRecord: alias('token.selfToken'), resetStore() { this.store.unloadAll(); @@ -26,9 +27,9 @@ export default Controller.extend({ this.setProperties({ tokenIsValid: false, tokenIsInvalid: false, - tokenRecord: null, }); this.resetStore(); + this.token.reset(); }, verifyToken() { @@ -52,7 +53,6 @@ export default Controller.extend({ this.setProperties({ tokenIsValid: true, tokenIsInvalid: false, - tokenRecord: this.token.selfToken, }); }, () => { @@ -60,7 +60,6 @@ export default Controller.extend({ this.setProperties({ tokenIsValid: false, tokenIsInvalid: true, - tokenRecord: null, }); } ); diff --git a/ui/app/services/system.js b/ui/app/services/system.js index f14e90129..24aea8291 100644 --- a/ui/app/services/system.js +++ b/ui/app/services/system.js @@ -78,16 +78,13 @@ export default Service.extend({ 'defaultRegion.region', 'shouldShowRegions', function() { - return this.shouldShowRegions && - this.activeRegion !== this.get('defaultRegion.region'); + return this.shouldShowRegions && this.activeRegion !== this.get('defaultRegion.region'); } ), namespaces: computed('activeRegion', function() { return PromiseArray.create({ - promise: this.store - .findAll('namespace') - .then(namespaces => namespaces.compact()), + promise: this.store.findAll('namespace').then(namespaces => namespaces.compact()), }); }), diff --git a/ui/app/services/token.js b/ui/app/services/token.js index 88bfcd38f..500fca06c 100644 --- a/ui/app/services/token.js +++ b/ui/app/services/token.js @@ -35,7 +35,9 @@ export default Service.extend({ } }), - selfToken: alias('fetchSelfToken.lastSuccessful.value'), + selfToken: computed('secret', 'fetchSelfToken.lastSuccessful.value', function() { + if (this.secret) return this.get('fetchSelfToken.lastSuccessful.value'); + }), fetchSelfTokenPolicies: task(function*() { try { @@ -83,6 +85,12 @@ export default Service.extend({ return this.authorizedRawRequest(url, options); }, + + reset() { + this.fetchSelfToken.cancelAll({ resetState: true }); + this.fetchSelfTokenPolicies.cancelAll({ resetState: true }); + this.fetchSelfTokenAndPolicies.cancelAll({ resetState: true }); + }, }); function addParams(url, params) {