Review of extension Relationship Permissions as ACLs
We are reviewing the extension Relationship Permissions as ACLs, which has been made available by Eileen McNaughton from Fuzion (http://fuzion.co.nz/). Kudos to Eileen and Fuzion for sharing the extension!
What does it do
The extension sets permissions for contacts based on the relations permission.It is a bit complicated......did we get it correctly Eileen?
When you want be able to have the permissions on relationship going one level further then the standard CiviCRM level.
This extension is useful in the following example where you have the following contacts:
Bookshop (Local department)
Johnson – Manager of local department, a permission relationship for Johnson to the bookshop (Johnson is allowed to view and edit the bookshop)
Betty – Volunteer at the local department, a permission relationship for the bookhsop to the volunteer (the bookshop is allowed to view and edit Betty)
Joe – Another volunteer at the local department, a permission relationship for the bookshop to the volunteer (the bookshop is allowed to view and edit Joe)
All persons have a relationship with a local department. But when Johnson logs into CiviCRM he is only allowed to see and edit the bookshop. This is standard CiviCRM behavior. What we want is that he will also see and is allowed to edit the volunteer. We can achieve that by using this extension. Because this exentions gives Johnson the same permissions to contacts as the bookshop has. (or all contacts which he is related to with permissions to view and edit).
Three out of 5 stars. The documentation on the extensions page is there, and explains what it does in broad strokes. From our point of view a little example would have been nice so the not-so-experienced CiviCRM user also understands what it is going to do as it can be really useful! And perhaps a little technical documentation would help also.
Although the functionality of this extension might not be applicable to every CiviCRM customer, it is pretty vital and really cool if you are in a situation where you need someone to be able to access all contacts of an organization. So full marks here!
The code is structured and follows the CiviCRM standards. The only comment we could find that it looks as if a table is created for every user in the database? Perhaps it is also possible to have one generic table and use views?
Ease of Use *****
The extension can be downloaded, functions straightaway and as could be expected. Full marks.
Our verdict (for what it is worth) is that this is a well produced and extremely useful extension. We feel anyone who contributes an extension deserves applause and beers, we think Eileen deserves an additional warm beer (or f.. w...?) for this extension!
Jaap and Erik (http://www.civicoop.org)