refactor global resource memeber access

pass the access types down rather that own the access types and manipulate

rancher/rancher#18938
This commit is contained in:
Westly Wright 2019-03-25 11:55:59 -07:00
parent 25e54fae82
commit ff1d1e56c4
No known key found for this signature in database
GPG Key ID: 4FAB3D8673DC54A3
6 changed files with 34 additions and 33 deletions

View File

@ -26,6 +26,7 @@ export default Controller.extend(ViewNewEdit, {
scope: service(), scope: service(),
queryParams: ['id'], queryParams: ['id'],
memberAccessTypes: ['owner'],
id: null, id: null,
errros: null, errros: null,

View File

@ -187,7 +187,7 @@
expand=(action expandFn) expand=(action expandFn)
}} }}
{{form-members-global-access {{form-members-global-access
excludeMember=true optionsForAccessType=memberAccessTypes
readOnly=false readOnly=false
resource=model.globaldns resource=model.globaldns
addAuthorizedPrincipal=(action "addAuthorizedPrincipal") addAuthorizedPrincipal=(action "addAuthorizedPrincipal")

View File

@ -11,6 +11,7 @@ export default Controller.extend(ViewNewEdit, {
globalStore: service(), globalStore: service(),
queryParams: ['id', 'activeProvider'], queryParams: ['id', 'activeProvider'],
memberAccessTypes: ['owner', 'read-only'],
id: null, id: null,
activeProvider: 'route53', activeProvider: 'route53',

View File

@ -54,7 +54,7 @@
expand=(action expandFn) expand=(action expandFn)
}} }}
{{form-members-global-access {{form-members-global-access
excludeMember=true optionsForAccessType=memberAccessTypes
readOnly=false readOnly=false
resource=model resource=model
addAuthorizedPrincipal=(action "addAuthorizedPrincipal") addAuthorizedPrincipal=(action "addAuthorizedPrincipal")

View File

@ -22,18 +22,18 @@ const MEMBERS_HEADERS = [
]; ];
export default Component.extend({ export default Component.extend({
globalStore: service(), globalStore: service(),
layout, layout,
membersHeaders: MEMBERS_HEADERS, membersHeaders: MEMBERS_HEADERS,
sortBy: '', sortBy: '',
descending: false, descending: false,
excludeMember: false, excludeMember: false,
resource: null, resource: null,
gotError: null, gotError: null,
removeMember: null, removeMember: null,
optionsForAccessType: null, optionsForAccessType: null,
init() { init() {
this._super(...arguments); this._super(...arguments);
@ -69,13 +69,8 @@ export default Component.extend({
}, },
initOptionsForMembersAccessType() { initOptionsForMembersAccessType() {
let accessTypes = this.globalStore.getById('schema', 'member').optionsFor('accessType') || []; let accessTypes = this.optionsForAccessType || this.globalStore.getById('schema', 'member').optionsFor('accessType');
if (this.excludeMember) { return set(this, 'optionsForAccessType', accessTypes);
accessTypes = accessTypes.without('member');
}
set(this, 'optionsForAccessType', accessTypes);
return;
}, },
}); });

View File

@ -30,21 +30,25 @@
{{member.displayType}} {{member.displayType}}
</td> </td>
<td data-title="{{dt.accessType}}:"> <td data-title="{{dt.accessType}}:">
<select {{#if (gt optionsForAccessType.length 1)}}
class="form-control" <select
onchange={{action (mut member.accessType) value="target.value"}} class="form-control"
> onchange={{action (mut member.accessType) value="target.value"}}
{{#unless (eq member.accessType "")}} >
<option value="" selected=true> {{#unless (eq member.accessType "")}}
{{t "formMembersGlobalAccess.table.prompt"}} <option value="" selected=true>
</option> {{t "formMembersGlobalAccess.table.prompt"}}
{{/unless}} </option>
{{#each optionsForAccessType as |choice|}} {{/unless}}
<option value="{{choice}}" selected={{eq choice member.accessType}}> {{#each optionsForAccessType as |choice|}}
{{choice}} <option value="{{choice}}" selected={{eq choice member.accessType}}>
</option> {{choice}}
{{/each}} </option>
</select> {{/each}}
</select>
{{else}}
{{member.accessType}}
{{/if}}
</td> </td>
<td data-title="{{t "generic.actions"}}:" class="actions"> <td data-title="{{t "generic.actions"}}:" class="actions">
<div class="p-5"> <div class="p-5">