diff --git a/app/abilities/provider.js b/app/abilities/provider.js index 55e1e3a47..d986fda9c 100644 --- a/app/abilities/provider.js +++ b/app/abilities/provider.js @@ -13,6 +13,8 @@ export default class Provider extends Ability { switch (this.get('currentUser.role_id')) { case 'staff_admin': return true; + case 'consortium_admin': + return true; default: return false; } @@ -23,11 +25,6 @@ export default class Provider extends Ability { switch (this.get('currentUser.role_id')) { case 'staff_admin': return true; - case 'consortium_admin': - return ( - this.get('currentUser.provider_id') === - this.get('model.consortium.id') - ); default: return false; } @@ -83,4 +80,44 @@ export default class Provider extends Ability { return false; } } -} + + @computed('currentUser.role_id', 'model.{id,provider_id}') + get canEditSalesforceField() { + switch (this.get('currentUser.role_id')) { + case 'staff_admin': + return true; + default: + return false; + } + } + + @computed('currentUser.role_id', 'model.{id,provider_id}') + get canEditMemberTypeField() { + switch (this.get('currentUser.role_id')) { + case 'staff_admin': + return true; + default: + return false; + } + } + + @computed('currentUser.role_id', 'model.{id,provider_id}') + get canEditConsortiumField() { + switch (this.get('currentUser.role_id')) { + case 'staff_admin': + return true; + default: + return false; + } + } + + @computed('currentUser.role_id', 'model.{id,provider_id}') + get canEditActiveField() { + switch (this.get('currentUser.role_id')) { + case 'staff_admin': + return true; + default: + return false; + } + } +} \ No newline at end of file diff --git a/app/routes/providers/show/edit.js b/app/routes/providers/show/edit.js index 79c30e055..8a97c9bd4 100644 --- a/app/routes/providers/show/edit.js +++ b/app/routes/providers/show/edit.js @@ -22,6 +22,7 @@ export default class EditRoute extends Route { return contact.deleted === null; }) provider.set('filteredContacts', filteredContacts) + provider.set("consortium_id", this.modelFor('providers/show').get('consortium.id')); return provider; } diff --git a/app/templates/providers/new.hbs b/app/templates/providers/new.hbs index 506f11c4e..567b4b37f 100644 --- a/app/templates/providers/new.hbs +++ b/app/templates/providers/new.hbs @@ -109,25 +109,6 @@ {{titleize (humanize item)}} -