Merge pull request #1584 from westlywright/kube

Kube
This commit is contained in:
Vincent Fiduccia 2018-01-21 00:25:24 -07:00 committed by GitHub
commit b21dc31cde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 20 additions and 20 deletions

View File

@ -22,12 +22,6 @@ export default Controller.extend(ACC, {
memberArray: null,
actions: {
updateLists(toAdd, toUpdate, toRemove) {
setProperties(this, {
toAdd, toUpdate, toRemove
});
},
cancel() {
this.goBack();
},

View File

@ -13,7 +13,7 @@ export default Ember.Route.extend({
return hash({
users: get(this, 'globalStore').findAll('user'),
user: get(this, 'globalStore').find('user', null, {forceReload: true, filter: {me:true}}),
user: get(this, 'globalStore').find('user', null, {filter: {me:true}}),
clusterRoleTemplateBinding: get(this, 'globalStore').findAll('clusterRoleTemplateBinding', { forceReload: true }),
}).then((hash) => {
return {

View File

@ -92,9 +92,11 @@
editing=false
memberArray=memberArray
memberConfig=memberConfig
project=primaryResource
roles=userData.roles
users=userData.users
type="cluster"
initAlert=(action "initAlert")
}}
</div>

View File

@ -1,6 +1,7 @@
import Component from '@ember/component';
import layout from './template';
import { get, set, computed } from '@ember/object';
import { computed, observer, get, set } from '@ember/object';
import { on } from '@ember/object/evented';
import { inject as service } from '@ember/service';
import { all as PromiseAll } from 'rsvp';
@ -32,6 +33,15 @@ export default Component.extend({
this.sendAction('initAlert', this.primaryResourceSaved.bind(this));
},
didReceiveAttrs() {
let ma = get(this, 'memberArray').filter(( m ) => {
return get(m, 'roleTemplateId').indexOf('-owner') < 0 && !get(this, 'toAdd').includes(m);
});
if (ma && get(ma, 'length') > 0) {
set(this, 'toUpdate', ma);
}
},
primaryResourceSaved: function() {
// returns a promise of all the adds/removes/updates to the parent
const pr = get(this, 'project');
@ -42,6 +52,7 @@ export default Component.extend({
add.forEach((x) => {
x.set(`${get(this, 'type')}Id`, resourceId);
x.set('name', null);
});
return PromiseAll(add.map(x => x.save())).then(() => {
@ -67,19 +78,14 @@ export default Component.extend({
get(this, 'toAdd').pushObject(record);
},
updateMember(obj) {
get(this,'toUpdate').addObject(obj);
},
removeMember(obj) {
get(this,'memberArray').removeObject(obj);
get(this, 'toRemove').pushObject(obj);
},
},
filteredUsers: computed('users', function() {
return get(this, 'users').filter(u => !u.hasOwnProperty('me')).sortBy('username');
filteredUsers: computed('users.@each.{id,state}', function() {
return get(this, 'users').filter(u => !u.hasOwnProperty('me')).sortBy('displayName');
}),
});

View File

@ -10,9 +10,9 @@
</tr>
</thead>
<tbody>
{{project-member-row member=member roles=roles users=users remove="removeMember" owner=creator type=type}}
{{project-member-row member=member roles=roles users=users owner=creator type=type}}
{{#each memberArray as |member|}}
{{project-member-row member=member roles=roles users=filteredUsers remove="removeMember" update="updateMember"}}
{{project-member-row member=member roles=roles users=filteredUsers remove="removeMember" }}
{{/each}}
</tbody>
</table>

View File

@ -1,6 +1,7 @@
import Component from '@ember/component';
import layout from './template';
import { computed, observer, get, set } from '@ember/object';
import { on } from '@ember/object/evented';
export default Component.extend({
layout,
@ -45,7 +46,4 @@ export default Component.extend({
}
}),
changed: observer('member.{roleTemplateId,subjectName}', function() {
this.sendAction('update', get(this,'member'));
}),
});