feat: 🎸 add messages for insufficient permissions
This commit is contained in:
5 files changed
+21
-18
No files matched your search
@@ -29,7 +29,8 @@ export default class CollectionAbility extends Ability {
|
||||
* @return {boolean}
|
||||
*/
|
||||
hasAuthorizedCollectionAction(action) {
|
||||
const { authorized_collection_actions } = this.model;
|
||||
const authorized_collection_actions =
|
||||
(this.model || {}).authorized_collection_actions || {};
|
||||
const collection = this.collection || {};
|
||||
return authorized_collection_actions[collection]?.includes(action);
|
||||
}
|
||||
|
||||
@@ -32,6 +32,8 @@ titles:
|
||||
descriptions:
|
||||
empty-set: There are no items to display yet. You may be able to add items or try back later.
|
||||
origin-initialization: To get started, please enter your origin URL
|
||||
create-but-not-list: You do not have permission to list {resource}, but you can create new instances.
|
||||
neither-list-nor-create: You do not have permission to list or create {resource}.
|
||||
questions:
|
||||
delete-confirm: Are you sure you want to delete this resource?
|
||||
remove-confirm: Are you sure you want to remove this association?
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import Route from '@ember/routing/route';
|
||||
|
||||
export default class ScopesScopeUsersIndexRoute extends Route {
|
||||
|
||||
// =methods
|
||||
|
||||
setupController(controller) {
|
||||
@@ -9,5 +8,4 @@ export default class ScopesScopeUsersIndexRoute extends Route {
|
||||
super.setupController(...arguments);
|
||||
controller.setProperties({ scope });
|
||||
}
|
||||
|
||||
}
|
||||
@@ -142,4 +142,4 @@
|
||||
</main>
|
||||
</sidebarLayout.body>
|
||||
|
||||
</Rose::Layout::Sidebar>
|
||||
</Rose::Layout::Sidebar>
|
||||
@@ -70,19 +70,21 @@
|
||||
as |message|
|
||||
>
|
||||
<message.description>
|
||||
{{t 'resources.user.description'}}
|
||||
{{#if (can 'create collection' this.scope collection='users')}}
|
||||
{{#unless (can 'list collection' this.scope collection='users')}}
|
||||
<br>
|
||||
<br>
|
||||
<Rose::Notification
|
||||
@style="info"
|
||||
@heading="Create Only"
|
||||
>
|
||||
Oh noes! Resources you create won't appear here because you
|
||||
have create permission, but not list.
|
||||
</Rose::Notification>
|
||||
{{/unless}}
|
||||
{{#if (can 'list collection' this.scope collection='users')}}
|
||||
{{! can list (at least): show default welcome message}}
|
||||
{{t 'resources.user.description'}}
|
||||
{{else if (can 'create collection' this.scope collection='users')}}
|
||||
{{! can create (only): show create-but-not-list welcome message}}
|
||||
{{t
|
||||
'descriptions.create-but-not-list'
|
||||
resource=(t 'resources.user.title_plural')
|
||||
}}
|
||||
{{else}}
|
||||
{{! can neither list nor create }}
|
||||
{{t
|
||||
'descriptions.neither-list-nor-create'
|
||||
resource=(t 'resources.user.title_plural')
|
||||
}}
|
||||
{{/if}}
|
||||
</message.description>
|
||||
{{#if (can 'create collection' this.scope collection='users')}}
|
||||
@@ -98,4 +100,4 @@
|
||||
|
||||
</page.body>
|
||||
|
||||
</Rose::Layout::Page>
|
||||
</Rose::Layout::Page>
|
||||
Reference in new issue
Block a user