This diagram shows how the admins in a neighbourhood interact with each other and the records that they admin for. User admins are in the lozenges, records are in the diamonds. I’ve used these below to highlight which parts partner admin and neighbourhood admin users can access.
User acceptance criteria for neighbourhood admins
Anyone with a root account can create a new neighbourhood admin by assigning a neighbourhood to a user
Users with role neighbourhood_admin can:
View
All of the neighbourhoods
Partners with a service area or address in their neighbourhood scope
Users that admin for a partner in their neighbourhood scope
Calendars that belong to partner in their neighbourhood scope
All Category Tags
Create
Partners with a service area or address in their neighbourhood scope
Users that admin for a partner in their neighbourhood scope
Calendars that belong to partner in their neighbourhood scope
Edit
Everything about a partner, except removing or adding neighbourhoods outside of their neighbourhood scope
Whether or not a user is an admin for a partner (if they remove all partners from a user this can make them invisible to the admin but we force them to confirm this in the UI)
Everything about a calendar
They can assign/remove any of the partners in their neighbourhood scope from category tags
Delete
Partners that ONLY have service areas/addresses within their neighbourhood scope (this is to prevent the deletion of partners still operating in other neighbourhoods)
Calendars within their neighbourhood scope
User acceptance criteria for partnership admins
Anyone with a root account can create a new partnership admin by assigning a neighbourhood & a partnership tag to a user
Users with the role partnership_admin can:
View
All of the neighbourhoods
Partners with a service area or address AND a partnership tag in their partnership scope
Users that admin for a partner in their partnership scope
Calendars that belong to partner in their partnership scope
All category tags
All partnership tags owned by them
Create
Partners with a service area or address & a partnership tag in their partnership scope
Users that admin for a partner in their partnership scope
Calendars that belong to partner in their partnership scope
Edit
Everything about a partner, except adding neighbourhoods outside of their partnership scope
Whether or not a user is an admin for a partner (if they remove all partners from a user this can make them invisible to the admin but we force them to confirm this in the UI)
Everything about a calendar
They can assign/remove any of the partners in their partnership scope from category tags, and partnership tags that they admin for (if they remove all partnership tags from a partner this can make them invisible to the admin but we force them to confirm this in the UI)
Delete
Partners that ONLY have service areas/addresses AND tags within their partnership scope (this is to prevent the deletion of partners still operating in other neighbourhoods/ partnerships)
Calendars within their partnership scope
User acceptance criteria for partner admins
Root, neighbourhood_admin or partnership_admin accounts can create new partner admins by assigning a partner to a new or existing user
Users with role partner_admin can:
View
Partners that they admin for
Calendars that belong to a partner they admin for
All category tags
Create
Calendars that belong to a partner they admin for
Edit
Partners that they admin for, including adding/removing any service area/ address, adding/removing partner admins (including themselves)
They can assign/remove any of their partners from category tags
They can only remove partnership tags
Delete
Partners that they admin for
Calendars that belong to a partner they admin for
User acceptance criteria for site admins
Only root accounts can create new site admins by assigning a site to a new or existing user
Users with role site_admin can:
Edit
Sites that they admin for, except for changing the slug or the domain, or assigning/removing the neighbourhoods, partnership tags and site admins associated with a site