About collaboration groups
Working together on private content. Groups can organize and manage members without the complexity of the full access control system.
Zotonic has a pluggable access control system. The default module is the ACL User Groups module, which works together with the Content Groups module. With these modules every resource (page) is placed in a single content group. Users are assigned to user groups, and rules are defined which user group can do what (edit, delete, link, create) on resources in a content group.
This is a very robust system for editorial work and sites with individual users. These sites have typically a set of rules for members, and an extended set of rules for editors or administrators.
It is different if we want to organize the users into smaller groups, like classes in a school. With the above system we would need to a user group and a content group for each class. And then also a set of rules for every combination of user group and content group.
This gets complicated very quickly and is not workable for any system with more than a couple classes (user groups).
That is why collaboration groups were added. Collaboration groups are a combination of user groups and content groups. They behave as content groups as all the resources of the collaboration group are placed in the collaboration group (and not one of the standard content groups). They also behave as user groups as users can be member of collaboration groups.
All collaboration groups have a single set of rules. They are defined in the admin under Auth > Access control rules. And then the tab Collaboration groups.
Membership of collaboration groups
Collaboration groups have two types of members: managers and members. The manages are allowed to add members and other managers.
In the content rules for collaboration groups we can define if manager and/or members can edit the collaboration group and its memberships, and if they can add connections (can link) to the content group. The connections are other than the memberships, for thay you need to be able to edit the collaboration group itself. Usually we set this so that managers can edit and add links to the collaboration group.
Remember: in Zotonic everything is a thing. So a collaboration group is also a page; with a title, body, etc. In this way it is possible to add a description to the collaboration group. As the collaboration group is in a different content group than itself, it can be viewed by other people. Those other people can usually not see what is inside the collaboration group.
Adding a collaboration group and members
All collaboration groups are visible via the menu Auth > Collaboration groups. Here it is possible to add a new group using the usual Make a new page or media button. The category Collaboration group is pre-selected. Just add a title and decide the content group of the Collaboration group page itself. This content group defines who will be able to see the collaboration group, not who can see content in the collaboration group—that is defined by the collaboration group’s memberships.
Members and managers are added by adding connections from the collaboration group to users. Everybody who can view and edit the collaboration group can add members. Usually this is configured to be the collaboration group manager and site editors.
Access to collaboration groups by editors
In the access control rules it is possible to give normal user groups access to content groups. Here it is also possible to give access to all collaboration groups or a specific group.
To give access to all collaboration groups, add or edit a rule and select All collaboration groups for the content group.
To give access to a specific collaboration group, type the name of the collaboration group and select the specific collaboration group.
Adding content to a collaboration group
If you add a page, then you can select for the content group any collaboration group you are member of. For editors who are not member of the collaboration group, then can:
- First create a page in another content group; and then
- Change the content group by clicking on the button Change category and/or content group... in the Category & Content group panel; alternatively click on the small Category button at the top of the page below the title.
- In the resulting dialog a collaboration group can be selected by clicking on the button Move to another Collaborarion Group...
Privacy levels and collaboration groups
As collaboration group members work closely together, and sometimes need to share more contact information, there are special privacy settings for pages. They are:
- Collaboration group members
- Collaboration group managers
For a person these are all members or managers of any group the person is member of. For all pages in categories other than person this setting limits the visibility of the private properties to members or managers of the collaboration group the content is placed in.
Setting the privacy level of a page to one of these makes the email address, phone number, visiting address and date range visible to one of the selected group of people.
Currently the collaboration groups are a one size fits all solution. This can be problematic if some variations are necessary. We are thinking of solutions where extra sub-categories can be made of the collaboration groups category, with each their own set of access control rules.