diff --git a/app/authenticated/cluster/security/members/new/controller.js b/app/authenticated/cluster/security/members/new/controller.js index bf509a79c..d342cd423 100644 --- a/app/authenticated/cluster/security/members/new/controller.js +++ b/app/authenticated/cluster/security/members/new/controller.js @@ -2,7 +2,6 @@ import Controller from '@ember/controller'; import NewOrEdit from 'ui/mixins/new-or-edit'; import { get } from '@ember/object'; // import { all as PromiseAll } from 'rsvp'; -import { computed } from '@ember/object'; const ROLE_KINDS = [ { id: 'User', }, @@ -18,14 +17,9 @@ const ROLE_KINDS = [ export default Controller.extend(NewOrEdit, { primaryResource: null, kinds: ROLE_KINDS, - defaultUser: null, actions: { doneSaving() { this.transitionToRoute('authenticated.cluster.security.members.index', get(this, 'model.cluster.id')) }, }, - filteredUsers: computed('model.users.@each.{id,state}', function() { - return get(this, 'model.users').filter((u) => !u.hasOwnProperty('me') || get(u, 'me') === false) - .sortBy('username'); - }), }); diff --git a/app/authenticated/cluster/security/members/new/route.js b/app/authenticated/cluster/security/members/new/route.js index afa79d3be..64baf1f9f 100644 --- a/app/authenticated/cluster/security/members/new/route.js +++ b/app/authenticated/cluster/security/members/new/route.js @@ -14,17 +14,9 @@ export default Route.extend({ const cid = this.paramsFor('authenticated.cluster'); return hash({ - cluster: gs.find('cluster', cid.cluster_id, { forceReload: true }), - roles: get(this, 'roleTemplateService').get('allFilteredRoleTemplates'), - users: gs.findAll('user'), + cluster: gs.find('cluster', cid.cluster_id, { forceReload: true }), + roles: get(this, 'roleTemplateService').get('allFilteredRoleTemplates'), + roleBindings: gs.findAll('clusterRoleTemplateBinding'), }); }, - - setupController(controller, model) { - this._super(controller, model); - - let dfu = get(model, 'users.firstObject'); - - controller.setProperties({ defaultUser: dfu, }); - }, }); diff --git a/app/authenticated/cluster/security/members/new/template.hbs b/app/authenticated/cluster/security/members/new/template.hbs index 8c2690426..5cf2022dd 100644 --- a/app/authenticated/cluster/security/members/new/template.hbs +++ b/app/authenticated/cluster/security/members/new/template.hbs @@ -8,8 +8,6 @@
{{form-scoped-roles model=model - filtered=filteredUsers - defaultUser=defaultUser type="cluster" cancel=(action "doneSaving") doneSaving=(action "doneSaving") diff --git a/app/authenticated/project/security/members/new/controller.js b/app/authenticated/project/security/members/new/controller.js index ad03dc46f..0c7b0ef5b 100644 --- a/app/authenticated/project/security/members/new/controller.js +++ b/app/authenticated/project/security/members/new/controller.js @@ -1,7 +1,6 @@ import Controller from '@ember/controller'; import NewOrEdit from 'ui/mixins/new-or-edit'; import { get } from '@ember/object'; -import { computed } from '@ember/object'; const ROLE_KINDS = [ { id: 'User', }, @@ -22,8 +21,4 @@ export default Controller.extend(NewOrEdit, { this.transitionToRoute('authenticated.project.security.members.index', get(this, 'model.project.id')) }, }, - filteredUsers: computed('model.users.@each.{id,state}', function() { - return get(this, 'model.users').filter((u) => !u.hasOwnProperty('me') || get(u, 'me') === false) - .sortBy('username'); - }), }); diff --git a/app/authenticated/project/security/members/new/route.js b/app/authenticated/project/security/members/new/route.js index 1b4012ae4..fa8fc94ce 100644 --- a/app/authenticated/project/security/members/new/route.js +++ b/app/authenticated/project/security/members/new/route.js @@ -12,17 +12,9 @@ export default Route.extend({ const pid = this.paramsFor('authenticated.project'); return hash({ - project: gs.find('project', pid.project_id, { forceReload: true }), - roles: get(this, 'roleTemplateService').get('allFilteredRoleTemplates'), - users: gs.findAll('user'), + project: gs.find('project', pid.project_id, { forceReload: true }), + roles: get(this, 'roleTemplateService').get('allFilteredRoleTemplates'), + roleBindings: gs.findAll('projectRoleTemplateBinding'), }); - }, - - setupController(controller, model) { - this._super(controller, model); - - let dfu = get(model, 'users.firstObject'); - - controller.setProperties({ defaultUser: dfu, }); - }, + } }); diff --git a/app/authenticated/project/security/members/new/template.hbs b/app/authenticated/project/security/members/new/template.hbs index d4f7a9a3e..b4d1e43a5 100644 --- a/app/authenticated/project/security/members/new/template.hbs +++ b/app/authenticated/project/security/members/new/template.hbs @@ -8,8 +8,6 @@
{{form-scoped-roles model=model - filtered=filteredUsers - defaultUser=defaultUser type="project" cancel=(action "doneSaving") doneSaving=(action "doneSaving") diff --git a/app/components/form-scoped-roles/component.js b/app/components/form-scoped-roles/component.js index 2107747ae..ac84fc5ce 100644 --- a/app/components/form-scoped-roles/component.js +++ b/app/components/form-scoped-roles/component.js @@ -27,14 +27,12 @@ export default Component.extend(NewOrEdit, { init() { this._super(...arguments); - let dfu = get(this, 'defaultUser'); let model = { type: `${ get(this, 'type') }RoleTemplateBinding`, }; set(model, `${ get(this, 'type') }Id`, get(this, `model.${ get(this, 'type') }.id`)) setProperties(this, { primaryResource: this.make(model), - defaultUser: dfu, stdUser: `${ get(this, 'type') }-member`, admin: `${ get(this, 'type') }-owner`, cTyped: get(this, 'type').capitalize(), @@ -214,26 +212,17 @@ export default Component.extend(NewOrEdit, { }); }), - mode: computed('editing', 'defaultUser', { + mode: computed('editing', { get() { - let editing = get(this, 'editing'); - let dfu = get(this, 'defaultUser'); - let current = dfu.get(`${ get(this, 'type') }RoleBindings`); let mode = null; - if (editing && current.length === 1) { - mode = get(current, 'firstObject.roleTemplateId'); - } else if (editing && current.length > 1){ - mode = CUSTOM; - } else { - const id = `${ get(this, 'type') }-member`; - const role = get(this, 'model.roles').findBy('id', id); + const id = `${ get(this, 'type') }-member`; + const role = get(this, 'model.roles').findBy('id', id); - if ( role && get(role, 'locked') !== true ) { - mode = `${ get(this, 'type') }-member`; - } else { - mode = CUSTOM; - } + if ( role && get(role, 'locked') !== true ) { + mode = `${ get(this, 'type') }-member`; + } else { + mode = CUSTOM; } return mode; @@ -277,9 +266,7 @@ export default Component.extend(NewOrEdit, { return false; } - const user = get(this, 'model.users').find((user) => (get(user, 'principalIds') || []).indexOf(get(principal, 'id')) > -1 ); - const current = user.get(`${ get(this, 'type') }RoleBindings`); - + const current = (get(this, 'model.roleBindings') || []).filterBy('userPrincipalId', get(principal, 'id')); if (get(this, 'mode') === 'custom') { if (get(this, 'customToAdd.length') < 1) {